179a732c7Sopenharmony_ci/*
279a732c7Sopenharmony_ci * Copyright (c) 2023-2024 Huawei Device Co., Ltd.
379a732c7Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
479a732c7Sopenharmony_ci * you may not use this file except in compliance with the License.
579a732c7Sopenharmony_ci * You may obtain a copy of the License at
679a732c7Sopenharmony_ci *
779a732c7Sopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
879a732c7Sopenharmony_ci *
979a732c7Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1079a732c7Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1179a732c7Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1279a732c7Sopenharmony_ci * See the License for the specific language governing permissions and
1379a732c7Sopenharmony_ci * limitations under the License.
1479a732c7Sopenharmony_ci */
1579a732c7Sopenharmony_ci
1679a732c7Sopenharmony_ci#include "dm_radar_helper.h"
1779a732c7Sopenharmony_ci#include <errors.h>
1879a732c7Sopenharmony_ci#include <algorithm>
1979a732c7Sopenharmony_ci#include <sstream>
2079a732c7Sopenharmony_ci#include <iomanip>
2179a732c7Sopenharmony_ci#include <cJSON.h>
2279a732c7Sopenharmony_ci#include "dm_constants.h"
2379a732c7Sopenharmony_ci#include "dm_log.h"
2479a732c7Sopenharmony_ci#include "parameter.h"
2579a732c7Sopenharmony_ci
2679a732c7Sopenharmony_cinamespace OHOS {
2779a732c7Sopenharmony_cinamespace DistributedHardware {
2879a732c7Sopenharmony_ciDM_IMPLEMENT_SINGLE_INSTANCE(DmRadarHelper);
2979a732c7Sopenharmony_cibool DmRadarHelper::ReportDiscoverRegCallback(struct RadarInfo &info)
3079a732c7Sopenharmony_ci{
3179a732c7Sopenharmony_ci    return true;
3279a732c7Sopenharmony_ci}
3379a732c7Sopenharmony_ci
3479a732c7Sopenharmony_cibool DmRadarHelper::ReportDiscoverResCallback(struct RadarInfo &info)
3579a732c7Sopenharmony_ci{
3679a732c7Sopenharmony_ci    return true;
3779a732c7Sopenharmony_ci}
3879a732c7Sopenharmony_ci
3979a732c7Sopenharmony_cibool DmRadarHelper::ReportDiscoverUserRes(struct RadarInfo &info)
4079a732c7Sopenharmony_ci{
4179a732c7Sopenharmony_ci    return true;
4279a732c7Sopenharmony_ci}
4379a732c7Sopenharmony_ci
4479a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthStart(const std::string &peerUdid, const std::string &pkgName)
4579a732c7Sopenharmony_ci{
4679a732c7Sopenharmony_ci    return true;
4779a732c7Sopenharmony_ci}
4879a732c7Sopenharmony_ci
4979a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthOpenSession(struct RadarInfo &info)
5079a732c7Sopenharmony_ci{
5179a732c7Sopenharmony_ci    return true;
5279a732c7Sopenharmony_ci}
5379a732c7Sopenharmony_ci
5479a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthSessionOpenCb(struct RadarInfo &info)
5579a732c7Sopenharmony_ci{
5679a732c7Sopenharmony_ci    return true;
5779a732c7Sopenharmony_ci}
5879a732c7Sopenharmony_ci
5979a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthSendRequest(struct RadarInfo &info)
6079a732c7Sopenharmony_ci{
6179a732c7Sopenharmony_ci    return true;
6279a732c7Sopenharmony_ci}
6379a732c7Sopenharmony_ci
6479a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthPullAuthBox(struct RadarInfo &info)
6579a732c7Sopenharmony_ci{
6679a732c7Sopenharmony_ci    return true;
6779a732c7Sopenharmony_ci}
6879a732c7Sopenharmony_ci
6979a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthConfirmBox(struct RadarInfo &info)
7079a732c7Sopenharmony_ci{
7179a732c7Sopenharmony_ci    return true;
7279a732c7Sopenharmony_ci}
7379a732c7Sopenharmony_ci
7479a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthCreateGroup(struct RadarInfo &info)
7579a732c7Sopenharmony_ci{
7679a732c7Sopenharmony_ci    return true;
7779a732c7Sopenharmony_ci}
7879a732c7Sopenharmony_ci
7979a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthCreateGroupCb(std::string funcName, int32_t stageRes)
8079a732c7Sopenharmony_ci{
8179a732c7Sopenharmony_ci    return true;
8279a732c7Sopenharmony_ci}
8379a732c7Sopenharmony_ci
8479a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthPullPinBox(struct RadarInfo &info)
8579a732c7Sopenharmony_ci{
8679a732c7Sopenharmony_ci    return true;
8779a732c7Sopenharmony_ci}
8879a732c7Sopenharmony_ci
8979a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthInputPinBox(struct RadarInfo &info)
9079a732c7Sopenharmony_ci{
9179a732c7Sopenharmony_ci    return true;
9279a732c7Sopenharmony_ci}
9379a732c7Sopenharmony_ci
9479a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthAddGroup(struct RadarInfo &info)
9579a732c7Sopenharmony_ci{
9679a732c7Sopenharmony_ci    return true;
9779a732c7Sopenharmony_ci}
9879a732c7Sopenharmony_ci
9979a732c7Sopenharmony_cibool DmRadarHelper::ReportAuthAddGroupCb(std::string funcName, int32_t stageRes)
10079a732c7Sopenharmony_ci{
10179a732c7Sopenharmony_ci    return true;
10279a732c7Sopenharmony_ci}
10379a732c7Sopenharmony_ci
10479a732c7Sopenharmony_cibool DmRadarHelper::ReportNetworkOnline(struct RadarInfo &info)
10579a732c7Sopenharmony_ci{
10679a732c7Sopenharmony_ci    return true;
10779a732c7Sopenharmony_ci}
10879a732c7Sopenharmony_ci
10979a732c7Sopenharmony_cibool DmRadarHelper::ReportNetworkOffline(struct RadarInfo &info)
11079a732c7Sopenharmony_ci{
11179a732c7Sopenharmony_ci    return true;
11279a732c7Sopenharmony_ci}
11379a732c7Sopenharmony_ci
11479a732c7Sopenharmony_cibool DmRadarHelper::ReportDeleteTrustRelation(struct RadarInfo &info)
11579a732c7Sopenharmony_ci{
11679a732c7Sopenharmony_ci    return true;
11779a732c7Sopenharmony_ci}
11879a732c7Sopenharmony_ci
11979a732c7Sopenharmony_civoid DmRadarHelper::ReportGetTrustDeviceList(std::string hostName,
12079a732c7Sopenharmony_ci    std::string funcName, std::vector<DmDeviceInfo> &deviceInfoList, int32_t errCode)
12179a732c7Sopenharmony_ci{
12279a732c7Sopenharmony_ci    return;
12379a732c7Sopenharmony_ci}
12479a732c7Sopenharmony_ci
12579a732c7Sopenharmony_civoid DmRadarHelper::ReportCreatePinHolder(std::string hostName,
12679a732c7Sopenharmony_ci    int32_t channelId, std::string peerUdid, int32_t errCode, int32_t stageRes)
12779a732c7Sopenharmony_ci{
12879a732c7Sopenharmony_ci    return;
12979a732c7Sopenharmony_ci}
13079a732c7Sopenharmony_ci
13179a732c7Sopenharmony_civoid DmRadarHelper::ReportDestroyPinHolder(std::string hostName,
13279a732c7Sopenharmony_ci    std::string peerUdid, int32_t errCode, int32_t stageRes)
13379a732c7Sopenharmony_ci{
13479a732c7Sopenharmony_ci    return;
13579a732c7Sopenharmony_ci}
13679a732c7Sopenharmony_ci
13779a732c7Sopenharmony_civoid DmRadarHelper::ReportSendOrReceiveHolderMsg(int32_t bizStage, std::string funcName, std::string peerUdid)
13879a732c7Sopenharmony_ci{
13979a732c7Sopenharmony_ci    return;
14079a732c7Sopenharmony_ci}
14179a732c7Sopenharmony_ci
14279a732c7Sopenharmony_civoid DmRadarHelper::ReportDmBehavior(std::string hostName, std::string funcName, int32_t errCode)
14379a732c7Sopenharmony_ci{
14479a732c7Sopenharmony_ci    return;
14579a732c7Sopenharmony_ci}
14679a732c7Sopenharmony_ci
14779a732c7Sopenharmony_civoid DmRadarHelper::ReportGetLocalDevInfo(std::string hostName,
14879a732c7Sopenharmony_ci    std::string funcName, DmDeviceInfo &info, int32_t errCode)
14979a732c7Sopenharmony_ci{
15079a732c7Sopenharmony_ci    return;
15179a732c7Sopenharmony_ci}
15279a732c7Sopenharmony_ci
15379a732c7Sopenharmony_civoid DmRadarHelper::ReportGetDeviceInfo(std::string hostName,
15479a732c7Sopenharmony_ci    std::string funcName, DmDeviceInfo &info, int32_t errCode)
15579a732c7Sopenharmony_ci{
15679a732c7Sopenharmony_ci    return;
15779a732c7Sopenharmony_ci}
15879a732c7Sopenharmony_ci
15979a732c7Sopenharmony_cistd::string DmRadarHelper::ConvertHexToString(uint16_t hex)
16079a732c7Sopenharmony_ci{
16179a732c7Sopenharmony_ci    std::stringstream str;
16279a732c7Sopenharmony_ci    int32_t with = 3;
16379a732c7Sopenharmony_ci    str << std::hex << std::setw(with) << std::setfill('0') << hex;
16479a732c7Sopenharmony_ci    std::string hexStr = str.str();
16579a732c7Sopenharmony_ci    transform(hexStr.begin(), hexStr.end(), hexStr.begin(), ::toupper);
16679a732c7Sopenharmony_ci    return hexStr;
16779a732c7Sopenharmony_ci}
16879a732c7Sopenharmony_ci
16979a732c7Sopenharmony_cistd::string DmRadarHelper::GetDeviceInfoList(std::vector<DmDeviceInfo> &deviceInfoList)
17079a732c7Sopenharmony_ci{
17179a732c7Sopenharmony_ci    return "";
17279a732c7Sopenharmony_ci}
17379a732c7Sopenharmony_ci
17479a732c7Sopenharmony_cistd::string DmRadarHelper::GetAnonyUdid(std::string udid)
17579a732c7Sopenharmony_ci{
17679a732c7Sopenharmony_ci    if (udid.empty() || udid.length() < INVALID_UDID_LENGTH) {
17779a732c7Sopenharmony_ci        return "unknown";
17879a732c7Sopenharmony_ci    }
17979a732c7Sopenharmony_ci    return udid.substr(0, SUBSTR_UDID_LENGTH) + "**" + udid.substr(udid.length() - SUBSTR_UDID_LENGTH);
18079a732c7Sopenharmony_ci}
18179a732c7Sopenharmony_ci
18279a732c7Sopenharmony_cistd::string DmRadarHelper::GetAnonyLocalUdid()
18379a732c7Sopenharmony_ci{
18479a732c7Sopenharmony_ci    char localDeviceId[DEVICE_UUID_LENGTH] = {0};
18579a732c7Sopenharmony_ci    GetDevUdid(localDeviceId, DEVICE_UUID_LENGTH);
18679a732c7Sopenharmony_ci    return GetAnonyUdid(std::string(localDeviceId));
18779a732c7Sopenharmony_ci}
18879a732c7Sopenharmony_ci
18979a732c7Sopenharmony_ciint32_t DmRadarHelper::GetErrCode(int32_t errCode)
19079a732c7Sopenharmony_ci{
19179a732c7Sopenharmony_ci    auto flag = MAP_ERROR_CODE.find(errCode);
19279a732c7Sopenharmony_ci    if (flag == MAP_ERROR_CODE.end()) {
19379a732c7Sopenharmony_ci        return errCode;
19479a732c7Sopenharmony_ci    }
19579a732c7Sopenharmony_ci    return flag->second;
19679a732c7Sopenharmony_ci}
19779a732c7Sopenharmony_ci
19879a732c7Sopenharmony_ciIDmRadarHelper *CreateDmRadarInstance()
19979a732c7Sopenharmony_ci{
20079a732c7Sopenharmony_ci    return &DmRadarHelper::GetInstance();
20179a732c7Sopenharmony_ci}
20279a732c7Sopenharmony_ci} // namespace DistributedHardware
20379a732c7Sopenharmony_ci} // namespace OHOS
204