1c7afe287Sopenharmony_ci/*
2c7afe287Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd.
3c7afe287Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
4c7afe287Sopenharmony_ci * you may not use this file except in compliance with the License.
5c7afe287Sopenharmony_ci * You may obtain a copy of the License at
6c7afe287Sopenharmony_ci *
7c7afe287Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
8c7afe287Sopenharmony_ci *
9c7afe287Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
10c7afe287Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
11c7afe287Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12c7afe287Sopenharmony_ci * See the License for the specific language governing permissions and
13c7afe287Sopenharmony_ci * limitations under the License.
14c7afe287Sopenharmony_ci */
15c7afe287Sopenharmony_ci
16c7afe287Sopenharmony_ci#ifndef OHOS_CLOUD_OAID_COMMON_H
17c7afe287Sopenharmony_ci#define OHOS_CLOUD_OAID_COMMON_H
18c7afe287Sopenharmony_ci
19c7afe287Sopenharmony_ci#include <map>
20c7afe287Sopenharmony_ci#include "oaid_hilog_wreapper.h"
21c7afe287Sopenharmony_ci#include "errors.h"
22c7afe287Sopenharmony_ci
23c7afe287Sopenharmony_cinamespace OHOS {
24c7afe287Sopenharmony_cinamespace Cloud {
25c7afe287Sopenharmony_ci#if defined(__GNUC__) && (__GNUC__ >= 4)
26c7afe287Sopenharmony_ci    #define OAID_PUBLIC_API __attribute__((visibility ("default")))
27c7afe287Sopenharmony_ci    #define OAID_LOCAL_API __attribute__((visibility ("hidden")))
28c7afe287Sopenharmony_ci#else
29c7afe287Sopenharmony_ci    #define OAID_PUBLIC_API
30c7afe287Sopenharmony_ci    #define OAID_LOCAL_API
31c7afe287Sopenharmony_ci#endif
32c7afe287Sopenharmony_ci
33c7afe287Sopenharmony_cienum OAIDError : int32_t {
34c7afe287Sopenharmony_ci    ERR_OK = 0,
35c7afe287Sopenharmony_ci    ERR_INVALID_PARAM = 401,
36c7afe287Sopenharmony_ci    ERR_PERMISSION_ERROR = 403,
37c7afe287Sopenharmony_ci    ERR_SYSYTEM_ERROR = 17300001,
38c7afe287Sopenharmony_ci    ERR_NULL_POINTER = 17300002,
39c7afe287Sopenharmony_ci    ERR_WRITE_PARCEL_FAILED = 17300003,
40c7afe287Sopenharmony_ci};
41c7afe287Sopenharmony_ci
42c7afe287Sopenharmony_cistatic std::map<int32_t, std::string> oaidErrCodeMsgMap = {
43c7afe287Sopenharmony_ci    {ERR_INVALID_PARAM, "Invalid input parameter."},
44c7afe287Sopenharmony_ci    {ERR_SYSYTEM_ERROR, "System internal error."}
45c7afe287Sopenharmony_ci};
46c7afe287Sopenharmony_ci}  // namespace Cloud
47c7afe287Sopenharmony_ci}  // namespace OHOS
48c7afe287Sopenharmony_ci#endif  // OHOS_CLOUD_OAID_COMMON_H