|
@@ -222,8 +222,27 @@ import NCCommunication
|
|
|
var metadataFolder = tableMetadata()
|
|
|
let metadatas = NCNetworking.sharedInstance.convertFilesToMetadatas(files!, metadataFolder: &metadataFolder)
|
|
|
|
|
|
+ // Add directory
|
|
|
NCManageDatabase.sharedInstance.addDirectory(encrypted: isFolderEncrypted, favorite: metadataFolder.favorite, ocId: metadataFolder.ocId, etag: metadataFolder.etag, permissions: metadataFolder.permissions, serverUrl: serverUrl, richWorkspace: metadataFolder.richWorkspace, account: account)
|
|
|
|
|
|
+ // Save status transfer metadata
|
|
|
+ let metadatasInDownload = NCManageDatabase.sharedInstance.getMetadatas(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@ AND (status == %d OR status == %d OR status == %d OR status == %d)", account, serverUrl, k_metadataStatusWaitDownload, k_metadataStatusInDownload, k_metadataStatusDownloading, k_metadataStatusDownloadError), sorted: nil, ascending: false)
|
|
|
+
|
|
|
+ let metadatasInUpload = NCManageDatabase.sharedInstance.getMetadatas(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@ AND (status == %d OR status == %d OR status == %d OR status == %d)", account, serverUrl, k_metadataStatusWaitUpload, k_metadataStatusInUpload, k_metadataStatusUploading, k_metadataStatusUploadError), sorted: nil, ascending: false)
|
|
|
+
|
|
|
+ // Delete metadata
|
|
|
+ NCManageDatabase.sharedInstance.deleteMetadata(predicate: NSPredicate(format: "account == %@ AND serverUrl == %@ AND status == %d", account, serverUrl, k_metadataStatusNormal))
|
|
|
+
|
|
|
+ // Add metadata
|
|
|
+ NCManageDatabase.sharedInstance.addMetadatas(metadatas)
|
|
|
+
|
|
|
+ if metadatasInDownload != nil {
|
|
|
+ NCManageDatabase.sharedInstance.addMetadatas(metadatasInDownload!)
|
|
|
+ }
|
|
|
+ if metadatasInUpload != nil {
|
|
|
+ NCManageDatabase.sharedInstance.addMetadatas(metadatasInUpload!)
|
|
|
+ }
|
|
|
+
|
|
|
completion(account, metadataFolder, metadatas, errorCode, "")
|
|
|
|
|
|
} else {
|