aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Model/Querying
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Model/Querying')
-rw-r--r--MediaBrowser.Model/Querying/AllThemeMediaResult.cs15
-rw-r--r--MediaBrowser.Model/Querying/EpisodeQuery.cs61
-rw-r--r--MediaBrowser.Model/Querying/ItemCountsQuery.cs20
-rw-r--r--MediaBrowser.Model/Querying/ItemFields.cs79
-rw-r--r--MediaBrowser.Model/Querying/ItemFilter.cs28
-rw-r--r--MediaBrowser.Model/Querying/ItemSortBy.cs58
-rw-r--r--MediaBrowser.Model/Querying/LatestItemsQuery.cs25
-rw-r--r--MediaBrowser.Model/Querying/MovieRecommendationQuery.cs38
-rw-r--r--MediaBrowser.Model/Querying/NextUpQuery.cs36
-rw-r--r--MediaBrowser.Model/Querying/QueryFilters.cs25
-rw-r--r--MediaBrowser.Model/Querying/QueryFiltersLegacy.cs26
-rw-r--r--MediaBrowser.Model/Querying/QueryResult.cs30
-rw-r--r--MediaBrowser.Model/Querying/SessionQuery.cs13
-rw-r--r--MediaBrowser.Model/Querying/SimilarItemsQuery.cs29
-rw-r--r--MediaBrowser.Model/Querying/ThemeMediaResult.cs2
-rw-r--r--MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs57
-rw-r--r--MediaBrowser.Model/Querying/UserQuery.cs8
17 files changed, 212 insertions, 338 deletions
diff --git a/MediaBrowser.Model/Querying/AllThemeMediaResult.cs b/MediaBrowser.Model/Querying/AllThemeMediaResult.cs
index f843a33e6..6b503ba6b 100644
--- a/MediaBrowser.Model/Querying/AllThemeMediaResult.cs
+++ b/MediaBrowser.Model/Querying/AllThemeMediaResult.cs
@@ -1,13 +1,10 @@
+#nullable disable
+#pragma warning disable CS1591
+
namespace MediaBrowser.Model.Querying
{
public class AllThemeMediaResult
{
- public ThemeMediaResult ThemeVideosResult { get; set; }
-
- public ThemeMediaResult ThemeSongsResult { get; set; }
-
- public ThemeMediaResult SoundtrackSongsResult { get; set; }
-
public AllThemeMediaResult()
{
ThemeVideosResult = new ThemeMediaResult();
@@ -16,5 +13,11 @@ namespace MediaBrowser.Model.Querying
SoundtrackSongsResult = new ThemeMediaResult();
}
+
+ public ThemeMediaResult ThemeVideosResult { get; set; }
+
+ public ThemeMediaResult ThemeSongsResult { get; set; }
+
+ public ThemeMediaResult SoundtrackSongsResult { get; set; }
}
}
diff --git a/MediaBrowser.Model/Querying/EpisodeQuery.cs b/MediaBrowser.Model/Querying/EpisodeQuery.cs
deleted file mode 100644
index 0c8ea7ed4..000000000
--- a/MediaBrowser.Model/Querying/EpisodeQuery.cs
+++ /dev/null
@@ -1,61 +0,0 @@
-namespace MediaBrowser.Model.Querying
-{
- public class EpisodeQuery
- {
- /// <summary>
- /// Gets or sets the user identifier.
- /// </summary>
- /// <value>The user identifier.</value>
- public string UserId { get; set; }
- /// <summary>
- /// Gets or sets the season identifier.
- /// </summary>
- /// <value>The season identifier.</value>
- public string SeasonId { get; set; }
- /// <summary>
- /// Gets or sets the series identifier.
- /// </summary>
- /// <value>The series identifier.</value>
- public string SeriesId { get; set; }
- /// <summary>
- /// Gets or sets a value indicating whether this instance is missing.
- /// </summary>
- /// <value><c>null</c> if [is missing] contains no value, <c>true</c> if [is missing]; otherwise, <c>false</c>.</value>
- public bool? IsMissing { get; set; }
- /// <summary>
- /// Gets or sets a value indicating whether this instance is virtual unaired.
- /// </summary>
- /// <value><c>null</c> if [is virtual unaired] contains no value, <c>true</c> if [is virtual unaired]; otherwise, <c>false</c>.</value>
- public bool? IsVirtualUnaired { get; set; }
- /// <summary>
- /// Gets or sets the season number.
- /// </summary>
- /// <value>The season number.</value>
- public int? SeasonNumber { get; set; }
- /// <summary>
- /// Gets or sets the fields.
- /// </summary>
- /// <value>The fields.</value>
- public ItemFields[] Fields { get; set; }
- /// <summary>
- /// Gets or sets the start index.
- /// </summary>
- /// <value>The start index.</value>
- public int? StartIndex { get; set; }
- /// <summary>
- /// Gets or sets the limit.
- /// </summary>
- /// <value>The limit.</value>
- public int? Limit { get; set; }
- /// <summary>
- /// Gets or sets the start item identifier.
- /// </summary>
- /// <value>The start item identifier.</value>
- public string StartItemId { get; set; }
-
- public EpisodeQuery()
- {
- Fields = new ItemFields[] { };
- }
- }
-}
diff --git a/MediaBrowser.Model/Querying/ItemCountsQuery.cs b/MediaBrowser.Model/Querying/ItemCountsQuery.cs
deleted file mode 100644
index 02b809fa8..000000000
--- a/MediaBrowser.Model/Querying/ItemCountsQuery.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-namespace MediaBrowser.Model.Querying
-{
- /// <summary>
- /// Class ItemCountsQuery
- /// </summary>
- public class ItemCountsQuery
- {
- /// <summary>
- /// Gets or sets the user id.
- /// </summary>
- /// <value>The user id.</value>
- public string UserId { get; set; }
-
- /// <summary>
- /// Gets or sets a value indicating whether this instance is favorite.
- /// </summary>
- /// <value><c>null</c> if [is favorite] contains no value, <c>true</c> if [is favorite]; otherwise, <c>false</c>.</value>
- public bool? IsFavorite { get; set; }
- }
-}
diff --git a/MediaBrowser.Model/Querying/ItemFields.cs b/MediaBrowser.Model/Querying/ItemFields.cs
index af1aaf486..ef4698f3f 100644
--- a/MediaBrowser.Model/Querying/ItemFields.cs
+++ b/MediaBrowser.Model/Querying/ItemFields.cs
@@ -1,203 +1,206 @@
+#pragma warning disable CS1591
+
namespace MediaBrowser.Model.Querying
{
/// <summary>
- /// Used to control the data that gets attached to DtoBaseItems
+ /// Used to control the data that gets attached to DtoBaseItems.
/// </summary>
public enum ItemFields
{
/// <summary>
- /// The air time
+ /// The air time.
/// </summary>
AirTime,
/// <summary>
- /// The can delete
+ /// The can delete.
/// </summary>
CanDelete,
/// <summary>
- /// The can download
+ /// The can download.
/// </summary>
CanDownload,
/// <summary>
- /// The channel information
+ /// The channel information.
/// </summary>
ChannelInfo,
/// <summary>
- /// The chapters
+ /// The chapters.
/// </summary>
Chapters,
ChildCount,
/// <summary>
- /// The cumulative run time ticks
+ /// The cumulative run time ticks.
/// </summary>
CumulativeRunTimeTicks,
/// <summary>
- /// The custom rating
+ /// The custom rating.
/// </summary>
CustomRating,
/// <summary>
- /// The date created of the item
+ /// The date created of the item.
/// </summary>
DateCreated,
/// <summary>
- /// The date last media added
+ /// The date last media added.
/// </summary>
DateLastMediaAdded,
/// <summary>
- /// Item display preferences
+ /// Item display preferences.
/// </summary>
DisplayPreferencesId,
/// <summary>
- /// The etag
+ /// The etag.
/// </summary>
Etag,
/// <summary>
- /// The external urls
+ /// The external urls.
/// </summary>
ExternalUrls,
/// <summary>
- /// Genres
+ /// Genres.
/// </summary>
Genres,
/// <summary>
- /// The home page URL
+ /// The home page URL.
/// </summary>
HomePageUrl,
/// <summary>
- /// The item counts
+ /// The item counts.
/// </summary>
ItemCounts,
/// <summary>
- /// The media source count
+ /// The media source count.
/// </summary>
MediaSourceCount,
/// <summary>
- /// The media versions
+ /// The media versions.
/// </summary>
MediaSources,
OriginalTitle,
/// <summary>
- /// The item overview
+ /// The item overview.
/// </summary>
Overview,
/// <summary>
- /// The id of the item's parent
+ /// The id of the item's parent.
/// </summary>
ParentId,
/// <summary>
- /// The physical path of the item
+ /// The physical path of the item.
/// </summary>
Path,
/// <summary>
- /// The list of people for the item
+ /// The list of people for the item.
/// </summary>
People,
PlayAccess,
/// <summary>
- /// The production locations
+ /// The production locations.
/// </summary>
ProductionLocations,
/// <summary>
- /// Imdb, tmdb, etc
+ /// Imdb, tmdb, etc.
/// </summary>
ProviderIds,
/// <summary>
- /// The aspect ratio of the primary image
+ /// The aspect ratio of the primary image.
/// </summary>
PrimaryImageAspectRatio,
RecursiveItemCount,
/// <summary>
- /// The settings
+ /// The settings.
/// </summary>
Settings,
/// <summary>
- /// The screenshot image tags
+ /// The screenshot image tags.
/// </summary>
ScreenshotImageTags,
SeriesPrimaryImage,
/// <summary>
- /// The series studio
+ /// The series studio.
/// </summary>
SeriesStudio,
/// <summary>
- /// The sort name of the item
+ /// The sort name of the item.
/// </summary>
SortName,
/// <summary>
- /// The special episode numbers
+ /// The special episode numbers.
/// </summary>
SpecialEpisodeNumbers,
/// <summary>
- /// The studios of the item
+ /// The studios of the item.
/// </summary>
Studios,
BasicSyncInfo,
+
/// <summary>
- /// The synchronize information
+ /// The synchronize information.
/// </summary>
SyncInfo,
/// <summary>
- /// The taglines of the item
+ /// The taglines of the item.
/// </summary>
Taglines,
/// <summary>
- /// The tags
+ /// The tags.
/// </summary>
Tags,
/// <summary>
- /// The trailer url of the item
+ /// The trailer url of the item.
/// </summary>
RemoteTrailers,
/// <summary>
- /// The media streams
+ /// The media streams.
/// </summary>
MediaStreams,
/// <summary>
- /// The season user data
+ /// The season user data.
/// </summary>
SeasonUserData,
/// <summary>
- /// The service name
+ /// The service name.
/// </summary>
ServiceName,
ThemeSongIds,
diff --git a/MediaBrowser.Model/Querying/ItemFilter.cs b/MediaBrowser.Model/Querying/ItemFilter.cs
index b8dcfbdad..0ebb5185f 100644
--- a/MediaBrowser.Model/Querying/ItemFilter.cs
+++ b/MediaBrowser.Model/Querying/ItemFilter.cs
@@ -1,44 +1,52 @@
namespace MediaBrowser.Model.Querying
{
/// <summary>
- /// Enum ItemFilter
+ /// Enum ItemFilter.
/// </summary>
public enum ItemFilter
{
/// <summary>
- /// The item is a folder
+ /// The item is a folder.
/// </summary>
IsFolder = 1,
+
/// <summary>
- /// The item is not folder
+ /// The item is not folder.
/// </summary>
IsNotFolder = 2,
+
/// <summary>
- /// The item is unplayed
+ /// The item is unplayed.
/// </summary>
IsUnplayed = 3,
+
/// <summary>
- /// The item is played
+ /// The item is played.
/// </summary>
IsPlayed = 4,
+
/// <summary>
- /// The item is a favorite
+ /// The item is a favorite.
/// </summary>
IsFavorite = 5,
+
/// <summary>
- /// The item is resumable
+ /// The item is resumable.
/// </summary>
IsResumable = 7,
+
/// <summary>
- /// The likes
+ /// The likes.
/// </summary>
Likes = 8,
+
/// <summary>
- /// The dislikes
+ /// The dislikes.
/// </summary>
Dislikes = 9,
+
/// <summary>
- /// The is favorite or likes
+ /// The is favorite or likes.
/// </summary>
IsFavoriteOrLikes = 10
}
diff --git a/MediaBrowser.Model/Querying/ItemSortBy.cs b/MediaBrowser.Model/Querying/ItemSortBy.cs
index 6a71e3bb3..0b846bb96 100644
--- a/MediaBrowser.Model/Querying/ItemSortBy.cs
+++ b/MediaBrowser.Model/Querying/ItemSortBy.cs
@@ -1,78 +1,106 @@
+#pragma warning disable CS1591
+
namespace MediaBrowser.Model.Querying
{
/// <summary>
- /// These represent sort orders that are known by the core
+ /// These represent sort orders that are known by the core.
/// </summary>
public static class ItemSortBy
{
public const string AiredEpisodeOrder = "AiredEpisodeOrder";
+
/// <summary>
- /// The album
+ /// The album.
/// </summary>
public const string Album = "Album";
+
/// <summary>
- /// The album artist
+ /// The album artist.
/// </summary>
public const string AlbumArtist = "AlbumArtist";
+
/// <summary>
- /// The artist
+ /// The artist.
/// </summary>
public const string Artist = "Artist";
+
/// <summary>
- /// The date created
+ /// The date created.
/// </summary>
public const string DateCreated = "DateCreated";
+
/// <summary>
- /// The official rating
+ /// The official rating.
/// </summary>
public const string OfficialRating = "OfficialRating";
+
/// <summary>
- /// The date played
+ /// The date played.
/// </summary>
public const string DatePlayed = "DatePlayed";
+
/// <summary>
- /// The premiere date
+ /// The premiere date.
/// </summary>
public const string PremiereDate = "PremiereDate";
+
public const string StartDate = "StartDate";
+
/// <summary>
- /// The sort name
+ /// The sort name.
/// </summary>
public const string SortName = "SortName";
+
public const string Name = "Name";
+
/// <summary>
- /// The random
+ /// The random.
/// </summary>
public const string Random = "Random";
+
/// <summary>
- /// The runtime
+ /// The runtime.
/// </summary>
public const string Runtime = "Runtime";
+
/// <summary>
- /// The community rating
+ /// The community rating.
/// </summary>
public const string CommunityRating = "CommunityRating";
+
/// <summary>
- /// The production year
+ /// The production year.
/// </summary>
public const string ProductionYear = "ProductionYear";
+
/// <summary>
- /// The play count
+ /// The play count.
/// </summary>
public const string PlayCount = "PlayCount";
+
/// <summary>
- /// The critic rating
+ /// The critic rating.
/// </summary>
public const string CriticRating = "CriticRating";
+
public const string IsFolder = "IsFolder";
+
public const string IsUnplayed = "IsUnplayed";
+
public const string IsPlayed = "IsPlayed";
+
public const string SeriesSortName = "SeriesSortName";
+
public const string VideoBitRate = "VideoBitRate";
+
public const string AirTime = "AirTime";
+
public const string Studio = "Studio";
+
public const string IsFavoriteOrLiked = "IsFavoriteOrLiked";
+
public const string DateLastContentAdded = "DateLastContentAdded";
+
public const string SeriesDatePlayed = "SeriesDatePlayed";
}
}
diff --git a/MediaBrowser.Model/Querying/LatestItemsQuery.cs b/MediaBrowser.Model/Querying/LatestItemsQuery.cs
index 4a5818ac5..f555ffb36 100644
--- a/MediaBrowser.Model/Querying/LatestItemsQuery.cs
+++ b/MediaBrowser.Model/Querying/LatestItemsQuery.cs
@@ -1,3 +1,6 @@
+#nullable disable
+#pragma warning disable CS1591
+
using System;
using MediaBrowser.Model.Entities;
@@ -5,32 +8,38 @@ namespace MediaBrowser.Model.Querying
{
public class LatestItemsQuery
{
+ public LatestItemsQuery()
+ {
+ EnableImageTypes = Array.Empty<ImageType>();
+ }
+
/// <summary>
- /// The user to localize search results for
+ /// Gets or sets the user to localize search results for.
/// </summary>
/// <value>The user id.</value>
public Guid UserId { get; set; }
/// <summary>
+ /// Gets or sets the parent id.
/// Specify this to localize the search to a specific item or folder. Omit to use the root.
/// </summary>
/// <value>The parent id.</value>
public Guid ParentId { get; set; }
/// <summary>
- /// Skips over a given number of items within the results. Use for paging.
+ /// Gets or sets the start index. Used for paging.
/// </summary>
/// <value>The start index.</value>
public int? StartIndex { get; set; }
/// <summary>
- /// The maximum number of items to return
+ /// Gets or sets the maximum number of items to return.
/// </summary>
/// <value>The limit.</value>
public int? Limit { get; set; }
/// <summary>
- /// Fields to return within the items, in addition to basic information
+ /// Gets or sets the fields to return within the items, in addition to basic information.
/// </summary>
/// <value>The fields.</value>
public ItemFields[] Fields { get; set; }
@@ -52,25 +61,23 @@ namespace MediaBrowser.Model.Querying
/// </summary>
/// <value><c>true</c> if [group items]; otherwise, <c>false</c>.</value>
public bool GroupItems { get; set; }
+
/// <summary>
/// Gets or sets a value indicating whether [enable images].
/// </summary>
/// <value><c>null</c> if [enable images] contains no value, <c>true</c> if [enable images]; otherwise, <c>false</c>.</value>
public bool? EnableImages { get; set; }
+
/// <summary>
/// Gets or sets the image type limit.
/// </summary>
/// <value>The image type limit.</value>
public int? ImageTypeLimit { get; set; }
+
/// <summary>
/// Gets or sets the enable image types.
/// </summary>
/// <value>The enable image types.</value>
public ImageType[] EnableImageTypes { get; set; }
-
- public LatestItemsQuery()
- {
- EnableImageTypes = new ImageType[] { };
- }
}
}
diff --git a/MediaBrowser.Model/Querying/MovieRecommendationQuery.cs b/MediaBrowser.Model/Querying/MovieRecommendationQuery.cs
deleted file mode 100644
index 52c138355..000000000
--- a/MediaBrowser.Model/Querying/MovieRecommendationQuery.cs
+++ /dev/null
@@ -1,38 +0,0 @@
-namespace MediaBrowser.Model.Querying
-{
- public class MovieRecommendationQuery
- {
- /// <summary>
- /// Gets or sets the user identifier.
- /// </summary>
- /// <value>The user identifier.</value>
- public string UserId { get; set; }
- /// <summary>
- /// Gets or sets the parent identifier.
- /// </summary>
- /// <value>The parent identifier.</value>
- public string ParentId { get; set; }
- /// <summary>
- /// Gets or sets the item limit.
- /// </summary>
- /// <value>The item limit.</value>
- public int ItemLimit { get; set; }
- /// <summary>
- /// Gets or sets the category limit.
- /// </summary>
- /// <value>The category limit.</value>
- public int CategoryLimit { get; set; }
- /// <summary>
- /// Gets or sets the fields.
- /// </summary>
- /// <value>The fields.</value>
- public ItemFields[] Fields { get; set; }
-
- public MovieRecommendationQuery()
- {
- ItemLimit = 10;
- CategoryLimit = 6;
- Fields = new ItemFields[] { };
- }
- }
-}
diff --git a/MediaBrowser.Model/Querying/NextUpQuery.cs b/MediaBrowser.Model/Querying/NextUpQuery.cs
index ff146cede..fa8aa829d 100644
--- a/MediaBrowser.Model/Querying/NextUpQuery.cs
+++ b/MediaBrowser.Model/Querying/NextUpQuery.cs
@@ -1,3 +1,6 @@
+#nullable disable
+#pragma warning disable CS1591
+
using System;
using MediaBrowser.Model.Entities;
@@ -5,6 +8,14 @@ namespace MediaBrowser.Model.Querying
{
public class NextUpQuery
{
+ public NextUpQuery()
+ {
+ EnableImageTypes = Array.Empty<ImageType>();
+ EnableTotalRecordCount = true;
+ DisableFirstEpisode = false;
+ NextUpDateCutoff = DateTime.MinValue;
+ }
+
/// <summary>
/// Gets or sets the user id.
/// </summary>
@@ -15,7 +26,7 @@ namespace MediaBrowser.Model.Querying
/// Gets or sets the parent identifier.
/// </summary>
/// <value>The parent identifier.</value>
- public string ParentId { get; set; }
+ public Guid? ParentId { get; set; }
/// <summary>
/// Gets or sets the series id.
@@ -24,32 +35,35 @@ namespace MediaBrowser.Model.Querying
public string SeriesId { get; set; }
/// <summary>
- /// Skips over a given number of items within the results. Use for paging.
+ /// Gets or sets the start index. Use for paging.
/// </summary>
/// <value>The start index.</value>
public int? StartIndex { get; set; }
/// <summary>
- /// The maximum number of items to return
+ /// Gets or sets the maximum number of items to return.
/// </summary>
/// <value>The limit.</value>
public int? Limit { get; set; }
/// <summary>
- /// Fields to return within the items, in addition to basic information
+ /// gets or sets the fields to return within the items, in addition to basic information.
/// </summary>
/// <value>The fields.</value>
public ItemFields[] Fields { get; set; }
+
/// <summary>
/// Gets or sets a value indicating whether [enable images].
/// </summary>
/// <value><c>null</c> if [enable images] contains no value, <c>true</c> if [enable images]; otherwise, <c>false</c>.</value>
public bool? EnableImages { get; set; }
+
/// <summary>
/// Gets or sets the image type limit.
/// </summary>
/// <value>The image type limit.</value>
public int? ImageTypeLimit { get; set; }
+
/// <summary>
/// Gets or sets the enable image types.
/// </summary>
@@ -58,10 +72,14 @@ namespace MediaBrowser.Model.Querying
public bool EnableTotalRecordCount { get; set; }
- public NextUpQuery()
- {
- EnableImageTypes = new ImageType[] { };
- EnableTotalRecordCount = true;
- }
+ /// <summary>
+ /// Gets or sets a value indicating whether do disable sending first episode as next up.
+ /// </summary>
+ public bool DisableFirstEpisode { get; set; }
+
+ /// <summary>
+ /// Gets or sets a value indicating the oldest date for a show to appear in Next Up.
+ /// </summary>
+ public DateTime NextUpDateCutoff { get; set; }
}
}
diff --git a/MediaBrowser.Model/Querying/QueryFilters.cs b/MediaBrowser.Model/Querying/QueryFilters.cs
index 2f38299db..73b27a7b0 100644
--- a/MediaBrowser.Model/Querying/QueryFilters.cs
+++ b/MediaBrowser.Model/Querying/QueryFilters.cs
@@ -1,32 +1,21 @@
+#nullable disable
+#pragma warning disable CS1591
+
using System;
using MediaBrowser.Model.Dto;
namespace MediaBrowser.Model.Querying
{
- public class QueryFiltersLegacy
- {
- public string[] Genres { get; set; }
- public string[] Tags { get; set; }
- public string[] OfficialRatings { get; set; }
- public int[] Years { get; set; }
-
- public QueryFiltersLegacy()
- {
- Genres = Array.Empty<string>();
- Tags = Array.Empty<string>();
- OfficialRatings = Array.Empty<string>();
- Years = Array.Empty<int>();
- }
- }
public class QueryFilters
{
- public NameGuidPair[] Genres { get; set; }
- public string[] Tags { get; set; }
-
public QueryFilters()
{
Tags = Array.Empty<string>();
Genres = Array.Empty<NameGuidPair>();
}
+
+ public NameGuidPair[] Genres { get; set; }
+
+ public string[] Tags { get; set; }
}
}
diff --git a/MediaBrowser.Model/Querying/QueryFiltersLegacy.cs b/MediaBrowser.Model/Querying/QueryFiltersLegacy.cs
new file mode 100644
index 000000000..fcb450ed3
--- /dev/null
+++ b/MediaBrowser.Model/Querying/QueryFiltersLegacy.cs
@@ -0,0 +1,26 @@
+#nullable disable
+#pragma warning disable CS1591
+
+using System;
+
+namespace MediaBrowser.Model.Querying
+{
+ public class QueryFiltersLegacy
+ {
+ public QueryFiltersLegacy()
+ {
+ Genres = Array.Empty<string>();
+ Tags = Array.Empty<string>();
+ OfficialRatings = Array.Empty<string>();
+ Years = Array.Empty<int>();
+ }
+
+ public string[] Genres { get; set; }
+
+ public string[] Tags { get; set; }
+
+ public string[] OfficialRatings { get; set; }
+
+ public int[] Years { get; set; }
+ }
+}
diff --git a/MediaBrowser.Model/Querying/QueryResult.cs b/MediaBrowser.Model/Querying/QueryResult.cs
index e81f2b868..8ce794800 100644
--- a/MediaBrowser.Model/Querying/QueryResult.cs
+++ b/MediaBrowser.Model/Querying/QueryResult.cs
@@ -1,22 +1,40 @@
+#nullable disable
+#pragma warning disable CS1591
+
+using System;
+using System.Collections.Generic;
+
namespace MediaBrowser.Model.Querying
{
public class QueryResult<T>
{
+ public QueryResult()
+ {
+ Items = Array.Empty<T>();
+ }
+
+ public QueryResult(IReadOnlyList<T> items)
+ {
+ Items = items;
+ TotalRecordCount = items.Count;
+ }
+
/// <summary>
/// Gets or sets the items.
/// </summary>
/// <value>The items.</value>
- public T[] Items { get; set; }
+ public IReadOnlyList<T> Items { get; set; }
/// <summary>
- /// The total number of records available
+ /// Gets or sets the total number of records available.
/// </summary>
/// <value>The total record count.</value>
public int TotalRecordCount { get; set; }
- public QueryResult()
- {
- Items = new T[] { };
- }
+ /// <summary>
+ /// Gets or sets the index of the first record in Items.
+ /// </summary>
+ /// <value>First record index.</value>
+ public int StartIndex { get; set; }
}
}
diff --git a/MediaBrowser.Model/Querying/SessionQuery.cs b/MediaBrowser.Model/Querying/SessionQuery.cs
deleted file mode 100644
index 1fac9d639..000000000
--- a/MediaBrowser.Model/Querying/SessionQuery.cs
+++ /dev/null
@@ -1,13 +0,0 @@
-namespace MediaBrowser.Model.Querying
-{
- /// <summary>
- /// Class SessionQuery
- /// </summary>
- public class SessionQuery
- {
- /// <summary>
- /// Filter by sessions that are allowed to be controlled by a given user
- /// </summary>
- public string ControllableByUserId { get; set; }
- }
-}
diff --git a/MediaBrowser.Model/Querying/SimilarItemsQuery.cs b/MediaBrowser.Model/Querying/SimilarItemsQuery.cs
deleted file mode 100644
index 68f761bd4..000000000
--- a/MediaBrowser.Model/Querying/SimilarItemsQuery.cs
+++ /dev/null
@@ -1,29 +0,0 @@
-namespace MediaBrowser.Model.Querying
-{
- public class SimilarItemsQuery
- {
- /// <summary>
- /// The user to localize search results for
- /// </summary>
- /// <value>The user id.</value>
- public string UserId { get; set; }
-
- /// <summary>
- /// Gets or sets the id.
- /// </summary>
- /// <value>The id.</value>
- public string Id { get; set; }
-
- /// <summary>
- /// The maximum number of items to return
- /// </summary>
- /// <value>The limit.</value>
- public int? Limit { get; set; }
-
- /// <summary>
- /// Fields to return within the items, in addition to basic information
- /// </summary>
- /// <value>The fields.</value>
- public ItemFields[] Fields { get; set; }
- }
-}
diff --git a/MediaBrowser.Model/Querying/ThemeMediaResult.cs b/MediaBrowser.Model/Querying/ThemeMediaResult.cs
index bae954d78..5afedeeaf 100644
--- a/MediaBrowser.Model/Querying/ThemeMediaResult.cs
+++ b/MediaBrowser.Model/Querying/ThemeMediaResult.cs
@@ -4,7 +4,7 @@ using MediaBrowser.Model.Dto;
namespace MediaBrowser.Model.Querying
{
/// <summary>
- /// Class ThemeMediaResult
+ /// Class ThemeMediaResult.
/// </summary>
public class ThemeMediaResult : QueryResult<BaseItemDto>
{
diff --git a/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs b/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs
deleted file mode 100644
index 5eac2860d..000000000
--- a/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs
+++ /dev/null
@@ -1,57 +0,0 @@
-using MediaBrowser.Model.Entities;
-
-namespace MediaBrowser.Model.Querying
-{
- public class UpcomingEpisodesQuery
- {
- /// <summary>
- /// Gets or sets the user id.
- /// </summary>
- /// <value>The user id.</value>
- public string UserId { get; set; }
-
- /// <summary>
- /// Gets or sets the parent identifier.
- /// </summary>
- /// <value>The parent identifier.</value>
- public string ParentId { get; set; }
-
- /// <summary>
- /// Skips over a given number of items within the results. Use for paging.
- /// </summary>
- /// <value>The start index.</value>
- public int? StartIndex { get; set; }
-
- /// <summary>
- /// The maximum number of items to return
- /// </summary>
- /// <value>The limit.</value>
- public int? Limit { get; set; }
-
- /// <summary>
- /// Fields to return within the items, in addition to basic information
- /// </summary>
- /// <value>The fields.</value>
- public ItemFields[] Fields { get; set; }
- /// <summary>
- /// Gets or sets a value indicating whether [enable images].
- /// </summary>
- /// <value><c>null</c> if [enable images] contains no value, <c>true</c> if [enable images]; otherwise, <c>false</c>.</value>
- public bool? EnableImages { get; set; }
- /// <summary>
- /// Gets or sets the image type limit.
- /// </summary>
- /// <value>The image type limit.</value>
- public int? ImageTypeLimit { get; set; }
- /// <summary>
- /// Gets or sets the enable image types.
- /// </summary>
- /// <value>The enable image types.</value>
- public ImageType[] EnableImageTypes { get; set; }
-
- public UpcomingEpisodesQuery()
- {
- EnableImageTypes = new ImageType[] { };
- }
- }
-}
diff --git a/MediaBrowser.Model/Querying/UserQuery.cs b/MediaBrowser.Model/Querying/UserQuery.cs
deleted file mode 100644
index 55cef664e..000000000
--- a/MediaBrowser.Model/Querying/UserQuery.cs
+++ /dev/null
@@ -1,8 +0,0 @@
-namespace MediaBrowser.Model.Querying
-{
- public class UserQuery
- {
- public bool? IsHidden { get; set; }
- public bool? IsDisabled { get; set; }
- }
-}