public void ActivityStopped() { numberOfActiveProcesses--; if (numberOfActiveProcesses == 0) { overall.ActivityStopped(); } }
/** * Download all content from a CMIS folder. */ private void RecursiveFolderCopy(IFolder remoteFolder, string localFolder) { activityListener.ActivityStarted(); // List all children. foreach (ICmisObject cmisObject in remoteFolder.GetChildren()) { if (cmisObject is DotCMIS.Client.Impl.Folder) { IFolder remoteSubFolder = (IFolder)cmisObject; string localSubFolder = localFolder + Path.DirectorySeparatorChar + cmisObject.Name; if (CheckRules(localSubFolder, RulesType.Folder)) { // Create local folder. Directory.CreateDirectory(localSubFolder); // Create database entry for this folder // TODO - Yannick - Add metadata database.AddFolder(localSubFolder, remoteFolder.LastModificationDate); // Recurse into folder. RecursiveFolderCopy(remoteSubFolder, localSubFolder); } } else { if (CheckRules(cmisObject.Name, RulesType.File)) { // It is a file, just download it. DownloadFile((IDocument)cmisObject, localFolder); } } } activityListener.ActivityStopped(); }