From 85d7eb917f1cd7530e28fb0565564c79ddb910ed Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Mon, 16 Sep 2013 22:44:06 -0400 Subject: made dtoservice synchronous --- MediaBrowser.Api/UserLibrary/UserLibraryService.cs | 24 +++++++++++----------- 1 file changed, 12 insertions(+), 12 deletions(-) (limited to 'MediaBrowser.Api/UserLibrary/UserLibraryService.cs') diff --git a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs index 4e8ef7d8d..392fffc79 100644 --- a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs +++ b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs @@ -393,12 +393,12 @@ namespace MediaBrowser.Api.UserLibrary /// System.Object. public object Get(GetSpecialFeatures request) { - var result = GetAsync(request).Result; + var result = GetAsync(request); return ToOptimizedResult(result); } - private Task GetAsync(GetSpecialFeatures request) + private BaseItemDto[] GetAsync(GetSpecialFeatures request) { var user = _userManager.GetUserById(request.UserId); @@ -415,12 +415,12 @@ namespace MediaBrowser.Api.UserLibrary // Avoid implicitly captured closure var movie1 = movie; - var tasks = movie.SpecialFeatureIds + var dtos = movie.SpecialFeatureIds .Select(_itemRepo.RetrieveItem) .OrderBy(i => i.SortName) .Select(i => _dtoService.GetBaseItemDto(i, fields, user, movie1)); - return Task.WhenAll(tasks); + return dtos.ToArray(); } var series = item as Series; @@ -428,7 +428,7 @@ namespace MediaBrowser.Api.UserLibrary // Get them from the child tree if (series != null) { - var tasks = series + var dtos = series .RecursiveChildren .OfType() .Where(i => i.ParentIndexNumber.HasValue && i.ParentIndexNumber.Value == 0) @@ -448,7 +448,7 @@ namespace MediaBrowser.Api.UserLibrary .ThenBy(i => i.SortName) .Select(i => _dtoService.GetBaseItemDto(i, fields, user)); - return Task.WhenAll(tasks); + return dtos.ToArray(); } throw new ArgumentException("The item does not support special features"); @@ -461,12 +461,12 @@ namespace MediaBrowser.Api.UserLibrary /// System.Object. public object Get(GetLocalTrailers request) { - var result = GetAsync(request).Result; + var result = GetAsync(request); return ToOptimizedResult(result); } - private Task GetAsync(GetLocalTrailers request) + private BaseItemDto[] GetAsync(GetLocalTrailers request) { var user = _userManager.GetUserById(request.UserId); @@ -475,12 +475,12 @@ namespace MediaBrowser.Api.UserLibrary // Get everything var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)).ToList(); - var tasks = item.LocalTrailerIds + var dtos = item.LocalTrailerIds .Select(_itemRepo.RetrieveItem) .OrderBy(i => i.SortName) .Select(i => _dtoService.GetBaseItemDto(i, fields, user, item)); - return Task.WhenAll(tasks); + return dtos.ToArray(); } /// @@ -497,7 +497,7 @@ namespace MediaBrowser.Api.UserLibrary // Get everything var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)).ToList(); - var result = _dtoService.GetBaseItemDto(item, fields, user).Result; + var result = _dtoService.GetBaseItemDto(item, fields, user); return ToOptimizedResult(result); } @@ -516,7 +516,7 @@ namespace MediaBrowser.Api.UserLibrary // Get everything var fields = Enum.GetNames(typeof(ItemFields)).Select(i => (ItemFields)Enum.Parse(typeof(ItemFields), i, true)).ToList(); - var result = _dtoService.GetBaseItemDto(item, fields, user).Result; + var result = _dtoService.GetBaseItemDto(item, fields, user); return ToOptimizedResult(result); } -- cgit v1.2.3