bool DeleteFile(SQ.Repository.File file) { try { List<RemoteFile> filesInFolder = remoteFiles.Where (remo => remo.AbsolutePath.Contains(file.AbsolutePath+Constant.DELIMITER)).ToList<RemoteFile>(); if (filesInFolder.Count >= 1){ file = new Folder (file.FullLocalName+Constant.DELIMITER); foreach (RemoteFile r in filesInFolder) { if(file.IsIgnoreFile) continue; if (r.AbsolutePath != file.AbsolutePath) RemoteRepo.MoveToTrash (r); } } RemoteRepo.MoveToTrash (file); } catch { return false; } return true; }
private void SynchronizeUploadRenameFolder(Folder folder) { // nao precisa fazer upload, pois vai mover apenas remotamente (os arquivos atuais ja estao la) FileInfo[] filesInFolder = new DirectoryInfo(folder.FullLocalName).GetFiles(); if (filesInFolder.Length == 0) RemoteRepo.Move (folder.OldVersion, folder); else { foreach (FileInfo file in filesInFolder) { LocalFile newFile = new LocalFile (file.FullName); LocalFile oldFile = new LocalFile (file.FullName.Replace (folder.FullLocalName, folder.OldVersion.FullLocalName)); RemoteRepo.Move (oldFile, newFile); } } }
private void SyncRemoveFolder(Folder folder) { //TODO fazer uma rotina de exclusao de pastas DirectoryInfo d = new DirectoryInfo (folder.FullLocalName); if (!ExistsInBucket (folder) && d.Exists) { ExcludeFolder (d); } }
private void SyncFolder(Folder folder) { if (!new DirectoryInfo (folder.FullLocalName).Exists ) folder.Create(); //countOperation++; }
public bool CreateFolder(Folder folder) { return CreateFolder (folder.Name, folder.RelativePathInBucket); }
public static void CreateFolder(Folder folder) { connection.CreateFolder (folder); }