diff options
Diffstat (limited to 'MediaBrowser.Api/UserLibrary')
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs | 20 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/GenresService.cs | 5 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/ItemsService.cs | 20 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/PersonsService.cs | 5 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/StudiosService.cs | 6 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/UserLibraryService.cs | 102 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/YearsService.cs | 5 |
7 files changed, 95 insertions, 68 deletions
diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs index 1448886cf..3cb17ff35 100644 --- a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs +++ b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs @@ -21,17 +21,29 @@ namespace MediaBrowser.Api.UserLibrary where TItemType : BaseItem { /// <summary> + /// The _user manager + /// </summary> + protected readonly IUserManager UserManager; + + /// <summary> + /// Initializes a new instance of the <see cref="BaseItemsByNameService{TItemType}" /> class. + /// </summary> + /// <param name="userManager">The user manager.</param> + protected BaseItemsByNameService(IUserManager userManager) + { + UserManager = userManager; + } + + /// <summary> /// Gets the specified request. /// </summary> /// <param name="request">The request.</param> /// <returns>Task{ItemsResult}.</returns> protected async Task<ItemsResult> GetResult(GetItemsByName request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = UserManager.GetUserById(request.UserId); - var item = string.IsNullOrEmpty(request.Id) ? user.RootFolder : DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = string.IsNullOrEmpty(request.Id) ? user.RootFolder : DtoBuilder.GetItemByClientId(request.Id, UserManager, user.Id); IEnumerable<BaseItem> items; diff --git a/MediaBrowser.Api/UserLibrary/GenresService.cs b/MediaBrowser.Api/UserLibrary/GenresService.cs index 5d72236fa..1c002a7c9 100644 --- a/MediaBrowser.Api/UserLibrary/GenresService.cs +++ b/MediaBrowser.Api/UserLibrary/GenresService.cs @@ -1,6 +1,7 @@ using MediaBrowser.Common.Net; using MediaBrowser.Controller; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using ServiceStack.ServiceHost; using System; using System.Collections.Generic; @@ -23,6 +24,10 @@ namespace MediaBrowser.Api.UserLibrary /// </summary> public class GenresService : BaseItemsByNameService<Genre> { + public GenresService(IUserManager userManager) : base(userManager) + { + } + /// <summary> /// Gets the specified request. /// </summary> diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs index 6218f06b1..efc97651b 100644 --- a/MediaBrowser.Api/UserLibrary/ItemsService.cs +++ b/MediaBrowser.Api/UserLibrary/ItemsService.cs @@ -146,6 +146,20 @@ namespace MediaBrowser.Api.UserLibrary public class ItemsService : BaseRestService { /// <summary> + /// The _user manager + /// </summary> + private readonly IUserManager _userManager; + + /// <summary> + /// Initializes a new instance of the <see cref="ItemsService" /> class. + /// </summary> + /// <param name="userManager">The user manager.</param> + public ItemsService(IUserManager userManager) + { + _userManager = userManager; + } + + /// <summary> /// Gets the specified request. /// </summary> /// <param name="request">The request.</param> @@ -164,9 +178,7 @@ namespace MediaBrowser.Api.UserLibrary /// <returns>Task{ItemsResult}.</returns> private async Task<ItemsResult> GetItems(GetItems request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); var items = GetItemsToSerialize(request, user); @@ -209,7 +221,7 @@ namespace MediaBrowser.Api.UserLibrary /// <exception cref="System.InvalidOperationException"></exception> private IEnumerable<BaseItem> GetItemsToSerialize(GetItems request, User user) { - var item = string.IsNullOrEmpty(request.ParentId) ? user.RootFolder : DtoBuilder.GetItemByClientId(request.ParentId, user.Id); + var item = string.IsNullOrEmpty(request.ParentId) ? user.RootFolder : DtoBuilder.GetItemByClientId(request.ParentId, _userManager, user.Id); // Default list type = children diff --git a/MediaBrowser.Api/UserLibrary/PersonsService.cs b/MediaBrowser.Api/UserLibrary/PersonsService.cs index 181d511a6..4528cb2bc 100644 --- a/MediaBrowser.Api/UserLibrary/PersonsService.cs +++ b/MediaBrowser.Api/UserLibrary/PersonsService.cs @@ -1,6 +1,7 @@ using MediaBrowser.Common.Net; using MediaBrowser.Controller; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using ServiceStack.ServiceHost; using System; using System.Collections.Generic; @@ -28,6 +29,10 @@ namespace MediaBrowser.Api.UserLibrary /// </summary> public class PersonsService : BaseItemsByNameService<Person> { + public PersonsService(IUserManager userManager) : base(userManager) + { + } + /// <summary> /// Gets the specified request. /// </summary> diff --git a/MediaBrowser.Api/UserLibrary/StudiosService.cs b/MediaBrowser.Api/UserLibrary/StudiosService.cs index 8b1824d83..cfb0179a2 100644 --- a/MediaBrowser.Api/UserLibrary/StudiosService.cs +++ b/MediaBrowser.Api/UserLibrary/StudiosService.cs @@ -1,5 +1,6 @@ using MediaBrowser.Controller; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using ServiceStack.ServiceHost; using System; using System.Collections.Generic; @@ -22,6 +23,11 @@ namespace MediaBrowser.Api.UserLibrary /// </summary> public class StudiosService : BaseItemsByNameService<Studio> { + public StudiosService(IUserManager userManager) + : base(userManager) + { + } + /// <summary> /// Gets the specified request. /// </summary> diff --git a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs index fd9b0e78a..1ca72b24f 100644 --- a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs +++ b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs @@ -313,11 +313,16 @@ namespace MediaBrowser.Api.UserLibrary private readonly IJsonSerializer _jsonSerializer; /// <summary> + /// The _user manager + /// </summary> + private readonly IUserManager _userManager; + + /// <summary> /// Initializes a new instance of the <see cref="UserLibraryService" /> class. /// </summary> /// <param name="jsonSerializer">The json serializer.</param> /// <exception cref="System.ArgumentNullException">jsonSerializer</exception> - public UserLibraryService(IJsonSerializer jsonSerializer) + public UserLibraryService(IJsonSerializer jsonSerializer, IUserManager userManager) : base() { if (jsonSerializer == null) @@ -326,6 +331,7 @@ namespace MediaBrowser.Api.UserLibrary } _jsonSerializer = jsonSerializer; + _userManager = userManager; } /// <summary> @@ -335,11 +341,9 @@ namespace MediaBrowser.Api.UserLibrary /// <returns>System.Object.</returns> public object Get(GetSpecialFeatures request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); - var item = DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); // Get everything var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)).ToList(); @@ -360,11 +364,9 @@ namespace MediaBrowser.Api.UserLibrary /// <returns>System.Object.</returns> public object Get(GetLocalTrailers request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); - var item = DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); // Get everything var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)).ToList(); @@ -383,11 +385,9 @@ namespace MediaBrowser.Api.UserLibrary /// <returns>System.Object.</returns> public object Get(GetItem request) { - var kernel = (Kernel)Kernel; + var user = _userManager.GetUserById(request.UserId); - var user = kernel.GetUserById(request.UserId); - - var item = string.IsNullOrEmpty(request.Id) ? user.RootFolder : DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = string.IsNullOrEmpty(request.Id) ? user.RootFolder : DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); // Get everything var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)).ToList(); @@ -408,9 +408,9 @@ namespace MediaBrowser.Api.UserLibrary { var kernel = (Kernel)Kernel; - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); - var item = DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); var result = kernel.IntroProviders.SelectMany(i => i.GetIntros(item, user)); @@ -431,9 +431,9 @@ namespace MediaBrowser.Api.UserLibrary var kernel = (Kernel)Kernel; - var user = kernel.GetUserById(userId); + var user = _userManager.GetUserById(userId); - var item = (Folder)DtoBuilder.GetItemByClientId(itemId, user.Id); + var item = (Folder)DtoBuilder.GetItemByClientId(itemId, _userManager, user.Id); var displayPreferences = _jsonSerializer.DeserializeFromStream<DisplayPreferences>(request.RequestStream); @@ -448,11 +448,9 @@ namespace MediaBrowser.Api.UserLibrary /// <param name="request">The request.</param> public void Post(MarkFavoriteItem request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); - var item = (Folder)DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = (Folder)DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); // Get the user data for this item var data = item.GetUserData(user, true); @@ -460,7 +458,7 @@ namespace MediaBrowser.Api.UserLibrary // Set favorite status data.IsFavorite = true; - var task = kernel.UserDataManager.SaveUserDataForItem(user, item, data); + var task = _userManager.SaveUserDataForItem(user, item, data); Task.WaitAll(task); } @@ -471,11 +469,9 @@ namespace MediaBrowser.Api.UserLibrary /// <param name="request">The request.</param> public void Delete(UnmarkFavoriteItem request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); - var item = (Folder)DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = (Folder)DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); // Get the user data for this item var data = item.GetUserData(user, true); @@ -483,7 +479,7 @@ namespace MediaBrowser.Api.UserLibrary // Set favorite status data.IsFavorite = false; - var task = kernel.UserDataManager.SaveUserDataForItem(user, item, data); + var task = _userManager.SaveUserDataForItem(user, item, data); Task.WaitAll(task); } @@ -494,18 +490,16 @@ namespace MediaBrowser.Api.UserLibrary /// <param name="request">The request.</param> public void Delete(DeleteUserItemRating request) { - var kernel = (Kernel)Kernel; + var user = _userManager.GetUserById(request.UserId); - var user = kernel.GetUserById(request.UserId); - - var item = (Folder)DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = (Folder)DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); // Get the user data for this item var data = item.GetUserData(user, true); data.Rating = null; - var task = kernel.UserDataManager.SaveUserDataForItem(user, item, data); + var task = _userManager.SaveUserDataForItem(user, item, data); Task.WaitAll(task); } @@ -516,18 +510,16 @@ namespace MediaBrowser.Api.UserLibrary /// <param name="request">The request.</param> public void Post(UpdateUserItemRating request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); - var item = (Folder)DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = (Folder)DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); // Get the user data for this item var data = item.GetUserData(user, true); data.Likes = request.Likes; - var task = kernel.UserDataManager.SaveUserDataForItem(user, item, data); + var task = _userManager.SaveUserDataForItem(user, item, data); Task.WaitAll(task); } @@ -538,9 +530,7 @@ namespace MediaBrowser.Api.UserLibrary /// <param name="request">The request.</param> public void Post(MarkPlayedItem request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); var task = UpdatePlayedStatus(user, request.Id, true); @@ -553,13 +543,11 @@ namespace MediaBrowser.Api.UserLibrary /// <param name="request">The request.</param> public void Post(OnPlaybackStart request) { - var kernel = (Kernel)Kernel; + var user = _userManager.GetUserById(request.UserId); - var user = kernel.GetUserById(request.UserId); + var item = DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); - var item = DtoBuilder.GetItemByClientId(request.Id, user.Id); - - kernel.UserDataManager.OnPlaybackStart(user, item, ClientType.Other, string.Empty); + _userManager.OnPlaybackStart(user, item, ClientType.Other, string.Empty); } /// <summary> @@ -568,13 +556,11 @@ namespace MediaBrowser.Api.UserLibrary /// <param name="request">The request.</param> public void Post(OnPlaybackProgress request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); - var item = DtoBuilder.GetItemByClientId(request.Id, user.Id); + var item = DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); - var task = kernel.UserDataManager.OnPlaybackProgress(user, item, request.PositionTicks, ClientType.Other, string.Empty); + var task = _userManager.OnPlaybackProgress(user, item, request.PositionTicks, ClientType.Other, string.Empty); Task.WaitAll(task); } @@ -585,13 +571,11 @@ namespace MediaBrowser.Api.UserLibrary /// <param name="request">The request.</param> public void Post(OnPlaybackStopped request) { - var kernel = (Kernel)Kernel; + var user = _userManager.GetUserById(request.UserId); - var user = kernel.GetUserById(request.UserId); + var item = DtoBuilder.GetItemByClientId(request.Id, _userManager, user.Id); - var item = DtoBuilder.GetItemByClientId(request.Id, user.Id); - - var task = kernel.UserDataManager.OnPlaybackStopped(user, item, request.PositionTicks, ClientType.Other, string.Empty); + var task = _userManager.OnPlaybackStopped(user, item, request.PositionTicks, ClientType.Other, string.Empty); Task.WaitAll(task); } @@ -602,9 +586,7 @@ namespace MediaBrowser.Api.UserLibrary /// <param name="request">The request.</param> public void Delete(MarkUnplayedItem request) { - var kernel = (Kernel)Kernel; - - var user = kernel.GetUserById(request.UserId); + var user = _userManager.GetUserById(request.UserId); var task = UpdatePlayedStatus(user, request.Id, false); @@ -620,9 +602,9 @@ namespace MediaBrowser.Api.UserLibrary /// <returns>Task.</returns> private Task UpdatePlayedStatus(User user, string itemId, bool wasPlayed) { - var item = DtoBuilder.GetItemByClientId(itemId, user.Id); + var item = DtoBuilder.GetItemByClientId(itemId, _userManager, user.Id); - return item.SetPlayedStatus(user, wasPlayed); + return item.SetPlayedStatus(user, wasPlayed, _userManager); } } } diff --git a/MediaBrowser.Api/UserLibrary/YearsService.cs b/MediaBrowser.Api/UserLibrary/YearsService.cs index 14fa645af..8112b2da9 100644 --- a/MediaBrowser.Api/UserLibrary/YearsService.cs +++ b/MediaBrowser.Api/UserLibrary/YearsService.cs @@ -1,6 +1,7 @@ using MediaBrowser.Common.Net; using MediaBrowser.Controller; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using ServiceStack.ServiceHost; using System; using System.Collections.Generic; @@ -29,6 +30,10 @@ namespace MediaBrowser.Api.UserLibrary /// </summary> private static readonly CultureInfo UsCulture = new CultureInfo("en-US"); + public YearsService(IUserManager userManager) : base(userManager) + { + } + /// <summary> /// Gets the specified request. /// </summary> |
