2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://www.apache.org/licenses/LICENSE-2.0
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an "AS IS" BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
18 * @file ConfigurationManager.h
19 * @brief This is the header file for the %ConfigurationManager class.
21 * This header file contains the declarations of the %ConfigurationManager class.
23 #ifndef _CONFIGURATION_MANAGER_H_
24 #define _CONFIGURATION_MANAGER_H_
26 #include "InstallationContext.h"
29 * @class ConfigurationManager
30 * @brief This class represents the class of ConfigurationManager.
33 * This class represents the class of ConfigurationManager.
36 class ConfigurationManager
39 ConfigurationManager(void);
40 virtual ~ConfigurationManager(void);
42 bool CreateFile(InstallationContext* pContext);
43 bool RemoveFile(InstallationContext* pContext);
45 bool PostInstall(InstallationContext* pContext, bool error) const;
46 bool PostUninstall(InstallationContext* pContext) const;
49 bool CreateCoreXmlFile(InstallationContext* pContext) const;
50 bool RegisterCoreXmlFile(InstallationContext* pContext) const;
51 // bool CreateHybridServiceDesktopFile(InstallationContext* pContext);
52 bool MergeToSystemXmlFile(const Tizen::Base::String& systemXmlPath, const Tizen::Base::String& webXmlPath,const Tizen::Base::String& serviceXmlPath);
53 bool MergePrivileges(char* pMergedBuf, char* pServiceBuf, int& fileSize);
55 bool MergeAppWidgets(char* pMergedBuf, char* pServiceBuf, int& fileSize);
56 bool MergeAccounts(char* pMergedBuf, char* pServiceBuf, int& fileSize);
57 bool MergeNotifications(char* pMergedBuf, char* pServiceBuf, int& fileSize);
58 bool MergeIme(char* pMergedBuf, char* pServiceBuf, int& fileSize);
59 bool MergeTags(char* pMergedBuf, char* pServiceBuf, int& fileSize, const char* pStartTag, const char* pEndTag);
61 bool GetPart(const char* pStartPoint, const char* pStartTag, const char* pEndTag, char** ppBuf, int* pLength, char** ppNext);
62 bool MergeTo(const char* pMergedBuf, int& fileSize, const char* pTag, const char* pBuf, int length);
64 bool CreateImeSymlink(const Tizen::Base::String& binaryPath, const Tizen::Base::String& packageName);
65 bool FindPrivilege(InstallationContext* pContext, const Tizen::Base::String& privilege) const;
67 bool CreateAppInfoFile(AppData* pAppData, const Tizen::Base::String& rootPath) const;
69 }; // ConfigurationManager
71 #endif // _CONFIGURATION_MANAGER_H_