1 /*
2  * Copyright (C) 2021 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 #ifndef PASTEBOARD_ERROR_H
16 #define PASTEBOARD_ERROR_H
17 
18 #include "errors.h"
19 #include "pasteboard_hilog.h"
20 
21 namespace OHOS {
22 namespace MiscServices {
23 constexpr int DIST_DATA_MGR_SYS_ID = 0xd;
24 constexpr int PASTEBOARD_ID = 8;
25 enum PasteboardModule {
26     PASTEBOARD_MODULE_SERVICE_ID = 0x06,
27 };
28 
29 enum class PasteboardError : int32_t {
30     E_OK = (DIST_DATA_MGR_SYS_ID << 21) | (PASTEBOARD_ID << 16),
31     INVALID_RETURN_VALUE_ERROR,
32     INVALID_PARAM_ERROR,
33     SERIALIZATION_ERROR,
34     DESERIALIZATION_ERROR,
35     OBTAIN_SERVER_SA_ERROR,
36     OTHER_ERROR,
37     CROSS_BORDER_ERROR,
38     PERMISSION_VERIFICATION_ERROR,
39     PARAM_ERROR,
40     TIMEOUT_ERROR,
41     CANCELED,
42     EXCEEDING_LIMIT_EXCEPTION,
43     TASK_PROCESSING,
44     PROHIBIT_COPY,
45     UNKNOWN_ERROR,
46     BACKUP_EXCEPTION,
47     REMOTE_EXCEPTION,
48     INVALID_DATA_ERROR,
49     NO_DATA_ERROR,
50     INVALID_USERID_ERROR,
51     REMOTE_TASK_ERROR,
52     INVALID_EVENT_ERROR,
53     GET_REMOTE_DATA_ERROR,
54     SEND_BROADCAST_ERROR,
55     SYNC_DATA_ERROR,
56     URI_GRANT_ERROR,
57     DP_LOAD_SERVICE_ERROR,
58     INVALID_OPTION_ERROR,
59     INVALID_OPERATION_ERROR,
60     BUTT_ERROR,
61     NO_TRUST_DEVICE_ERROR,
62     NO_USER_DATA_ERROR,
63     DATA_EXPIRED_ERROR,
64     CREATE_DATASHARE_SERVICE_ERROR,
65     QUERY_SETTING_NO_DATA_ERROR,
66     GET_LOCAL_DEVICE_ID_ERROR,
67     LOCAL_SWITCH_NOT_TURNED_ON,
68 };
69 
70 const std::map<PasteboardError, const char *> PasteboardErrorMap = {
71     {PasteboardError::E_OK, "E_OK"},
72     {PasteboardError::INVALID_RETURN_VALUE_ERROR, "INVALID_RETURN_VALUE_ERROR"},
73     {PasteboardError::INVALID_PARAM_ERROR, "INVALID_PARAM_ERROR"},
74     {PasteboardError::SERIALIZATION_ERROR, "SERIALIZATION_ERROR"},
75     {PasteboardError::DESERIALIZATION_ERROR, "DESERIALIZATION_ERROR"},
76     {PasteboardError::OBTAIN_SERVER_SA_ERROR, "OBTAIN_SERVER_SA_ERROR"},
77     {PasteboardError::OTHER_ERROR, "OTHER_ERROR"},
78     {PasteboardError::CROSS_BORDER_ERROR, "CROSS_BORDER_ERROR"},
79     {PasteboardError::PERMISSION_VERIFICATION_ERROR, "PERMISSION_VERIFICATION_ERROR"},
80     {PasteboardError::PARAM_ERROR, "PARAM_ERROR"},
81     {PasteboardError::TIMEOUT_ERROR, "TIMEOUT_ERROR"},
82     {PasteboardError::CANCELED, "CANCELED"},
83     {PasteboardError::EXCEEDING_LIMIT_EXCEPTION, "EXCEEDING_LIMIT_EXCEPTION"},
84     {PasteboardError::TASK_PROCESSING, "TASK_PROCESSING"},
85     {PasteboardError::PROHIBIT_COPY, "PROHIBIT_COPY"},
86     {PasteboardError::UNKNOWN_ERROR, "UNKNOWN_ERROR"},
87     {PasteboardError::BACKUP_EXCEPTION, "BACKUP_EXCEPTION"},
88     {PasteboardError::REMOTE_EXCEPTION, "REMOTE_EXCEPTION"},
89     {PasteboardError::INVALID_DATA_ERROR, "INVALID_DATA_ERROR"},
90     {PasteboardError::NO_DATA_ERROR, "NO_DATA_ERROR"},
91     {PasteboardError::INVALID_USERID_ERROR, "INVALID_USERID_ERROR"},
92     {PasteboardError::REMOTE_TASK_ERROR, "REMOTE_TASK_ERROR"},
93     {PasteboardError::INVALID_EVENT_ERROR, "INVALID_EVENT_ERROR"},
94     {PasteboardError::GET_REMOTE_DATA_ERROR, "GET_REMOTE_DATA_ERROR"},
95     {PasteboardError::SEND_BROADCAST_ERROR, "SEND_BROADCAST_ERROR"},
96     {PasteboardError::SYNC_DATA_ERROR, "SYNC_DATA_ERROR"},
97     {PasteboardError::URI_GRANT_ERROR, "URI_GRANT_ERROR"},
98     {PasteboardError::DP_LOAD_SERVICE_ERROR, "DP_LOAD_SERVICE_ERROR"},
99     {PasteboardError::INVALID_OPTION_ERROR, "INVALID_OPTION_ERROR"},
100     {PasteboardError::INVALID_OPERATION_ERROR, "INVALID_OPERATION_ERROR"},
101     {PasteboardError::BUTT_ERROR, "BUTT_ERROR"},
102     {PasteboardError::NO_TRUST_DEVICE_ERROR, "NO_TRUST_DEVICE_ERROR"},
103     {PasteboardError::NO_USER_DATA_ERROR, "NO_USER_DATA_ERROR"},
104     {PasteboardError::DATA_EXPIRED_ERROR, "DATA_EXPIRED_ERROR"},
105     {PasteboardError::CREATE_DATASHARE_SERVICE_ERROR, "CREATE_DATASHARE_SERVICE_ERROR"},
106     {PasteboardError::QUERY_SETTING_NO_DATA_ERROR, "QUERY_SETTING_NO_DATA_ERROR"},
107     {PasteboardError::GET_LOCAL_DEVICE_ID_ERROR, "GET_LOCAL_DEVICE_ID_ERROR"},
108     {PasteboardError::LOCAL_SWITCH_NOT_TURNED_ON, "LOCAL_SWITCH_NOT_TURNED_ON"},
109 };
110 
111 } // namespace MiscServices
112 } // namespace OHOS
113 #endif // PASTEBOARD_ERROR_H