2 // Copyright (c) 2012 Samsung Electronics Co., Ltd.
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
8 // http://www.apache.org/licenses/LICENSE-2.0
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.
18 * @file FAppPkg_PackageAppInfoImpl.h
19 * @brief This is the header file for the _PackageAppInfoImpl class.
22 #ifndef _FAPP_PKG_INTERNAL_APP_INFO_IMPL_H_
23 #define _FAPP_PKG_INTERNAL_APP_INFO_IMPL_H_
25 #include <FAppTypes.h>
26 #include <FBaseObject.h>
27 #include <FBaseString.h>
28 #include <FOspConfig.h>
29 #include <FAppPkgPackageManager.h>
30 #include <FBaseInternalTypes.h>
31 #include <FBaseColHashMapT.h>
33 namespace Tizen { namespace Graphics
38 namespace Tizen { namespace App { namespace Package
41 class _LaunchConditionInfoImpl;
42 class _NotificationInfoImpl;
43 class _AppFeatureInfoImpl;
44 class _DataControlInfoImpl;
45 class _AppControlResolutionInfoImpl;
46 class _AppControlCapabilityInfoImpl;
47 class _AppControlInfoImpl;
49 class _OSP_EXPORT_ _PackageAppInfoImpl
50 : public Tizen::Base::Object
53 const AppId& GetAppId(void) const;
54 result SetAppId(const AppId& appId);
56 const Tizen::Base::String& GetAppName(void) const;
57 result SetAppName(const Tizen::Base::String& appName);
59 const Tizen::Base::String& GetAppDisplayName(void) const;
60 result SetAppDisplayName(const Tizen::Base::String& appDiplayName);
62 const Tizen::Base::String& GetAppMenuIconPath(void) const;
63 result SetAppMenuIconPath(const Tizen::Base::String& iconPath);
65 const Tizen::Base::String& GetAppSettingIconPath(void) const;
66 result SetAppSettingIconPath(const Tizen::Base::String& appSettingIcon);
68 const Tizen::Base::String& GetAppNotificationIconPath(void) const;
69 result SetAppNotificationIconPath(const Tizen::Base::String& notificationIconPath);
71 const Tizen::Base::String& GetAppTempIconPath(void) const;
72 result SetAppTempIconPath(const Tizen::Base::String& tempIconPath);
74 Tizen::Graphics::Bitmap* GetAppMenuIconN(void) const;
76 Tizen::Base::Collection::HashMap* GetAppMetadataListN(void) const;
77 Tizen::Base::Collection::ArrayList* GetAppCategoryListN(void) const;
79 bool IsMenuIconVisible(void) const;
80 result SetMenuIconVisible(bool visible);
82 bool IsMainApp(void) const;
83 result SetMainApp(bool mainApp);
85 result AddCategory(Tizen::Base::String* pCategory);
87 Tizen::Base::String GetAppFeature(const Tizen::Base::String& key) const;
89 static _PackageAppInfoImpl* GetInstance(PackageAppInfo* pPackageAppInfo);
91 result Construct(const AppId& appId);
94 _PackageAppInfoImpl(void);
95 virtual ~_PackageAppInfoImpl(void);
97 const Tizen::Base::String& GetName(void) const;
98 result SetName(const Tizen::Base::String& name);
100 const Tizen::Base::String& GetType(void) const;
101 result SetType(const Tizen::Base::String& type);
103 const Tizen::Base::String& GetDefault(void) const;
104 result SetDefault(const Tizen::Base::String& defaultApp);
106 Tizen::Base::Collection::ArrayList* GetLaunchConditionListN(void) const;
107 Tizen::Base::Collection::ArrayList* GetLaunchConditionList(void) const;
108 result AddLaunchCondition(const _LaunchConditionInfoImpl& launchCondition);
110 Tizen::Base::Collection::ArrayList* GetNotificationListN(void) const;
111 Tizen::Base::Collection::ArrayList* GetNotificationList(void) const;
112 result AddNotification(const _NotificationInfoImpl& notification);
114 Tizen::Base::Collection::ArrayList* GetAppFeatureListN(void) const;
115 Tizen::Base::Collection::ArrayList* GetAppFeatureList(void) const;
116 Tizen::Base::Collection::HashMapT<Tizen::Base::String, _AppFeatureInfoImpl*>* GetAppFeatureMapN(void) const;
117 result AddAppFeature(const _AppFeatureInfoImpl& appFeature);
119 Tizen::Base::Collection::ArrayList* GetDataControlListN(void) const;
120 Tizen::Base::Collection::ArrayList* GetDataControlList(void) const;
121 result AddDataControl(_DataControlInfoImpl* pDataControl);
123 Tizen::Base::Collection::ArrayList* GetAppControlListN(void) const;
124 Tizen::Base::Collection::ArrayList* GetAppControlList(void) const;
125 result AddAppControl(_AppControlInfoImpl* pAppControl);
127 const Tizen::Base::String& GetPackageName(void) const;
128 result SetPackageName(const Tizen::Base::String& packageName);
130 const Tizen::Base::String& GetMainmenuIcon(void) const;
131 result SetMainmenuIcon(const Tizen::Base::String& icon);
133 const Tizen::Base::String& GetSettingIcon(void) const;
134 result SetSettingIcon(const Tizen::Base::String& icon);
136 const Tizen::Base::String& GetQuickpanelIcon(void) const;
137 result SetQuickpanelIcon(const Tizen::Base::String& icon);
139 bool IsMainmenuVisible(void) const;
140 result SetMainmenuVisible(bool visible);
143 result AddName(const Tizen::Base::String& language, const Tizen::Base::String& name);
144 Tizen::Base::Collection::HashMap* GetNameList(void) const;
146 int GetUniqueId(void) const;
147 int GetPkgId(void) const;
149 result SetUniqueId(int id);
150 result SetPkgId(int id);
152 result AddAppControl(void);
154 int GetAppFeature(void) const;
155 result SetAppFeature(int feature);
158 static int CategoryHandler(const char* pCategoryName, void* pUserData);
159 static int MetadataHandler(const char* pKey, const char* pValue, void* pUserData);
162 _PackageAppInfoImpl(const _PackageAppInfoImpl& value);
163 _PackageAppInfoImpl& operator =(const _PackageAppInfoImpl& source);
166 Tizen::Base::String __appName;
167 Tizen::Base::String __appDiplayName;
168 Tizen::Base::String __appIconPath;
169 Tizen::Base::String __appSettingIconPath;
170 Tizen::Base::String __appNotificationIconPath;
171 Tizen::Base::String __appTempIconPath;
173 bool __launchingIconVisible;
177 Tizen::Base::String __name;
178 Tizen::Base::String __type;
179 Tizen::Base::String __default;
181 Tizen::Base::Collection::ArrayList* __pLaunchConditionImplList;
182 Tizen::Base::Collection::ArrayList* __pNotificationImplList;
183 Tizen::Base::Collection::ArrayList* __pAppFeatureImplList;
184 Tizen::Base::Collection::ArrayList* __pDataControlImplList;
185 Tizen::Base::Collection::ArrayList* __pAppControlImplList;
186 Tizen::Base::Collection::ArrayList* __pAppCategoryList;
188 Tizen::Base::String __mainmenuIcon;
189 Tizen::Base::String __settingIcon;
190 Tizen::Base::String __tickerIcon;
191 Tizen::Base::String __quickpanelIcon;
192 Tizen::Base::String __launchImageIcon;
194 Tizen::Base::String __packageName;
195 Tizen::Base::Collection::HashMap* __pNameList;
203 void* __pAppInfoHandle;
205 friend class PackageAppInfo;
207 }; // _PackageAppInfoImpl
209 class _OSP_EXPORT_ _LaunchConditionInfoImpl
210 : public Tizen::Base::Object
213 _LaunchConditionInfoImpl(void);
214 virtual ~_LaunchConditionInfoImpl(void);
216 const Tizen::Base::String& GetName(void) const;
217 result SetName(const Tizen::Base::String& name);
219 const Tizen::Base::String& GetValue(void) const;
220 result SetValue(const Tizen::Base::String& value);
223 _LaunchConditionInfoImpl(const _LaunchConditionInfoImpl& value);
224 _LaunchConditionInfoImpl& operator =(const _LaunchConditionInfoImpl& source);
226 Tizen::Base::String __name;
227 Tizen::Base::String __value;
229 }; // _LaunchConditionInfoImpl
231 class _OSP_EXPORT_ _NotificationInfoImpl
232 : public Tizen::Base::Object
235 _NotificationInfoImpl(void);
236 virtual ~_NotificationInfoImpl(void);
238 const Tizen::Base::String& GetName(void) const;
239 result SetName(const Tizen::Base::String& name);
241 const Tizen::Base::String& GetValue(void) const;
242 result SetValue(const Tizen::Base::String& value);
245 _NotificationInfoImpl(const _NotificationInfoImpl& value);
246 _NotificationInfoImpl& operator =(const _NotificationInfoImpl& source);
248 Tizen::Base::String __name;
249 Tizen::Base::String __value;
250 }; // _NotificationInfoImpl
252 class _OSP_EXPORT_ _AppFeatureInfoImpl
253 : public Tizen::Base::Object
256 _AppFeatureInfoImpl(void);
257 virtual ~_AppFeatureInfoImpl(void);
259 const Tizen::Base::String& GetName(void) const;
260 result SetName(const Tizen::Base::String& name);
262 const Tizen::Base::String& GetValue(void) const;
263 result SetValue(const Tizen::Base::String& value);
266 _AppFeatureInfoImpl(const _AppFeatureInfoImpl& value);
267 _AppFeatureInfoImpl& operator =(const _AppFeatureInfoImpl& source);
269 Tizen::Base::String __name;
270 Tizen::Base::String __value;
272 }; // _AppFeatureInfoImpl
274 class _OSP_EXPORT_ _DataControlTypeImpl
275 : public Tizen::Base::Object
278 _DataControlTypeImpl(void);
279 virtual ~_DataControlTypeImpl(void);
281 const Tizen::Base::String& GetType(void) const;
282 result SetType(const Tizen::Base::String& type);
284 const Tizen::Base::String& GetAccess(void) const;
285 result SetAccess(const Tizen::Base::String& access);
288 _DataControlTypeImpl(const _DataControlTypeImpl& value);
289 _DataControlTypeImpl& operator =(const _DataControlTypeImpl& source);
291 Tizen::Base::String __type;
292 Tizen::Base::String __access;
294 }; // _DataControlTypeImpl
296 class _OSP_EXPORT_ _DataControlInfoImpl
297 : public Tizen::Base::Object
300 _DataControlInfoImpl(void);
301 virtual ~_DataControlInfoImpl(void);
303 const Tizen::Base::String& GetProviderId(void) const;
304 result SetProviderId(const Tizen::Base::String& providerId);
306 Tizen::Base::Collection::ArrayList* GetControlTypeList(void) const;
307 result AddControlType(_DataControlTypeImpl* pControlType);
310 _DataControlInfoImpl(const _DataControlInfoImpl& value);
311 _DataControlInfoImpl& operator =(const _DataControlInfoImpl& source);
313 Tizen::Base::String __providerId;
314 Tizen::Base::Collection::ArrayList* __pControlTypeList;
316 }; // _DataControlInfoImpl
318 class _OSP_EXPORT_ _AppControlResolutionInfoImpl
319 : public Tizen::Base::Object
322 _AppControlResolutionInfoImpl(void);
323 virtual ~_AppControlResolutionInfoImpl(void);
325 Tizen::Base::String* GetUriScheme(void) const;
326 result SetUriScheme(Tizen::Base::String* pUriScheme);
328 Tizen::Base::String* GetMimeType(void) const;
329 result SetMimeType(Tizen::Base::String* pMimeType);
332 _AppControlResolutionInfoImpl(const _AppControlResolutionInfoImpl& value);
333 _AppControlResolutionInfoImpl& operator =(const _AppControlResolutionInfoImpl& source);
335 Tizen::Base::String* __pUriScheme;
336 Tizen::Base::String* __pMimeType;
338 }; // _AppControlResolutionInfoImpl
340 class _OSP_EXPORT_ _AppControlCapabilityInfoImpl
341 : public Tizen::Base::Object
344 _AppControlCapabilityInfoImpl(void);
345 virtual ~_AppControlCapabilityInfoImpl(void);
347 int GetUniqueId(void) const;
348 result SetUniqueId(int uniqueId);
350 int GetAppControlId(void) const;
351 result SetAppControlId(int uniqueId);
353 const Tizen::Base::String& GetOperationId(void) const;
354 result SetOperationId(const Tizen::Base::String& operationId);
356 Tizen::Base::Collection::ArrayList* GetResolutionList(void) const;
357 result AddResolution(_AppControlResolutionInfoImpl* pResolution);
360 _AppControlCapabilityInfoImpl(const _AppControlCapabilityInfoImpl& value);
361 _AppControlCapabilityInfoImpl& operator =(const _AppControlCapabilityInfoImpl& source);
365 Tizen::Base::String __operationId;
366 Tizen::Base::Collection::ArrayList* __pResolutionList;
368 }; // _AppControlCapabilityInfoImpl
370 class _OSP_EXPORT_ _AppControlInfoImpl
371 : public Tizen::Base::Object
374 _AppControlInfoImpl(void);
375 virtual ~_AppControlInfoImpl(void);
377 int GetUniqueId(void) const;
378 result SetUniqueId(int uniqueId);
380 const Tizen::Base::String& GetProviderId(void) const;
381 result SetProviderId(const Tizen::Base::String& providerId);
383 const Tizen::Base::String& GetCategory(void) const;
384 result SetCategory(const Tizen::Base::String& category);
386 Tizen::Base::Collection::ArrayList* GetCapabilityList(void) const;
387 result AddCapability(_AppControlCapabilityInfoImpl* pCapability);
390 _AppControlInfoImpl(const _AppControlInfoImpl& value);
391 _AppControlInfoImpl& operator =(const _AppControlInfoImpl& source);
394 Tizen::Base::String __providerId;
395 Tizen::Base::String __category;
396 Tizen::Base::Collection::ArrayList* __pCapabilityList;
398 }; // _AppControlInfoImpl
400 } } } // Tizen::App::Package
402 #endif // _FAPP_PKG_INTERNAL_APP_INFO_IMPL_H_