Marino Faggiana 6 years ago
parent
commit
2e1c58d59a

+ 9 - 0
PickerFileProvider/FileProvider.swift

@@ -63,6 +63,15 @@ class FileProvider: NSFileProviderExtension, CCNetworkingDelegate {
             if timerUpload == nil {
                 
                 timerUpload = Timer.init(timeInterval: TimeInterval(k_timerProcessAutoDownloadUpload), repeats: true, block: { (Timer) in
+                    
+                    let tasks = CCNetworking.shared().getUploadTasksExtensionSession()
+                    if tasks == nil {
+                        let records = NCManageDatabase.sharedInstance.getQueueUpload(predicate: NSPredicate(format: "account = %@ AND selector = %@ AND lock == true AND path != nil", account, selectorUploadFile))
+                        if records != nil && records!.count > 0 {
+                            NCManageDatabase.sharedInstance.unlockAllQueueUploadInPath()
+                        }
+                    }
+                    
                     self.uploadFile()
                 })
                 

+ 1 - 0
iOSClient/Networking/CCNetworking.h

@@ -52,6 +52,7 @@
 - (OCCommunication *)sharedOCCommunicationExtensionDownload:(NSString *)identifier;
 
 - (NSURLSession *)getSessionfromSessionDescription:(NSString *)sessionDescription;
+- (NSArray *)getUploadTasksExtensionSession;
 
 - (void)invalidateAndCancelAllSession;
 - (void)settingSessionsDownload:(BOOL)download upload:(BOOL)upload taskStatus:(NSInteger)taskStatus activeAccount:(NSString *)activeAccount activeUser:(NSString *)activeUser activeUrl:(NSString *)activeUrl;

+ 10 - 0
iOSClient/Networking/CCNetworking.m

@@ -427,6 +427,16 @@
     }];
 }
 
+- (NSArray *)getUploadTasksExtensionSession
+{
+    __block NSArray *tasks;
+    [[self sessionUploadExtension] getTasksWithCompletionHandler:^(NSArray *dataTasks, NSArray *uploadTasks, NSArray *downloadTasks) {
+        tasks =  uploadTasks;
+    }];
+    
+    return tasks;
+}
+
 #pragma --------------------------------------------------------------------------------------------
 #pragma mark ===== URLSession download/upload =====
 #pragma --------------------------------------------------------------------------------------------