Empty folder before update instead of deleting it

This commit is contained in:
Mark McDowall 2013-09-08 10:13:46 -07:00
parent ac607560d4
commit 00bf533696
2 changed files with 17 additions and 2 deletions

View File

@ -42,6 +42,7 @@ namespace NzbDrone.Common
void SetPermissions(string filename, WellKnownSidType accountSid, FileSystemRights rights, AccessControlType controlType);
bool IsParent(string parentPath, string childPath);
FileAttributes GetFileAttributes(string path);
void EmptyFolder(string path);
}
public class DiskProvider : IDiskProvider
@ -352,7 +353,6 @@ namespace NzbDrone.Common
File.WriteAllText(filename, contents);
}
public void FileSetLastWriteTimeUtc(string path, DateTime dateTime)
{
Ensure.That(() => path).IsValidPath();
@ -446,5 +446,20 @@ namespace NzbDrone.Common
{
return File.GetAttributes(path);
}
public void EmptyFolder(string path)
{
Ensure.That(() => path).IsValidPath();
foreach (var file in GetFiles(path, SearchOption.TopDirectoryOnly))
{
DeleteFile(file);
}
foreach (var directory in GetDirectories(path))
{
DeleteFolder(directory, true);
}
}
}
}

View File

@ -64,7 +64,7 @@ namespace NzbDrone.Update.UpdateEngine
try
{
_diskProvider.DeleteFolder(installationFolder, true);
_diskProvider.EmptyFolder(installationFolder);
_diskProvider.CopyFolder(_appFolderInfo.GetUpdatePackageFolder(), installationFolder);
}
catch (Exception e)