diff options
| author | LukePulverenti <luke.pulverenti@gmail.com> | 2013-02-24 22:56:00 -0500 |
|---|---|---|
| committer | LukePulverenti <luke.pulverenti@gmail.com> | 2013-02-24 22:56:00 -0500 |
| commit | add43baffef74fcd34cfc6ef02d36777be05b274 (patch) | |
| tree | d099801de1b457e3193f5b29b68337ff50649cd8 /MediaBrowser.Api/LibraryService.cs | |
| parent | 2d342c02ef55e2ba8796d95888274356aaadbe5c (diff) | |
convert media library url's to rest
Diffstat (limited to 'MediaBrowser.Api/LibraryService.cs')
| -rw-r--r-- | MediaBrowser.Api/LibraryService.cs | 268 |
1 files changed, 0 insertions, 268 deletions
diff --git a/MediaBrowser.Api/LibraryService.cs b/MediaBrowser.Api/LibraryService.cs deleted file mode 100644 index 434b04eff..000000000 --- a/MediaBrowser.Api/LibraryService.cs +++ /dev/null @@ -1,268 +0,0 @@ -using MediaBrowser.Common.Kernel; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using ServiceStack.ServiceHost; -using System; -using System.Collections.Generic; -using System.Linq; - -namespace MediaBrowser.Api -{ - /// <summary> - /// Class GetPhyscialPaths - /// </summary> - [Route("/Library/PhysicalPaths", "GET")] - public class GetPhyscialPaths : IReturn<List<string>> - { - } - - /// <summary> - /// Class GetItemTypes - /// </summary> - [Route("/Library/ItemTypes", "GET")] - public class GetItemTypes : IReturn<List<string>> - { - /// <summary> - /// Gets or sets a value indicating whether this instance has internet provider. - /// </summary> - /// <value><c>true</c> if this instance has internet provider; otherwise, <c>false</c>.</value> - public bool HasInternetProvider { get; set; } - } - - /// <summary> - /// Class GetPerson - /// </summary> - [Route("/Library/Persons/{Name}", "GET")] - public class GetPerson : IReturn<BaseItemDto> - { - /// <summary> - /// Gets or sets the name. - /// </summary> - /// <value>The name.</value> - public string Name { get; set; } - } - - /// <summary> - /// Class GetStudio - /// </summary> - [Route("/Library/Studios/{Name}", "GET")] - public class GetStudio : IReturn<BaseItemDto> - { - /// <summary> - /// Gets or sets the name. - /// </summary> - /// <value>The name.</value> - public string Name { get; set; } - } - - /// <summary> - /// Class GetGenre - /// </summary> - [Route("/Library/Genres/{Name}", "GET")] - public class GetGenre : IReturn<BaseItemDto> - { - /// <summary> - /// Gets or sets the name. - /// </summary> - /// <value>The name.</value> - public string Name { get; set; } - } - - /// <summary> - /// Class GetYear - /// </summary> - [Route("/Library/Years/{Year}", "GET")] - public class GetYear : IReturn<BaseItemDto> - { - /// <summary> - /// Gets or sets the year. - /// </summary> - /// <value>The year.</value> - public int Year { get; set; } - } - - /// <summary> - /// Class GetDefaultVirtualFolders - /// </summary> - [Route("/Library/DefaultVirtualFolders", "GET")] - public class GetDefaultVirtualFolders : IReturn<List<VirtualFolderInfo>> - { - } - - /// <summary> - /// Class LibraryService - /// </summary> - public class LibraryService : BaseRestService - { - /// <summary> - /// The _app host - /// </summary> - private readonly IApplicationHost _appHost; - - /// <summary> - /// Initializes a new instance of the <see cref="LibraryService" /> class. - /// </summary> - /// <param name="appHost">The app host.</param> - /// <exception cref="System.ArgumentNullException">appHost</exception> - public LibraryService(IApplicationHost appHost) - { - if (appHost == null) - { - throw new ArgumentNullException("appHost"); - } - - _appHost = appHost; - } - - /// <summary> - /// Gets the specified request. - /// </summary> - /// <param name="request">The request.</param> - /// <returns>System.Object.</returns> - public object Get(GetDefaultVirtualFolders request) - { - var kernel = (Kernel)Kernel; - - var result = kernel.LibraryManager.GetDefaultVirtualFolders().ToList(); - - return ToOptimizedResult(result); - } - - /// <summary> - /// Gets the specified request. - /// </summary> - /// <param name="request">The request.</param> - /// <returns>System.Object.</returns> - public object Get(GetPerson request) - { - var kernel = (Kernel)Kernel; - - var item = kernel.LibraryManager.GetPerson(request.Name).Result; - - // Get everything - var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)); - - var result = new DtoBuilder(Logger).GetDtoBaseItem(item, fields.ToList()).Result; - - return ToOptimizedResult(result); - } - - /// <summary> - /// Gets the specified request. - /// </summary> - /// <param name="request">The request.</param> - /// <returns>System.Object.</returns> - public object Get(GetGenre request) - { - var kernel = (Kernel)Kernel; - - var item = kernel.LibraryManager.GetGenre(request.Name).Result; - - // Get everything - var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)); - - var result = new DtoBuilder(Logger).GetDtoBaseItem(item, fields.ToList()).Result; - - return ToOptimizedResult(result); - } - - /// <summary> - /// Gets the specified request. - /// </summary> - /// <param name="request">The request.</param> - /// <returns>System.Object.</returns> - public object Get(GetStudio request) - { - var kernel = (Kernel)Kernel; - - var item = kernel.LibraryManager.GetStudio(request.Name).Result; - - // Get everything - var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)); - - var result = new DtoBuilder(Logger).GetDtoBaseItem(item, fields.ToList()).Result; - - return ToOptimizedResult(result); - } - - /// <summary> - /// Gets the specified request. - /// </summary> - /// <param name="request">The request.</param> - /// <returns>System.Object.</returns> - public object Get(GetYear request) - { - var kernel = (Kernel)Kernel; - - var item = kernel.LibraryManager.GetYear(request.Year).Result; - - // Get everything - var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)); - - var result = new DtoBuilder(Logger).GetDtoBaseItem(item, fields.ToList()).Result; - - return ToOptimizedResult(result); - } - - /// <summary> - /// Gets the specified request. - /// </summary> - /// <param name="request">The request.</param> - /// <returns>System.Object.</returns> - public object Get(GetPhyscialPaths request) - { - var kernel = (Kernel)Kernel; - - var result = kernel.RootFolder.Children.SelectMany(c => c.ResolveArgs.PhysicalLocations).ToList(); - - return ToOptimizedResult(result); - } - - /// <summary> - /// Gets the specified request. - /// </summary> - /// <param name="request">The request.</param> - /// <returns>System.Object.</returns> - public object Get(GetItemTypes request) - { - var kernel = (Kernel)Kernel; - - var allTypes = _appHost.AllConcreteTypes.Where(t => t.IsSubclassOf(typeof(BaseItem))); - - if (request.HasInternetProvider) - { - allTypes = allTypes.Where(t => - { - if (t == typeof(UserRootFolder) || t == typeof(AggregateFolder) || t == typeof(Folder) || t == typeof(IndexFolder) || t == typeof(CollectionFolder) || t == typeof(Year)) - { - return false; - } - - if (t == typeof(User)) - { - return false; - } - - // For now it seems internet providers generally only deal with video subclasses - if (t == typeof(Video)) - { - return false; - } - - if (t.IsSubclassOf(typeof(BasePluginFolder))) - { - return false; - } - - return true; - }); - } - - return allTypes.Select(t => t.Name).OrderBy(s => s).ToList(); - } - } -} |
