Merge "CompatibilityManager is added for osp-compat" into tizen_2.2
[platform/framework/native/installer.git] / src / Manager / CompatibilityManager.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
4 //
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
8 //
9 //     http://www.apache.org/licenses/LICENSE-2.0
10 //
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.
16 //
17 /**
18  * @file CompatibilityManager.h
19  * @brief       This is the header file for the %CompatibilityManager class.
20  *
21  * This header file contains the declarations of the %CompatibilityManager class.
22  */
23 #ifndef _COMPATIBILITY_MANAGER_H_
24 #define _COMPATIBILITY_MANAGER_H_
25
26 /**
27         * @class                CompatibilityManager
28         * @brief                This class represents the class of CompatibilityManager.
29         * @since                2.2
30         *
31         * This class represents the class of CompatibilityManager.
32         *
33 */
34
35 class CompatibilityManager
36 {
37 public:
38         CompatibilityManager(void);
39         virtual ~CompatibilityManager(void);
40
41         static bool PrepareDataCaging(const Tizen::Base::String& rootPath, const Tizen::App::PackageId& packageId);
42         static bool FinalizeDataCaging(const Tizen::Base::String& rootPath);
43         static bool CleanDirectories(const Tizen::Base::String& rootPath, const Tizen::App::PackageId& packageId);
44
45         static bool LinkOspSharePath(const Tizen::Base::String& rootPath, const Tizen::App::PackageId& packageId);
46
47 private:
48         CompatibilityManager(const CompatibilityManager& value);
49         CompatibilityManager& operator =(const CompatibilityManager& source);
50
51         static bool CreateOspInternalDirectories(const Tizen::Base::String& rootPath, const Tizen::App::PackageId& packageId);
52         static bool CreateSlpDirectories(void);
53         static bool CreateSymbolicLink(void);
54
55 private:
56
57 }; // CompatibilityManager
58
59 #endif // _COMPATIBILITY_MANAGER_H_