Marino Faggiana 6 years ago
parent
commit
a6c5265fa1

+ 2 - 1
PickerFileProvider/FileProviderExtension+Actions.swift

@@ -417,6 +417,7 @@ extension FileProviderExtension {
             
         // Metadata TEMP
         metadata.account = self.providerData.account
+        metadata.assetLocalIdentifier = self.FILEID_IMPORT_METADATA_TEMP + tableDirectory.directoryID + fileName
         metadata.date = NSDate()
         metadata.directory = false
         metadata.directoryID = tableDirectory.directoryID
@@ -437,7 +438,7 @@ extension FileProviderExtension {
             metadataNet.fileName = fileName
             metadataNet.path = fileNamePathDirectory + "/" + fileName
             metadataNet.selector = selectorUploadFile
-            metadataNet.selectorPost = ""
+            metadataNet.selectorPost = selectorPostImportDocument
             metadataNet.serverUrl = serverUrl
             metadataNet.session = k_upload_session_extension
             metadataNet.sessionError = ""

+ 6 - 6
PickerFileProvider/FileProviderExtension+Network.swift

@@ -157,7 +157,7 @@ extension FileProviderExtension {
             }
             
             // importDocument
-            if assetLocalIdentifier != "" {
+            if (selectorPost == selectorPostImportDocument) {
                 
                 NCManageDatabase.sharedInstance.deleteQueueUpload(assetLocalIdentifier: assetLocalIdentifier, selector: selector)
                 
@@ -173,13 +173,13 @@ extension FileProviderExtension {
                     fileProviderSignalDeleteWorkingSetItemIdentifier[itemIdentifier] = itemIdentifier
                 }
                 
-            } else {
-
+            }
+            
             // itemChanged
-                let itemIdentifier = providerData.getItemIdentifier(metadata: metadata)
+            if (selectorPost == selectorPostItemChanged) {
                 
-                let filePath = providerData.fileProviderStorageURL!.path + "/" + itemIdentifier.rawValue + "/" + metadata.fileName
-                _ = self.copyFile(filePath, toPath: providerData.directoryUser + "/" + metadata.fileID)
+                let filePathItemIdentifier = providerData.fileProviderStorageURL!.path + "/" + providerData.getItemIdentifier(metadata: metadata).rawValue + "/" + metadata.fileName
+                _ = self.copyFile(filePathItemIdentifier, toPath: providerData.directoryUser + "/" + metadata.fileID)
             }
             
             NCManageDatabase.sharedInstance.setLocalFile(fileID: fileID, date: nil, exifDate: nil, exifLatitude: nil, exifLongitude: nil, fileName: nil, etag: metadata.etag, etagFPE: metadata.etag)

+ 3 - 1
PickerFileProvider/FileProviderExtension.swift

@@ -74,6 +74,8 @@ class FileProviderExtension: NSFileProviderExtension, CCNetworkingDelegate {
 
     // Metadata Temp for Import
     let FILEID_IMPORT_METADATA_TEMP = k_uploadSessionID + "FILE_PROVIDER_EXTENSION"
+    let selectorPostImportDocument = "importDocument"
+    let selectorPostItemChanged = "itemChanged"
     
     override init() {
         
@@ -473,7 +475,7 @@ class FileProviderExtension: NSFileProviderExtension, CCNetworkingDelegate {
             metadata.session = k_upload_session_extension
             metadata.sessionID = metadata.fileID
             metadata.sessionSelector = selectorUploadFile
-            metadata.sessionSelectorPost = ""
+            metadata.sessionSelectorPost = selectorPostItemChanged
             
             guard let metadataForUpload = NCManageDatabase.sharedInstance.addMetadata(metadata) else {
                 return