Implement dependency handler, parcelable, dbhandler (#101)
[platform/core/appfw/pkgmgr-info.git] / src / manager / pkginfo_manager.h
1 /*
2  * Copyright (c) 2021 Samsung Electronics Co., Ltd.
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 #ifndef __MANAGER_PKGINFO_MANAGER__
18 #define __MANAGER_PKGINFO_MANAGER__
19
20 #include <sys/types.h>
21
22 #include <glib.h>
23
24 #include "pkgmgrinfo_private.h"
25
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29
30 int _pkginfo_get_packages(uid_t uid,
31                 pkgmgrinfo_filter_x *filter, int flag, GHashTable *packages);
32
33 int _pkginfo_get_depends_on(uid_t uid,
34                 const char *pkgid, GList **dependencies);
35
36 int _appinfo_get_applications(uid_t db_uid, uid_t uid,
37                 pkgmgrinfo_filter_x *filter, int flag, GHashTable *packages);
38
39 char *_appinfo_get_localed_label(const char *appid, const char *locale,
40                 uid_t uid);
41
42 int _appinfo_get_datacontrol_info(const char *providerid,
43                 const char *type, uid_t uid, char **appid, char **access);
44
45 int _appinfo_get_datacontrol_appid(const char *providerid, uid_t uid,
46                 char **appid);
47
48 int _appinfo_get_datacontrol_trusted_info(const char *providerid,
49                 const char *type, uid_t uid, char **appid, char **trusted);
50
51 int _appinfo_get_datacontrol_privileges(
52                 const char *providerid, const char *type, uid_t uid,
53                 GList **privileges);
54
55 int _appinfo_get_appcontrol_privileges(
56                 const char *appid, const char *operation, uid_t uid, GList **privileges);
57
58 int _plugininfo_get_appids(
59                 const char *pkgid, const char *plugin_type,
60                 const char *plugin_name, GList **list);
61
62 int _get_pkg_updateinfo(const char *pkgid,
63                 GSList **update_info_list, uid_t uid);
64
65 int _pkginfo_set_usr_installed_storage(const char *pkgid,
66                 INSTALL_LOCATION location, const char *external_pkg_path,
67                 uid_t uid);
68
69 int _parser_execute_write_query(const char *query, uid_t uid);
70
71 int _parser_execute_write_queries(const char **queries, int len, uid_t uid);
72
73 int _parser_insert_manifest_info(manifest_x *mfx, uid_t uid);
74
75 int _parser_update_manifest_info(manifest_x *mfx, uid_t uid);
76
77 int _parser_delete_manifest_info(manifest_x *mfx, uid_t uid);
78
79 #ifdef __cplusplus
80 }
81 #endif
82 #endif  /* __MANAGER_PKGINFO_MANAGER__ */