Ejemplo n.º 1
0
        /// <summary>
        /// delete a file
        /// </summary>
        /// <param name="path">pathname of the file to delete</param>
        public void FileDelete(string path)
        {
            var pathInfo = MtpPath.GetPathInfo(path);

            if (!pathInfo.IsMtpPath)
            {
                _fileUtilities.FileDelete(path);
                return;
            }

            var device = GetDevice(pathInfo);

            device.Delete(pathInfo.RelativePathOnDevice);
        }
        private void CreateFolderIfNeeded()
        {
            string         folder = Path.GetDirectoryName(_syncItem.DestinationPath);
            IDirectoryInfo dir    = _directoryInfoProvider.GetDirectoryInfo(folder);

            if (!dir.Exists)
            {
                dir.Create();
            }
            if (_fileUtilities.FileExists(_syncItem.DestinationPath))
            {
                _fileUtilities.FileDelete(_syncItem.DestinationPath);
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// purge a folder, removing any files that were automatically generated first
        /// </summary>
        /// <param name="folder">folder to delete</param>
        public void PurgeFolder(IDirectoryInfo folder)
        {
            IFileInfo[] files;
            try
            {
                files = folder.GetFiles("*.*");
            }
            catch (DirectoryNotFoundException)
            {
                // if the folder is not there then there is nothing to do
                return;
            }

            foreach (IFileInfo file in files)
            {
                if (_filesThatCanBeAutomaticallyDeleted.Contains(file.Name.ToLower(CultureInfo.InvariantCulture)))
                {
                    _fileUtilities.FileDelete(file.FullName);
                }
            }
            folder.Delete();
        }
Ejemplo n.º 4
0
        private static void DoDelete(IList <IFileInfo> files, IList <IDirectoryInfo> folders)
        {
            IFileUtilities fileUtilities        = _iocContainer.Resolve <IFileUtilities>();
            IEpisodePurger podcastEpisodePurger = _iocContainer.Resolve <IEpisodePurger>();

            foreach (IFileInfo fileInfo in files)
            {
                fileUtilities.FileDelete(fileInfo.FullName);
            }
            foreach (IDirectoryInfo folder in folders)
            {
                try
                {
                    podcastEpisodePurger.PurgeFolder(folder);
                }
                catch (Exception exception)
                {
                    Console.ForegroundColor = ConsoleColor.Red;
                    Console.WriteLine("Cannot delete folder: {0}", folder.FullName);
                    Console.WriteLine(exception.ToString());
                    Console.ResetColor();
                }
            }
        }
Ejemplo n.º 5
0
 private void DeleteItem(IFileInfo fileInfo) => FileUtilities.FileDelete(fileInfo.FullName);