using MediaBrowser.Model.Entities; using System; namespace MediaBrowser.Model.Querying { /// /// Contains all the possible parameters that can be used to query for items /// public class ItemQuery { /// /// The user to localize search results for /// /// The user id. public Guid UserId { get; set; } /// /// Specify this to localize the search to a specific item or folder. Omit to use the root. /// /// The parent id. public string ParentId { get; set; } /// /// Skips over a given number of items within the results. Use for paging. /// /// The start index. public int? StartIndex { get; set; } /// /// The maximum number of items to return /// /// The limit. public int? Limit { get; set; } /// /// What to sort the results by /// /// The sort by. public string[] SortBy { get; set; } /// /// The sort order to return results with /// /// The sort order. public SortOrder? SortOrder { get; set; } /// /// Filters to apply to the results /// /// The filters. public ItemFilter[] Filters { get; set; } /// /// Fields to return within the items, in addition to basic information /// /// The fields. public ItemFields[] Fields { get; set; } /// /// Gets or sets the media types. /// /// The media types. public string[] MediaTypes { get; set; } /// /// Gets or sets the video formats. /// /// The video formats. public VideoFormat[] VideoFormats { get; set; } /// /// Gets or sets the video types. /// /// The video types. public VideoType[] VideoTypes { get; set; } /// /// Whether or not to perform the query recursively /// /// true if recursive; otherwise, false. public bool Recursive { get; set; } /// /// Limit results to items containing specific genres /// /// The genres. public string[] Genres { get; set; } /// /// Limit results to items containing specific studios /// /// The studios. public string[] Studios { get; set; } /// /// Gets or sets the exclude item types. /// /// The exclude item types. public string[] ExcludeItemTypes { get; set; } /// /// Gets or sets the include item types. /// /// The include item types. public string[] IncludeItemTypes { get; set; } /// /// Limit results to items containing specific years /// /// The years. public int[] Years { get; set; } /// /// Limit results to items containing a specific person /// /// The person. public string Person { get; set; } /// /// If the Person filter is used, this can also be used to restrict to a specific person type /// /// The type of the person. public string PersonType { get; set; } /// /// Search characters used to find items /// /// The index by. public string SearchTerm { get; set; } /// /// The dynamic, localized index function name /// /// The index by. public string IndexBy { get; set; } /// /// Gets or sets the image types. /// /// The image types. public ImageType[] ImageTypes { get; set; } /// /// Gets or sets the air days. /// /// The air days. public DayOfWeek[] AirDays { get; set; } /// /// Gets or sets the series status. /// /// The series status. public SeriesStatus[] SeriesStatuses { get; set; } /// /// Gets or sets the ids, which are specific items to retrieve /// /// The ids. public string[] Ids { get; set; } } }