GetMediaFile should be alot easier on disk.
This commit is contained in:
parent
e3ad0b3d6b
commit
6b0aae85ee
|
@ -12,7 +12,7 @@ namespace NzbDrone.Core.Providers
|
||||||
public class MediaFileProvider
|
public class MediaFileProvider
|
||||||
{
|
{
|
||||||
private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
|
private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
|
||||||
private static readonly string[] MediaExtentions = new[] { "*.mkv", "*.avi", "*.wmv", "*.mp4" };
|
private static readonly string[] MediaExtentions = new[] { ".mkv", ".avi", ".wmv", ".mp4" };
|
||||||
private readonly DiskProvider _diskProvider;
|
private readonly DiskProvider _diskProvider;
|
||||||
private readonly EpisodeProvider _episodeProvider;
|
private readonly EpisodeProvider _episodeProvider;
|
||||||
private readonly SeriesProvider _seriesProvider;
|
private readonly SeriesProvider _seriesProvider;
|
||||||
|
@ -72,7 +72,7 @@ namespace NzbDrone.Core.Providers
|
||||||
if (!_repository.Exists<EpisodeFile>(e => e.Path == Parser.NormalizePath(filePath)))
|
if (!_repository.Exists<EpisodeFile>(e => e.Path == Parser.NormalizePath(filePath)))
|
||||||
{
|
{
|
||||||
var parseResult = Parser.ParseEpisodeInfo(filePath);
|
var parseResult = Parser.ParseEpisodeInfo(filePath);
|
||||||
|
|
||||||
|
|
||||||
if (parseResult == null)
|
if (parseResult == null)
|
||||||
return null;
|
return null;
|
||||||
|
@ -199,14 +199,11 @@ namespace NzbDrone.Core.Providers
|
||||||
{
|
{
|
||||||
Logger.Debug("Scanning '{0}' for episodes", path);
|
Logger.Debug("Scanning '{0}' for episodes", path);
|
||||||
|
|
||||||
var mediaFileList = new List<string>();
|
var filesOnDisk = _diskProvider.GetFiles(path, "*.*", SearchOption.AllDirectories);
|
||||||
|
|
||||||
foreach (var ext in MediaExtentions)
|
var mediaFileList = filesOnDisk.Where(c => MediaExtentions.Contains(Path.GetExtension(c).ToLower())).ToList();
|
||||||
{
|
|
||||||
mediaFileList.AddRange(_diskProvider.GetFiles(path, ext, SearchOption.AllDirectories));
|
|
||||||
}
|
|
||||||
|
|
||||||
Logger.Trace("{0} media files were found in {1}", mediaFileList.Count, path);
|
Logger.Debug("{0} media files were found in {1}", mediaFileList.Count, path);
|
||||||
return mediaFileList;
|
return mediaFileList;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue