aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/UserLibrary
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Api/UserLibrary')
-rw-r--r--MediaBrowser.Api/UserLibrary/ArtistsService.cs20
-rw-r--r--MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs9
-rw-r--r--MediaBrowser.Api/UserLibrary/GameGenresService.cs13
-rw-r--r--MediaBrowser.Api/UserLibrary/GenresService.cs13
-rw-r--r--MediaBrowser.Api/UserLibrary/ItemsService.cs6
-rw-r--r--MediaBrowser.Api/UserLibrary/MusicGenresService.cs13
-rw-r--r--MediaBrowser.Api/UserLibrary/PersonsService.cs20
-rw-r--r--MediaBrowser.Api/UserLibrary/PlaystateService.cs18
-rw-r--r--MediaBrowser.Api/UserLibrary/StudiosService.cs13
-rw-r--r--MediaBrowser.Api/UserLibrary/UserLibraryService.cs20
-rw-r--r--MediaBrowser.Api/UserLibrary/UserViewsService.cs9
-rw-r--r--MediaBrowser.Api/UserLibrary/YearsService.cs13
12 files changed, 80 insertions, 87 deletions
diff --git a/MediaBrowser.Api/UserLibrary/ArtistsService.cs b/MediaBrowser.Api/UserLibrary/ArtistsService.cs
index 36a62b237..5bbd96c7c 100644
--- a/MediaBrowser.Api/UserLibrary/ArtistsService.cs
+++ b/MediaBrowser.Api/UserLibrary/ArtistsService.cs
@@ -50,18 +50,6 @@ namespace MediaBrowser.Api.UserLibrary
public class ArtistsService : BaseItemsByNameService<MusicArtist>
{
/// <summary>
- /// Initializes a new instance of the <see cref="ArtistsService" /> class.
- /// </summary>
- /// <param name="userManager">The user manager.</param>
- /// <param name="libraryManager">The library manager.</param>
- /// <param name="userDataRepository">The user data repository.</param>
- /// <param name="itemRepo">The item repo.</param>
- public ArtistsService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepo, IDtoService dtoService)
- : base(userManager, libraryManager, userDataRepository, itemRepo, dtoService)
- {
- }
-
- /// <summary>
/// Gets the specified request.
/// </summary>
/// <param name="request">The request.</param>
@@ -81,8 +69,8 @@ namespace MediaBrowser.Api.UserLibrary
private BaseItemDto GetItem(GetArtist request)
{
var item = GetArtist(request.Name, LibraryManager);
-
- var dtoOptions = GetDtoOptions(request);
+
+ var dtoOptions = GetDtoOptions(AuthorizationContext, request);
if (!string.IsNullOrWhiteSpace(request.UserId))
{
@@ -148,5 +136,9 @@ namespace MediaBrowser.Api.UserLibrary
{
throw new NotImplementedException();
}
+
+ public ArtistsService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepository, IDtoService dtoService, IAuthorizationContext authorizationContext) : base(userManager, libraryManager, userDataRepository, itemRepository, dtoService, authorizationContext)
+ {
+ }
}
}
diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
index 971d1a45c..ff285b605 100644
--- a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
+++ b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs
@@ -7,6 +7,7 @@ using MediaBrowser.Model.Querying;
using System;
using System.Collections.Generic;
using System.Linq;
+using MediaBrowser.Controller.Net;
using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Services;
@@ -30,6 +31,7 @@ namespace MediaBrowser.Api.UserLibrary
protected readonly IUserDataManager UserDataRepository;
protected readonly IItemRepository ItemRepository;
protected IDtoService DtoService { get; private set; }
+ protected IAuthorizationContext AuthorizationContext { get; private set; }
/// <summary>
/// Initializes a new instance of the <see cref="BaseItemsByNameService{TItemType}" /> class.
@@ -39,13 +41,14 @@ namespace MediaBrowser.Api.UserLibrary
/// <param name="userDataRepository">The user data repository.</param>
/// <param name="itemRepository">The item repository.</param>
/// <param name="dtoService">The dto service.</param>
- protected BaseItemsByNameService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepository, IDtoService dtoService)
+ protected BaseItemsByNameService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepository, IDtoService dtoService, IAuthorizationContext authorizationContext)
{
UserManager = userManager;
LibraryManager = libraryManager;
UserDataRepository = userDataRepository;
ItemRepository = itemRepository;
DtoService = dtoService;
+ AuthorizationContext = authorizationContext;
}
protected BaseItem GetParentItem(GetItemsByName request)
@@ -86,7 +89,7 @@ namespace MediaBrowser.Api.UserLibrary
protected ItemsResult GetResultSlim(GetItemsByName request)
{
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(AuthorizationContext, request);
User user = null;
BaseItem parentItem;
@@ -223,7 +226,7 @@ namespace MediaBrowser.Api.UserLibrary
/// <returns>Task{ItemsResult}.</returns>
protected ItemsResult GetResult(GetItemsByName request)
{
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(AuthorizationContext, request);
User user = null;
BaseItem parentItem;
diff --git a/MediaBrowser.Api/UserLibrary/GameGenresService.cs b/MediaBrowser.Api/UserLibrary/GameGenresService.cs
index 809df2531..2eef1ab2f 100644
--- a/MediaBrowser.Api/UserLibrary/GameGenresService.cs
+++ b/MediaBrowser.Api/UserLibrary/GameGenresService.cs
@@ -37,11 +37,6 @@ namespace MediaBrowser.Api.UserLibrary
[Authenticated]
public class GameGenresService : BaseItemsByNameService<GameGenre>
{
- public GameGenresService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepo, IDtoService dtoService)
- : base(userManager, libraryManager, userDataRepository, itemRepo, dtoService)
- {
- }
-
/// <summary>
/// Gets the specified request.
/// </summary>
@@ -63,8 +58,8 @@ namespace MediaBrowser.Api.UserLibrary
{
var item = GetGameGenre(request.Name, LibraryManager);
- var dtoOptions = GetDtoOptions(request);
-
+ var dtoOptions = GetDtoOptions(AuthorizationContext, request);
+
if (!string.IsNullOrWhiteSpace(request.UserId))
{
var user = UserManager.GetUserById(request.UserId);
@@ -102,5 +97,9 @@ namespace MediaBrowser.Api.UserLibrary
{
throw new NotImplementedException();
}
+
+ public GameGenresService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepository, IDtoService dtoService, IAuthorizationContext authorizationContext) : base(userManager, libraryManager, userDataRepository, itemRepository, dtoService, authorizationContext)
+ {
+ }
}
}
diff --git a/MediaBrowser.Api/UserLibrary/GenresService.cs b/MediaBrowser.Api/UserLibrary/GenresService.cs
index 25447f832..664efac14 100644
--- a/MediaBrowser.Api/UserLibrary/GenresService.cs
+++ b/MediaBrowser.Api/UserLibrary/GenresService.cs
@@ -47,11 +47,6 @@ namespace MediaBrowser.Api.UserLibrary
[Authenticated]
public class GenresService : BaseItemsByNameService<Genre>
{
- public GenresService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepo, IDtoService dtoService)
- : base(userManager, libraryManager, userDataRepository, itemRepo, dtoService)
- {
- }
-
/// <summary>
/// Gets the specified request.
/// </summary>
@@ -72,8 +67,8 @@ namespace MediaBrowser.Api.UserLibrary
private BaseItemDto GetItem(GetGenre request)
{
var item = GetGenre(request.Name, LibraryManager);
-
- var dtoOptions = GetDtoOptions(request);
+
+ var dtoOptions = GetDtoOptions(AuthorizationContext ,request);
if (!string.IsNullOrWhiteSpace(request.UserId))
{
@@ -124,5 +119,9 @@ namespace MediaBrowser.Api.UserLibrary
{
throw new NotImplementedException();
}
+
+ public GenresService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepository, IDtoService dtoService, IAuthorizationContext authorizationContext) : base(userManager, libraryManager, userDataRepository, itemRepository, dtoService, authorizationContext)
+ {
+ }
}
}
diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs
index d75e42850..a07128f74 100644
--- a/MediaBrowser.Api/UserLibrary/ItemsService.cs
+++ b/MediaBrowser.Api/UserLibrary/ItemsService.cs
@@ -41,6 +41,7 @@ namespace MediaBrowser.Api.UserLibrary
private readonly ILocalizationManager _localization;
private readonly IDtoService _dtoService;
+ private readonly IAuthorizationContext _authContext;
/// <summary>
/// Initializes a new instance of the <see cref="ItemsService" /> class.
@@ -49,7 +50,7 @@ namespace MediaBrowser.Api.UserLibrary
/// <param name="libraryManager">The library manager.</param>
/// <param name="localization">The localization.</param>
/// <param name="dtoService">The dto service.</param>
- public ItemsService(IUserManager userManager, ILibraryManager libraryManager, ILocalizationManager localization, IDtoService dtoService)
+ public ItemsService(IUserManager userManager, ILibraryManager libraryManager, ILocalizationManager localization, IDtoService dtoService, IAuthorizationContext authContext)
{
if (userManager == null)
{
@@ -72,6 +73,7 @@ namespace MediaBrowser.Api.UserLibrary
_libraryManager = libraryManager;
_localization = localization;
_dtoService = dtoService;
+ _authContext = authContext;
}
/// <summary>
@@ -100,7 +102,7 @@ namespace MediaBrowser.Api.UserLibrary
{
var user = !string.IsNullOrWhiteSpace(request.UserId) ? _userManager.GetUserById(request.UserId) : null;
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(_authContext, request);
var result = await GetQueryResult(request, dtoOptions, user).ConfigureAwait(false);
diff --git a/MediaBrowser.Api/UserLibrary/MusicGenresService.cs b/MediaBrowser.Api/UserLibrary/MusicGenresService.cs
index 0d1f9e325..305c136df 100644
--- a/MediaBrowser.Api/UserLibrary/MusicGenresService.cs
+++ b/MediaBrowser.Api/UserLibrary/MusicGenresService.cs
@@ -38,11 +38,6 @@ namespace MediaBrowser.Api.UserLibrary
[Authenticated]
public class MusicGenresService : BaseItemsByNameService<MusicGenre>
{
- public MusicGenresService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepo, IDtoService dtoService)
- : base(userManager, libraryManager, userDataRepository, itemRepo, dtoService)
- {
- }
-
/// <summary>
/// Gets the specified request.
/// </summary>
@@ -63,8 +58,8 @@ namespace MediaBrowser.Api.UserLibrary
private BaseItemDto GetItem(GetMusicGenre request)
{
var item = GetMusicGenre(request.Name, LibraryManager);
-
- var dtoOptions = GetDtoOptions(request);
+
+ var dtoOptions = GetDtoOptions(AuthorizationContext, request);
if (!string.IsNullOrWhiteSpace(request.UserId))
{
@@ -103,5 +98,9 @@ namespace MediaBrowser.Api.UserLibrary
{
throw new NotImplementedException();
}
+
+ public MusicGenresService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepository, IDtoService dtoService, IAuthorizationContext authorizationContext) : base(userManager, libraryManager, userDataRepository, itemRepository, dtoService, authorizationContext)
+ {
+ }
}
}
diff --git a/MediaBrowser.Api/UserLibrary/PersonsService.cs b/MediaBrowser.Api/UserLibrary/PersonsService.cs
index 1979bcd67..dbce22578 100644
--- a/MediaBrowser.Api/UserLibrary/PersonsService.cs
+++ b/MediaBrowser.Api/UserLibrary/PersonsService.cs
@@ -46,18 +46,6 @@ namespace MediaBrowser.Api.UserLibrary
public class PersonsService : BaseItemsByNameService<Person>
{
/// <summary>
- /// Initializes a new instance of the <see cref="PersonsService" /> class.
- /// </summary>
- /// <param name="userManager">The user manager.</param>
- /// <param name="libraryManager">The library manager.</param>
- /// <param name="userDataRepository">The user data repository.</param>
- /// <param name="itemRepo">The item repo.</param>
- public PersonsService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepo, IDtoService dtoService)
- : base(userManager, libraryManager, userDataRepository, itemRepo, dtoService)
- {
- }
-
- /// <summary>
/// Gets the specified request.
/// </summary>
/// <param name="request">The request.</param>
@@ -77,8 +65,8 @@ namespace MediaBrowser.Api.UserLibrary
private BaseItemDto GetItem(GetPerson request)
{
var item = GetPerson(request.Name, LibraryManager);
-
- var dtoOptions = GetDtoOptions(request);
+
+ var dtoOptions = GetDtoOptions(AuthorizationContext, request);
if (!string.IsNullOrWhiteSpace(request.UserId))
{
@@ -155,5 +143,9 @@ namespace MediaBrowser.Api.UserLibrary
return allPeople.Where(i => allIds.Contains(i.ItemId)).OrderBy(p => p.SortOrder ?? int.MaxValue).ThenBy(p => p.Type);
}
+
+ public PersonsService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepository, IDtoService dtoService, IAuthorizationContext authorizationContext) : base(userManager, libraryManager, userDataRepository, itemRepository, dtoService, authorizationContext)
+ {
+ }
}
}
diff --git a/MediaBrowser.Api/UserLibrary/PlaystateService.cs b/MediaBrowser.Api/UserLibrary/PlaystateService.cs
index aafc0b125..5fe6c1771 100644
--- a/MediaBrowser.Api/UserLibrary/PlaystateService.cs
+++ b/MediaBrowser.Api/UserLibrary/PlaystateService.cs
@@ -234,13 +234,17 @@ namespace MediaBrowser.Api.UserLibrary
private readonly IUserDataManager _userDataRepository;
private readonly ILibraryManager _libraryManager;
private readonly ISessionManager _sessionManager;
+ private readonly ISessionContext _sessionContext;
+ private readonly IAuthorizationContext _authContext;
- public PlaystateService(IUserManager userManager, IUserDataManager userDataRepository, ILibraryManager libraryManager, ISessionManager sessionManager)
+ public PlaystateService(IUserManager userManager, IUserDataManager userDataRepository, ILibraryManager libraryManager, ISessionManager sessionManager, ISessionContext sessionContext, IAuthorizationContext authContext)
{
_userManager = userManager;
_userDataRepository = userDataRepository;
_libraryManager = libraryManager;
_sessionManager = sessionManager;
+ _sessionContext = sessionContext;
+ _authContext = authContext;
}
/// <summary>
@@ -265,7 +269,7 @@ namespace MediaBrowser.Api.UserLibrary
datePlayed = DateTime.ParseExact(request.DatePlayed, "yyyyMMddHHmmss", CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal);
}
- var session = await GetSession().ConfigureAwait(false);
+ var session = await GetSession(_sessionContext).ConfigureAwait(false);
var dto = await UpdatePlayedStatus(user, request.Id, true, datePlayed).ConfigureAwait(false);
@@ -303,7 +307,7 @@ namespace MediaBrowser.Api.UserLibrary
public void Post(ReportPlaybackStart request)
{
- request.SessionId = GetSession().Result.Id;
+ request.SessionId = GetSession(_sessionContext).Result.Id;
var task = _sessionManager.OnPlaybackStart(request);
@@ -335,7 +339,7 @@ namespace MediaBrowser.Api.UserLibrary
public void Post(ReportPlaybackProgress request)
{
- request.SessionId = GetSession().Result.Id;
+ request.SessionId = GetSession(_sessionContext).Result.Id;
var task = _sessionManager.OnPlaybackProgress(request);
@@ -369,10 +373,10 @@ namespace MediaBrowser.Api.UserLibrary
if (!string.IsNullOrWhiteSpace(request.PlaySessionId))
{
- ApiEntryPoint.Instance.KillTranscodingJobs(AuthorizationContext.GetAuthorizationInfo(Request).DeviceId, request.PlaySessionId, s => true);
+ ApiEntryPoint.Instance.KillTranscodingJobs(_authContext.GetAuthorizationInfo(Request).DeviceId, request.PlaySessionId, s => true);
}
- request.SessionId = GetSession().Result.Id;
+ request.SessionId = GetSession(_sessionContext).Result.Id;
var task = _sessionManager.OnPlaybackStopped(request);
@@ -394,7 +398,7 @@ namespace MediaBrowser.Api.UserLibrary
{
var user = _userManager.GetUserById(request.UserId);
- var session = await GetSession().ConfigureAwait(false);
+ var session = await GetSession(_sessionContext).ConfigureAwait(false);
var dto = await UpdatePlayedStatus(user, request.Id, false, null).ConfigureAwait(false);
diff --git a/MediaBrowser.Api/UserLibrary/StudiosService.cs b/MediaBrowser.Api/UserLibrary/StudiosService.cs
index d63fd8b16..f4debcf48 100644
--- a/MediaBrowser.Api/UserLibrary/StudiosService.cs
+++ b/MediaBrowser.Api/UserLibrary/StudiosService.cs
@@ -47,11 +47,6 @@ namespace MediaBrowser.Api.UserLibrary
[Authenticated]
public class StudiosService : BaseItemsByNameService<Studio>
{
- public StudiosService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepo, IDtoService dtoService)
- : base(userManager, libraryManager, userDataRepository, itemRepo, dtoService)
- {
- }
-
/// <summary>
/// Gets the specified request.
/// </summary>
@@ -73,8 +68,8 @@ namespace MediaBrowser.Api.UserLibrary
{
var item = GetStudio(request.Name, LibraryManager);
- var dtoOptions = GetDtoOptions(request);
-
+ var dtoOptions = GetDtoOptions(AuthorizationContext, request);
+
if (!string.IsNullOrWhiteSpace(request.UserId))
{
var user = UserManager.GetUserById(request.UserId);
@@ -117,5 +112,9 @@ namespace MediaBrowser.Api.UserLibrary
.DistinctNames()
.Select(name => LibraryManager.GetStudio(name));
}
+
+ public StudiosService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepository, IDtoService dtoService, IAuthorizationContext authorizationContext) : base(userManager, libraryManager, userDataRepository, itemRepository, dtoService, authorizationContext)
+ {
+ }
}
}
diff --git a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs
index fbc2c0ccd..4121cc295 100644
--- a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs
+++ b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs
@@ -270,8 +270,9 @@ namespace MediaBrowser.Api.UserLibrary
private readonly IDtoService _dtoService;
private readonly IUserViewManager _userViewManager;
private readonly IFileSystem _fileSystem;
+ private readonly IAuthorizationContext _authContext;
- public UserLibraryService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IDtoService dtoService, IUserViewManager userViewManager, IFileSystem fileSystem)
+ public UserLibraryService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IDtoService dtoService, IUserViewManager userViewManager, IFileSystem fileSystem, IAuthorizationContext authContext)
{
_userManager = userManager;
_libraryManager = libraryManager;
@@ -279,6 +280,7 @@ namespace MediaBrowser.Api.UserLibrary
_dtoService = dtoService;
_userViewManager = userViewManager;
_fileSystem = fileSystem;
+ _authContext = authContext;
}
/// <summary>
@@ -315,7 +317,7 @@ namespace MediaBrowser.Api.UserLibrary
UserId = request.UserId
});
- var options = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(_authContext, request);
var dtos = list.Select(i =>
{
@@ -328,7 +330,7 @@ namespace MediaBrowser.Api.UserLibrary
childCount = i.Item2.Count;
}
- var dto = _dtoService.GetBaseItemDto(item, options, user);
+ var dto = _dtoService.GetBaseItemDto(item, dtoOptions, user);
dto.ChildCount = childCount;
@@ -351,7 +353,7 @@ namespace MediaBrowser.Api.UserLibrary
// Get them from the child tree
if (series != null)
{
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(_authContext, request);
// Avoid implicitly captured closure
var currentUser = user;
@@ -382,7 +384,7 @@ namespace MediaBrowser.Api.UserLibrary
// Get them from the db
if (movie != null)
{
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(_authContext, request);
var dtos = movie.SpecialFeatureIds
.Select(_libraryManager.GetItemById)
@@ -421,7 +423,7 @@ namespace MediaBrowser.Api.UserLibrary
trailerIds = hasTrailers.GetTrailerIds();
}
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(_authContext, request);
var dtos = trailerIds
.Select(_libraryManager.GetItemById)
@@ -443,7 +445,7 @@ namespace MediaBrowser.Api.UserLibrary
await RefreshItemOnDemandIfNeeded(item).ConfigureAwait(false);
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(_authContext, request);
var result = _dtoService.GetBaseItemDto(item, dtoOptions, user);
@@ -482,7 +484,7 @@ namespace MediaBrowser.Api.UserLibrary
var item = user.RootFolder;
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(_authContext, request);
var result = _dtoService.GetBaseItemDto(item, dtoOptions, user);
@@ -502,7 +504,7 @@ namespace MediaBrowser.Api.UserLibrary
var items = await _libraryManager.GetIntros(item, user).ConfigureAwait(false);
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(_authContext, request);
var dtos = items.Select(i => _dtoService.GetBaseItemDto(i, dtoOptions, user))
.ToArray();
diff --git a/MediaBrowser.Api/UserLibrary/UserViewsService.cs b/MediaBrowser.Api/UserLibrary/UserViewsService.cs
index 51783065c..6210b8b05 100644
--- a/MediaBrowser.Api/UserLibrary/UserViewsService.cs
+++ b/MediaBrowser.Api/UserLibrary/UserViewsService.cs
@@ -10,6 +10,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Threading;
using System.Threading.Tasks;
+using MediaBrowser.Controller.Net;
using MediaBrowser.Model.Services;
namespace MediaBrowser.Api.UserLibrary
@@ -57,12 +58,14 @@ namespace MediaBrowser.Api.UserLibrary
private readonly IUserManager _userManager;
private readonly IUserViewManager _userViewManager;
private readonly IDtoService _dtoService;
+ private readonly IAuthorizationContext _authContext;
- public UserViewsService(IUserManager userManager, IUserViewManager userViewManager, IDtoService dtoService)
+ public UserViewsService(IUserManager userManager, IUserViewManager userViewManager, IDtoService dtoService, IAuthorizationContext authContext)
{
_userManager = userManager;
_userViewManager = userViewManager;
_dtoService = dtoService;
+ _authContext = authContext;
}
public async Task<object> Get(GetUserViews request)
@@ -82,7 +85,7 @@ namespace MediaBrowser.Api.UserLibrary
query.PresetViews = request.PresetViews.Split(',');
}
- var app = AuthorizationContext.GetAuthorizationInfo(Request).Client ?? string.Empty;
+ var app = _authContext.GetAuthorizationInfo(Request).Client ?? string.Empty;
if (app.IndexOf("emby rt", StringComparison.OrdinalIgnoreCase) != -1)
{
query.PresetViews = new[] { CollectionType.Music, CollectionType.Movies, CollectionType.TvShows };
@@ -91,7 +94,7 @@ namespace MediaBrowser.Api.UserLibrary
var folders = await _userViewManager.GetUserViews(query, CancellationToken.None).ConfigureAwait(false);
- var dtoOptions = GetDtoOptions(request);
+ var dtoOptions = GetDtoOptions(_authContext, request);
dtoOptions.Fields = new List<ItemFields>();
dtoOptions.Fields.Add(ItemFields.PrimaryImageAspectRatio);
dtoOptions.Fields.Add(ItemFields.DisplayPreferencesId);
diff --git a/MediaBrowser.Api/UserLibrary/YearsService.cs b/MediaBrowser.Api/UserLibrary/YearsService.cs
index 2d2ca523d..1059b72cb 100644
--- a/MediaBrowser.Api/UserLibrary/YearsService.cs
+++ b/MediaBrowser.Api/UserLibrary/YearsService.cs
@@ -45,11 +45,6 @@ namespace MediaBrowser.Api.UserLibrary
[Authenticated]
public class YearsService : BaseItemsByNameService<Year>
{
- public YearsService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepo, IDtoService dtoService)
- : base(userManager, libraryManager, userDataRepository, itemRepo, dtoService)
- {
- }
-
/// <summary>
/// Gets the specified request.
/// </summary>
@@ -70,8 +65,8 @@ namespace MediaBrowser.Api.UserLibrary
private BaseItemDto GetItem(GetYear request)
{
var item = LibraryManager.GetYear(request.Year);
-
- var dtoOptions = GetDtoOptions(request);
+
+ var dtoOptions = GetDtoOptions(AuthorizationContext, request);
if (!string.IsNullOrWhiteSpace(request.UserId))
{
@@ -111,5 +106,9 @@ namespace MediaBrowser.Api.UserLibrary
.Distinct()
.Select(year => LibraryManager.GetYear(year));
}
+
+ public YearsService(IUserManager userManager, ILibraryManager libraryManager, IUserDataManager userDataRepository, IItemRepository itemRepository, IDtoService dtoService, IAuthorizationContext authorizationContext) : base(userManager, libraryManager, userDataRepository, itemRepository, dtoService, authorizationContext)
+ {
+ }
}
}