diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-17 16:35:43 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2013-06-17 16:35:43 -0400 |
| commit | e677a57bf1cedc55214b0e457778311b8f1ea5ac (patch) | |
| tree | 9c0b045279901f5dd4a866f46ce2d378a6d41d68 /MediaBrowser.Api | |
| parent | 95f471e8c3ab466488cc4c2fba1b15e14e00ee3c (diff) | |
switch to flat file storage
Diffstat (limited to 'MediaBrowser.Api')
| -rw-r--r-- | MediaBrowser.Api/LibraryService.cs | 4 | ||||
| -rw-r--r-- | MediaBrowser.Api/TvShowsService.cs | 21 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs | 9 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/ItemByNameUserDataService.cs | 8 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/ItemsService.cs | 12 | ||||
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/UserLibraryService.cs | 12 | ||||
| -rw-r--r-- | MediaBrowser.Api/VideosService.cs | 2 |
7 files changed, 31 insertions, 37 deletions
diff --git a/MediaBrowser.Api/LibraryService.cs b/MediaBrowser.Api/LibraryService.cs index c2ccf4dcdd..f1338c44b2 100644 --- a/MediaBrowser.Api/LibraryService.cs +++ b/MediaBrowser.Api/LibraryService.cs @@ -431,7 +431,7 @@ namespace MediaBrowser.Api var dtoBuilder = new DtoBuilder(Logger, _libraryManager, _userDataRepository); - var items = _itemRepo.GetItems(item.ThemeSongIds) + var items = _itemRepo.RetrieveItems<Audio>(item.ThemeSongIds) .OrderBy(i => i.SortName) .Select(i => dtoBuilder.GetBaseItemDto(i, fields, user)) .Select(t => t.Result) @@ -471,7 +471,7 @@ namespace MediaBrowser.Api var dtoBuilder = new DtoBuilder(Logger, _libraryManager, _userDataRepository); var items = - _itemRepo.GetItems(item.ThemeVideoIds) + _itemRepo.RetrieveItems<Video>(item.ThemeVideoIds) .OrderBy(i => i.SortName) .Select(i => dtoBuilder.GetBaseItemDto(i, fields, user)) .Select(t => t.Result) diff --git a/MediaBrowser.Api/TvShowsService.cs b/MediaBrowser.Api/TvShowsService.cs index 04a18e40ed..09bdc05479 100644 --- a/MediaBrowser.Api/TvShowsService.cs +++ b/MediaBrowser.Api/TvShowsService.cs @@ -70,7 +70,7 @@ namespace MediaBrowser.Api public class GetSimilarShows : BaseGetSimilarItems { } - + /// <summary> /// Class TvShowsService /// </summary> @@ -110,9 +110,9 @@ namespace MediaBrowser.Api /// <returns>System.Object.</returns> public object Get(GetSimilarShows request) { - var result = SimilarItemsHelper.GetSimilarItems(_userManager, - _libraryManager, - _userDataRepository, + var result = SimilarItemsHelper.GetSimilarItems(_userManager, + _libraryManager, + _userDataRepository, Logger, request, item => item is Series, SimilarItemsHelper.GetSimiliarityScore); @@ -141,20 +141,19 @@ namespace MediaBrowser.Api { var user = _userManager.GetUserById(request.UserId); - var tasks = user.RootFolder + var itemsArray = user.RootFolder .GetRecursiveChildren(user) .OfType<Series>() .AsParallel() - .Select(i => GetNextUp(i, user)); - - var itemsArray = await Task.WhenAll(tasks).ConfigureAwait(false); + .Select(i => GetNextUp(i, user)) + .ToArray(); itemsArray = itemsArray .Where(i => i.Item1 != null) .OrderByDescending(i => { var seriesUserData = - _userDataRepository.GetUserData(user.Id, i.Item1.Series.GetUserDataKey()).Result; + _userDataRepository.GetUserData(user.Id, i.Item1.Series.GetUserDataKey()); if (seriesUserData.IsFavorite) { @@ -190,7 +189,7 @@ namespace MediaBrowser.Api /// <param name="series">The series.</param> /// <param name="user">The user.</param> /// <returns>Task{Episode}.</returns> - private async Task<Tuple<Episode,DateTime>> GetNextUp(Series series, User user) + private Tuple<Episode, DateTime> GetNextUp(Series series, User user) { var allEpisodes = series.GetRecursiveChildren(user) .OfType<Episode>() @@ -205,7 +204,7 @@ namespace MediaBrowser.Api // Go back starting with the most recent episodes foreach (var episode in allEpisodes) { - var userData = await _userDataRepository.GetUserData(user.Id, episode.GetUserDataKey()).ConfigureAwait(false); + var userData = _userDataRepository.GetUserData(user.Id, episode.GetUserDataKey()); if (userData.Played) { diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs index 26b0aa1921..65ec74bcf5 100644 --- a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs +++ b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs @@ -337,7 +337,7 @@ namespace MediaBrowser.Api.UserLibrary public string Name; public BaseItem Item; - private Task<UserItemData> _userData; + private UserItemData _userData; public List<BaseItem> Items { @@ -353,12 +353,7 @@ namespace MediaBrowser.Api.UserLibrary { var item = await GetItem().ConfigureAwait(false); - if (_userData == null) - { - _userData = repo.GetUserData(userId, item.GetUserDataKey()); - } - - return await _userData.ConfigureAwait(false); + return _userData ?? (_userData = repo.GetUserData(userId, item.GetUserDataKey())); } public IbnStub(string name, Func<IEnumerable<BaseItem>> childItems, Func<string,Task<T>> item) diff --git a/MediaBrowser.Api/UserLibrary/ItemByNameUserDataService.cs b/MediaBrowser.Api/UserLibrary/ItemByNameUserDataService.cs index 42b76e29d9..eaa65dc2db 100644 --- a/MediaBrowser.Api/UserLibrary/ItemByNameUserDataService.cs +++ b/MediaBrowser.Api/UserLibrary/ItemByNameUserDataService.cs @@ -240,9 +240,9 @@ namespace MediaBrowser.Api.UserLibrary } var key = item.GetUserDataKey(); - + // Get the user data for this item - var data = await UserDataRepository.GetUserData(userId, key).ConfigureAwait(false); + var data = UserDataRepository.GetUserData(userId, key); // Set favorite status data.IsFavorite = isFavorite; @@ -288,9 +288,9 @@ namespace MediaBrowser.Api.UserLibrary } var key = item.GetUserDataKey(); - + // Get the user data for this item - var data = await UserDataRepository.GetUserData(userId, key).ConfigureAwait(false); + var data = UserDataRepository.GetUserData(userId, key); data.Likes = likes; diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs index a06ac68b72..a4ed0396ef 100644 --- a/MediaBrowser.Api/UserLibrary/ItemsService.cs +++ b/MediaBrowser.Api/UserLibrary/ItemsService.cs @@ -335,7 +335,7 @@ namespace MediaBrowser.Api.UserLibrary case ItemFilter.Likes: return items.Where(item => { - var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()).Result; + var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()); return userdata != null && userdata.Likes.HasValue && userdata.Likes.Value; }); @@ -343,7 +343,7 @@ namespace MediaBrowser.Api.UserLibrary case ItemFilter.Dislikes: return items.Where(item => { - var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()).Result; + var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()); return userdata != null && userdata.Likes.HasValue && !userdata.Likes.Value; }); @@ -351,7 +351,7 @@ namespace MediaBrowser.Api.UserLibrary case ItemFilter.IsFavorite: return items.Where(item => { - var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()).Result; + var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()); return userdata != null && userdata.IsFavorite; }); @@ -362,7 +362,7 @@ namespace MediaBrowser.Api.UserLibrary case ItemFilter.IsResumable: return items.Where(item => { - var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()).Result; + var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()); return userdata != null && userdata.PlaybackPositionTicks > 0; }); @@ -370,7 +370,7 @@ namespace MediaBrowser.Api.UserLibrary case ItemFilter.IsPlayed: return items.Where(item => { - var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()).Result; + var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()); return userdata != null && userdata.Played; }); @@ -378,7 +378,7 @@ namespace MediaBrowser.Api.UserLibrary case ItemFilter.IsUnplayed: return items.Where(item => { - var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()).Result; + var userdata = repository.GetUserData(user.Id, item.GetUserDataKey()); return userdata == null || !userdata.Played; }); diff --git a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs index 8c1f3b500b..786eea5b31 100644 --- a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs +++ b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs @@ -399,7 +399,7 @@ namespace MediaBrowser.Api.UserLibrary var dtoBuilder = new DtoBuilder(Logger, _libraryManager, _userDataRepository); - var items = _itemRepo.GetItems(movie.SpecialFeatureIds).OrderBy(i => i.SortName).Select(i => dtoBuilder.GetBaseItemDto(i, fields, user)).Select(t => t.Result).ToList(); + var items = _itemRepo.RetrieveItems<Video>(movie.SpecialFeatureIds).OrderBy(i => i.SortName).Select(i => dtoBuilder.GetBaseItemDto(i, fields, user)).Select(t => t.Result).ToList(); return ToOptimizedResult(items); } @@ -420,7 +420,7 @@ namespace MediaBrowser.Api.UserLibrary var dtoBuilder = new DtoBuilder(Logger, _libraryManager, _userDataRepository); - var items = _itemRepo.GetItems(item.LocalTrailerIds).OrderBy(i => i.SortName).Select(i => dtoBuilder.GetBaseItemDto(i, fields, user)).Select(t => t.Result).ToList(); + var items = _itemRepo.RetrieveItems<Trailer>(item.LocalTrailerIds).OrderBy(i => i.SortName).Select(i => dtoBuilder.GetBaseItemDto(i, fields, user)).Select(t => t.Result).ToList(); return ToOptimizedResult(items); } @@ -496,7 +496,7 @@ namespace MediaBrowser.Api.UserLibrary // Get the user data for this item var key = item.GetUserDataKey(); - var data = _userDataRepository.GetUserData(user.Id, key).Result; + var data = _userDataRepository.GetUserData(user.Id, key); // Set favorite status data.IsFavorite = true; @@ -519,7 +519,7 @@ namespace MediaBrowser.Api.UserLibrary var key = item.GetUserDataKey(); // Get the user data for this item - var data = _userDataRepository.GetUserData(user.Id, key).Result; + var data = _userDataRepository.GetUserData(user.Id, key); // Set favorite status data.IsFavorite = false; @@ -542,7 +542,7 @@ namespace MediaBrowser.Api.UserLibrary var key = item.GetUserDataKey(); // Get the user data for this item - var data = _userDataRepository.GetUserData(user.Id, key).Result; + var data = _userDataRepository.GetUserData(user.Id, key); data.Rating = null; @@ -564,7 +564,7 @@ namespace MediaBrowser.Api.UserLibrary var key = item.GetUserDataKey(); // Get the user data for this item - var data = _userDataRepository.GetUserData(user.Id, key).Result; + var data = _userDataRepository.GetUserData(user.Id, key); data.Likes = request.Likes; diff --git a/MediaBrowser.Api/VideosService.cs b/MediaBrowser.Api/VideosService.cs index d2b58dc968..3c74a42889 100644 --- a/MediaBrowser.Api/VideosService.cs +++ b/MediaBrowser.Api/VideosService.cs @@ -64,7 +64,7 @@ namespace MediaBrowser.Api var video = (Video)item; - var items = _itemRepo.GetItems(video.AdditionalPartIds) + var items = _itemRepo.RetrieveItems<Video>(video.AdditionalPartIds) .OrderBy(i => i.SortName) .Select(i => dtoBuilder.GetBaseItemDto(i, fields, user)) .Select(t => t.Result) |
