1 /* 2 * Copyright (C) 2025 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 #define MLOG_TAG "Media_Cloud_Vo" 17 18 #include "report_failure_vo.h" 19 20 #include <sstream> 21 22 namespace OHOS::Media::CloudSync { SetApiCode(int32_t apiCode)23ReportFailureReqBody &ReportFailureReqBody::SetApiCode(int32_t apiCode) 24 { 25 this->apiCode = apiCode; 26 return *this; 27 } SetErrorCode(int32_t errorCode)28ReportFailureReqBody &ReportFailureReqBody::SetErrorCode(int32_t errorCode) 29 { 30 this->errorCode = errorCode; 31 return *this; 32 } SetFileId(int32_t fileId)33ReportFailureReqBody &ReportFailureReqBody::SetFileId(int32_t fileId) 34 { 35 this->fileId = fileId; 36 return *this; 37 } SetCloudId(const std::string & cloudId)38ReportFailureReqBody &ReportFailureReqBody::SetCloudId(const std::string &cloudId) 39 { 40 this->cloudId = cloudId; 41 return *this; 42 } Unmarshalling(MessageParcel & parcel)43bool ReportFailureReqBody::Unmarshalling(MessageParcel &parcel) 44 { 45 parcel.ReadInt32(this->apiCode); 46 parcel.ReadInt32(this->errorCode); 47 parcel.ReadInt32(this->fileId); 48 return parcel.ReadString(this->cloudId); 49 } 50 Marshalling(MessageParcel & parcel) const51bool ReportFailureReqBody::Marshalling(MessageParcel &parcel) const 52 { 53 parcel.WriteInt32(this->apiCode); 54 parcel.WriteInt32(this->errorCode); 55 parcel.WriteInt32(this->fileId); 56 return parcel.WriteString(this->cloudId); 57 } 58 ToString() const59std::string ReportFailureReqBody::ToString() const 60 { 61 std::stringstream ss; 62 ss << "{"; 63 ss << "\"apiCode\":" << this->apiCode << ", " 64 << "\"errorCode\":" << this->errorCode << ", " 65 << "\"fileId\":" << this->fileId << ", " 66 << "\"cloudId\":\"" << this->cloudId << "\""; 67 ss << "}"; 68 return ss.str(); 69 } 70 } // namespace OHOS::Media::CloudSync