1 /*
2 * Copyright (c) 2023 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 "cloud_disk_data_convertor.h"
17
18 #include <regex>
19 #include <sys/stat.h>
20 #include <unistd.h>
21
22 #include "cloud_disk_data_const.h"
23 #include "mimetype_utils.h"
24 #include "cloud_pref_impl.h"
25 #include "cloud_file_utils.h"
26
27 namespace OHOS {
28 namespace FileManagement {
29 namespace CloudSync {
30 using namespace std;
31 using namespace NativeRdb;
32 using namespace CloudDisk;
33 using DriveKit::DKLocalErrorCode;
34
35 string CloudDiskDataConvertor::recordType_ = "file";
36
CloudDiskDataConvertor(int32_t userId,string & bundleName,OperationType type,const function<void (int32_t,NativeRdb::ResultSet & resultSet)> & func)37 CloudDiskDataConvertor::CloudDiskDataConvertor(int32_t userId,
38 string &bundleName,
39 OperationType type,
40 const function<void(int32_t, NativeRdb::ResultSet &resultSet)> &func)
41 : userId_(userId), bundleName_(bundleName), type_(type), errHandler_(func)
42 {
43 Media::MimeTypeUtils::InitMimeTypeMap();
44 }
HandleErr(int32_t err,NativeRdb::ResultSet & resultSet)45 void CloudDiskDataConvertor::HandleErr(int32_t err, NativeRdb::ResultSet &resultSet)
46 {
47 if (errHandler_ != nullptr) {
48 errHandler_(err, resultSet);
49 }
50 }
51
SetRootId(string rootId)52 void CloudDiskDataConvertor::SetRootId(string rootId)
53 {
54 rootId_ = rootId;
55 }
56
InitRootId()57 int32_t CloudDiskDataConvertor::InitRootId()
58 {
59 return E_OK;
60 }
GetParentCloudId(const DriveKit::DKRecordData & data)61 std::string CloudDiskDataConvertor::GetParentCloudId(const DriveKit::DKRecordData &data)
62 {
63 return "";
64 }
65
Convert(DriveKit::DKRecord & record,NativeRdb::ValuesBucket & valueBucket)66 int32_t CloudDiskDataConvertor::Convert(DriveKit::DKRecord &record, NativeRdb::ValuesBucket &valueBucket)
67 {
68 if (!rootId_.empty()) {
69 return E_OK;
70 }
71 return E_INVAL_ARG;
72 }
Convert(DriveKit::DKRecord & record,NativeRdb::ResultSet & resultSet)73 int32_t CloudDiskDataConvertor::Convert(DriveKit::DKRecord &record, NativeRdb::ResultSet &resultSet)
74 {
75 return E_OK;
76 }
ExtractCompatibleValue(const DriveKit::DKRecord & record,const DriveKit::DKRecordData & data,NativeRdb::ValuesBucket & valueBucket)77 int32_t CloudDiskDataConvertor::ExtractCompatibleValue(const DriveKit::DKRecord &record,
78 const DriveKit::DKRecordData &data,
79 NativeRdb::ValuesBucket &valueBucket)
80 {
81 return E_OK;
82 }
CompensateAttributes(const DriveKit::DKRecordData & data,const DriveKit::DKRecord & record,NativeRdb::ValuesBucket & valueBucket)83 int32_t CloudDiskDataConvertor::CompensateAttributes(const DriveKit::DKRecordData &data,
84 const DriveKit::DKRecord &record,
85 NativeRdb::ValuesBucket &valueBucket)
86 {
87 return E_OK;
88 }
ExtractCloudId(const DriveKit::DKRecord & record,NativeRdb::ValuesBucket & valueBucket)89 int32_t CloudDiskDataConvertor::ExtractCloudId(const DriveKit::DKRecord &record,
90 NativeRdb::ValuesBucket &valueBucket)
91 {
92 return E_OK;
93 }
ExtractFileName(const DriveKit::DKRecordData & data,NativeRdb::ValuesBucket & valueBucket)94 int32_t CloudDiskDataConvertor::ExtractFileName(const DriveKit::DKRecordData &data,
95 NativeRdb::ValuesBucket &valueBucket)
96 {
97 return E_OK;
98 }
ExtractFileParentCloudId(const DriveKit::DKRecordData & data,NativeRdb::ValuesBucket & valueBucket)99 int32_t CloudDiskDataConvertor::ExtractFileParentCloudId(const DriveKit::DKRecordData &data,
100 NativeRdb::ValuesBucket &valueBucket)
101 {
102 return E_OK;
103 }
ExtractFileSize(const DriveKit::DKRecordData & data,NativeRdb::ValuesBucket & valueBucket)104 int32_t CloudDiskDataConvertor::ExtractFileSize(const DriveKit::DKRecordData &data,
105 NativeRdb::ValuesBucket &valueBucket)
106 {
107 return E_OK;
108 }
109
ExtractSha256(const DriveKit::DKRecordData & data,NativeRdb::ValuesBucket & valueBucket)110 int32_t CloudDiskDataConvertor::ExtractSha256(const DriveKit::DKRecordData &data,
111 NativeRdb::ValuesBucket &valueBucket)
112 {
113 return E_OK;
114 }
ExtractFileTimeRecycled(const DriveKit::DKRecordData & data,NativeRdb::ValuesBucket & valueBucket)115 int32_t CloudDiskDataConvertor::ExtractFileTimeRecycled(const DriveKit::DKRecordData &data,
116 NativeRdb::ValuesBucket &valueBucket)
117 {
118 return E_OK;
119 }
ExtractDirectlyRecycled(const DriveKit::DKRecordData & data,NativeRdb::ValuesBucket & valueBucket)120 int32_t CloudDiskDataConvertor::ExtractDirectlyRecycled(const DriveKit::DKRecordData &data,
121 NativeRdb::ValuesBucket &valueBucket)
122 {
123 return E_OK;
124 }
125
ExtractVersion(const DriveKit::DKRecord & record,NativeRdb::ValuesBucket & valueBucket)126 int32_t CloudDiskDataConvertor::ExtractVersion(const DriveKit::DKRecord &record,
127 NativeRdb::ValuesBucket &valueBucket)
128 {
129 return E_OK;
130 }
ExtractIsDirectory(const DriveKit::DKRecordData & data,NativeRdb::ValuesBucket & valueBucket)131 int32_t CloudDiskDataConvertor::ExtractIsDirectory(const DriveKit::DKRecordData &data,
132 NativeRdb::ValuesBucket &valueBucket)
133 {
134 return E_OK;
135 }
HandleCompatibleFileds(DriveKit::DKRecordData & data,NativeRdb::ResultSet & resultSet)136 int32_t CloudDiskDataConvertor::HandleCompatibleFileds(DriveKit::DKRecordData &data,
137 NativeRdb::ResultSet &resultSet)
138 {
139 return E_OK;
140 }
HandleAttachments(DriveKit::DKRecordData & data,NativeRdb::ResultSet & resultSet)141 int32_t CloudDiskDataConvertor::HandleAttachments(DriveKit::DKRecordData &data,
142 NativeRdb::ResultSet &resultSet)
143 {
144 return E_OK;
145 }
HandleAttributes(DriveKit::DKRecordData & data,NativeRdb::ResultSet & resultSet)146 int32_t CloudDiskDataConvertor::HandleAttributes(DriveKit::DKRecordData &data,
147 NativeRdb::ResultSet &resultSet)
148 {
149 return E_OK;
150 }
FillRecordId(DriveKit::DKRecord & record,NativeRdb::ResultSet & resultSet)151 int32_t CloudDiskDataConvertor::FillRecordId(DriveKit::DKRecord &record,
152 NativeRdb::ResultSet &resultSet)
153 {
154 return E_OK;
155 }
FillCreatedTime(DriveKit::DKRecord & record,NativeRdb::ResultSet & resultSet)156 int32_t CloudDiskDataConvertor::FillCreatedTime(DriveKit::DKRecord &record,
157 NativeRdb::ResultSet &resultSet)
158 {
159 return E_OK;
160 }
FillMetaEditedTime(DriveKit::DKRecord & record,NativeRdb::ResultSet & resultSet)161 int32_t CloudDiskDataConvertor::FillMetaEditedTime(DriveKit::DKRecord &record,
162 NativeRdb::ResultSet &resultSet)
163 {
164 return E_OK;
165 }
FillVersion(DriveKit::DKRecord & record,NativeRdb::ResultSet & resultSet)166 int32_t CloudDiskDataConvertor::FillVersion(DriveKit::DKRecord &record,
167 NativeRdb::ResultSet &resultSet)
168 {
169 return E_OK;
170 }
HandleFileName(DriveKit::DKRecordData & data,NativeRdb::ResultSet & resultSet)171 int32_t CloudDiskDataConvertor::HandleFileName(DriveKit::DKRecordData &data,
172 NativeRdb::ResultSet &resultSet)
173 {
174 return E_OK;
175 }
HandleParentId(DriveKit::DKRecordData & data,NativeRdb::ResultSet & resultSet)176 int32_t CloudDiskDataConvertor::HandleParentId(DriveKit::DKRecordData &data,
177 NativeRdb::ResultSet &resultSet)
178 {
179 return E_OK;
180 }
HandleDirectlyRecycled(DriveKit::DKRecordData & data,NativeRdb::ResultSet & resultSet)181 int32_t CloudDiskDataConvertor::HandleDirectlyRecycled(DriveKit::DKRecordData &data,
182 NativeRdb::ResultSet &resultSet)
183 {
184 return E_OK;
185 }
HandleRecycleTime(DriveKit::DKRecordData & data,NativeRdb::ResultSet & resultSet)186 int32_t CloudDiskDataConvertor::HandleRecycleTime(DriveKit::DKRecordData &data,
187 NativeRdb::ResultSet &resultSet)
188 {
189 return E_OK;
190 }
HandleType(DriveKit::DKRecordData & data,NativeRdb::ResultSet & resultSet)191 int32_t CloudDiskDataConvertor::HandleType(DriveKit::DKRecordData &data,
192 NativeRdb::ResultSet &resultSet)
193 {
194 return E_OK;
195 }
HandleOperateType(DriveKit::DKRecordData & data,NativeRdb::ResultSet & resultSet)196 int32_t CloudDiskDataConvertor::HandleOperateType(DriveKit::DKRecordData &data,
197 NativeRdb::ResultSet &resultSet)
198 {
199 return E_OK;
200 }
HandleCreateTime(DriveKit::DKRecordFieldMap & map,NativeRdb::ResultSet & resultSet)201 int32_t CloudDiskDataConvertor::HandleCreateTime(DriveKit::DKRecordFieldMap &map,
202 NativeRdb::ResultSet &resultSet)
203 {
204 return E_OK;
205 }
HandleMetaEditedTime(DriveKit::DKRecordFieldMap & map,NativeRdb::ResultSet & resultSet)206 int32_t CloudDiskDataConvertor::HandleMetaEditedTime(DriveKit::DKRecordFieldMap &map,
207 NativeRdb::ResultSet &resultSet)
208 {
209 return E_OK;
210 }
HandleEditedTime(DriveKit::DKRecordFieldMap & map,NativeRdb::ResultSet & resultSet)211 int32_t CloudDiskDataConvertor::HandleEditedTime(DriveKit::DKRecordFieldMap &map,
212 NativeRdb::ResultSet &resultSet)
213 {
214 return E_OK;
215 }
HandleContent(DriveKit::DKRecordData & data,string & path)216 int32_t CloudDiskDataConvertor::HandleContent(DriveKit::DKRecordData &data,
217 string &path)
218 {
219 return E_OK;
220 }
221 } // namespace CloudSync
222 } // namespace FileManagement
223 } // namespace OHOS