diff options
| author | Luke <luke.pulverenti@gmail.com> | 2016-10-08 01:58:15 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2016-10-08 01:58:15 -0400 |
| commit | 82c00b079df5ea7d9712f27c94852ba75bd552cc (patch) | |
| tree | 7f6128a0a9e84ba10fec160600f22b460ec5695b /MediaBrowser.Controller/Entities/InternalItemsQuery.cs | |
| parent | e5bb2baa67d4b2dc216cf9c6b82d0e1c7997454a (diff) | |
| parent | 5cd3276775461d96d912d47fbae6857b887b98d0 (diff) | |
Merge pull request #2215 from MediaBrowser/dev
pass requested fields to data layer
Diffstat (limited to 'MediaBrowser.Controller/Entities/InternalItemsQuery.cs')
| -rw-r--r-- | MediaBrowser.Controller/Entities/InternalItemsQuery.cs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs index 89fe71d3c..0a857a477 100644 --- a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs +++ b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs @@ -2,6 +2,8 @@ using System; using System.Collections.Generic; using MediaBrowser.Model.Configuration; +using System.Linq; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Controller.Entities { @@ -157,11 +159,43 @@ namespace MediaBrowser.Controller.Entities public DateTime? MinDateCreated { get; set; } public DateTime? MinDateLastSaved { get; set; } + public List<ItemFields> Fields { get; set; } + + public bool HasField(ItemFields name) + { + switch (name) + { + case ItemFields.Keywords: + case ItemFields.Taglines: + case ItemFields.ShortOverview: + case ItemFields.CustomRating: + case ItemFields.DateCreated: + case ItemFields.SortName: + case ItemFields.Overview: + case ItemFields.OfficialRatingDescription: + case ItemFields.HomePageUrl: + case ItemFields.VoteCount: + case ItemFields.DisplayMediaType: + case ItemFields.ServiceName: + case ItemFields.Genres: + case ItemFields.Studios: + case ItemFields.Settings: + case ItemFields.OriginalTitle: + case ItemFields.Tags: + case ItemFields.DateLastMediaAdded: + case ItemFields.CriticRatingSummary: + return Fields.Count == 0 || Fields.Contains(name); + default: + return true; + } + } + public InternalItemsQuery() { GroupByPresentationUniqueKey = true; EnableTotalRecordCount = true; + Fields = new List<ItemFields>(); AlbumNames = new string[] { }; ArtistNames = new string[] { }; ExcludeArtistIds = new string[] { }; |
