2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
\r
4 // Licensed under the Apache License, Version 2.0 (the License);
\r
5 // you may not use this file except in compliance with the License.
\r
6 // You may obtain a copy of the License at
\r
8 // http://www.apache.org/licenses/LICENSE-2.0
\r
10 // Unless required by applicable law or agreed to in writing, software
\r
11 // distributed under the License is distributed on an "AS IS" BASIS,
\r
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
13 // See the License for the specific language governing permissions and
\r
14 // limitations under the License.
\r
18 * @file FWebCtrl_WebManager.h
\r
19 * @brief This is the header file for the %_WebManager class.
\r
21 * This header file contains the declarations of the %_WebManager class.
\r
24 #ifndef _FWEB_CTRL_INTERNAL_WEB_MANAGER_H_
\r
25 #define _FWEB_CTRL_INTERNAL_WEB_MANAGER_H_
\r
27 #include <unique_ptr.h>
\r
28 #include <FBaseColArrayListT.h>
\r
29 #include <FBaseColMultiHashMapT.h>
\r
31 namespace Tizen { namespace Web { namespace Controls
\r
34 _OSP_EXPORT_ extern const wchar_t CUSTOM_DB_DIRECTORY_PATH[];
35 _OSP_EXPORT_ extern const wchar_t USER_CONFIRM_DB_NAME[];
36 _OSP_EXPORT_ extern const wchar_t GEOLOCATION_TABLE_NAME[];
37 _OSP_EXPORT_ extern const wchar_t CUSTOM_PROTOCOL_TABLE_NAME[];
38 _OSP_EXPORT_ extern const wchar_t CUSTOM_CONTENT_TABLE_NAME[];
39 _OSP_EXPORT_ extern const wchar_t CERTIFICATE_TABLE_NAME[];
\r
45 : public Tizen::Base::Object
\r
48 virtual ~_WebManager(void);
\r
50 result AddWeb(int webAdress);
\r
51 result RemoveWeb(int webAdress);
\r
52 bool IsValidWeb(int webAdress) const;
\r
54 result AddCallback(int callerAdress, int callbackAdress);
\r
55 result RemoveCallback(int callerAdress, int callbackAdress);
\r
56 bool IsValidCallback(int callerAdress, int callbackAdress) const;
\r
58 void SetActiveWeb(Tizen::Web::Controls::_WebImpl* pWebAddress);
\r
59 void RemoveActiveWeb(Tizen::Web::Controls::_WebImpl* pWebAddress);
\r
60 void SetActivePopup(Tizen::Web::Controls::_WebPopup* pPopupAddress);
\r
61 void RemoveActivePopup(Tizen::Web::Controls::_WebPopup* pPopupAddress);
\r
63 static _WebManager* GetInstance(void);
\r
67 _WebManager(const _WebManager& rhs);
\r
69 result Construct(void);
\r
71 static void InitWebManager(void);
\r
72 static void DestroyWebManager(void);
\r
74 void ClearCertificateDb(void);
\r
75 result InitializeProxyAddress(void);
\r
76 result CreateResourceDirectory(void) const;
77 result InitializeCustomDb(void) const;
\r
79 _WebManager& operator=(const _WebManager& rhs);
\r
82 std::unique_ptr<Tizen::Base::Collection::ArrayListT< int > > __pWebList;
\r
83 std::unique_ptr<Tizen::Base::Collection::MultiHashMapT< int, int > > __pCallbackList;
\r
85 _WebImpl* __pActiveWeb;
\r
86 _WebPopup* __pActivePopup;
\r
89 static _WebManager* __pInstance;
\r