aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/LibraryService.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2013-10-30 17:33:27 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2013-10-30 17:33:27 -0400
commit524150331c1811e8ced5ff8444e0d0197bc6419a (patch)
treede08c6d40aa77e2c0ddbc0e8246ab85d3d0b9c90 /MediaBrowser.Api/LibraryService.cs
parent2f99b2e1e60f7a36c7f9c420c07fb608bb231fbf (diff)
beginning manual image providers
Diffstat (limited to 'MediaBrowser.Api/LibraryService.cs')
-rw-r--r--MediaBrowser.Api/LibraryService.cs30
1 files changed, 29 insertions, 1 deletions
diff --git a/MediaBrowser.Api/LibraryService.cs b/MediaBrowser.Api/LibraryService.cs
index 202d372e8..5b133fbd3 100644
--- a/MediaBrowser.Api/LibraryService.cs
+++ b/MediaBrowser.Api/LibraryService.cs
@@ -5,8 +5,10 @@ using MediaBrowser.Controller.Entities.Movies;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Persistence;
+using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Entities;
+using MediaBrowser.Model.Providers;
using MediaBrowser.Model.Querying;
using ServiceStack.ServiceHost;
using System;
@@ -32,6 +34,21 @@ namespace MediaBrowser.Api
public string Id { get; set; }
}
+ [Route("/Items/{Id}/RemoteImages/{Type}", "GET")]
+ [Api(Description = "Gets available remote images for an item")]
+ public class GetRemoteImages : IReturn<List<RemoteImageInfo>>
+ {
+ /// <summary>
+ /// Gets or sets the id.
+ /// </summary>
+ /// <value>The id.</value>
+ [ApiMember(Name = "Id", Description = "Item Id", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "GET")]
+ public string Id { get; set; }
+
+ [ApiMember(Name = "Type", Description = "The image type", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "GET")]
+ public ImageType Type { get; set; }
+ }
+
/// <summary>
/// Class GetCriticReviews
/// </summary>
@@ -208,6 +225,7 @@ namespace MediaBrowser.Api
private readonly ILibraryManager _libraryManager;
private readonly IUserManager _userManager;
private readonly IUserDataManager _userDataManager;
+ private readonly IProviderManager _providerManager;
private readonly IDtoService _dtoService;
@@ -215,13 +233,14 @@ namespace MediaBrowser.Api
/// Initializes a new instance of the <see cref="LibraryService" /> class.
/// </summary>
public LibraryService(IItemRepository itemRepo, ILibraryManager libraryManager, IUserManager userManager,
- IDtoService dtoService, IUserDataManager userDataManager)
+ IDtoService dtoService, IUserDataManager userDataManager, IProviderManager providerManager)
{
_itemRepo = itemRepo;
_libraryManager = libraryManager;
_userManager = userManager;
_dtoService = dtoService;
_userDataManager = userDataManager;
+ _providerManager = providerManager;
}
public object Get(GetFile request)
@@ -240,6 +259,15 @@ namespace MediaBrowser.Api
return ToStaticFileResult(item.Path);
}
+ public object Get(GetRemoteImages request)
+ {
+ var item = _dtoService.GetItemByDtoId(request.Id);
+
+ var result = _providerManager.GetAvailableRemoteImages(item, request.Type, CancellationToken.None).Result;
+
+ return ToOptimizedResult(result);
+ }
+
/// <summary>
/// Gets the specified request.
/// </summary>