aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Controller/Providers/LocalTrailerProvider.cs
diff options
context:
space:
mode:
authorLukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com>2012-08-23 01:45:26 -0400
committerLukePulverenti Luke Pulverenti luke pulverenti <LukePulverenti Luke Pulverenti luke.pulverenti@gmail.com>2012-08-23 01:45:26 -0400
commitc80c8c1cfd594f2597e46b09d44360ade9f4fec2 (patch)
tree6e4ad0b3f3fff80512e9693695aa80725fdbb7ce /MediaBrowser.Controller/Providers/LocalTrailerProvider.cs
parent882e364326006f19f272b6084ae0e3863945ee5a (diff)
Switched all i/o to win32 methods and added protobuf serialization for ffprobe caching
Diffstat (limited to 'MediaBrowser.Controller/Providers/LocalTrailerProvider.cs')
-rw-r--r--MediaBrowser.Controller/Providers/LocalTrailerProvider.cs19
1 files changed, 7 insertions, 12 deletions
diff --git a/MediaBrowser.Controller/Providers/LocalTrailerProvider.cs b/MediaBrowser.Controller/Providers/LocalTrailerProvider.cs
index 18ca261dc..536294c7b 100644
--- a/MediaBrowser.Controller/Providers/LocalTrailerProvider.cs
+++ b/MediaBrowser.Controller/Providers/LocalTrailerProvider.cs
@@ -3,6 +3,7 @@ using System.ComponentModel.Composition;
using System.IO;
using System.Threading.Tasks;
using MediaBrowser.Controller.Events;
+using MediaBrowser.Controller.IO;
using MediaBrowser.Model.Entities;
namespace MediaBrowser.Controller.Providers
@@ -22,27 +23,21 @@ namespace MediaBrowser.Controller.Providers
public async override Task FetchAsync(BaseEntity item, ItemResolveEventArgs args)
{
- var trailerPath = args.GetFileSystemEntryByName("trailers", true);
-
- if (trailerPath.HasValue)
+ if (args.ContainsFolder("trailers"))
{
- string[] allFiles = Directory.GetFileSystemEntries(trailerPath.Value.Path, "*", SearchOption.TopDirectoryOnly);
-
- List<Video> localTrailers = new List<Video>();
+ List<Video> items = new List<Video>();
- for (int i = 0; i < allFiles.Length; i++)
+ foreach (WIN32_FIND_DATA file in FileData.GetFileSystemEntries(Path.Combine(args.Path, "trailers"), "*"))
{
- string file = allFiles[i];
-
- Video video = await Kernel.Instance.ItemController.GetItem(file).ConfigureAwait(false) as Video;
+ Video video = await Kernel.Instance.ItemController.GetItem(file.Path, fileInfo: file).ConfigureAwait(false) as Video;
if (video != null)
{
- localTrailers.Add(video);
+ items.Add(video);
}
}
- (item as BaseItem).LocalTrailers = localTrailers;
+ (item as BaseItem).LocalTrailers = items;
}
}
}