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
21namespace OHOS {
22namespace MiscServices {
23constexpr int DIST_DATA_MGR_SYS_ID = 0xd;
24constexpr int PASTEBOARD_ID = 8;
25enum PasteboardModule {
26    PASTEBOARD_MODULE_SERVICE_ID = 0x06,
27};
28
29enum 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
70const 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