diff options
| author | LukePulverenti <luke.pulverenti@gmail.com> | 2013-03-02 02:16:52 -0500 |
|---|---|---|
| committer | LukePulverenti <luke.pulverenti@gmail.com> | 2013-03-02 02:16:52 -0500 |
| commit | e8f5fade43b4e19825fe6d628a76538157f1fc18 (patch) | |
| tree | 0e43ec72e40f1a1785a05510365de3ed82dfa5b2 /MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs | |
| parent | 79baaa4daaee642a2f977a7648eadc4f15ab0fbe (diff) | |
Created an ItemsByName query dto
Diffstat (limited to 'MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs')
| -rw-r--r-- | MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs index ce3d9d8e0..4fe19fcf3 100644 --- a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs +++ b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs @@ -82,7 +82,9 @@ namespace MediaBrowser.Api.UserLibrary } - var tasks = ibnItems.Select(i => GetDto(i, user, new List<ItemFields>())); + var fields = GetItemFields(request).ToList(); + + var tasks = ibnItems.Select(i => GetDto(i, user, fields)); var resultItems = await Task.WhenAll(tasks).ConfigureAwait(false); @@ -92,6 +94,23 @@ namespace MediaBrowser.Api.UserLibrary } /// <summary> + /// Gets the item fields. + /// </summary> + /// <param name="request">The request.</param> + /// <returns>IEnumerable{ItemFields}.</returns> + private IEnumerable<ItemFields> GetItemFields(GetItemsByName request) + { + var val = request.Fields; + + if (string.IsNullOrEmpty(val)) + { + return new ItemFields[] { }; + } + + return val.Split(',').Select(v => (ItemFields)Enum.Parse(typeof(ItemFields), v, true)); + } + + /// <summary> /// Gets all items. /// </summary> /// <param name="request">The request.</param> @@ -171,5 +190,10 @@ namespace MediaBrowser.Api.UserLibrary /// </summary> /// <value>The item id.</value> public string Id { get; set; } + /// <summary> + /// Fields to return within the items, in addition to basic information + /// </summary> + /// <value>The fields.</value> + public string Fields { get; set; } } } |
