Add to parse metadata
[platform/framework/native/installer.git] / src / Context / InstallationContextData.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        InstallerContextData.h
19  * @brief       This is the header file for the context data classes.
20  *
21  * This header file contains the declarations of the the context data classes.
22  */
23 #ifndef _INSTALLATION_CONTEXT_DATA_H_
24 #define _INSTALLATION_CONTEXT_DATA_H_
25
26 #include <FSecCertX509CertificatePath.h>
27
28 #include "InstallerDefs.h"
29
30 class LiveboxData
31         : public Tizen::Base::Object
32 {
33 public:
34         LiveboxData(void);
35         virtual ~LiveboxData(void);
36
37         result SetUpdatePeriod(long long period);
38         long long GetUpdatePeriod(void) const;
39
40         result SetPopupEnabled(const Tizen::Base::String& value);
41         const Tizen::Base::String& GetPopupEnabled(void) const;
42
43         result SetIcon(const Tizen::Base::String& icon);
44         const Tizen::Base::String& GetIcon(void) const;
45
46         result SetProviderName(const Tizen::Base::String& providerName);
47         const Tizen::Base::String& GetProviderName(void) const;
48
49         result AddName(const Tizen::Base::String& language, const Tizen::Base::String& name);
50         Tizen::Base::Collection::HashMap* GetNameList(void) const;
51
52         result AddSize(Tizen::Base::String* pSize, Tizen::Base::String* pPreviewImage);
53         Tizen::Base::Collection::HashMap* GetSizeList(void) const;
54
55         Tizen::Base::String __default;
56         Tizen::Base::String __configurationAppControlAppId;
57
58 private:
59         LiveboxData(const LiveboxData& value);
60         LiveboxData& operator =(const LiveboxData& source);
61
62         long long __updatePeriod;
63         Tizen::Base::String __popupEnabled;
64         Tizen::Base::String __icon;
65         Tizen::Base::String __providerName;
66
67         Tizen::Base::Collection::HashMap* __pNameList;
68         Tizen::Base::Collection::HashMap* __pSizeList;
69
70 };
71
72
73 class AccountData
74         : public Tizen::Base::Object
75 {
76 public:
77         AccountData();
78         virtual ~AccountData();
79         bool Construct();
80
81         Tizen::Base::String __providerId;
82         Tizen::Base::String __multipleAccountsSupport;
83         Tizen::Base::String __accountIcon;
84         Tizen::Base::String __accountSmallIcon;
85         Tizen::Base::Collection::HashMap* __pNameList;
86         Tizen::Base::Collection::IListT<Tizen::Base::String*>* __pCapabilityList;
87 };
88
89
90 class AppControlData
91         : public Tizen::Base::Object
92 {
93 public:
94         AppControlData();
95         virtual ~AppControlData();
96
97         Tizen::Base::Collection::IListT<Tizen::Base::String*>* __pOperationList;
98         Tizen::Base::Collection::IListT<Tizen::Base::String*>* __pMimeTypeList;
99         Tizen::Base::Collection::IListT<Tizen::Base::String*>* __pUriList;
100 };
101
102
103 class _AppControlResolutionInfo
104         : public Tizen::Base::Object
105 {
106 public:
107         _AppControlResolutionInfo(void);
108         virtual ~_AppControlResolutionInfo(void);
109
110         Tizen::Base::String* GetUriScheme(void) const;
111         result SetUriScheme(Tizen::Base::String* pUriScheme);
112
113         Tizen::Base::String* GetMimeType(void) const;
114         result SetMimeType(Tizen::Base::String* pMimeType);
115
116 private:
117         _AppControlResolutionInfo(const _AppControlResolutionInfo& value);
118         _AppControlResolutionInfo& operator =(const _AppControlResolutionInfo& source);
119
120         Tizen::Base::String* __pUriScheme;
121         Tizen::Base::String* __pMimeType;
122
123 };
124
125
126 class _AppControlCapabilityInfo
127         : public Tizen::Base::Object
128 {
129 public:
130         _AppControlCapabilityInfo(void);
131         virtual ~_AppControlCapabilityInfo(void);
132
133         int GetAppControlId(void) const;
134         result SetAppControlId(int uniqueId);
135
136         const Tizen::Base::String& GetOperationId(void) const;
137         result SetOperationId(const Tizen::Base::String& operationId);
138
139         Tizen::Base::Collection::ArrayList* GetResolutionList(void) const;
140         result AddResolution(_AppControlResolutionInfo* pResolution);
141
142 private:
143         _AppControlCapabilityInfo(const _AppControlCapabilityInfo& value);
144         _AppControlCapabilityInfo& operator =(const _AppControlCapabilityInfo& source);
145
146         int __appControlId;
147         Tizen::Base::String __operationId;
148         Tizen::Base::Collection::ArrayList* __pResolutionList;
149
150 };
151
152
153 class _AppControlInfo
154         : public Tizen::Base::Object
155 {
156 public:
157         _AppControlInfo(void);
158         virtual ~_AppControlInfo(void);
159
160         const Tizen::Base::String& GetProviderId(void) const;
161         result SetProviderId(const Tizen::Base::String& providerId);
162
163         const Tizen::Base::String& GetCategory(void) const;
164         result SetCategory(const Tizen::Base::String& category);
165
166         Tizen::Base::Collection::ArrayList* GetCapabilityList(void) const;
167         result AddCapability(_AppControlCapabilityInfo* pCapability);
168
169 private:
170         _AppControlInfo(const _AppControlInfo& value);
171         _AppControlInfo& operator =(const _AppControlInfo& source);
172
173         Tizen::Base::String __providerId;
174         Tizen::Base::String __category;
175         Tizen::Base::Collection::ArrayList* __pCapabilityList;
176
177 };
178
179
180 class DataControlType
181         : public Tizen::Base::Object
182 {
183 public:
184                 DataControlType(void);
185         virtual ~DataControlType(void);
186
187         Tizen::Base::String __type;
188         Tizen::Base::String __access;
189
190 private:
191         DataControlType(const DataControlType& value);
192         DataControlType& operator =(const DataControlType& source);
193
194 };
195
196
197 class DataControlInfo
198         : public Tizen::Base::Object
199 {
200 public:
201                 DataControlInfo(void);
202         virtual ~DataControlInfo(void);
203
204         Tizen::Base::String __providerId;
205         Tizen::Base::Collection::IListT<DataControlType*>* __pControlTypeList;
206
207 private:
208         DataControlInfo(const DataControlInfo& value);
209         DataControlInfo& operator =(const DataControlInfo& source);
210
211 };
212
213
214 class ContentData
215         : public Tizen::Base::Object
216 {
217 public:
218         ContentData(void);
219         virtual ~ContentData(void);
220
221         result SetContentId(const Tizen::Base::String& contentId);
222         const Tizen::Base::String& GetContentId(void) const;
223
224         result SetIcon(const Tizen::Base::String& icon);
225         const Tizen::Base::String& GetIcon(void) const;
226
227         result AddName(const Tizen::Base::String& language, const Tizen::Base::String& name);
228         Tizen::Base::Collection::HashMap* GetNameList(void) const;
229
230 private:
231         ContentData(const ContentData& value);
232         ContentData& operator =(const ContentData& source);
233
234         Tizen::Base::String __icon;
235         Tizen::Base::String __contentId;
236
237         Tizen::Base::Collection::HashMap* __pNameList;
238
239 };
240
241
242 class AppData
243         : public Tizen::Base::Object
244 {
245 public:
246         AppData();
247         virtual ~AppData();
248         InstallerError Construct(void);
249
250         Tizen::Base::String __main;
251         Tizen::Base::String __name;
252         Tizen::Base::String __appId;
253         Tizen::Base::String __displayName;
254         Tizen::Base::String __mainmenuIcon;
255         Tizen::Base::String __settingIcon;
256         Tizen::Base::String __notificationIcon;
257         Tizen::Base::String __type;
258         Tizen::Base::String __subModeAppName;
259         Tizen::Base::String __launchingHistoryVisible;
260         Tizen::Base::String __permissionType;
261
262         Tizen::Base::Collection::IListT<Tizen::Base::String*>* __pCategoryList;
263         Tizen::Base::Collection::IListT<AccountData*>* __pAccountDataList;
264         Tizen::Base::Collection::IListT<AppControlData*>* __pAppControlDataList;
265         Tizen::Base::Collection::IListT<_AppControlInfo*>* __pAppControlImplList;
266         Tizen::Base::Collection::IListT<DataControlInfo*>* __pDataControlList;
267         Tizen::Base::Collection::IListT<AppControlData*>* __pSubModeAppControlDataList;
268
269         Tizen::Base::Collection::HashMap* __pNameList;
270         Tizen::Base::Collection::HashMap* __pFeatureList;
271         Tizen::Base::Collection::HashMap* __pLaunchConditionList;
272         Tizen::Base::Collection::HashMap* __pNotificationMap;
273         Tizen::Base::Collection::HashMap* __pMetadataMap;
274
275         int __feature;
276
277         bool __isSubMode;
278         bool __legacyAppControls;
279         bool __isSystemService;
280         bool __mainmenuVisible;
281
282 private:
283 };
284
285 #endif // _INSTALLATION_CONTEXT_DATA_H_