4 * Copyright (c) 2000 - 2011 Samsung Electronics Co., Ltd. All rights reserved.
6 * Contact: Jayoun Lee <airjany@samsung.com>, Sewook Park <sewook7.park@samsung.com>,
7 * Jaeho Lee <jaeho81.lee@samsung.com>, Shobhit Srivastava <shobhit.s@samsung.com>
9 * Licensed under the Apache License, Version 2.0 (the "License");
10 * you may not use this file except in compliance with the License.
11 * You may obtain a copy of the License at
13 * http://www.apache.org/licenses/LICENSE-2.0
15 * Unless required by applicable law or agreed to in writing, software
16 * distributed under the License is distributed on an "AS IS" BASIS,
17 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 * See the License for the specific language governing permissions and
19 * limitations under the License.
25 * @file pkgmgr_parser_db.h
26 * @author Shobhit Srivastava <shobhit.s@samsung.com>
28 * @brief This file declares API to store/retrieve manifest data in DB
30 * @addtogroup APPLICATION_FRAMEWORK
33 * @defgroup PackageManagerParserDB
34 * @section Header Header file to include:
36 * #include <pkgmgr_parser_db.h>
42 #ifndef __PKGMGR_PARSER_DB_H__
43 #define __PKGMGR_PARSER_DB_H__
48 #include "pkgmgr_parser.h"
49 #include "pkgmgr_parser_feature.h"
51 #define PKGMGR_PARSER_DB_FILE "/opt/dbspace/.pkgmgr_parser.db"
52 #define PKGMGR_CERT_DB_FILE "/opt/dbspace/.pkgmgr_cert.db"
55 * @fn int pkgmgr_parser_insert_manifest_info_in_db(manifest_x *mfx)
56 * @brief This API inserts the parsed manifest info in db
58 * @par This API is for package-manager installer backends
59 * @par Sync (or) Async : Synchronous API
61 * @param[in] mfx pointer to manifest info
62 * @return 0 if success, error code(<0) if fail
65 * @see pkgmgr_parser_update_manifest_info_in_db()
66 * @see pkgmgr_parser_delete_manifest_info_from_db()
68 static int insert_manifest_data(manifest_x *mfx)
71 ret = pkgmgr_parser_insert_manifest_info_in_db(mfx);
78 int pkgmgr_parser_insert_manifest_info_in_db(manifest_x *mfx);
81 * @fn int pkgmgr_parser_update_manifest_info_in_db(manifest_x *mfx)
82 * @brief This API updates the manifest info in db
84 * @par This API is for package-manager installer backends
85 * @par Sync (or) Async : Synchronous API
87 * @param[in] mfx pointer to manifest info
88 * @return 0 if success, error code(<0) if fail
91 * @see pkgmgr_parser_insert_manifest_info_in_db()
92 * @see pkgmgr_parser_delete_manifest_info_from_db()
94 static int update_manifest_data(manifest_x *mfx)
97 ret = pkgmgr_parser_update_manifest_info_in_db(mfx);
104 int pkgmgr_parser_update_manifest_info_in_db(manifest_x *mfx);
107 * @fn int pkgmgr_parser_delete_manifest_info_from_db(manifest_x *mfx)
108 * @brief This API deletes the parsed manifest info from db
110 * @par This API is for package-manager installer backends
111 * @par Sync (or) Async : Synchronous API
113 * @param[in] mfx pointer to manifest info
114 * @return 0 if success, error code(<0) if fail
117 * @see pkgmgr_parser_update_manifest_info_in_db()
118 * @see pkgmgr_parser_insert_manifest_info_in_db()
120 static int delete_manifest_data(manifest_x *mfx)
123 ret = pkgmgr_parser_delete_manifest_info_from_db(mfx);
130 int pkgmgr_parser_delete_manifest_info_from_db(manifest_x *mfx);
132 int pkgmgr_parser_update_preload_info_in_db();
133 int pkgmgr_parser_check_and_create_db();
134 int pkgmgr_parser_initialize_db();
135 int pkgmgr_parser_delete_pkgid_info_from_db(const char *pkgid);
136 int pkgmgr_parser_delete_appid_info_from_db(const char *appid);
138 int pkgmgr_parser_update_enabled_pkg_info_in_db(const char *pkgid);
139 int pkgmgr_parser_update_disabled_pkg_info_in_db(const char *pkgid);
140 int pkgmgr_parser_insert_app_aliasid_info_in_db(void);
141 int pkgmgr_parser_update_app_aliasid_info_in_db(void);
147 #endif /* __PKGMGR_PARSER_DB_H__ */