aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Server.Implementations/FileOrganization
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-10-03 23:38:46 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-10-03 23:38:46 -0400
commit8ad702060ea31a3862598056509a2597f6a2b639 (patch)
tree0ff47fe50567456746ebe028599f6dd54b52f6ab /MediaBrowser.Server.Implementations/FileOrganization
parent64c1628160d31482d6b74fd82a6dfd0c9cf5de96 (diff)
begin file system rework
Diffstat (limited to 'MediaBrowser.Server.Implementations/FileOrganization')
-rw-r--r--MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs17
1 files changed, 8 insertions, 9 deletions
diff --git a/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs b/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs
index b84bf9514..6b91f7cf4 100644
--- a/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs
+++ b/MediaBrowser.Server.Implementations/FileOrganization/TvFolderOrganizer.cs
@@ -35,12 +35,13 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
_providerManager = providerManager;
}
- private bool FilterValidVideoFile(FileInfo fileInfo)
+ private bool EnableOrganization(FileSystemMetadata fileInfo, TvFileOrganizationOptions options)
{
+ var minFileBytes = options.MinFileSizeMb * 1024 * 1024;
+
try
{
- var fullName = fileInfo.FullName;
- return _libraryManager.IsVideoFile(fileInfo.FullName);
+ return _libraryManager.IsVideoFile(fileInfo.FullName) && fileInfo.Length >= minFileBytes;
}
catch (Exception ex)
{
@@ -50,15 +51,13 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
return false;
}
- public async Task Organize(AutoOrganizeOptions options, CancellationToken cancellationToken, IProgress<double> progress)
+ public async Task Organize(TvFileOrganizationOptions options, CancellationToken cancellationToken, IProgress<double> progress)
{
- var minFileBytes = options.MinFileSizeMb * 1024 * 1024;
-
var watchLocations = options.WatchLocations.ToList();
var eligibleFiles = watchLocations.SelectMany(GetFilesToOrganize)
.OrderBy(_fileSystem.GetCreationTimeUtc)
- .Where(i => FilterValidVideoFile(i) && i.Length >= minFileBytes)
+ .Where(i => EnableOrganization(i, options))
.ToList();
var processedFolders = new HashSet<string>();
@@ -128,7 +127,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
/// </summary>
/// <param name="path">The path.</param>
/// <returns>IEnumerable{FileInfo}.</returns>
- private IEnumerable<FileInfo> GetFilesToOrganize(string path)
+ private IEnumerable<FileSystemMetadata> GetFilesToOrganize(string path)
{
try
{
@@ -139,7 +138,7 @@ namespace MediaBrowser.Server.Implementations.FileOrganization
{
_logger.ErrorException("Error getting files from {0}", ex, path);
- return new List<FileInfo>();
+ return new List<FileSystemMetadata>();
}
}