Пример #1
0
        /// <summary>
        /// Deletes the directories.
        /// </summary>
        /// <param name="srcDirectories">The source sub directories.</param>
        /// <param name="tgtDirectory">The TGT directory.</param>
        private void DeleteDirectories(List <string> srcDirectories, string tgtDirectory)
        {
            // delete non existing directories
            var tgtSubDirectories      = this.TgtSyncOperations.GetDirectories(tgtDirectory);
            var tgtDirectoriesUnrooted = this.GetFileNames(tgtSubDirectories).ToList();
            var srcDirectoriesUnrooted = this.GetFileNames(srcDirectories).ToList();

            var deletedTgtDirectories = tgtDirectoriesUnrooted.Except(srcDirectoriesUnrooted);

            deletedTgtDirectories = DirectoryUtil.CombinePath(deletedTgtDirectories, tgtDirectory);
            foreach (var deletedTgtDirectory in deletedTgtDirectories)
            {
                this.TgtSyncOperations.DirectoryDelete(deletedTgtDirectory);
                this.deleted.Add(deletedTgtDirectory);
            }
        }
Пример #2
0
        /// <summary>
        /// Deletes the files.
        /// </summary>
        /// <param name="srcFileNames">The source file names.</param>
        /// <param name="tgtDirectory">The TGT directory.</param>
        private void DeleteFiles(List <string> srcFileNames, string tgtDirectory)
        {
            var tgtFileNames         = this.TgtSyncOperations.GetFiles(tgtDirectory, this.FileFilter.Split(';', '|')).ToList();
            var tgtFileNamesUnrooted = this.GetFileNames(tgtFileNames).ToList();
            var srcFileNamesUnrooted = this.GetFileNames(srcFileNames).ToList();

            var deletedTgtFileNames = tgtFileNamesUnrooted.Except(srcFileNamesUnrooted);

            deletedTgtFileNames = DirectoryUtil.CombinePath(deletedTgtFileNames, tgtDirectory);
            foreach (var deletedFileName in deletedTgtFileNames)
            {
                this.Backup(deletedFileName, FileSyncActions.Deleted);

                this.TgtSyncOperations.FileDelete(deletedFileName);
                this.deleted.Add(deletedFileName);
            }
        }