ProgramQuery.cs 3.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. using MediaBrowser.Model.Entities;
  2. using System;
  3. using MediaBrowser.Model.Querying;
  4. namespace MediaBrowser.Model.LiveTv
  5. {
  6. /// <summary>
  7. /// Class ProgramQuery.
  8. /// </summary>
  9. public class ProgramQuery
  10. {
  11. public ProgramQuery()
  12. {
  13. ChannelIds = new string[] { };
  14. SortBy = new string[] { };
  15. Genres = new string[] { };
  16. EnableTotalRecordCount = true;
  17. }
  18. public bool EnableTotalRecordCount { get; set; }
  19. /// <summary>
  20. /// Fields to return within the items, in addition to basic information
  21. /// </summary>
  22. /// <value>The fields.</value>
  23. public ItemFields[] Fields { get; set; }
  24. public bool? EnableImages { get; set; }
  25. public int? ImageTypeLimit { get; set; }
  26. public ImageType[] EnableImageTypes { get; set; }
  27. /// <summary>
  28. /// Gets or sets the channel ids.
  29. /// </summary>
  30. /// <value>The channel ids.</value>
  31. public string[] ChannelIds { get; set; }
  32. /// <summary>
  33. /// Gets or sets the user identifier.
  34. /// </summary>
  35. /// <value>The user identifier.</value>
  36. public string UserId { get; set; }
  37. /// <summary>
  38. /// The earliest date for which a program starts to return
  39. /// </summary>
  40. public DateTime? MinStartDate { get; set; }
  41. /// <summary>
  42. /// The latest date for which a program starts to return
  43. /// </summary>
  44. public DateTime? MaxStartDate { get; set; }
  45. /// <summary>
  46. /// The earliest date for which a program ends to return
  47. /// </summary>
  48. public DateTime? MinEndDate { get; set; }
  49. /// <summary>
  50. /// The latest date for which a program ends to return
  51. /// </summary>
  52. public DateTime? MaxEndDate { get; set; }
  53. /// <summary>
  54. /// Used to specific whether to return movies or not
  55. /// </summary>
  56. /// <remarks>If set to null, all programs will be returned</remarks>
  57. public bool? IsMovie { get; set; }
  58. /// <summary>
  59. /// Gets or sets a value indicating whether this instance is kids.
  60. /// </summary>
  61. /// <value><c>null</c> if [is kids] contains no value, <c>true</c> if [is kids]; otherwise, <c>false</c>.</value>
  62. public bool? IsKids { get; set; }
  63. /// <summary>
  64. /// Gets or sets a value indicating whether this instance is sports.
  65. /// </summary>
  66. /// <value><c>null</c> if [is sports] contains no value, <c>true</c> if [is sports]; otherwise, <c>false</c>.</value>
  67. public bool? IsSports { get; set; }
  68. /// <summary>
  69. /// Skips over a given number of items within the results. Use for paging.
  70. /// </summary>
  71. public int? StartIndex { get; set; }
  72. /// <summary>
  73. /// Gets or sets a value indicating whether this instance has aired.
  74. /// </summary>
  75. /// <value><c>null</c> if [has aired] contains no value, <c>true</c> if [has aired]; otherwise, <c>false</c>.</value>
  76. public bool? HasAired { get; set; }
  77. /// <summary>
  78. /// The maximum number of items to return
  79. /// </summary>
  80. public int? Limit { get; set; }
  81. /// <summary>
  82. /// What to sort the results by
  83. /// </summary>
  84. /// <value>The sort by.</value>
  85. public string[] SortBy { get; set; }
  86. /// <summary>
  87. /// The sort order to return results with
  88. /// </summary>
  89. /// <value>The sort order.</value>
  90. public SortOrder? SortOrder { get; set; }
  91. /// <summary>
  92. /// Limit results to items containing specific genres
  93. /// </summary>
  94. /// <value>The genres.</value>
  95. public string[] Genres { get; set; }
  96. }
  97. }