浏览代码

remove check file exists for upload encrypted file

Marino Faggiana 7 年之前
父节点
当前提交
b88b44a888
共有 2 个文件被更改,包括 33 次插入85 次删除
  1. 24 8
      iOSClient/Main/CCMain.m
  2. 9 77
      iOSClient/Networking/CCNetworking.m

+ 24 - 8
iOSClient/Main/CCMain.m

@@ -1724,15 +1724,31 @@
             
             CCMetadataNet *metadataNet = [[CCMetadataNet alloc] initWithAccount:app.activeAccount];
             
-            metadataNet.action = actionReadFile;
-            metadataNet.assetLocalIdentifier = asset.localIdentifier;
-            metadataNet.cryptated = cryptated;
-            metadataNet.fileName = fileName;
-            metadataNet.priority = NSOperationQueuePriorityNormal;
-            metadataNet.session = session;
-            metadataNet.selector = selectorReadFileUploadFile;
-            metadataNet.serverUrl = serverUrl;
+            if (cryptated) {
                 
+                metadataNet.action = actionUploadAsset;
+                metadataNet.assetLocalIdentifier = asset.localIdentifier;
+                metadataNet.cryptated = cryptated;
+                metadataNet.fileName = fileName;
+                metadataNet.priority = NSOperationQueuePriorityNormal;
+                metadataNet.session = session;
+                metadataNet.selector = selectorUploadFile;
+                metadataNet.selectorPost = nil;
+                metadataNet.serverUrl = serverUrl;
+                metadataNet.taskStatus = k_taskStatusResume;
+
+            } else {
+            
+                metadataNet.action = actionReadFile;
+                metadataNet.assetLocalIdentifier = asset.localIdentifier;
+                metadataNet.cryptated = cryptated;
+                metadataNet.fileName = fileName;
+                metadataNet.priority = NSOperationQueuePriorityNormal;
+                metadataNet.session = session;
+                metadataNet.selector = selectorReadFileUploadFile;
+                metadataNet.serverUrl = serverUrl;
+            }
+            
             [app addNetworkingOperationQueue:app.netQueue delegate:self metadataNet:metadataNet];
         }
     }

+ 9 - 77
iOSClient/Networking/CCNetworking.m

@@ -1004,89 +1004,21 @@
             metadata.title = [self getTitleFromPlistName:fileNameCrypto];
             metadata.type = k_metadataType_file;
             
-            if (errorCode == 403) {
-                
-                dispatch_async(dispatch_get_main_queue(), ^{
-                    
-                    UIAlertController *alertController = [UIAlertController alertControllerWithTitle:fileName message:NSLocalizedString(@"_file_already_exists_", nil) preferredStyle:UIAlertControllerStyleAlert];
-                
-                    UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:NSLocalizedString(@"_cancel_", nil) style:UIAlertActionStyleCancel handler:^(UIAlertAction *action) {
-                    
-                        // Activity
-                        [[NCManageDatabase sharedInstance] addActivityClient:fileName fileID:uploadID action:k_activityDebugActionUpload selector:selector note:NSLocalizedString(@"_file_already_exists_", nil) type:k_activityTypeFailure verbose:k_activityVerboseDefault activeUrl:_activeUrl];
-                    
-                        // Error for uploadFileFailure
-                        if ([[self getDelegate:uploadID] respondsToSelector:@selector(uploadFileFailure:fileID:serverUrl:selector:message:errorCode:)])
-                            [[self getDelegate:uploadID] uploadFileFailure:nil fileID:nil serverUrl:serverUrl selector:selector message:NSLocalizedString(@"_file_already_exists_", nil) errorCode:403];
-                    
-                        return;
-                    }];
-                
-                    UIAlertAction *overwriteAction = [UIAlertAction actionWithTitle:NSLocalizedString(@"_overwrite_", nil) style:UIAlertActionStyleDefault handler:^(UIAlertAction *action) {
-                    
-                        // -- remove record --
-                    
-                        tableMetadata *metadataDelete = [[NCManageDatabase sharedInstance] getMetadataWithPredicate:[NSPredicate predicateWithFormat:@"account = %@ AND fileName = %@ AND directoryID = %@", _activeAccount, [fileNameCrypto stringByAppendingString:@".plist"], directoryID]];
-                    
-                        [[NSFileManager defaultManager] removeItemAtPath:[NSString stringWithFormat:@"%@/%@", _directoryUser, metadataDelete.fileID] error:nil];
-                        [[NSFileManager defaultManager] removeItemAtPath:[NSString stringWithFormat:@"%@/%@.ico", _directoryUser, metadataDelete.fileID] error:nil];
-                    
-                        if (metadataDelete.directory && serverUrl) {
-                        
-                            NSString *dirForDelete = [CCUtility stringAppendServerUrl:serverUrl addFileName:metadataDelete.fileNameData];
-                        
-                            [[NCManageDatabase sharedInstance] deleteDirectoryAndSubDirectoryWithServerUrl:dirForDelete];
-                        }
-                    
-                        [[NCManageDatabase sharedInstance] deleteMetadataWithPredicate:[NSPredicate predicateWithFormat:@"fileID = %@", metadataDelete.fileID]];
-                        [[NCManageDatabase sharedInstance] deleteLocalFileWithPredicate:[NSPredicate predicateWithFormat:@"fileID = %@", metadataDelete.fileID]];
-                    
 #ifndef EXTENSION
-                        [CCGraphics createNewImageFrom:fileName directoryUser:_directoryUser fileNameTo:uploadID fileNamePrint:fileName size:@"m" imageForUpload:YES typeFile:metadata.typeFile writePreview:YES optimizedFileName:NO];
+            [CCGraphics createNewImageFrom:fileName directoryUser:_directoryUser fileNameTo:uploadID fileNamePrint:fileName size:@"m" imageForUpload:YES typeFile:metadata.typeFile writePreview:YES optimizedFileName:NO];
 #endif
-
-                        if ([metadata.typeFile isEqualToString: k_metadataTypeFile_image] || [metadata.typeFile isEqualToString: k_metadataTypeFile_video])
-                            [[CCCrypto sharedManager] addPlistImage:[NSString stringWithFormat:@"%@/%@", _directoryUser, [fileNameCrypto stringByAppendingString:@".plist"]] fileNamePathImage:[NSTemporaryDirectory() stringByAppendingString:uploadID]];
-                    
-                        metadata = [[NCManageDatabase sharedInstance] addMetadata:metadata activeUrl:_activeUrl];
-                    
-                        // DATA
-                        [self uploadURLSession:fileNameCrypto fileNamePrint:fileName serverUrl:serverUrl sessionID:uploadID session:metadata.session taskStatus:taskStatus assetLocalIdentifier:assetLocalIdentifier cryptated:cryptated onlyPlist:onlyPlist selector:selector];
-                    
-                        // PLIST
-                        [self uploadURLSession:[fileNameCrypto stringByAppendingString:@".plist"] fileNamePrint:fileName serverUrl:serverUrl sessionID:uploadID session:metadata.session taskStatus:taskStatus assetLocalIdentifier:assetLocalIdentifier cryptated:cryptated onlyPlist:onlyPlist selector:selector];
-                    }];
-
-                    [alertController addAction:cancelAction];
-                    [alertController addAction:overwriteAction];
                 
-                    UIWindow *alertWindow = [[UIWindow alloc]initWithFrame:[UIScreen mainScreen].bounds];
-                    alertWindow.rootViewController = [[UIViewController alloc]init];
-                    alertWindow.windowLevel = UIWindowLevelAlert + 1;
-                
-                    [alertWindow makeKeyAndVisible];
-                
-                    [alertWindow.rootViewController presentViewController:alertController animated:YES completion:nil];
-                });
-                
-            } else {
-                
-#ifndef EXTENSION
-                [CCGraphics createNewImageFrom:fileName directoryUser:_directoryUser fileNameTo:uploadID fileNamePrint:fileName size:@"m" imageForUpload:YES typeFile:metadata.typeFile writePreview:YES optimizedFileName:NO];
-#endif
-                
-                if ([metadata.typeFile isEqualToString: k_metadataTypeFile_image] || [metadata.typeFile isEqualToString: k_metadataTypeFile_video])
-                    [[CCCrypto sharedManager] addPlistImage:[NSString stringWithFormat:@"%@/%@", _directoryUser, [fileNameCrypto stringByAppendingString:@".plist"]] fileNamePathImage:[NSTemporaryDirectory() stringByAppendingString:uploadID]];
+            if ([metadata.typeFile isEqualToString: k_metadataTypeFile_image] || [metadata.typeFile isEqualToString: k_metadataTypeFile_video])
+                [[CCCrypto sharedManager] addPlistImage:[NSString stringWithFormat:@"%@/%@", _directoryUser, [fileNameCrypto stringByAppendingString:@".plist"]] fileNamePathImage:[NSTemporaryDirectory() stringByAppendingString:uploadID]];
                 
-                //[CCCoreData addMetadata:metadata activeAccount:_activeAccount activeUrl:_activeUrl context:_context];
-                metadata = [[NCManageDatabase sharedInstance] addMetadata:metadata activeUrl:_activeUrl];
+            //[CCCoreData addMetadata:metadata activeAccount:_activeAccount activeUrl:_activeUrl context:_context];
+            metadata = [[NCManageDatabase sharedInstance] addMetadata:metadata activeUrl:_activeUrl];
                 
-                // DATA
-                [self uploadURLSession:fileNameCrypto fileNamePrint:fileName serverUrl:serverUrl sessionID:uploadID session:metadata.session taskStatus:taskStatus assetLocalIdentifier:assetLocalIdentifier cryptated:cryptated onlyPlist:onlyPlist selector:selector];
+            // DATA
+            [self uploadURLSession:fileNameCrypto fileNamePrint:fileName serverUrl:serverUrl sessionID:uploadID session:metadata.session taskStatus:taskStatus assetLocalIdentifier:assetLocalIdentifier cryptated:cryptated onlyPlist:onlyPlist selector:selector];
                 
-                // PLIST
-                [self uploadURLSession:[fileNameCrypto stringByAppendingString:@".plist"] fileNamePrint:fileName serverUrl:serverUrl sessionID:uploadID session:metadata.session taskStatus:taskStatus assetLocalIdentifier:assetLocalIdentifier cryptated:cryptated onlyPlist:onlyPlist selector:selector];
-            }
+            // PLIST
+            [self uploadURLSession:[fileNameCrypto stringByAppendingString:@".plist"] fileNamePrint:fileName serverUrl:serverUrl sessionID:uploadID session:metadata.session taskStatus:taskStatus assetLocalIdentifier:assetLocalIdentifier cryptated:cryptated onlyPlist:onlyPlist selector:selector];
         }
     }