1/* 2 * Copyright (c) 2024 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#include "dp_radar_helper.h" 17 18#include <cJSON.h> 19#include <errors.h> 20#include "hisysevent.h" 21#include "content_sensor_manager_utils.h" 22#include "distributed_device_profile_errors.h" 23#include "distributed_device_profile_log.h" 24#include "profile_utils.h" 25 26namespace OHOS { 27namespace DistributedDeviceProfile { 28IMPLEMENT_SINGLE_INSTANCE(DpRadarHelper); 29namespace { 30const std::string TAG = "DpRadarHelper"; 31} 32void DpRadarHelper::ReportCheckDpSa(int32_t stageRes) 33{ 34 int32_t res = ERR_OK; 35 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 36 res = HiSysEventWrite( 37 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 38 DP_DATA_OPERATE_BEHAVIOR, 39 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 40 "ORG_PKG", ORGPKG_NAME, 41 "FUNC", "GetDeviceProfileService", 42 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SA), 43 "BIZ_STAGE", static_cast<int32_t>(GetSaStage::DP_CHECK_SA), 44 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 45 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_START), 46 "TO_CALL_PKG", SA_MAGR_NAME); 47 } else { 48 res = HiSysEventWrite( 49 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 50 DP_DATA_OPERATE_BEHAVIOR, 51 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 52 "ORG_PKG", ORGPKG_NAME, 53 "FUNC", "GetDeviceProfileService", 54 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SA), 55 "BIZ_STAGE", static_cast<int32_t>(GetSaStage::DP_CHECK_SA), 56 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 57 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_START), 58 "TO_CALL_PKG", SA_MAGR_NAME, 59 "ERROR_CODE", DP_LOAD_SERVICE_ERR); 60 } 61 if (res != ERR_OK) { 62 HILOGD("failed"); 63 } 64 return; 65} 66 67void DpRadarHelper::ReportLoadDpSa(int32_t stageRes) 68{ 69 int32_t res = ERR_OK; 70 if (stageRes == static_cast<int32_t>(StageRes::STAGE_IDLE)) { 71 res = HiSysEventWrite( 72 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 73 DP_DATA_OPERATE_BEHAVIOR, 74 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 75 "ORG_PKG", ORGPKG_NAME, 76 "FUNC", "LoadDeviceProfileService", 77 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SA), 78 "BIZ_STAGE", static_cast<int32_t>(GetSaStage::DP_LOAD_SA), 79 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 80 "TO_CALL_PKG", SA_MAGR_NAME); 81 } else { 82 res = HiSysEventWrite( 83 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 84 DP_DATA_OPERATE_BEHAVIOR, 85 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 86 "ORG_PKG", ORGPKG_NAME, 87 "FUNC", "LoadDeviceProfileService", 88 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SA), 89 "BIZ_STAGE", static_cast<int32_t>(GetSaStage::DP_LOAD_SA), 90 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 91 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 92 "TO_CALL_PKG", SA_MAGR_NAME, 93 "ERROR_CODE", DP_LOAD_SERVICE_ERR); 94 } 95 if (res != ERR_OK) { 96 HILOGD("failed"); 97 } 98 return; 99} 100 101void DpRadarHelper::ReportLoadDpSaCb(int32_t stageRes) 102{ 103 int32_t res = ERR_OK; 104 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 105 res = HiSysEventWrite( 106 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 107 DP_DATA_OPERATE_BEHAVIOR, 108 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 109 "ORG_PKG", ORGPKG_NAME, 110 "FUNC", "LoadSystemAbilitySuccess", 111 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SA), 112 "BIZ_STAGE", static_cast<int32_t>(GetSaStage::DP_LOAD_SA), 113 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 114 "HOST_NAME", SA_MAGR_NAME); 115 } else { 116 res = HiSysEventWrite( 117 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 118 DP_DATA_OPERATE_BEHAVIOR, 119 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 120 "ORG_PKG", ORGPKG_NAME, 121 "FUNC", "LoadSystemAbilityFail", 122 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SA), 123 "BIZ_STAGE", static_cast<int32_t>(GetSaStage::DP_LOAD_SA), 124 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 125 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 126 "HOST_NAME", SA_MAGR_NAME, 127 "ERROR_CODE", DP_LOAD_SERVICE_ERR); 128 } 129 if (res != ERR_OK) { 130 HILOGD("failed"); 131 } 132 return; 133} 134 135void DpRadarHelper::ReportSaCheckAuth(int32_t stageRes) 136{ 137 int res = ERR_OK; 138 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 139 res = HiSysEventWrite( 140 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 141 DP_DATA_OPERATE_BEHAVIOR, 142 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 143 "ORG_PKG", ORGPKG_NAME, 144 "FUNC", "IsCallerTrust", 145 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SA), 146 "BIZ_STAGE", static_cast<int32_t>(GetSaStage::DP_SA_CHACK_AUTH), 147 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 148 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END)); 149 } else { 150 res = HiSysEventWrite( 151 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 152 DP_DATA_OPERATE_BEHAVIOR, 153 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 154 "ORG_PKG", ORGPKG_NAME, 155 "FUNC", "IsCallerTrust", 156 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SA), 157 "BIZ_STAGE", static_cast<int32_t>(GetSaStage::DP_SA_CHACK_AUTH), 158 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 159 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 160 "ERROR_CODE", ERR_PERMISSION_DENIED); 161 } 162 if (res != ERR_OK) { 163 HILOGD("failed"); 164 } 165 return; 166} 167 168void DpRadarHelper::ReportPutAclProfile(int32_t errCode, const AccessControlProfile& accessControlProfile) 169{ 170 int res = DP_SUCCESS; 171 int32_t stageRes = (errCode == DP_SUCCESS) ? 172 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 173 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 174 res = HiSysEventWrite( 175 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 176 DP_DATA_OPERATE_BEHAVIOR, 177 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 178 "ORG_PKG", ORGPKG_NAME, 179 "FUNC", "PutAccessControlProfile", 180 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_ACL_PROFILE), 181 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 182 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 183 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 184 "LOCAL_UDID", GetLocalUdid(), 185 "PEER_UDID", GetPeerUdid(accessControlProfile.GetAccessee().GetAccesseeDeviceId()), 186 "TO_CALL_PKG", RDB_NAME, 187 "EXTRA_INFO", accessControlProfile.dump()); 188 } else { 189 res = HiSysEventWrite( 190 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 191 DP_DATA_OPERATE_BEHAVIOR, 192 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 193 "ORG_PKG", ORGPKG_NAME, 194 "FUNC", "PutAccessControlProfile", 195 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_ACL_PROFILE), 196 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 197 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 198 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 199 "LOCAL_UDID", GetLocalUdid(), 200 "PEER_UDID", GetPeerUdid(accessControlProfile.GetAccessee().GetAccesseeDeviceId()), 201 "TO_CALL_PKG", RDB_NAME, 202 "ERROR_CODE", errCode, 203 "EXTRA_INFO", accessControlProfile.dump()); 204 } 205 if (res != DP_SUCCESS) { 206 HILOGD("failed"); 207 } 208 return; 209} 210 211void DpRadarHelper::ReportUpdateAclProfile(int32_t errCode, const AccessControlProfile& accessControlProfile) 212{ 213 int res = DP_SUCCESS; 214 int32_t stageRes = (errCode == DP_SUCCESS) ? 215 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 216 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 217 res = HiSysEventWrite( 218 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 219 DP_DATA_OPERATE_BEHAVIOR, 220 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 221 "ORG_PKG", ORGPKG_NAME, 222 "FUNC", "UpdateAccessControlProfile", 223 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_UPDATE_ACL_PROFILE), 224 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 225 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 226 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 227 "LOCAL_UDID", GetLocalUdid(), 228 "PEER_UDID", GetPeerUdid(accessControlProfile.GetAccessee().GetAccesseeDeviceId()), 229 "TO_CALL_PKG", RDB_NAME, 230 "EXTRA_INFO", accessControlProfile.dump()); 231 } else { 232 res = HiSysEventWrite( 233 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 234 DP_DATA_OPERATE_BEHAVIOR, 235 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 236 "ORG_PKG", ORGPKG_NAME, 237 "FUNC", "UpdateAccessControlProfile", 238 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_UPDATE_ACL_PROFILE), 239 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 240 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 241 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 242 "LOCAL_UDID", GetLocalUdid(), 243 "PEER_UDID", GetPeerUdid(accessControlProfile.GetAccessee().GetAccesseeDeviceId()), 244 "TO_CALL_PKG", RDB_NAME, 245 "ERROR_CODE", errCode, 246 "EXTRA_INFO", accessControlProfile.dump()); 247 } 248 if (res != DP_SUCCESS) { 249 HILOGD("failed"); 250 } 251 return; 252} 253 254void DpRadarHelper::ReportGetTrustProfile(int32_t errCode, const std::string& deviceId, 255 const TrustDeviceProfile& trustDeviceProfile) 256{ 257 int res = DP_SUCCESS; 258 int32_t stageRes = (errCode == DP_SUCCESS) ? 259 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 260 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 261 res = HiSysEventWrite( 262 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 263 DP_DATA_OPERATE_BEHAVIOR, 264 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 265 "ORG_PKG", ORGPKG_NAME, 266 "FUNC", "GetTrustDeviceProfile", 267 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_TRUST_PROFILE), 268 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 269 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 270 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 271 "LOCAL_UDID", GetLocalUdid(), 272 "PEER_UDID", GetPeerUdid(deviceId), 273 "TO_CALL_PKG", RDB_NAME, 274 "EXTRA_INFO", trustDeviceProfile.dump()); 275 } else { 276 res = HiSysEventWrite( 277 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 278 DP_DATA_OPERATE_BEHAVIOR, 279 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 280 "ORG_PKG", ORGPKG_NAME, 281 "FUNC", "GetTrustDeviceProfile", 282 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_TRUST_PROFILE), 283 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 284 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 285 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 286 "LOCAL_UDID", GetLocalUdid(), 287 "PEER_UDID", GetPeerUdid(deviceId), 288 "TO_CALL_PKG", RDB_NAME, 289 "ERROR_CODE", errCode, 290 "EXTRA_INFO", trustDeviceProfile.dump()); 291 } 292 if (res != DP_SUCCESS) { 293 HILOGD("failed"); 294 } 295 return; 296} 297 298void DpRadarHelper::ReportGetAllTrustProfile(int32_t errCode, std::vector<TrustDeviceProfile>& trustDeviceProfiles) 299{ 300 int res = DP_SUCCESS; 301 int32_t stageRes = (errCode == DP_SUCCESS) ? 302 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 303 std::string extraInfo = ""; 304 size_t size = trustDeviceProfiles.size() > 0 ? (trustDeviceProfiles.size() - 1) : 0; 305 for (size_t i = 0; i < trustDeviceProfiles.size(); i++) { 306 extraInfo += trustDeviceProfiles[i].dump(); 307 if (i != size) { 308 extraInfo += ","; 309 } 310 } 311 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 312 res = HiSysEventWrite( 313 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 314 DP_DATA_OPERATE_BEHAVIOR, 315 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 316 "ORG_PKG", ORGPKG_NAME, 317 "FUNC", "GetAllTrustDeviceProfile", 318 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_ALL_TRUST_PROFILE), 319 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 320 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 321 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 322 "LOCAL_UDID", GetLocalUdid(), 323 "PEER_UDID_LIST", GetPeerUdidList(trustDeviceProfiles), 324 "TO_CALL_PKG", RDB_NAME, 325 "EXTRA_INFO", extraInfo); 326 } else { 327 res = HiSysEventWrite( 328 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 329 DP_DATA_OPERATE_BEHAVIOR, 330 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 331 "ORG_PKG", ORGPKG_NAME, 332 "FUNC", "GetAllTrustDeviceProfile", 333 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_ALL_TRUST_PROFILE), 334 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 335 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 336 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 337 "LOCAL_UDID", GetLocalUdid(), 338 "PEER_UDID_LIST", GetPeerUdidList(trustDeviceProfiles), 339 "TO_CALL_PKG", RDB_NAME, 340 "ERROR_CODE", errCode, 341 "EXTRA_INFO", extraInfo); 342 } 343 if (res != DP_SUCCESS) { 344 HILOGD("failed"); 345 } 346 return; 347} 348 349void DpRadarHelper::ReportGetAclProfile(int32_t errCode, std::vector<AccessControlProfile>& accessControlProfiles) 350{ 351 int res = DP_SUCCESS; 352 int32_t stageRes = (errCode == DP_SUCCESS) ? 353 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 354 std::string extraInfo = ""; 355 size_t size = accessControlProfiles.size() > 0 ? (accessControlProfiles.size() - 1) : 0; 356 for (size_t i = 0; i < accessControlProfiles.size(); i++) { 357 extraInfo += accessControlProfiles[i].dump(); 358 if (i != size) { 359 extraInfo += ","; 360 } 361 } 362 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 363 res = HiSysEventWrite( 364 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 365 DP_DATA_OPERATE_BEHAVIOR, 366 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 367 "ORG_PKG", ORGPKG_NAME, 368 "FUNC", "GetAccessControlProfile", 369 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_ACL_PROFILE), 370 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 371 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 372 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 373 "LOCAL_UDID", GetLocalUdid(), 374 "PEER_UDID_LIST", GetPeerUdidList(accessControlProfiles), 375 "TO_CALL_PKG", RDB_NAME, 376 "EXTRA_INFO", extraInfo); 377 } else { 378 res = HiSysEventWrite( 379 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 380 DP_DATA_OPERATE_BEHAVIOR, 381 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 382 "ORG_PKG", ORGPKG_NAME, 383 "FUNC", "GetAccessControlProfile", 384 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_ACL_PROFILE), 385 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 386 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 387 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 388 "LOCAL_UDID", GetLocalUdid(), 389 "PEER_UDID_LIST", GetPeerUdidList(accessControlProfiles), 390 "TO_CALL_PKG", RDB_NAME, 391 "ERROR_CODE", errCode, 392 "EXTRA_INFO", extraInfo); 393 } 394 if (res != DP_SUCCESS) { 395 HILOGD("failed"); 396 } 397 return; 398} 399 400void DpRadarHelper::ReportGetAllAclProfile(int32_t errCode, std::vector<AccessControlProfile>& accessControlProfiles) 401{ 402 int res = DP_SUCCESS; 403 int32_t stageRes = (errCode == DP_SUCCESS) ? 404 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 405 std::string extraInfo = ""; 406 size_t size = accessControlProfiles.size() > 0 ? (accessControlProfiles.size() - 1) : 0; 407 for (size_t i = 0; i < accessControlProfiles.size(); i++) { 408 extraInfo += accessControlProfiles[i].dump(); 409 if (i != size) { 410 extraInfo += ","; 411 } 412 } 413 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 414 res = HiSysEventWrite( 415 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 416 DP_DATA_OPERATE_BEHAVIOR, 417 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 418 "ORG_PKG", ORGPKG_NAME, 419 "FUNC", "GetAllAccessControlProfile", 420 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_ALL_ACL_PROFILE), 421 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 422 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 423 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 424 "LOCAL_UDID", GetLocalUdid(), 425 "PEER_UDID_LIST", GetPeerUdidList(accessControlProfiles), 426 "TO_CALL_PKG", RDB_NAME, 427 "EXTRA_INFO", extraInfo); 428 } else { 429 res = HiSysEventWrite( 430 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 431 DP_DATA_OPERATE_BEHAVIOR, 432 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 433 "ORG_PKG", ORGPKG_NAME, 434 "FUNC", "GetAllAccessControlProfile", 435 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_ALL_ACL_PROFILE), 436 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 437 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 438 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 439 "LOCAL_UDID", GetLocalUdid(), 440 "PEER_UDID_LIST", GetPeerUdidList(accessControlProfiles), 441 "TO_CALL_PKG", RDB_NAME, 442 "ERROR_CODE", errCode, 443 "EXTRA_INFO", extraInfo); 444 } 445 if (res != DP_SUCCESS) { 446 HILOGD("failed"); 447 } 448 return; 449} 450 451void DpRadarHelper::ReportDeleteAclProfile(int32_t errCode) 452{ 453 int res = DP_SUCCESS; 454 int32_t stageRes = (errCode == DP_SUCCESS) ? 455 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 456 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 457 res = HiSysEventWrite( 458 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 459 DP_DATA_OPERATE_BEHAVIOR, 460 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 461 "ORG_PKG", ORGPKG_NAME, 462 "FUNC", "DeleteAccessControlProfile", 463 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_DELETE_ACL_PROFILE), 464 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 465 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 466 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 467 "LOCAL_UDID", GetLocalUdid(), 468 "TO_CALL_PKG", RDB_NAME); 469 } else { 470 res = HiSysEventWrite( 471 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 472 DP_DATA_OPERATE_BEHAVIOR, 473 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 474 "ORG_PKG", ORGPKG_NAME, 475 "FUNC", "DeleteAccessControlProfile", 476 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_DELETE_ACL_PROFILE), 477 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 478 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 479 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 480 "LOCAL_UDID", GetLocalUdid(), 481 "TO_CALL_PKG", RDB_NAME, 482 "ERROR_CODE", errCode); 483 } 484 if (res != DP_SUCCESS) { 485 HILOGD("failed"); 486 } 487 return; 488} 489 490void DpRadarHelper::ReportPutServiceProfile(int32_t errCode, const ServiceProfile& serviceProfile) 491{ 492 int res = DP_SUCCESS; 493 int32_t stageRes = (errCode == DP_SUCCESS) ? 494 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 495 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 496 res = HiSysEventWrite( 497 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 498 DP_DATA_OPERATE_BEHAVIOR, 499 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 500 "ORG_PKG", ORGPKG_NAME, 501 "FUNC", "PutServiceProfile", 502 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_SERVICE_PROFILE), 503 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 504 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_IDLE), 505 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_START), 506 "LOCAL_UDID", GetLocalUdid(), 507 "PEER_UDID", GetPeerUdid(serviceProfile.GetDeviceId()), 508 "TO_CALL_PKG", RDB_NAME, 509 "EXTRA_INFO", serviceProfile.dump()); 510 } else { 511 res = HiSysEventWrite( 512 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 513 DP_DATA_OPERATE_BEHAVIOR, 514 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 515 "ORG_PKG", ORGPKG_NAME, 516 "FUNC", "PutServiceProfile", 517 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_SERVICE_PROFILE), 518 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 519 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 520 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 521 "LOCAL_UDID", GetLocalUdid(), 522 "PEER_UDID", GetPeerUdid(serviceProfile.GetDeviceId()), 523 "TO_CALL_PKG", RDB_NAME, 524 "ERROR_CODE", errCode, 525 "EXTRA_INFO", serviceProfile.dump()); 526 } 527 if (res != DP_SUCCESS) { 528 HILOGD("failed"); 529 } 530 return; 531} 532 533void DpRadarHelper::ReportPutServiceProfileBatch(int32_t errCode, const std::vector<ServiceProfile>& serviceProfiles) 534{ 535 int res = DP_SUCCESS; 536 int32_t stageRes = (errCode == DP_SUCCESS) ? 537 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 538 std::string extraInfo = ""; 539 size_t size = serviceProfiles.size() > 0 ? (serviceProfiles.size() - 1) : 0; 540 for (size_t i = 0; i < serviceProfiles.size(); i++) { 541 extraInfo += serviceProfiles[i].dump(); 542 if (i != size) { 543 extraInfo += ","; 544 } 545 } 546 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 547 res = HiSysEventWrite( 548 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 549 DP_DATA_OPERATE_BEHAVIOR, 550 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 551 "ORG_PKG", ORGPKG_NAME, 552 "FUNC", "PutServiceProfileBatch", 553 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_SERVICE_PROFILE), 554 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 555 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_IDLE), 556 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_START), 557 "LOCAL_UDID", GetLocalUdid(), 558 "PEER_UDID_LIST", GetPeerUdidList(serviceProfiles), 559 "TO_CALL_PKG", RDB_NAME, 560 "EXTRA_INFO", extraInfo); 561 } else { 562 res = HiSysEventWrite( 563 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 564 DP_DATA_OPERATE_BEHAVIOR, 565 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 566 "ORG_PKG", ORGPKG_NAME, 567 "FUNC", "PutServiceProfileBatch", 568 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_SERVICE_PROFILE), 569 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 570 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 571 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 572 "LOCAL_UDID", GetLocalUdid(), 573 "PEER_UDID_LIST", GetPeerUdidList(serviceProfiles), 574 "TO_CALL_PKG", RDB_NAME, 575 "ERROR_CODE", errCode, 576 "EXTRA_INFO", extraInfo); 577 } 578 if (res != DP_SUCCESS) { 579 HILOGD("failed"); 580 } 581 return; 582} 583 584void DpRadarHelper::ReportPutCharProfile(int32_t errCode, const CharacteristicProfile& characteristicProfile) 585{ 586 int res = DP_SUCCESS; 587 int32_t stageRes = (errCode == DP_SUCCESS) ? 588 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 589 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 590 res = HiSysEventWrite( 591 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 592 DP_DATA_OPERATE_BEHAVIOR, 593 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 594 "ORG_PKG", ORGPKG_NAME, 595 "FUNC", "PutCharacteristicProfile", 596 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_CHAR_PROFILE), 597 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 598 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_IDLE), 599 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_START), 600 "LOCAL_UDID", GetLocalUdid(), 601 "PEER_UDID", GetPeerUdid(characteristicProfile.GetDeviceId()), 602 "TO_CALL_PKG", RDB_NAME, 603 "EXTRA_INFO", characteristicProfile.dump()); 604 } else { 605 res = HiSysEventWrite( 606 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 607 DP_DATA_OPERATE_BEHAVIOR, 608 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 609 "ORG_PKG", ORGPKG_NAME, 610 "FUNC", "PutCharacteristicProfile", 611 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_CHAR_PROFILE), 612 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 613 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 614 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 615 "LOCAL_UDID", GetLocalUdid(), 616 "PEER_UDID", GetPeerUdid(characteristicProfile.GetDeviceId()), 617 "TO_CALL_PKG", RDB_NAME, 618 "ERROR_CODE", errCode, 619 "EXTRA_INFO", characteristicProfile.dump()); 620 } 621 if (res != DP_SUCCESS) { 622 HILOGD("failed"); 623 } 624 return; 625} 626 627void DpRadarHelper::ReportPutCharProfileBatch(int32_t errCode, 628 const std::vector<CharacteristicProfile>& characteristicProfiles) 629{ 630 int res = DP_SUCCESS; 631 int32_t stageRes = (errCode == DP_SUCCESS) ? 632 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 633 std::string extraInfo = ""; 634 size_t size = characteristicProfiles.size() > 0 ? (characteristicProfiles.size() - 1) : 0; 635 for (size_t i = 0; i < characteristicProfiles.size(); i++) { 636 extraInfo += characteristicProfiles[i].dump(); 637 if (i != size) { 638 extraInfo += ","; 639 } 640 } 641 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 642 res = HiSysEventWrite( 643 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 644 DP_DATA_OPERATE_BEHAVIOR, 645 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 646 "ORG_PKG", ORGPKG_NAME, 647 "FUNC", "PutCharacteristicProfileBatch", 648 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_CHAR_PROFILE), 649 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 650 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_IDLE), 651 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_START), 652 "LOCAL_UDID", GetLocalUdid(), 653 "PEER_UDID_LIST", GetPeerUdidList(characteristicProfiles), 654 "TO_CALL_PKG", RDB_NAME, 655 "EXTRA_INFO", extraInfo); 656 } else { 657 res = HiSysEventWrite( 658 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 659 DP_DATA_OPERATE_BEHAVIOR, 660 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 661 "ORG_PKG", ORGPKG_NAME, 662 "FUNC", "PutCharacteristicProfileBatch", 663 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_PUT_CHAR_PROFILE), 664 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 665 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 666 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 667 "LOCAL_UDID", GetLocalUdid(), 668 "PEER_UDID_LIST", GetPeerUdidList(characteristicProfiles), 669 "TO_CALL_PKG", RDB_NAME, 670 "ERROR_CODE", errCode, 671 "EXTRA_INFO", extraInfo); 672 } 673 if (res != DP_SUCCESS) { 674 HILOGD("failed"); 675 } 676 return; 677} 678 679void DpRadarHelper::ReportGetDeviceProfile(int32_t errCode, const std::string& deviceId, DeviceProfile& deviceProfile) 680{ 681 int res = DP_SUCCESS; 682 int32_t stageRes = (errCode == DP_SUCCESS) ? 683 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 684 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 685 res = HiSysEventWrite( 686 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 687 DP_DATA_OPERATE_BEHAVIOR, 688 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 689 "ORG_PKG", ORGPKG_NAME, 690 "FUNC", "GetDeviceProfile", 691 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_DEVICE_PROFILE), 692 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 693 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 694 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 695 "LOCAL_UDID", GetLocalUdid(), 696 "PEER_UDID", GetPeerUdid(deviceId), 697 "TO_CALL_PKG", RDB_NAME, 698 "EXTRA_INFO", deviceProfile.dump()); 699 } else { 700 res = HiSysEventWrite( 701 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 702 DP_DATA_OPERATE_BEHAVIOR, 703 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 704 "ORG_PKG", ORGPKG_NAME, 705 "FUNC", "GetDeviceProfile", 706 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_DEVICE_PROFILE), 707 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 708 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 709 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 710 "LOCAL_UDID", GetLocalUdid(), 711 "PEER_UDID", GetPeerUdid(deviceId), 712 "TO_CALL_PKG", RDB_NAME, 713 "ERROR_CODE", errCode, 714 "EXTRA_INFO", deviceProfile.dump()); 715 } 716 if (res != DP_SUCCESS) { 717 HILOGD("failed"); 718 } 719 return; 720} 721 722void DpRadarHelper::ReportGetServiceProfile(int32_t errCode, 723 const std::string& deviceId, ServiceProfile& serviceProfile) 724{ 725 int res = DP_SUCCESS; 726 int32_t stageRes = (errCode == DP_SUCCESS) ? 727 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 728 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 729 res = HiSysEventWrite( 730 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 731 DP_DATA_OPERATE_BEHAVIOR, 732 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 733 "ORG_PKG", ORGPKG_NAME, 734 "FUNC", "GetServiceProfile", 735 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SERVICE_PROFILE), 736 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 737 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 738 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 739 "LOCAL_UDID", GetLocalUdid(), 740 "PEER_UDID", GetPeerUdid(deviceId), 741 "TO_CALL_PKG", RDB_NAME, 742 "EXTRA_INFO", serviceProfile.dump()); 743 } else { 744 res = HiSysEventWrite( 745 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 746 DP_DATA_OPERATE_BEHAVIOR, 747 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 748 "ORG_PKG", ORGPKG_NAME, 749 "FUNC", "GetServiceProfile", 750 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_SERVICE_PROFILE), 751 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 752 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 753 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 754 "LOCAL_UDID", GetLocalUdid(), 755 "PEER_UDID", GetPeerUdid(deviceId), 756 "TO_CALL_PKG", RDB_NAME, 757 "ERROR_CODE", errCode, 758 "EXTRA_INFO", serviceProfile.dump()); 759 } 760 if (res != DP_SUCCESS) { 761 HILOGD("failed"); 762 } 763 return; 764} 765 766void DpRadarHelper::ReportGetCharProfile(int32_t errCode, 767 const std::string& deviceId, CharacteristicProfile& characteristicProfile) 768{ 769 int res = DP_SUCCESS; 770 int32_t stageRes = (errCode == DP_SUCCESS) ? 771 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 772 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 773 res = HiSysEventWrite( 774 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 775 DP_DATA_OPERATE_BEHAVIOR, 776 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 777 "ORG_PKG", ORGPKG_NAME, 778 "FUNC", "GetCharacteristicProfile", 779 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_CHAR_PROFILE), 780 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 781 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 782 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 783 "LOCAL_UDID", GetLocalUdid(), 784 "PEER_UDID", GetPeerUdid(deviceId), 785 "TO_CALL_PKG", RDB_NAME, 786 "EXTRA_INFO", characteristicProfile.dump()); 787 } else { 788 res = HiSysEventWrite( 789 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 790 DP_DATA_OPERATE_BEHAVIOR, 791 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 792 "ORG_PKG", ORGPKG_NAME, 793 "FUNC", "GetCharacteristicProfile", 794 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_GET_CHAR_PROFILE), 795 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 796 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 797 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 798 "LOCAL_UDID", GetLocalUdid(), 799 "PEER_UDID", GetPeerUdid(deviceId), 800 "TO_CALL_PKG", RDB_NAME, 801 "ERROR_CODE", errCode, 802 "EXTRA_INFO", characteristicProfile.dump()); 803 } 804 if (res != DP_SUCCESS) { 805 HILOGD("failed"); 806 } 807 return; 808} 809 810void DpRadarHelper::ReportDeleteServiceProfile(int32_t errCode, const std::string& deviceId) 811{ 812 int res = DP_SUCCESS; 813 int32_t stageRes = (errCode == DP_SUCCESS) ? 814 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 815 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 816 res = HiSysEventWrite( 817 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 818 DP_DATA_OPERATE_BEHAVIOR, 819 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 820 "ORG_PKG", ORGPKG_NAME, 821 "FUNC", "DeleteServiceProfile", 822 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_DELETE_SERVICE_PROFILE), 823 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 824 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_IDLE), 825 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_START), 826 "LOCAL_UDID", GetLocalUdid(), 827 "PEER_UDID", GetPeerUdid(deviceId), 828 "TO_CALL_PKG", RDB_NAME); 829 } else { 830 res = HiSysEventWrite( 831 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 832 DP_DATA_OPERATE_BEHAVIOR, 833 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 834 "ORG_PKG", ORGPKG_NAME, 835 "FUNC", "DeleteServiceProfile", 836 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_DELETE_SERVICE_PROFILE), 837 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 838 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 839 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 840 "LOCAL_UDID", GetLocalUdid(), 841 "PEER_UDID", GetPeerUdid(deviceId), 842 "TO_CALL_PKG", RDB_NAME, 843 "ERROR_CODE", errCode); 844 } 845 if (res != DP_SUCCESS) { 846 HILOGD("failed"); 847 } 848 return; 849} 850 851void DpRadarHelper::ReportDeleteCharProfile(int32_t errCode, const std::string& deviceId) 852{ 853 int res = DP_SUCCESS; 854 int32_t stageRes = (errCode == DP_SUCCESS) ? 855 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 856 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 857 res = HiSysEventWrite( 858 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 859 DP_DATA_OPERATE_BEHAVIOR, 860 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 861 "ORG_PKG", ORGPKG_NAME, 862 "FUNC", "DeleteCharacteristicProfile", 863 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_DELETE_CHAR_PROFILE), 864 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 865 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_IDLE), 866 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_START), 867 "LOCAL_UDID", GetLocalUdid(), 868 "PEER_UDID", GetPeerUdid(deviceId), 869 "TO_CALL_PKG", RDB_NAME); 870 } else { 871 res = HiSysEventWrite( 872 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 873 DP_DATA_OPERATE_BEHAVIOR, 874 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 875 "ORG_PKG", ORGPKG_NAME, 876 "FUNC", "DeleteCharacteristicProfile", 877 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_DELETE_CHAR_PROFILE), 878 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 879 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 880 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 881 "LOCAL_UDID", GetLocalUdid(), 882 "PEER_UDID", GetPeerUdid(deviceId), 883 "TO_CALL_PKG", RDB_NAME, 884 "ERROR_CODE", errCode); 885 } 886 if (res != DP_SUCCESS) { 887 HILOGD("failed"); 888 } 889 return; 890} 891 892void DpRadarHelper::ReportSubscribeDeviceProfile(int32_t errCode, const SubscribeInfo& subscribeInfo) 893{ 894 int res = DP_SUCCESS; 895 int32_t stageRes = (errCode == DP_SUCCESS) ? 896 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 897 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 898 res = HiSysEventWrite( 899 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 900 DP_DATA_OPERATE_BEHAVIOR, 901 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 902 "ORG_PKG", ORGPKG_NAME, 903 "FUNC", "SubscribeDeviceProfile", 904 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_SUBSCRIBE_DEVICE_PROFILE), 905 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 906 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 907 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 908 "LOCAL_UDID", GetLocalUdid(), 909 "TO_CALL_PKG", RDB_NAME, 910 "EXTRA_INFO", subscribeInfo.dump()); 911 } else { 912 res = HiSysEventWrite( 913 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 914 DP_DATA_OPERATE_BEHAVIOR, 915 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 916 "ORG_PKG", ORGPKG_NAME, 917 "FUNC", "SubscribeDeviceProfile", 918 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_SUBSCRIBE_DEVICE_PROFILE), 919 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 920 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 921 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 922 "LOCAL_UDID", GetLocalUdid(), 923 "TO_CALL_PKG", RDB_NAME, 924 "ERROR_CODE", errCode, 925 "EXTRA_INFO", subscribeInfo.dump()); 926 } 927 if (res != DP_SUCCESS) { 928 HILOGD("failed"); 929 } 930 return; 931} 932 933void DpRadarHelper::ReportUnSubscribeDeviceProfile(int32_t errCode, const SubscribeInfo& subscribeInfo) 934{ 935 int res = DP_SUCCESS; 936 int32_t stageRes = (errCode == DP_SUCCESS) ? 937 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 938 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 939 res = HiSysEventWrite( 940 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 941 DP_DATA_OPERATE_BEHAVIOR, 942 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 943 "ORG_PKG", ORGPKG_NAME, 944 "FUNC", "UnSubscribeDeviceProfile", 945 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_UNSUNBSCRIBE_DEVICE_PROFILE), 946 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 947 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 948 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 949 "LOCAL_UDID", GetLocalUdid(), 950 "TO_CALL_PKG", RDB_NAME, 951 "EXTRA_INFO", subscribeInfo.dump()); 952 } else { 953 res = HiSysEventWrite( 954 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 955 DP_DATA_OPERATE_BEHAVIOR, 956 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 957 "ORG_PKG", ORGPKG_NAME, 958 "FUNC", "UnSubscribeDeviceProfile", 959 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_UNSUNBSCRIBE_DEVICE_PROFILE), 960 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 961 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 962 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 963 "LOCAL_UDID", GetLocalUdid(), 964 "TO_CALL_PKG", RDB_NAME, 965 "ERROR_CODE", errCode, 966 "EXTRA_INFO", subscribeInfo.dump()); 967 } 968 if (res != DP_SUCCESS) { 969 HILOGD("failed"); 970 } 971 return; 972} 973 974void DpRadarHelper::ReportSyncDeviceProfile(int32_t errCode) 975{ 976 int res = DP_SUCCESS; 977 int32_t stageRes = (errCode == DP_SUCCESS) ? 978 static_cast<int32_t>(StageRes::STAGE_SUCC) : static_cast<int32_t>(StageRes::STAGE_FAIL); 979 if (stageRes == static_cast<int32_t>(StageRes::STAGE_SUCC)) { 980 res = HiSysEventWrite( 981 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 982 DP_DATA_OPERATE_BEHAVIOR, 983 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 984 "ORG_PKG", ORGPKG_NAME, 985 "FUNC", "SyncDeviceProfile", 986 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_SYNC_DEVICE_PROFILE), 987 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 988 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 989 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 990 "HOST_PKG", RDB_NAME, 991 "LOCAL_UDID", GetLocalUdid(), 992 "TO_CALL_PKG", RDB_NAME); 993 } else { 994 res = HiSysEventWrite( 995 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 996 DP_DATA_OPERATE_BEHAVIOR, 997 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 998 "ORG_PKG", ORGPKG_NAME, 999 "FUNC", "SyncDeviceProfile", 1000 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_SYNC_DEVICE_PROFILE), 1001 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_PROFILE_OPERATE), 1002 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_FAIL), 1003 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 1004 "HOST_PKG", RDB_NAME, 1005 "LOCAL_UDID", GetLocalUdid(), 1006 "TO_CALL_PKG", RDB_NAME, 1007 "ERROR_CODE", errCode); 1008 } 1009 if (res != DP_SUCCESS) { 1010 HILOGD("failed"); 1011 } 1012 return; 1013} 1014 1015void DpRadarHelper::ReportNotifyProfileChange(int32_t code) 1016{ 1017 std::string funcName = ""; 1018 switch (code) { 1019 case ProfileType::DEVICE_PROFILE * ChangeType::ADD: 1020 funcName = "NotifyDeviceProfileAdd"; 1021 break; 1022 case ProfileType::DEVICE_PROFILE * ChangeType::UPDATE: 1023 funcName = "NotifyDeviceProfileUpdate"; 1024 break; 1025 case ProfileType::DEVICE_PROFILE * ChangeType::DELETE: 1026 funcName = "NotifyDeviceProfileDelete"; 1027 break; 1028 case ProfileType::SERVICE_PROFILE * ChangeType::ADD: 1029 funcName = "NotifyServiceProfileAdd"; 1030 break; 1031 case ProfileType::SERVICE_PROFILE * ChangeType::UPDATE: 1032 funcName = "NotifyServiceProfileUpdate"; 1033 break; 1034 case ProfileType::SERVICE_PROFILE * ChangeType::DELETE: 1035 funcName = "NotifyServiceProfileDelete"; 1036 break; 1037 case ProfileType::CHAR_PROFILE * ChangeType::ADD: 1038 funcName = "NotifyCharProfileAdd"; 1039 break; 1040 case ProfileType::CHAR_PROFILE * ChangeType::UPDATE: 1041 funcName = "NotifyCharProfileUpdate"; 1042 break; 1043 case ProfileType::CHAR_PROFILE * ChangeType::DELETE: 1044 funcName = "NotifyCharProfileDelete"; 1045 break; 1046 } 1047 int res = HiSysEventWrite( 1048 OHOS::HiviewDFX::HiSysEvent::Domain::DEVICE_PROFILE, 1049 DP_DATA_OPERATE_BEHAVIOR, 1050 HiviewDFX::HiSysEvent::EventType::BEHAVIOR, 1051 "ORG_PKG", ORGPKG_NAME, 1052 "FUNC", funcName, 1053 "BIZ_SCENE", static_cast<int32_t>(BizScene::DP_SYNC_DEVICE_PROFILE), 1054 "BIZ_STAGE", static_cast<int32_t>(ProfileOperateStage::DP_NOTIFY_PROFILE_CHANGE), 1055 "STAGE_RES", static_cast<int32_t>(StageRes::STAGE_SUCC), 1056 "BIZ_STATE", static_cast<int32_t>(BizState::BIZ_STATE_END), 1057 "HOST_PKG", RDB_NAME, 1058 "LOCAL_UDID", GetLocalUdid(), 1059 "TO_CALL_PKG", RDB_NAME); 1060 if (res != DP_SUCCESS) { 1061 HILOGD("failed"); 1062 } 1063 return; 1064} 1065 1066std::string DpRadarHelper::GetPeerUdidList(const std::vector<TrustDeviceProfile>& trustDeviceProfiles) 1067{ 1068 if (trustDeviceProfiles.size() == 0) { 1069 return ""; 1070 } 1071 cJSON* deviceInfoJson = cJSON_CreateObject(); 1072 if (deviceInfoJson == nullptr) { 1073 return ""; 1074 } 1075 cJSON* peerUdidList = cJSON_CreateArray(); 1076 if (peerUdidList == nullptr) { 1077 cJSON_Delete(deviceInfoJson); 1078 return ""; 1079 } 1080 if (!cJSON_AddItemToObject(deviceInfoJson, "PEER_UDID_LIST", peerUdidList)) { 1081 cJSON_Delete(peerUdidList); 1082 cJSON_Delete(deviceInfoJson); 1083 return ""; 1084 } 1085 for (size_t i = 0; i < trustDeviceProfiles.size(); i++) { 1086 std::string udid = GetPeerUdid(trustDeviceProfiles[i].GetDeviceId()); 1087 cJSON* object = cJSON_CreateString(udid.c_str()); 1088 if (object == nullptr) { 1089 cJSON_Delete(deviceInfoJson); 1090 return ""; 1091 } 1092 if (!cJSON_AddItemToArray(peerUdidList, object)) { 1093 cJSON_Delete(object); 1094 cJSON_Delete(deviceInfoJson); 1095 return ""; 1096 } 1097 } 1098 char *peerDevUdidStr = cJSON_PrintUnformatted(deviceInfoJson); 1099 if (peerDevUdidStr == nullptr) { 1100 cJSON_Delete(deviceInfoJson); 1101 return ""; 1102 } 1103 std::string peerUdidStr = std::string(peerDevUdidStr); 1104 cJSON_Delete(deviceInfoJson); 1105 cJSON_free(peerDevUdidStr); 1106 return peerUdidStr; 1107} 1108 1109std::string DpRadarHelper::GetPeerUdidList(const std::vector<AccessControlProfile>& accessControlProfiles) 1110{ 1111 if (accessControlProfiles.size() == 0) { 1112 return ""; 1113 } 1114 cJSON* deviceInfoJson = cJSON_CreateObject(); 1115 if (deviceInfoJson == nullptr) { 1116 return ""; 1117 } 1118 cJSON* peerUdidList = cJSON_CreateArray(); 1119 if (peerUdidList == nullptr) { 1120 cJSON_Delete(deviceInfoJson); 1121 return ""; 1122 } 1123 if (!cJSON_AddItemToObject(deviceInfoJson, "PEER_UDID_LIST", peerUdidList)) { 1124 cJSON_Delete(peerUdidList); 1125 cJSON_Delete(deviceInfoJson); 1126 return ""; 1127 } 1128 for (size_t i = 0; i < accessControlProfiles.size(); i++) { 1129 std::string udid = GetPeerUdid(accessControlProfiles[i].GetAccessee().GetAccesseeDeviceId()); 1130 cJSON* object = cJSON_CreateString(udid.c_str()); 1131 if (object == nullptr) { 1132 cJSON_Delete(deviceInfoJson); 1133 return ""; 1134 } 1135 if (!cJSON_AddItemToArray(peerUdidList, object)) { 1136 cJSON_Delete(object); 1137 cJSON_Delete(deviceInfoJson); 1138 return ""; 1139 } 1140 } 1141 char *peerDevUdidStr = cJSON_PrintUnformatted(deviceInfoJson); 1142 if (peerDevUdidStr == nullptr) { 1143 cJSON_Delete(deviceInfoJson); 1144 return ""; 1145 } 1146 std::string peerUdidStr = std::string(peerDevUdidStr); 1147 cJSON_Delete(deviceInfoJson); 1148 cJSON_free(peerDevUdidStr); 1149 return peerUdidStr; 1150} 1151 1152std::string DpRadarHelper::GetPeerUdidList(const std::vector<ServiceProfile>& serviceProfiles) 1153{ 1154 if (serviceProfiles.size() == 0) { 1155 return ""; 1156 } 1157 cJSON* deviceInfoJson = cJSON_CreateObject(); 1158 if (deviceInfoJson == nullptr) { 1159 return ""; 1160 } 1161 cJSON* peerUdidList = cJSON_CreateArray(); 1162 if (peerUdidList == nullptr) { 1163 cJSON_Delete(deviceInfoJson); 1164 return ""; 1165 } 1166 if (!cJSON_AddItemToObject(deviceInfoJson, "PEER_UDID_LIST", peerUdidList)) { 1167 cJSON_Delete(peerUdidList); 1168 cJSON_Delete(deviceInfoJson); 1169 return ""; 1170 } 1171 for (size_t i = 0; i < serviceProfiles.size(); i++) { 1172 std::string udid = GetPeerUdid(serviceProfiles[i].GetDeviceId()); 1173 cJSON* object = cJSON_CreateString(udid.c_str()); 1174 if (object == nullptr) { 1175 cJSON_Delete(deviceInfoJson); 1176 return ""; 1177 } 1178 if (!cJSON_AddItemToArray(peerUdidList, object)) { 1179 cJSON_Delete(object); 1180 cJSON_Delete(deviceInfoJson); 1181 return ""; 1182 } 1183 } 1184 char *peerDevUdidStr = cJSON_PrintUnformatted(deviceInfoJson); 1185 if (peerDevUdidStr == nullptr) { 1186 cJSON_Delete(deviceInfoJson); 1187 return ""; 1188 } 1189 std::string peerUdidStr = std::string(peerDevUdidStr); 1190 cJSON_Delete(deviceInfoJson); 1191 cJSON_free(peerDevUdidStr); 1192 return peerUdidStr; 1193} 1194 1195std::string DpRadarHelper::GetPeerUdidList(const std::vector<CharacteristicProfile>& characteristicProfiles) 1196{ 1197 if (characteristicProfiles.size() == 0) { 1198 return ""; 1199 } 1200 cJSON* deviceInfoJson = cJSON_CreateObject(); 1201 if (deviceInfoJson == nullptr) { 1202 return ""; 1203 } 1204 cJSON* peerUdidList = cJSON_CreateArray(); 1205 if (peerUdidList == nullptr) { 1206 cJSON_Delete(deviceInfoJson); 1207 return ""; 1208 } 1209 if (!cJSON_AddItemToObject(deviceInfoJson, "PEER_UDID_LIST", peerUdidList)) { 1210 cJSON_Delete(peerUdidList); 1211 cJSON_Delete(deviceInfoJson); 1212 return ""; 1213 } 1214 for (size_t i = 0; i < characteristicProfiles.size(); i++) { 1215 std::string udid = GetPeerUdid(characteristicProfiles[i].GetDeviceId()); 1216 cJSON* object = cJSON_CreateString(udid.c_str()); 1217 if (object == nullptr) { 1218 cJSON_Delete(deviceInfoJson); 1219 return ""; 1220 } 1221 if (!cJSON_AddItemToArray(peerUdidList, object)) { 1222 cJSON_Delete(object); 1223 cJSON_Delete(deviceInfoJson); 1224 return ""; 1225 } 1226 } 1227 char *peerDevUdidStr = cJSON_PrintUnformatted(deviceInfoJson); 1228 if (peerDevUdidStr == nullptr) { 1229 cJSON_Delete(deviceInfoJson); 1230 return ""; 1231 } 1232 std::string peerUdidStr = std::string(peerDevUdidStr); 1233 cJSON_Delete(deviceInfoJson); 1234 cJSON_free(peerDevUdidStr); 1235 return peerUdidStr; 1236} 1237 1238std::string DpRadarHelper::GetAnonyUdid(std::string udid) 1239{ 1240 if (udid.empty() || udid.length() < INVALID_UDID_LENGTH) { 1241 return ""; 1242 } 1243 return udid.substr(0, SUBSTR_UDID_LENGTH) + "**" + udid.substr(udid.length() - SUBSTR_UDID_LENGTH); 1244} 1245 1246std::string DpRadarHelper::GetLocalUdid() 1247{ 1248 return GetAnonyUdid(ContentSensorManagerUtils::GetInstance().ObtainLocalUdid()); 1249} 1250 1251std::string DpRadarHelper::GetPeerUdid(std::string udid) 1252{ 1253 std::string localUdid = ContentSensorManagerUtils::GetInstance().ObtainLocalUdid(); 1254 return udid.compare(localUdid) == 0 ? "" : GetAnonyUdid(udid); 1255} 1256 1257bool DpRadarHelper::IsDeviceProfileInit() 1258{ 1259 return isInit_; 1260} 1261 1262void DpRadarHelper::SetDeviceProfileInit(bool isInit) 1263{ 1264 isInit_ = isInit; 1265} 1266} // namespace DistributedDeviceProfile 1267} // namespace OHOS 1268