Initialize Tizen 2.3
[framework/web/wrt-commons.git] / modules_mobile / widget_dao / include / dpl / wrt-dao-ro / widget_config.h
1 /*
2  * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
3  *
4  *    Licensed under the Apache License, Version 2.0 (the "License");
5  *    you may not use this file except in compliance with the License.
6  *    You may obtain a copy of the License at
7  *
8  *        http://www.apache.org/licenses/LICENSE-2.0
9  *
10  *    Unless required by applicable law or agreed to in writing, software
11  *    distributed under the License is distributed on an "AS IS" BASIS,
12  *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  *    See the License for the specific language governing permissions and
14  *    limitations under the License.
15  */
16 /**
17  * @file    widget_config.h
18  * @author  Zbigniew Kostrzewa (z.kostrzewa@samsung.com)
19  * @version 1.0
20  * @brief   Implementation file for widget config.
21  */
22 #ifndef SRC_DOMAIN_WIDGET_CONFIG_H
23 #define SRC_DOMAIN_WIDGET_CONFIG_H
24
25 #include <string>
26 #include <dpl/string.h>
27
28 #include <dpl/wrt-dao-ro/global_config.h>
29 #include <dpl/wrt-dao-ro/path_builder.h>
30 #include <dpl/wrt-dao-ro/common_dao_types.h>
31
32 namespace WrtDB {
33 namespace WidgetConfig {
34 inline std::string GetWidgetBasePath(DPL::String tzPkgId)
35 {
36     return PathBuilder()
37                .Append(GlobalConfig::GetWidgetUserDataPath())
38                .Append(DPL::ToUTF8String(tzPkgId))
39                .GetFullPath();
40 }
41
42 inline std::string GetWidgetWebLocalStoragePath(DPL::String tzPkgId)
43 {
44     return PathBuilder(GetWidgetBasePath(tzPkgId))
45                .Append(GlobalConfig::GetWidgetLocalStoragePath())
46                .GetFullPath();
47 }
48
49 inline std::string GetWidgetPersistentStoragePath(DPL::String tzPkgId)
50 {
51     return PathBuilder(GetWidgetBasePath(tzPkgId))
52                .Append(GlobalConfig::GetWidgetPrivateStoragePath())
53                .GetFullPath();
54 }
55
56 inline std::string GetWidgetTemporaryStoragePath(DPL::String tzPkgId)
57 {
58     return PathBuilder(GetWidgetBasePath(tzPkgId))
59                .Append(GlobalConfig::GetWidgetPrivateTempStoragePath())
60                .GetFullPath();
61 }
62
63 inline std::string GetWidgetDesktopFilePath(DPL::String tzPkgId)
64 {
65     return PathBuilder()
66                .Append(GlobalConfig::GetUserWidgetDesktopPath())
67                .Append(DPL::ToUTF8String(tzPkgId))
68                .Concat(".desktop")
69                .GetFullPath();
70 }
71
72 inline std::string GetWidgetSharedStoragePath(DPL::String tzPkgId)
73 {
74     return PathBuilder()
75                .Append(GlobalConfig::GetWidgetUserDataPath())
76                .Append(DPL::ToUTF8String(tzPkgId))
77                .Concat(GlobalConfig::GetWidgetSharedPath())
78                .GetFullPath();
79 }
80
81 inline std::string GetWidgetSharedDataStoragePath(DPL::String tzPkgId)
82 {
83     return PathBuilder(GetWidgetSharedStoragePath(tzPkgId))
84                .Concat(GlobalConfig::GetWidgetDataPath())
85                .GetFullPath();
86 }
87
88 inline std::string GetWidgetSharedTrustedStoragePath(DPL::String tzPkgId)
89 {
90     return PathBuilder(GetWidgetSharedStoragePath(tzPkgId))
91                .Concat(GlobalConfig::GetWidgetTrustedPath())
92                .GetFullPath();
93 }
94
95 inline std::string GetWidgetSharedResStoragePath(DPL::String tzPkgId)
96 {
97     return PathBuilder(GetWidgetSharedStoragePath(tzPkgId))
98                .Concat(GlobalConfig::GetWidgetResPath())
99                .GetFullPath();
100 }
101
102 inline std::string GetWidgetNPRuntimePluginsPath(const DPL::String& tzPkgId)
103 {
104     return PathBuilder(GetWidgetBasePath(tzPkgId))
105                 .Concat(GlobalConfig::GetWidgetSrcPath())
106                 .Append(GlobalConfig::GetNPRuntimePluginsPath())
107                 .GetFullPath();
108 }
109 } // namespace WidgetConfig
110 } // namespace WrtDB
111
112 #endif