Pārlūkot izejas kodu

remake protocol readFileSuccessFailure

Marino Faggiana 7 gadi atpakaļ
vecāks
revīzija
552b635e52

+ 16 - 19
iOSClient/Main/CCMain.m

@@ -1663,32 +1663,29 @@
 #pragma mark ==== Read File ====
 #pragma --------------------------------------------------------------------------------------------
 
-- (void)readFileFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode
+- (void)readFileSuccessFailure:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata message:(NSString *)message errorCode:(NSInteger)errorCode
 {
     // Check Active Account
     if (![metadataNet.account isEqualToString:appDelegate.activeAccount])
         return;
     
-    // Unauthorized
-    if (errorCode == kOCErrorServerUnauthorized)
-        [appDelegate openLoginView:self loginType:loginModifyPasswordUser];
-}
-
-- (void)readFileSuccess:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata
-{
-    // Check Active Account
-    if (![metadataNet.account isEqualToString:appDelegate.activeAccount])
-        return;
+    if (errorCode == 0) {
     
-    // Read Folder
-    if ([metadataNet.selector isEqualToString:selectorReadFileReloadFolder]) {
-        
-        tableDirectory *directory = [[NCManageDatabase sharedInstance] getTableDirectoryWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND serverUrl = %@", metadataNet.account, metadataNet.serverUrl]];
-        
-        // Change etag, read folder
-        if ([metadata.etag isEqualToString:directory.etag] == NO) {
-            [self readFolder:metadataNet.serverUrl];
+        // Read Folder
+        if ([metadataNet.selector isEqualToString:selectorReadFileReloadFolder]) {
+            
+            tableDirectory *directory = [[NCManageDatabase sharedInstance] getTableDirectoryWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND serverUrl = %@", metadataNet.account, metadataNet.serverUrl]];
+            
+            // Change etag, read folder
+            if ([metadata.etag isEqualToString:directory.etag] == NO) {
+                [self readFolder:metadataNet.serverUrl];
+            }
         }
+        
+    } else {
+        // Unauthorized
+        if (errorCode == kOCErrorServerUnauthorized)
+            [appDelegate openLoginView:self loginType:loginModifyPasswordUser];
     }
 }
 

+ 12 - 12
iOSClient/Move/CCMove.m

@@ -273,21 +273,21 @@
 
 // MARK: - Read Folder
 
-- (void)readFileFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode
+- (void)readFileSuccessFailure:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata message:(NSString *)message errorCode:(NSInteger)errorCode
 {
-    [self readFolder];
-}
-
-- (void)readFileSuccess:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata
-{
-    if ([metadataNet.selector isEqualToString:selectorReadFileReloadFolder]) {
-        
-        tableDirectory *directory = [[NCManageDatabase sharedInstance] getTableDirectoryWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND serverUrl = %@", metadataNet.account, metadataNet.serverUrl]];
-        
-        if ([metadata.etag isEqualToString:directory.etag] == NO) {
+    if (errorCode == 0) {
+    
+        if ([metadataNet.selector isEqualToString:selectorReadFileReloadFolder]) {
+            
+            tableDirectory *directory = [[NCManageDatabase sharedInstance] getTableDirectoryWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND serverUrl = %@", metadataNet.account, metadataNet.serverUrl]];
             
-            [self readFolder];
+            if ([metadata.etag isEqualToString:directory.etag] == NO) {
+                
+                [self readFolder];
+            }
         }
+    } else {
+        [self readFolder];
     }
 }
 

+ 1 - 2
iOSClient/Networking/OCNetworking.h

@@ -60,8 +60,7 @@
 - (void)renameSuccess:(CCMetadataNet *)metadataNet;
 - (void)renameMoveFileOrFolderFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode;
 
-- (void)readFileSuccess:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata;
-- (void)readFileFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode;
+- (void)readFileSuccessFailure:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata message:(NSString *)message errorCode:(NSInteger)errorCode;
 
 - (void)readSharedSuccess:(CCMetadataNet *)metadataNet items:(NSDictionary *)items openWindow:(BOOL)openWindow;
 - (void)unShareSuccess:(CCMetadataNet *)metadataNet;

+ 11 - 11
iOSClient/Networking/OCNetworking.m

@@ -887,8 +887,8 @@
         // Test active account
         tableAccount *recordAccount = [[NCManageDatabase sharedInstance] getAccountActive];
         if (![recordAccount.account isEqualToString:_metadataNet.account]) {
-            if ([self.delegate respondsToSelector:@selector(readFileFailure:message:errorCode:)])
-                [self.delegate readFileFailure:_metadataNet message:NSLocalizedStringFromTable(@"_error_user_not_available_", @"Error", nil) errorCode:k_CCErrorUserNotAvailble];
+            if ([self.delegate respondsToSelector:@selector(readFileSuccessFailure:metadata:message:errorCode:)])
+                [self.delegate readFileSuccessFailure:_metadataNet metadata:nil message:NSLocalizedStringFromTable(@"_error_user_not_available_", @"Error", nil) errorCode:k_CCErrorUserNotAvailble];
             
             [self complete];
             return;
@@ -912,13 +912,13 @@
         
                 metadata = [CCUtility trasformedOCFileToCCMetadata:itemDto fileName:_metadataNet.fileName serverUrl:_metadataNet.serverUrl directoryID:directoryID autoUploadFileName:autoUploadFileName autoUploadDirectory:autoUploadDirectory activeAccount:_metadataNet.account directoryUser:directoryUser isFolderEncrypted:isFolderEncrypted];
                         
-                if([self.delegate respondsToSelector:@selector(readFileSuccess:metadata:)])
-                    [self.delegate readFileSuccess:_metadataNet metadata:metadata];
+                if([self.delegate respondsToSelector:@selector(readFileSuccessFailure:metadata:message:errorCode:)])
+                    [self.delegate readFileSuccessFailure:_metadataNet metadata:metadata message:nil errorCode:0];
                 
             } else {
                 
-                if([self.delegate respondsToSelector:@selector(readFileFailure:message:errorCode:)])
-                    [self.delegate readFileFailure:_metadataNet message:@"Directory not found" errorCode:0];
+                if([self.delegate respondsToSelector:@selector(readFileSuccessFailure:metadata:message:errorCode:)])
+                    [self.delegate readFileSuccessFailure:_metadataNet metadata:nil message:@"Directory not found" errorCode:k_CCErrorInternalError];
             }
         }
         
@@ -930,8 +930,8 @@
 
             [appDelegate messageNotification:@"Server error" description:@"Read File WebDAV : [items NULL] please fix" visible:YES delay:k_dismissAfterSecond type:TWMessageBarMessageTypeError errorCode:0];
 #endif
-            if([self.delegate respondsToSelector:@selector(readFileFailure:message:errorCode:)])
-                [self.delegate readFileFailure:_metadataNet message:@"Read File WebDAV : [items NULL] please fix" errorCode:0];
+            if([self.delegate respondsToSelector:@selector(readFileSuccessFailure:metadata:message:errorCode:)])
+                [self.delegate readFileSuccessFailure:_metadataNet metadata:nil message:@"Read File WebDAV : [items NULL] please fix" errorCode:k_CCErrorInternalError];
         }
         
         [self complete];
@@ -947,12 +947,12 @@
             errorCode = error.code;
         
         // Error
-        if ([self.delegate respondsToSelector:@selector(readFileFailure:message:errorCode:)] && [recordAccount.account isEqualToString:_metadataNet.account]) {
+        if ([self.delegate respondsToSelector:@selector(readFileSuccessFailure:metadata:message:errorCode:)] && [recordAccount.account isEqualToString:_metadataNet.account]) {
             
             if (errorCode == 503)
-                [self.delegate readFileFailure:_metadataNet message:NSLocalizedStringFromTable(@"_server_error_retry_", @"Error", nil) errorCode:errorCode];
+                [self.delegate readFileSuccessFailure:_metadataNet metadata:nil message:NSLocalizedStringFromTable(@"_server_error_retry_", @"Error", nil) errorCode:errorCode];
             else
-                [self.delegate readFileFailure:_metadataNet message:[CCError manageErrorOC:response.statusCode error:error] errorCode:errorCode];
+                [self.delegate readFileSuccessFailure:_metadataNet metadata:nil message:[CCError manageErrorOC:response.statusCode error:error] errorCode:errorCode];
         }
 
         // Request trusted certificated

+ 9 - 9
iOSClient/Shares/NCShares.m

@@ -155,16 +155,16 @@
 #pragma mark ==== Read File <Delegate> ====
 #pragma --------------------------------------------------------------------------------------------
 
-- (void)readFileFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode
+- (void)readFileSuccessFailure:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata message:(NSString *)message errorCode:(NSInteger)errorCode
 {
-    NSLog(@"[LOG] Read file failure error %d, %@", (int)errorCode, message);
-}
-
-- (void)readFileSuccess:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata
-{
-    (void)[[NCManageDatabase sharedInstance] addMetadata:metadata];
-    
-    [self reloadDatasource];
+    if (errorCode == 0) {
+        
+        (void)[[NCManageDatabase sharedInstance] addMetadata:metadata];
+        [self reloadDatasource];
+        
+    } else {
+        NSLog(@"[LOG] Read file failure error %d, %@", (int)errorCode, message);
+    }
 }
 
 #pragma --------------------------------------------------------------------------------------------

+ 46 - 48
iOSClient/Synchronize/CCSynchronize.m

@@ -255,67 +255,65 @@
     [appDelegate addNetworkingOperationQueue:appDelegate.netQueue delegate:self metadataNet:metadataNet];
 }
 
-- (void)readFileFailure:(CCMetadataNet *)metadataNet message:(NSString *)message errorCode:(NSInteger)errorCode
+- (void)readFileSuccessFailure:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata message:(NSString *)message errorCode:(NSInteger)errorCode
 {
     // Check Active Account
     if (![metadataNet.account isEqualToString:appDelegate.activeAccount])
         return;
     
-    // Selector : selectorReadFile, selectorReadFileWithDownload
-    if ([metadataNet.selector isEqualToString:selectorReadFile] || [metadataNet.selector isEqualToString:selectorReadFileWithDownload]) {
-        
-        // File not present, remove it
-        if (errorCode == 404) {
-        
-            [[NCManageDatabase sharedInstance] deleteLocalFileWithPredicate:[NSPredicate predicateWithFormat:@"fileID = %@", metadataNet.fileID]];
-            [[NCManageDatabase sharedInstance] deleteMetadataWithPredicate:[NSPredicate predicateWithFormat:@"fileID = %@", metadataNet.account, metadataNet.fileID] clearDateReadDirectoryID:nil];
-        
-            NSString *serverUrl = [[NCManageDatabase sharedInstance] getServerUrl:metadataNet.directoryID];
-            if (serverUrl)
-                [appDelegate.activeMain reloadDatasource:serverUrl];
-        }
-    }
-}
-
-- (void)readFileSuccess:(CCMetadataNet *)metadataNet metadata:(tableMetadata *)metadata
-{
-    // Check Active Account
-    if (![metadataNet.account isEqualToString:appDelegate.activeAccount])
-        return;
+    if (errorCode == 0) {
     
-    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0), ^{
+        dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0), ^{
+            
+            // Selector : selectorReadFile, selectorReadFileWithDownload
+            if ([metadataNet.selector isEqualToString:selectorReadFile] || [metadataNet.selector isEqualToString:selectorReadFileWithDownload]) {
+            
+                BOOL withDownload = NO;
+            
+                if ([metadataNet.selector isEqualToString:selectorReadFileWithDownload])
+                    withDownload = YES;
+            
+                //Add/Update Metadata
+                tableMetadata *addMetadata = [[NCManageDatabase sharedInstance] addMetadata:metadata];
+                
+                if (addMetadata)
+                    [self verifyChangeMedatas:[[NSArray alloc] initWithObjects:addMetadata, nil] serverUrl:metadataNet.serverUrl account:appDelegate.activeAccount withDownload:withDownload];
+            }
+            
+            // Selector : selectorReadFileReloadFolder, selectorReadFileFolderWithDownload
+            if ([metadataNet.selector isEqualToString:selectorReadFileFolder] || [metadataNet.selector isEqualToString:selectorReadFileFolderWithDownload]) {
+                
+                NSString *serverUrl = [CCUtility stringAppendServerUrl:metadataNet.serverUrl addFileName:metadataNet.fileName];
+                tableDirectory *tableDirectory = [[NCManageDatabase sharedInstance] getTableDirectoryWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND serverUrl = %@", metadataNet.account, serverUrl]];
+                
+                // Verify changed etag
+                if (![tableDirectory.etag isEqualToString:metadata.etag] && tableDirectory) {
+                    
+                    if ([metadataNet.selector isEqualToString:selectorReadFileFolder])
+                        [self readFolder:serverUrl selector:selectorReadFolder];
+                    if ([metadataNet.selector isEqualToString:selectorReadFileFolderWithDownload])
+                        [self readFolder:serverUrl selector:selectorReadFolderWithDownload];
+                }
+            }
+        });
+        
+    } else {
         
         // Selector : selectorReadFile, selectorReadFileWithDownload
         if ([metadataNet.selector isEqualToString:selectorReadFile] || [metadataNet.selector isEqualToString:selectorReadFileWithDownload]) {
-        
-            BOOL withDownload = NO;
-        
-            if ([metadataNet.selector isEqualToString:selectorReadFileWithDownload])
-                withDownload = YES;
-        
-            //Add/Update Metadata
-            tableMetadata *addMetadata = [[NCManageDatabase sharedInstance] addMetadata:metadata];
-            
-            if (addMetadata)
-                [self verifyChangeMedatas:[[NSArray alloc] initWithObjects:addMetadata, nil] serverUrl:metadataNet.serverUrl account:appDelegate.activeAccount withDownload:withDownload];
-        }
-        
-        // Selector : selectorReadFileReloadFolder, selectorReadFileFolderWithDownload
-        if ([metadataNet.selector isEqualToString:selectorReadFileFolder] || [metadataNet.selector isEqualToString:selectorReadFileFolderWithDownload]) {
             
-            NSString *serverUrl = [CCUtility stringAppendServerUrl:metadataNet.serverUrl addFileName:metadataNet.fileName];
-            tableDirectory *tableDirectory = [[NCManageDatabase sharedInstance] getTableDirectoryWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND serverUrl = %@", metadataNet.account, serverUrl]];
-            
-            // Verify changed etag
-            if (![tableDirectory.etag isEqualToString:metadata.etag] && tableDirectory) {
+            // File not present, remove it
+            if (errorCode == 404) {
+                
+                [[NCManageDatabase sharedInstance] deleteLocalFileWithPredicate:[NSPredicate predicateWithFormat:@"fileID = %@", metadataNet.fileID]];
+                [[NCManageDatabase sharedInstance] deleteMetadataWithPredicate:[NSPredicate predicateWithFormat:@"fileID = %@", metadataNet.account, metadataNet.fileID] clearDateReadDirectoryID:nil];
                 
-                if ([metadataNet.selector isEqualToString:selectorReadFileFolder])
-                    [self readFolder:serverUrl selector:selectorReadFolder];
-                if ([metadataNet.selector isEqualToString:selectorReadFileFolderWithDownload])
-                    [self readFolder:serverUrl selector:selectorReadFolderWithDownload];
+                NSString *serverUrl = [[NCManageDatabase sharedInstance] getServerUrl:metadataNet.directoryID];
+                if (serverUrl)
+                    [appDelegate.activeMain reloadDatasource:serverUrl];
             }
         }
-    });
+    }
 }
 
 #pragma --------------------------------------------------------------------------------------------