moveFile method
Implementation
@override
Future<FileModel?> moveFile(String sourceBucketId, String sourceFileId,
{String bucketId = ""}) async {
try {
await initialize();
var target = await getFileData("$sourceBucketId/$sourceFileId", bucketId: sourceBucketId);
if (target != null) {
var targetBytes = await getFileBytes("$sourceBucketId/$sourceFileId");
if (targetBytes == null) throw Exception("file not exist");
var moveFile = await uploadFile(target.name, target.contentType.name, targetBytes,
bucketId: bucketId, usageType: getUsageType(target.id));
if (target.thumbnailUrl.isNotEmpty && target.thumbnailUrl != target.url) {
var targetThumbnailData = parseFileUrl(target.thumbnailUrl);
await deleteFile("${targetThumbnailData["bucketId"]!}/${targetThumbnailData["fileId"]!}");
}
await deleteFile("$sourceBucketId/$sourceFileId");
return moveFile;
}
} catch (error) {
logger.severe("error during Storage.copyFile >> $error");
}
return null;
}