Add new elements for component-based application
[platform/core/appfw/pkgmgr-info.git] / include / pkgmgrinfo_basic.h
1 #ifndef __PKGMGR_INFO_BASIC_H__
2 #define __PKGMGR_INFO_BASIC_H__
3
4 #include <glib.h>
5
6 #ifdef __cplusplus
7 extern "C" {
8 #endif
9
10 typedef struct metadata_x {
11         char *key;
12         char *value;
13 } metadata_x;
14
15 typedef struct permission_x {
16         char *type;
17         char *value;
18 } permission_x;
19
20 typedef struct icon_x {
21         char *text;
22         char *lang;
23         char *section;
24         char *size;
25         char *resolution;
26         char *dpi;
27 } icon_x;
28
29 typedef struct image_x {
30         char *text;
31         char *lang;
32         char *section;
33 } image_x;
34
35 typedef struct define_x {
36         char *path;
37         GList *allowed;
38         GList *request;
39 } define_x;
40
41 typedef struct datashare_x {
42         GList *define;
43         GList *request;
44 } datashare_x;
45
46 typedef struct description_x {
47         char *name;
48         char *text;
49         char *lang;
50 } description_x;
51
52 typedef struct label_x {
53         char *name;
54         char *text;
55         char *lang;
56 } label_x;
57
58 typedef struct author_x {
59         char *email;
60         char *href;
61         char *text;
62         char *lang;
63 } author_x;
64
65 typedef struct license_x {
66         char *text;
67         char *lang;
68 } license_x;
69
70 typedef struct condition_x {
71         char *name;
72         char *text;
73 } condition_x;
74
75 typedef struct notification_x {
76         char *name;
77         char *text;
78 } notification_x;
79
80 typedef struct appcontrol_x {
81         char *operation;
82         char *uri;
83         char *mime;
84         char *visibility;
85         char *id;
86         GList *privileges;
87 } appcontrol_x;
88
89 typedef struct compatibility_x {
90         char *name;
91         char *text;
92 } compatibility_x;
93
94 typedef struct plugin_x {
95         char *pkgid;
96         char *appid;
97         char *plugin_type;
98         char *plugin_name;
99 } plugin_x;
100
101 typedef struct datacontrol_x {
102         char *providerid;
103         char *access;
104         char *type;
105         char *trusted;
106         GList *privileges;
107 } datacontrol_x;
108
109 typedef struct splashscreen_x {
110         char *src;
111         char *type;
112         char *dpi;
113         char *orientation;
114         char *indicatordisplay;
115         char *operation;
116         char *color_depth;
117 } splashscreen_x;
118
119 typedef struct privilege_x {
120         char *type;
121         char *value;
122 } privilege_x;
123
124 typedef struct appdefined_privilege_x {
125         char *type;
126         char *value;
127         char *license;
128 } appdefined_privilege_x;
129
130 typedef struct dependency_x {
131         char *depends_on;
132         char *type;
133         char *required_version;
134 } dependency_x;
135
136 typedef struct component_x {
137         char *id;
138         char *type;
139         char *launch_mode;
140 } component_x;
141
142 typedef struct application_x {
143         char *appid;    /*attr*/
144         char *exec;     /*attr*/
145         char *nodisplay;        /*attr, default: "false"*/
146         char *multiple; /*attr, default: "false"*/
147         char *taskmanage;       /*attr, default: "true"*/
148         char *type;     /*attr*/
149         char *categories;       /*attr*/
150         char *extraid;  /*attr*/
151         char *hwacceleration;   /*attr, default: "default"*/
152         char *screenreader;     /*attr, default: "use-system-setting"*/
153         char *mainapp;  /*attr, default: "false"*/
154         char *package;  /*set from package_x*/
155         char *recentimage;      /*attr, default: "false"*/
156         char *launchcondition;  /*attr, default: "false"*/
157         char *indicatordisplay; /*attr, default: "true"*/
158         char *portraitimg;      /*attr*/
159         char *landscapeimg;     /*attr*/
160         char *effectimage_type; /*attr, default: "image"*/
161         char *guestmode_visibility;     /*attr, default: "true"*/
162         char *component;        /*no xml part*/
163         char *permission_type;  /*attr, default: "normal"*/
164         char *component_type;   /*attr, default: "uiapp"*/
165         char *preload;  /*no xml part*/
166         char *submode;  /*attr, default: "false"*/
167         char *submode_mainid;   /*attr, default: "false"*/
168         char *process_pool;     /*attr, default: "false"*/
169         char *installed_storage;
170         char *autorestart;      /*attr, default: "false"*/
171         char *onboot;   /*attr, default: "false"*/
172         char *support_disable;  /*set from package_x*/
173         char *ui_gadget;        /*attr, default: "false"*/
174         char *launch_mode;      /*attr, default: "single"*/
175         char *support_ambient;  /*attr, default: "false"*/
176         char *setup_appid;      /*attr*/
177         char *alias_appid;      /*attr*/
178         char *effective_appid;  /*attr*/
179         char *package_type;     /*set from package_x*/
180         char *tep_name; /*set from package_x*/
181         char *zip_mount_file;   /*set from package_x*/
182         char *root_path;        /*set from package_x*/
183         char *api_version;      /*set from package_x*/
184         char *for_all_users; /**< Flag that indicates if the package is available for everyone or for current user only, no xml part*/
185         char *is_disabled; /**< Flag that indicates if the application is disabled or not, no xml part*/
186         char *splash_screen_display; /*attr, default: "true"*/
187         char *external_path; /**< external storage path if exists, no xml part*/
188         char *package_system; /*set from package_x*/
189         char *removable; /*set from package_x*/
190         char *package_installed_time; /*installed time after finishing of installation*/
191         char *support_mode; /*attr*/
192         GList *label;   /*element*/
193         GList *icon;    /*element*/
194         GList *image;   /*element*/
195         GList *category; /*element*/
196         GList *metadata;        /*element*/
197         GList *permission;      /*element*/
198         GList *launchconditions;        /*element*/
199         GList *notification;    /*element*/
200         GList *datashare;       /*element*/
201         GList *datacontrol; /*element*/
202         GList *background_category; /*element*/
203         GList *appcontrol; /*element*/
204         GList *splashscreens; /*element*/
205         GList *components; /*element*/
206 } application_x;
207
208 typedef struct package_x {
209         char *for_all_users;            /**< Flag that indicates if the package is available for everyone or for current user only, no xml part*/
210         char *package;          /**< package name, attr*/
211         char *version;          /**< package version, attr*/
212         char *installlocation;          /**< package install location, attr, default: "internal-only"*/
213         char *ns;               /**<name space, attr*/
214         char *removable;                /**< package removable flag, no xml part*/
215         char *preload;          /**< package preload flag, no xml part*/
216         char *readonly;         /**< package readonly flag, no xml part*/
217         char *update;                   /**< package update flag, no xml part*/
218         char *appsetting;               /**< package app setting flag, attr, default: "false"*/
219         char *system;           /**< package system flag, no xml part*/
220         char *type;             /**< package type, attr*/
221         char *package_size;             /**< package size for external installation, attr*/
222         char *installed_time;           /**< installed time after finishing of installation, no xml part*/
223         char *installed_storage;                /**< package currently installed storage, no xml part*/
224         char *storeclient_id;           /**< id of store client for installed package, attr*/
225         char *mainapp_id;               /**< app id of main application, no xml part*/
226         char *package_url;              /**< app id of main application, attr*/
227         char *root_path;                /**< package root path, attr*/
228         char *csc_path;         /**< package csc path, attr*/
229         char *nodisplay_setting;                /**< package no display setting menu, attr, default: "false"*/
230         char *support_mode; /**< package support mode, attr*/
231         char *support_disable;          /**< package support disable flag, attr, default: "false"*/
232         char *api_version;              /**< minimum version of API package using, attr, default: patch_version trimmed version from tizen_full_version*/
233         char *tep_name; /*no xml part*/
234         char *zip_mount_file;   /*no xml part*/
235         char *backend_installer;                /**< package backend installer, attr*/
236         char *external_path; /**< external storage path if exists, no xml part*/
237         char *use_system_certs; /**< use system certificates, attr*/
238         GList *icon;            /**< package icon, element*/
239         GList *label;           /**< package label, element*/
240         GList *author;          /**< package author, element*/
241         GList *description;             /**< package description, element*/
242         GList *license;         /**< package license, no xml part*/
243         GList *privileges;      /**< package privileges, element*/
244         GList *appdefined_privileges;   /**<package appdefined privileges, element*/
245         GList *provides_appdefined_privileges;  /**<package providing appdefined privileges, element*/
246         GList *application;             /**< package's application, element*/
247         GList *compatibility;           /**< package compatibility, element*/
248         GList *deviceprofile;           /**< package device profile, element*/
249         GList *dependencies;            /**< package dependencies, element*/
250         GList *plugin;          /**< plugin execution list, no xml part*/
251 } package_x;
252
253 typedef struct updateinfo_x {
254         char *pkgid;
255         char *version;
256         int type;
257 } updateinfo_x;
258
259 typedef struct package_x manifest_x;
260
261 void pkgmgrinfo_basic_free_application(application_x *application);
262 void pkgmgrinfo_basic_free_package(package_x *package);
263
264 #ifdef __cplusplus
265 }
266 #endif /* __cplusplus */
267 #endif