소스 검색

improvement upload

Marino Faggiana 6 년 전
부모
커밋
4aefca026a
2개의 변경된 파일5개의 추가작업 그리고 3개의 파일을 삭제
  1. 3 2
      PickerFileProvider/FileProviderEnumerator.swift
  2. 2 1
      PickerFileProvider/FileProviderExtension+Network.swift

+ 3 - 2
PickerFileProvider/FileProviderEnumerator.swift

@@ -145,7 +145,8 @@ class FileProviderEnumerator: NSObject, NSFileProviderEnumerator {
                 
             if (metadatas != nil) {
                 NCManageDatabase.sharedInstance.deleteMetadata(predicate: NSPredicate(format: "account = %@ AND directoryID = %@ AND session = ''", self.providerData.account, directoryID!), clearDateReadDirectoryID: directoryID!)
-                if let metadataDB = NCManageDatabase.sharedInstance.addMetadatas(metadatas as! [tableMetadata], serverUrl: serverUrl) {
+                _ = NCManageDatabase.sharedInstance.addMetadatas(metadatas as! [tableMetadata], serverUrl: serverUrl)
+                if let metadataDB = NCManageDatabase.sharedInstance.getMetadatas(predicate: NSPredicate(format: "account = %@ AND directoryID = %@", self.providerData.account, directoryID!), sorted: "fileName", ascending: true) {
                     items = self.selectItems(numPage: 0, account: self.providerData.account, metadatas: metadataDB)
                     if (items.count > 0) {
                         observer.didEnumerate(items)
@@ -250,7 +251,7 @@ class FileProviderEnumerator: NSObject, NSFileProviderEnumerator {
         for metadata in metadatas {
             
             // E2EE Remove
-            if metadata.e2eEncrypted || metadata.status == Double(k_metadataStatusHide) || metadata.session != "" {
+            if metadata.e2eEncrypted || metadata.status == Double(k_metadataStatusHide) || (metadata.session != "" && metadata.session != k_download_session_extension && metadata.session != k_upload_session_extension) {
                 continue
             }
             

+ 2 - 1
PickerFileProvider/FileProviderExtension+Network.swift

@@ -173,8 +173,9 @@ extension FileProviderExtension {
         } else {
             
             //TODO: manage error
-            
             NCManageDatabase.sharedInstance.unlockQueueUpload(assetLocalIdentifier: assetLocalIdentifier)
+            
+            NCManageDatabase.sharedInstance.deleteMetadata(predicate: NSPredicate(format: "fileID = %@", fileID), clearDateReadDirectoryID: nil)
         }
     }