1 /*
2  * Copyright (c) 2022 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 /* SAID:1301 */
17 /* FeatureSystem: rdb_service */
18 #ifndef DISTRIBUTEDDATA_RELATIONAL_STORE_IPC_INTERFACE_H
19 #define DISTRIBUTEDDATA_RELATIONAL_STORE_IPC_INTERFACE_H
20 
21 namespace OHOS::DistributedRdb {
22 namespace RelationalStore {
23 enum class IRdbNotifierInterfaceCode {
24     RDB_NOTIFIER_CMD_SYNC_COMPLETE = 0,
25     RDB_NOTIFIER_CMD_AUTO_SYNC_COMPLETE,
26     RDB_NOTIFIER_CMD_DATA_CHANGE,
27     RDB_NOTIFIER_CMD_MAX
28 };
29 
30 enum class IResultSetInterfaceCode {
31     FUNC_GET_ROW_COUNT,
32     FUNC_GET_ALL_COLUMN_NAMES,
33     FUNC_ON_GO,
34     FUNC_CLOSE,
35     FUNC_GET_BLOB,
36     FUNC_GET_STRING,
37     FUNC_GET_INT,
38     FUNC_GET_LONG,
39     FUNC_GET_DOUBLE,
40     FUNC_IS_COLUMN_NULL,
41     FUNC_GO_TO,
42     FUNC_GO_TO_ROW,
43     FUNC_GO_TO_FISTR_ROW,
44     FUNC_GO_TO_LAST_ROW,
45     FUNC_GO_TO_NEXT_ROW,
46     FUNC_GO_TO_PREV_ROW,
47     FUNC_IS_AT_FIRST_ROW,
48     FUNC_IS_AT_LAST_ROW,
49     FUNC_IS_STARTED_ROW,
50     FUNC_IS_ENDED_ROW,
51     FUNC_IS_CLOSED,
52     FUNC_GET_COLUMN_COUNT,
53     FUNC_GET_COLUMN_INDEX,
54     FUNC_GET_COLUMN_NAME,
55     FUNC_GET_COLUMN_TYPE,
56     FUNC_GET_ROW_INDEX,
57     FUNC_BUTT,
58 };
59 
60 enum class KvStoreInterfaceCode {
61     GET_FEATURE_INTERFACE = 0,
62     REGISTER_DEATH_OBSERVER,
63 };
64 
65 enum class CloudKvStoreInterfaceCode {
66     GET_FEATURE_INTERFACE = 0
67 };
68 
69 enum class RdbServiceInterfaceCode {
70     RDB_SERVICE_CMD_OBTAIN_TABLE,
71     RDB_SERVICE_CMD_INIT_NOTIFIER,
72     RDB_SERVICE_CMD_SET_DIST_TABLE,
73     RDB_SERVICE_CMD_SYNC,
74     RDB_SERVICE_CMD_ASYNC,
75     RDB_SERVICE_CMD_SUBSCRIBE,
76     RDB_SERVICE_CMD_UNSUBSCRIBE,
77     RDB_SERVICE_CMD_REMOTE_QUERY,
78     RDB_SERVICE_CMD_DELETE,
79     RDB_SERVICE_CMD_REGISTER_AUTOSYNC_PROGRESS_OBSERVER,
80     RDB_SERVICE_CMD_UNREGISTER_AUTOSYNC_PROGRESS_OBSERVER,
81     RDB_SERVICE_CMD_NOTIFY_DATA_CHANGE,
82     RDB_SERVICE_CMD_SET_SEARCHABLE,
83     RDB_SERVICE_CMD_QUERY_SHARING_RESOURCE,
84     RDB_SERVICE_CMD_DISABLE,
85     RDB_SERVICE_CMD_ENABLE,
86     RDB_SERVICE_CMD_BEFORE_OPEN,
87     RDB_SERVICE_CMD_AFTER_OPEN,
88     RDB_SERVICE_CMD_GET_PASSWORD,
89     RDB_SERVICE_CMD_LOCK_CLOUD_CONTAINER,
90     RDB_SERVICE_CMD_UNLOCK_CLOUD_CONTAINER,
91     RDB_SERVICE_CMD_GET_DEBUG_INFO,
92     RDB_SERVICE_CMD_MAX
93 };
94 } // namespace RelationalStore
95 } // namespace OHOS::DistributedRdb
96 
97 #endif // DISTRIBUTEDDATA_RELATIONAL_STORE_IPC_INTERFACE_H