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 #ifndef OH_CJ_REQUEST_UTILS_H 17 #define OH_CJ_REQUEST_UTILS_H 18 19 #include <string> 20 #include <vector> 21 #include "cj_request_ffi.h" 22 #include "constant.h" 23 #include "js_common.h" 24 25 namespace OHOS::CJSystemapi::Request { 26 using OHOS::Request::Action; 27 using OHOS::Request::ExceptionError; 28 using OHOS::Request::FileSpec; 29 using OHOS::Request::FormItem; 30 using OHOS::Request::Progress; 31 using OHOS::Request::Reason; 32 using OHOS::Request::Response; 33 34 void ReadBytesFromFile(const std::string &filePath, std::vector<uint8_t> &fileData); 35 char *MallocCString(const std::string &origin); 36 bool IsPathValid(const std::string &filePath); 37 std::string SHA256(const char *str, size_t len); 38 ExceptionError ConvertError(int32_t errorCode); 39 void RemoveFile(const std::string &filePath); 40 41 CProgress Convert2CProgress(const Progress &in); 42 CResponse Convert2CResponse(const std::shared_ptr<Response> &in); 43 std::string GetSaveas(const std::vector<FileSpec> &files, Action action); 44 uint32_t Convert2Broken(Reason code); 45 std::string Convert2ReasonMsg(Reason code); 46 CHashStrArr Convert2CHashStrArr(const std::map<std::string, std::string> &extras); 47 CFormItemArr Convert2CFormItemArr(const std::vector<FileSpec> &files, const std::vector<FormItem> &forms); 48 49 } // namespace OHOS::CJSystemapi::Request 50 51 #endif 52