Implement remote appcontrol feature
[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         GList *privileges;
86 } appcontrol_x;
87
88 typedef struct compatibility_x {
89         char *name;
90         char *text;
91 } compatibility_x;
92
93 typedef struct datacontrol_x {
94         char *providerid;
95         char *access;
96         char *type;
97         char *trusted;
98         GList *privileges;
99 } datacontrol_x;
100
101 typedef struct splashscreen_x {
102         char *src;
103         char *type;
104         char *dpi;
105         char *orientation;
106         char *indicatordisplay;
107         char *operation;
108         char *color_depth;
109 } splashscreen_x;
110
111 typedef struct privilege_x {
112         char *type;
113         char *value;
114 } privilege_x;
115
116 typedef struct appdefined_privilege_x {
117         char *type;
118         char *value;
119         char *license;
120 } appdefined_privilege_x;
121
122 typedef struct application_x {
123         char *appid;    /*attr*/
124         char *exec;     /*attr*/
125         char *nodisplay;        /*attr, default: "false"*/
126         char *multiple; /*attr, default: "false"*/
127         char *taskmanage;       /*attr, default: "true"*/
128         char *type;     /*attr*/
129         char *categories;       /*attr*/
130         char *extraid;  /*attr*/
131         char *hwacceleration;   /*attr, default: "default"*/
132         char *screenreader;     /*attr, default: "use-system-setting"*/
133         char *mainapp;  /*attr, default: "false"*/
134         char *package;  /*set from package_x*/
135         char *recentimage;      /*attr, default: "false"*/
136         char *launchcondition;  /*attr, default: "false"*/
137         char *indicatordisplay; /*attr, default: "true"*/
138         char *portraitimg;      /*attr*/
139         char *landscapeimg;     /*attr*/
140         char *effectimage_type; /*attr, default: "image"*/
141         char *guestmode_visibility;     /*attr, default: "true"*/
142         char *component;        /*no xml part*/
143         char *permission_type;  /*attr, default: "normal"*/
144         char *component_type;   /*attr, default: "uiapp"*/
145         char *preload;  /*no xml part*/
146         char *submode;  /*attr, default: "false"*/
147         char *submode_mainid;   /*attr, default: "false"*/
148         char *process_pool;     /*attr, default: "false"*/
149         char *installed_storage;
150         char *autorestart;      /*attr, default: "false"*/
151         char *onboot;   /*attr, default: "false"*/
152         char *support_disable;  /*set from package_x*/
153         char *ui_gadget;        /*attr, default: "false"*/
154         char *launch_mode;      /*attr, default: "single"*/
155         char *support_ambient;  /*attr, default: "false"*/
156         char *setup_appid;      /*attr*/
157         char *alias_appid;      /*attr*/
158         char *effective_appid;  /*attr*/
159         char *package_type;     /*set from package_x*/
160         char *tep_name; /*set from package_x*/
161         char *zip_mount_file;   /*set from package_x*/
162         char *root_path;        /*set from package_x*/
163         char *api_version;      /*set from package_x*/
164         char *for_all_users; /**< Flag that indicates if the package is available for everyone or for current user only, no xml part*/
165         char *is_disabled; /**< Flag that indicates if the application is disabled or not, no xml part*/
166         char *splash_screen_display; /*attr, default: "true"*/
167         char *external_path; /**< external storage path if exists, no xml part*/
168         char *package_system; /*set from package_x*/
169         char *removable; /*set from package_x*/
170         char *package_installed_time; /*installed time after finishing of installation*/
171         char *support_mode; /*attr*/
172         GList *label;   /*element*/
173         GList *icon;    /*element*/
174         GList *image;   /*element*/
175         GList *category; /*element*/
176         GList *metadata;        /*element*/
177         GList *permission;      /*element*/
178         GList *launchconditions;        /*element*/
179         GList *notification;    /*element*/
180         GList *datashare;       /*element*/
181         GList *datacontrol; /*element*/
182         GList *background_category; /*element*/
183         GList *appcontrol; /*element*/
184         GList *splashscreens; /*element*/
185 } application_x;
186
187 typedef struct package_x {
188         char *for_all_users;            /**< Flag that indicates if the package is available for everyone or for current user only, no xml part*/
189         char *package;          /**< package name, attr*/
190         char *version;          /**< package version, attr*/
191         char *installlocation;          /**< package install location, attr, default: "internal-only"*/
192         char *ns;               /**<name space, attr*/
193         char *removable;                /**< package removable flag, no xml part*/
194         char *preload;          /**< package preload flag, no xml part*/
195         char *readonly;         /**< package readonly flag, no xml part*/
196         char *update;                   /**< package update flag, no xml part*/
197         char *appsetting;               /**< package app setting flag, attr, default: "false"*/
198         char *system;           /**< package system flag, no xml part*/
199         char *type;             /**< package type, attr*/
200         char *package_size;             /**< package size for external installation, attr*/
201         char *installed_time;           /**< installed time after finishing of installation, no xml part*/
202         char *installed_storage;                /**< package currently installed storage, no xml part*/
203         char *storeclient_id;           /**< id of store client for installed package, attr*/
204         char *mainapp_id;               /**< app id of main application, no xml part*/
205         char *package_url;              /**< app id of main application, attr*/
206         char *root_path;                /**< package root path, attr*/
207         char *csc_path;         /**< package csc path, attr*/
208         char *nodisplay_setting;                /**< package no display setting menu, attr, default: "false"*/
209         char *support_mode; /**< package support mode, attr*/
210         char *support_disable;          /**< package support disable flag, attr, default: "false"*/
211         char *api_version;              /**< minimum version of API package using, attr, default: patch_version trimmed version from tizen_full_version*/
212         char *tep_name; /*no xml part*/
213         char *zip_mount_file;   /*no xml part*/
214         char *backend_installer;                /**< package backend installer, attr*/
215         char *external_path; /**< external storage path if exists, no xml part*/
216         char *use_system_certs; /**< use system certificates, attr*/
217         GList *icon;            /**< package icon, element*/
218         GList *label;           /**< package label, element*/
219         GList *author;          /**< package author, element*/
220         GList *description;             /**< package description, element*/
221         GList *license;         /**< package license, no xml part*/
222         GList *privileges;      /**< package privileges, element*/
223         GList *appdefined_privileges;   /**<package appdefined privileges, element*/
224         GList *provides_appdefined_privileges;  /**<package providing appdefined privileges, element*/
225         GList *application;             /**< package's application, element*/
226         GList *compatibility;           /**< package compatibility, element*/
227         GList *deviceprofile;           /**< package device profile, element*/
228 } package_x;
229
230 typedef struct updateinfo_x {
231         char *pkgid;
232         char *version;
233         int type;
234 } updateinfo_x;
235
236 typedef struct package_x manifest_x;
237
238 void pkgmgrinfo_basic_free_application(application_x *application);
239 void pkgmgrinfo_basic_free_package(package_x *package);
240
241 #ifdef __cplusplus
242 }
243 #endif /* __cplusplus */
244 #endif