diff options
| author | Luke <luke.pulverenti@gmail.com> | 2015-05-12 10:55:26 -0400 |
|---|---|---|
| committer | Luke <luke.pulverenti@gmail.com> | 2015-05-12 10:55:26 -0400 |
| commit | 033919685a56fb9cf2c0612e1d320bc2987f7291 (patch) | |
| tree | d53751b885ab8f88bf18d2370026908753cd5a82 /MediaBrowser.Server.Implementations/Photos | |
| parent | 46b26863d032643268375525170e67618d959464 (diff) | |
| parent | 0f4a5ca9e6682e5f00bc54172b8083d42cbcd266 (diff) | |
Merge pull request #1100 from MediaBrowser/dev
3.0.5607.2
Diffstat (limited to 'MediaBrowser.Server.Implementations/Photos')
| -rw-r--r-- | MediaBrowser.Server.Implementations/Photos/BaseDynamicImageProvider.cs | 29 | ||||
| -rw-r--r-- | MediaBrowser.Server.Implementations/Photos/PhotoAlbumImageProvider.cs | 56 |
2 files changed, 44 insertions, 41 deletions
diff --git a/MediaBrowser.Server.Implementations/Photos/BaseDynamicImageProvider.cs b/MediaBrowser.Server.Implementations/Photos/BaseDynamicImageProvider.cs index bd22a8a70..79ebc67d9 100644 --- a/MediaBrowser.Server.Implementations/Photos/BaseDynamicImageProvider.cs +++ b/MediaBrowser.Server.Implementations/Photos/BaseDynamicImageProvider.cs @@ -103,7 +103,7 @@ namespace MediaBrowser.Server.Implementations.Photos return parts.GetMD5().ToString("N"); } - protected Task CreateThumbCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath, bool drawText) + protected Task<bool> CreateThumbCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath, bool drawText) { return CreateCollage(primaryItem, items, outputPath, 960, 540, drawText, primaryItem.Name); } @@ -115,22 +115,22 @@ namespace MediaBrowser.Server.Implementations.Photos .Where(i => !string.IsNullOrWhiteSpace(i)); } - protected Task CreatePosterCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath) + protected Task<bool> CreatePosterCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath) { return CreateCollage(primaryItem, items, outputPath, 600, 900, true, primaryItem.Name); } - protected Task CreateSquareCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath, bool drawText) + protected Task<bool> CreateSquareCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath, bool drawText) { return CreateCollage(primaryItem, items, outputPath, 800, 800, drawText, primaryItem.Name); } - protected Task CreateThumbCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath, int width, int height, bool drawText, string text) + protected Task<bool> CreateThumbCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath, int width, int height, bool drawText, string text) { return CreateCollage(primaryItem, items, outputPath, width, height, drawText, text); } - private Task CreateCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath, int width, int height, bool drawText, string text) + private Task<bool> CreateCollage(IHasImages primaryItem, List<BaseItem> items, string outputPath, int width, int height, bool drawText, string text) { Directory.CreateDirectory(Path.GetDirectoryName(outputPath)); @@ -143,7 +143,13 @@ namespace MediaBrowser.Server.Implementations.Photos InputPaths = GetStripCollageImagePaths(primaryItem, items).ToArray() }; - return ImageProcessor.CreateImageCollage(options); + if (options.InputPaths.Length == 0) + { + return Task.FromResult(false); + } + + ImageProcessor.CreateImageCollage(options); + return Task.FromResult(true); } public string Name @@ -166,26 +172,23 @@ namespace MediaBrowser.Server.Implementations.Photos if (imageType == ImageType.Thumb) { - await CreateThumbCollage(item, itemsWithImages, outputPath, drawText).ConfigureAwait(false); - return true; + return await CreateThumbCollage(item, itemsWithImages, outputPath, drawText).ConfigureAwait(false); } if (imageType == ImageType.Primary) { if (item is UserView) { - await CreateSquareCollage(item, itemsWithImages, outputPath, drawText).ConfigureAwait(false); + return await CreateSquareCollage(item, itemsWithImages, outputPath, drawText).ConfigureAwait(false); } else if (item is PhotoAlbum || item is Playlist) { - await CreateSquareCollage(item, itemsWithImages, outputPath, drawText).ConfigureAwait(false); + return await CreateSquareCollage(item, itemsWithImages, outputPath, drawText).ConfigureAwait(false); } else { - await CreatePosterCollage(item, itemsWithImages, outputPath).ConfigureAwait(false); + return await CreatePosterCollage(item, itemsWithImages, outputPath).ConfigureAwait(false); } - - return true; } throw new ArgumentException("Unexpected image type"); diff --git a/MediaBrowser.Server.Implementations/Photos/PhotoAlbumImageProvider.cs b/MediaBrowser.Server.Implementations/Photos/PhotoAlbumImageProvider.cs index b5ecc94a2..9d2eb297f 100644 --- a/MediaBrowser.Server.Implementations/Photos/PhotoAlbumImageProvider.cs +++ b/MediaBrowser.Server.Implementations/Photos/PhotoAlbumImageProvider.cs @@ -8,37 +8,37 @@ using System.Threading.Tasks; namespace MediaBrowser.Server.Implementations.Photos { - //public class PhotoAlbumImageProvider : IDynamicImageProvider - //{ - // public IEnumerable<ImageType> GetSupportedImages(IHasImages item) - // { - // return new List<ImageType> { ImageType.Primary }; - // } + public class PhotoAlbumImageProvider : IDynamicImageProvider + { + public IEnumerable<ImageType> GetSupportedImages(IHasImages item) + { + return new List<ImageType> { ImageType.Primary }; + } - // public Task<DynamicImageResponse> GetImage(IHasImages item, ImageType type, CancellationToken cancellationToken) - // { - // var album = (PhotoAlbum)item; + public Task<DynamicImageResponse> GetImage(IHasImages item, ImageType type, CancellationToken cancellationToken) + { + var album = (PhotoAlbum)item; - // var image = album.Children - // .OfType<Photo>() - // .Select(i => i.GetImagePath(type)) - // .FirstOrDefault(i => !string.IsNullOrEmpty(i)); + var image = album.Children + .OfType<Photo>() + .Select(i => i.GetImagePath(type)) + .FirstOrDefault(i => !string.IsNullOrEmpty(i)); - // return Task.FromResult(new DynamicImageResponse - // { - // Path = image, - // HasImage = !string.IsNullOrEmpty(image) - // }); - // } + return Task.FromResult(new DynamicImageResponse + { + Path = image, + HasImage = !string.IsNullOrEmpty(image) + }); + } - // public string Name - // { - // get { return "Image Extractor"; } - // } + public string Name + { + get { return "Image Extractor"; } + } - // public bool Supports(IHasImages item) - // { - // return item is PhotoAlbum; - // } - //} + public bool Supports(IHasImages item) + { + return item is PhotoAlbum; + } + } } |
