aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Model
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Model')
-rw-r--r--MediaBrowser.Model/ApiClient/ConnectionMode.cs3
-rw-r--r--MediaBrowser.Model/ApiClient/IApiClient.cs17
-rw-r--r--MediaBrowser.Model/ApiClient/ServerCredentials.cs10
-rw-r--r--MediaBrowser.Model/ApiClient/ServerDiscoveryInfo.cs5
-rw-r--r--MediaBrowser.Model/ApiClient/ServerInfo.cs21
-rw-r--r--MediaBrowser.Model/Configuration/ServerConfiguration.cs6
-rw-r--r--MediaBrowser.Model/Dlna/StreamBuilder.cs1
-rw-r--r--MediaBrowser.Model/Dlna/TranscodingProfile.cs3
-rw-r--r--MediaBrowser.Model/Drawing/ImageFormat.cs (renamed from MediaBrowser.Model/Drawing/ImageOutputFormat.cs)2
-rw-r--r--MediaBrowser.Model/Drawing/ImageSize.cs6
-rw-r--r--MediaBrowser.Model/Dto/BaseItemDto.cs20
-rw-r--r--MediaBrowser.Model/Dto/DtoOptions.cs32
-rw-r--r--MediaBrowser.Model/Dto/ImageOptions.cs2
-rw-r--r--MediaBrowser.Model/MediaBrowser.Model.csproj5
-rw-r--r--MediaBrowser.Model/Querying/ItemFields.cs30
-rw-r--r--MediaBrowser.Model/Querying/ItemQuery.cs25
-rw-r--r--MediaBrowser.Model/Querying/ItemsByNameQuery.cs18
-rw-r--r--MediaBrowser.Model/Querying/LatestItemsQuery.cs22
-rw-r--r--MediaBrowser.Model/Querying/NextUpQuery.cs23
-rw-r--r--MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs24
-rw-r--r--MediaBrowser.Model/Session/ClientCapabilities.cs2
-rw-r--r--MediaBrowser.Model/Sync/SyncJob.cs22
-rw-r--r--MediaBrowser.Model/Sync/SyncJobRequest.cs18
-rw-r--r--MediaBrowser.Model/Sync/SyncJobStatus.cs9
-rw-r--r--MediaBrowser.Model/Sync/SyncLimitType.cs7
-rw-r--r--MediaBrowser.Model/Users/UserPolicy.cs11
26 files changed, 273 insertions, 71 deletions
diff --git a/MediaBrowser.Model/ApiClient/ConnectionMode.cs b/MediaBrowser.Model/ApiClient/ConnectionMode.cs
index f14c88a09..5dc224d95 100644
--- a/MediaBrowser.Model/ApiClient/ConnectionMode.cs
+++ b/MediaBrowser.Model/ApiClient/ConnectionMode.cs
@@ -3,6 +3,7 @@ namespace MediaBrowser.Model.ApiClient
public enum ConnectionMode
{
Local = 1,
- Remote = 2
+ Remote = 2,
+ Manual = 3
}
} \ No newline at end of file
diff --git a/MediaBrowser.Model/ApiClient/IApiClient.cs b/MediaBrowser.Model/ApiClient/IApiClient.cs
index 15ec130cf..13907e5c6 100644
--- a/MediaBrowser.Model/ApiClient/IApiClient.cs
+++ b/MediaBrowser.Model/ApiClient/IApiClient.cs
@@ -14,6 +14,7 @@ using MediaBrowser.Model.Querying;
using MediaBrowser.Model.Search;
using MediaBrowser.Model.Serialization;
using MediaBrowser.Model.Session;
+using MediaBrowser.Model.Sync;
using MediaBrowser.Model.System;
using MediaBrowser.Model.Tasks;
using MediaBrowser.Model.Users;
@@ -413,7 +414,7 @@ namespace MediaBrowser.Model.ApiClient
/// </summary>
/// <param name="query">The query.</param>
/// <returns>Task{ItemsResult}.</returns>
- Task<ItemsResult> GetUpcomingEpisodesAsync(NextUpQuery query);
+ Task<ItemsResult> GetUpcomingEpisodesAsync(UpcomingEpisodesQuery query);
/// <summary>
/// Gets a genre
@@ -1372,6 +1373,20 @@ namespace MediaBrowser.Model.ApiClient
Task<DevicesOptions> GetDevicesOptions();
/// <summary>
+ /// Updates the item.
+ /// </summary>
+ /// <param name="item">The item.</param>
+ /// <returns>Task.</returns>
+ Task UpdateItem(BaseItemDto item);
+
+ /// <summary>
+ /// Requests the synchronize.
+ /// </summary>
+ /// <param name="request">The request.</param>
+ /// <returns>Task&lt;SyncJob&gt;.</returns>
+ Task<SyncJob> RequestSync(SyncJobRequest request);
+
+ /// <summary>
/// Opens the web socket.
/// </summary>
/// <param name="webSocketFactory">The web socket factory.</param>
diff --git a/MediaBrowser.Model/ApiClient/ServerCredentials.cs b/MediaBrowser.Model/ApiClient/ServerCredentials.cs
index 2490ba606..fbbc6c05d 100644
--- a/MediaBrowser.Model/ApiClient/ServerCredentials.cs
+++ b/MediaBrowser.Model/ApiClient/ServerCredentials.cs
@@ -50,10 +50,14 @@ namespace MediaBrowser.Model.ApiClient
{
existing.RemoteAddress = server.RemoteAddress;
}
- if (!existing.IsLocalAddressFixed && !string.IsNullOrEmpty(server.LocalAddress))
+ if (!string.IsNullOrEmpty(server.LocalAddress))
{
existing.LocalAddress = server.LocalAddress;
}
+ if (!string.IsNullOrEmpty(server.ManualAddress))
+ {
+ existing.LocalAddress = server.ManualAddress;
+ }
if (!string.IsNullOrEmpty(server.Name))
{
existing.Name = server.Name;
@@ -62,9 +66,9 @@ namespace MediaBrowser.Model.ApiClient
{
existing.WakeOnLanInfos = server.WakeOnLanInfos.ToList();
}
- if (server.IsLocalAddressFixed)
+ if (server.LastConnectionMode.HasValue)
{
- existing.IsLocalAddressFixed = true;
+ existing.LastConnectionMode = server.LastConnectionMode;
}
}
else
diff --git a/MediaBrowser.Model/ApiClient/ServerDiscoveryInfo.cs b/MediaBrowser.Model/ApiClient/ServerDiscoveryInfo.cs
index bb2b48e76..e2f780605 100644
--- a/MediaBrowser.Model/ApiClient/ServerDiscoveryInfo.cs
+++ b/MediaBrowser.Model/ApiClient/ServerDiscoveryInfo.cs
@@ -18,5 +18,10 @@ namespace MediaBrowser.Model.ApiClient
/// </summary>
/// <value>The name.</value>
public string Name { get; set; }
+ /// <summary>
+ /// Gets or sets the endpoint address.
+ /// </summary>
+ /// <value>The endpoint address.</value>
+ public string EndpointAddress { get; set; }
}
}
diff --git a/MediaBrowser.Model/ApiClient/ServerInfo.cs b/MediaBrowser.Model/ApiClient/ServerInfo.cs
index 95cdf006b..46cc560af 100644
--- a/MediaBrowser.Model/ApiClient/ServerInfo.cs
+++ b/MediaBrowser.Model/ApiClient/ServerInfo.cs
@@ -11,14 +11,14 @@ namespace MediaBrowser.Model.ApiClient
public String Id { get; set; }
public String LocalAddress { get; set; }
public String RemoteAddress { get; set; }
+ public String ManualAddress { get; set; }
public String UserId { get; set; }
public String AccessToken { get; set; }
public List<WakeOnLanInfo> WakeOnLanInfos { get; set; }
public DateTime DateLastAccessed { get; set; }
public String ExchangeToken { get; set; }
public UserLinkType? UserLinkType { get; set; }
-
- public bool IsLocalAddressFixed { get; set; }
+ public ConnectionMode? LastConnectionMode { get; set; }
public ServerInfo()
{
@@ -30,7 +30,7 @@ namespace MediaBrowser.Model.ApiClient
Name = systemInfo.ServerName;
Id = systemInfo.Id;
- if (!IsLocalAddressFixed && !string.IsNullOrEmpty(systemInfo.LocalAddress))
+ if (!string.IsNullOrEmpty(systemInfo.LocalAddress))
{
LocalAddress = systemInfo.LocalAddress;
}
@@ -55,5 +55,20 @@ namespace MediaBrowser.Model.ApiClient
}
}
}
+
+ public string GetAddress(ConnectionMode mode)
+ {
+ switch (mode)
+ {
+ case ConnectionMode.Local:
+ return LocalAddress;
+ case ConnectionMode.Manual:
+ return ManualAddress;
+ case ConnectionMode.Remote:
+ return RemoteAddress;
+ default:
+ throw new ArgumentException("Unexpected ConnectionMode");
+ }
+ }
}
}
diff --git a/MediaBrowser.Model/Configuration/ServerConfiguration.cs b/MediaBrowser.Model/Configuration/ServerConfiguration.cs
index c9df615e1..b9eaf7001 100644
--- a/MediaBrowser.Model/Configuration/ServerConfiguration.cs
+++ b/MediaBrowser.Model/Configuration/ServerConfiguration.cs
@@ -56,6 +56,12 @@ namespace MediaBrowser.Model.Configuration
public bool SaveLocalMeta { get; set; }
/// <summary>
+ /// Gets or sets a value indicating whether [enable localized guids].
+ /// </summary>
+ /// <value><c>true</c> if [enable localized guids]; otherwise, <c>false</c>.</value>
+ public bool EnableLocalizedGuids { get; set; }
+
+ /// <summary>
/// Gets or sets the preferred metadata language.
/// </summary>
/// <value>The preferred metadata language.</value>
diff --git a/MediaBrowser.Model/Dlna/StreamBuilder.cs b/MediaBrowser.Model/Dlna/StreamBuilder.cs
index 4907abfd7..fb26f1ff8 100644
--- a/MediaBrowser.Model/Dlna/StreamBuilder.cs
+++ b/MediaBrowser.Model/Dlna/StreamBuilder.cs
@@ -298,7 +298,6 @@ namespace MediaBrowser.Model.Dlna
playlistItem.VideoCodec = transcodingProfile.VideoCodec;
playlistItem.Protocol = transcodingProfile.Protocol;
playlistItem.AudioStreamIndex = audioStreamIndex;
- playlistItem.VideoProfile = transcodingProfile.VideoProfile;
List<ProfileCondition> videoTranscodingConditions = new List<ProfileCondition>();
foreach (CodecProfile i in options.Profile.CodecProfiles)
diff --git a/MediaBrowser.Model/Dlna/TranscodingProfile.cs b/MediaBrowser.Model/Dlna/TranscodingProfile.cs
index ad82d6fac..d9963eb75 100644
--- a/MediaBrowser.Model/Dlna/TranscodingProfile.cs
+++ b/MediaBrowser.Model/Dlna/TranscodingProfile.cs
@@ -29,9 +29,6 @@ namespace MediaBrowser.Model.Dlna
[XmlAttribute("transcodeSeekInfo")]
public TranscodeSeekInfo TranscodeSeekInfo { get; set; }
- [XmlAttribute("videoProfile")]
- public string VideoProfile { get; set; }
-
[XmlAttribute("context")]
public EncodingContext Context { get; set; }
diff --git a/MediaBrowser.Model/Drawing/ImageOutputFormat.cs b/MediaBrowser.Model/Drawing/ImageFormat.cs
index ec32f64f2..0172c9754 100644
--- a/MediaBrowser.Model/Drawing/ImageOutputFormat.cs
+++ b/MediaBrowser.Model/Drawing/ImageFormat.cs
@@ -4,7 +4,7 @@ namespace MediaBrowser.Model.Drawing
/// <summary>
/// Enum ImageOutputFormat
/// </summary>
- public enum ImageOutputFormat
+ public enum ImageFormat
{
/// <summary>
/// The BMP
diff --git a/MediaBrowser.Model/Drawing/ImageSize.cs b/MediaBrowser.Model/Drawing/ImageSize.cs
index 076e2ddbf..5ed6e7293 100644
--- a/MediaBrowser.Model/Drawing/ImageSize.cs
+++ b/MediaBrowser.Model/Drawing/ImageSize.cs
@@ -55,6 +55,12 @@ namespace MediaBrowser.Model.Drawing
ParseValue(value);
}
+ public ImageSize(int width, int height)
+ {
+ _width = width;
+ _height = height;
+ }
+
private void ParseValue(string value)
{
if (!string.IsNullOrEmpty(value))
diff --git a/MediaBrowser.Model/Dto/BaseItemDto.cs b/MediaBrowser.Model/Dto/BaseItemDto.cs
index a9f13374b..b83243ba8 100644
--- a/MediaBrowser.Model/Dto/BaseItemDto.cs
+++ b/MediaBrowser.Model/Dto/BaseItemDto.cs
@@ -64,7 +64,7 @@ namespace MediaBrowser.Model.Dto
public float? Metascore { get; set; }
- public bool IsUnidentified { get; set; }
+ public bool? IsUnidentified { get; set; }
public int? AnimeSeriesIndex { get; set; }
@@ -218,6 +218,12 @@ namespace MediaBrowser.Model.Dto
public long? RunTimeTicks { get; set; }
/// <summary>
+ /// Gets or sets the recursive unplayed item count.
+ /// </summary>
+ /// <value>The recursive unplayed item count.</value>
+ public int? RecursiveUnplayedItemCount { get; set; }
+
+ /// <summary>
/// Gets or sets the play access.
/// </summary>
/// <value>The play access.</value>
@@ -236,13 +242,6 @@ namespace MediaBrowser.Model.Dto
public int? ProductionYear { get; set; }
/// <summary>
- /// Gets or sets the recursive unplayed item count.
- /// </summary>
- /// <value>The recursive unplayed item count.</value>
- [Obsolete]
- public int? RecursiveUnplayedItemCount { get; set; }
-
- /// <summary>
/// Gets or sets the season count.
/// </summary>
/// <value>The season count.</value>
@@ -709,11 +708,6 @@ namespace MediaBrowser.Model.Dto
/// <value>The game count.</value>
public int? GameCount { get; set; }
/// <summary>
- /// Gets or sets the trailer count.
- /// </summary>
- /// <value>The trailer count.</value>
- public int? TrailerCount { get; set; }
- /// <summary>
/// Gets or sets the song count.
/// </summary>
/// <value>The song count.</value>
diff --git a/MediaBrowser.Model/Dto/DtoOptions.cs b/MediaBrowser.Model/Dto/DtoOptions.cs
new file mode 100644
index 000000000..069d71fce
--- /dev/null
+++ b/MediaBrowser.Model/Dto/DtoOptions.cs
@@ -0,0 +1,32 @@
+using MediaBrowser.Model.Entities;
+using MediaBrowser.Model.Querying;
+using System.Collections.Generic;
+
+namespace MediaBrowser.Model.Dto
+{
+ public class DtoOptions
+ {
+ public List<ItemFields> Fields { get; set; }
+ public List<ImageType> ImageTypes { get; set; }
+ public int ImageTypeLimit { get; set; }
+ public bool EnableImages { get; set; }
+
+ public DtoOptions()
+ {
+ Fields = new List<ItemFields>();
+ ImageTypes = new List<ImageType>();
+ ImageTypeLimit = int.MaxValue;
+ EnableImages = true;
+ }
+
+ public int GetImageLimit(ImageType type)
+ {
+ if (EnableImages && ImageTypes.Contains(type))
+ {
+ return ImageTypeLimit;
+ }
+
+ return 0;
+ }
+ }
+}
diff --git a/MediaBrowser.Model/Dto/ImageOptions.cs b/MediaBrowser.Model/Dto/ImageOptions.cs
index 037be4a87..8e35c1323 100644
--- a/MediaBrowser.Model/Dto/ImageOptions.cs
+++ b/MediaBrowser.Model/Dto/ImageOptions.cs
@@ -73,7 +73,7 @@ namespace MediaBrowser.Model.Dto
/// Gets or sets the format.
/// </summary>
/// <value>The format.</value>
- public ImageOutputFormat? Format { get; set; }
+ public ImageFormat? Format { get; set; }
/// <summary>
/// Gets or sets a value indicating whether [add played indicator].
diff --git a/MediaBrowser.Model/MediaBrowser.Model.csproj b/MediaBrowser.Model/MediaBrowser.Model.csproj
index b09f694c6..4825cb4cc 100644
--- a/MediaBrowser.Model/MediaBrowser.Model.csproj
+++ b/MediaBrowser.Model/MediaBrowser.Model.csproj
@@ -125,6 +125,7 @@
<Compile Include="Dlna\SubtitleDeliveryMethod.cs" />
<Compile Include="Dlna\SubtitleStreamInfo.cs" />
<Compile Include="Drawing\ImageOrientation.cs" />
+ <Compile Include="Dto\DtoOptions.cs" />
<Compile Include="Dto\IHasServerId.cs" />
<Compile Include="MediaInfo\LiveMediaInfoResult.cs" />
<Compile Include="Dto\MediaSourceType.cs" />
@@ -191,7 +192,7 @@
<Compile Include="Dlna\TranscodingProfile.cs" />
<Compile Include="Dlna\VideoOptions.cs" />
<Compile Include="Dlna\XmlAttribute.cs" />
- <Compile Include="Drawing\ImageOutputFormat.cs" />
+ <Compile Include="Drawing\ImageFormat.cs" />
<Compile Include="Drawing\ImageSize.cs" />
<Compile Include="Dto\BaseItemPerson.cs" />
<Compile Include="Dto\ChapterInfoDto.cs" />
@@ -367,7 +368,6 @@
<Compile Include="Sync\SyncJobQuery.cs" />
<Compile Include="Sync\SyncJobRequest.cs" />
<Compile Include="Sync\SyncJobStatus.cs" />
- <Compile Include="Sync\SyncLimitType.cs" />
<Compile Include="Sync\SyncQuality.cs" />
<Compile Include="Sync\SyncTarget.cs" />
<Compile Include="System\LogFile.cs" />
@@ -412,6 +412,7 @@
<Compile Include="Users\ForgotPasswordAction.cs" />
<Compile Include="Users\ForgotPasswordResult.cs" />
<Compile Include="Users\PinRedeemResult.cs" />
+ <Compile Include="Users\UserPolicy.cs" />
<None Include="Fody.targets" />
<None Include="FodyWeavers.xml" />
<None Include="MediaBrowser.Model.snk" />
diff --git a/MediaBrowser.Model/Querying/ItemFields.cs b/MediaBrowser.Model/Querying/ItemFields.cs
index 9ceca311c..a5a906f95 100644
--- a/MediaBrowser.Model/Querying/ItemFields.cs
+++ b/MediaBrowser.Model/Querying/ItemFields.cs
@@ -7,6 +7,11 @@ namespace MediaBrowser.Model.Querying
public enum ItemFields
{
/// <summary>
+ /// The alternate episode numbers
+ /// </summary>
+ AlternateEpisodeNumbers,
+
+ /// <summary>
/// The awards summary
/// </summary>
AwardSummary,
@@ -82,11 +87,21 @@ namespace MediaBrowser.Model.Querying
Keywords,
/// <summary>
+ /// The media source count
+ /// </summary>
+ MediaSourceCount,
+
+ /// <summary>
/// The media versions
/// </summary>
MediaSources,
/// <summary>
+ /// The metascore
+ /// </summary>
+ Metascore,
+
+ /// <summary>
/// The metadata settings
/// </summary>
Settings,
@@ -127,6 +142,11 @@ namespace MediaBrowser.Model.Querying
PrimaryImageAspectRatio,
/// <summary>
+ /// The original primary image aspect ratio
+ /// </summary>
+ OriginalPrimaryImageAspectRatio,
+
+ /// <summary>
/// The revenue
/// </summary>
Revenue,
@@ -142,6 +162,11 @@ namespace MediaBrowser.Model.Querying
ScreenshotImageTags,
/// <summary>
+ /// The series studio
+ /// </summary>
+ SeriesStudio,
+
+ /// <summary>
/// The soundtrack ids
/// </summary>
SoundtrackIds,
@@ -172,6 +197,11 @@ namespace MediaBrowser.Model.Querying
Tags,
/// <summary>
+ /// The vote count
+ /// </summary>
+ VoteCount,
+
+ /// <summary>
/// The TMDB collection name
/// </summary>
TmdbCollectionName,
diff --git a/MediaBrowser.Model/Querying/ItemQuery.cs b/MediaBrowser.Model/Querying/ItemQuery.cs
index 3969eedaa..0f929fa9b 100644
--- a/MediaBrowser.Model/Querying/ItemQuery.cs
+++ b/MediaBrowser.Model/Querying/ItemQuery.cs
@@ -97,7 +97,7 @@ namespace MediaBrowser.Model.Querying
/// </summary>
/// <value>The genres.</value>
public string[] AllGenres { get; set; }
-
+
/// <summary>
/// Limit results to items containing specific studios
/// </summary>
@@ -211,7 +211,7 @@ namespace MediaBrowser.Model.Querying
/// </summary>
/// <value>The max players.</value>
public int? MaxPlayers { get; set; }
-
+
/// <summary>
/// Gets or sets the name starts with or greater.
/// </summary>
@@ -223,7 +223,7 @@ namespace MediaBrowser.Model.Querying
/// </summary>
/// <value>The name starts with or greater.</value>
public string NameStartsWith { get; set; }
-
+
/// <summary>
/// Gets or sets the name starts with.
/// </summary>
@@ -267,7 +267,7 @@ namespace MediaBrowser.Model.Querying
public bool? CollapseBoxSetItems { get; set; }
public bool? IsPlayed { get; set; }
-
+
/// <summary>
/// Gets or sets the exclude location types.
/// </summary>
@@ -282,7 +282,11 @@ namespace MediaBrowser.Model.Querying
public DateTime? MinPremiereDate { get; set; }
public DateTime? MaxPremiereDate { get; set; }
-
+
+ public bool? EnableImages { get; set; }
+ public int? ImageTypeLimit { get; set; }
+ public ImageType[] EnableImageTypes { get; set; }
+
/// <summary>
/// Initializes a new instance of the <see cref="ItemQuery" /> class.
/// </summary>
@@ -290,16 +294,16 @@ namespace MediaBrowser.Model.Querying
{
LocationTypes = new LocationType[] { };
ExcludeLocationTypes = new LocationType[] { };
-
+
SortBy = new string[] { };
- Filters = new ItemFilter[] {};
+ Filters = new ItemFilter[] { };
- Fields = new ItemFields[] {};
+ Fields = new ItemFields[] { };
- MediaTypes = new string[] {};
+ MediaTypes = new string[] { };
- VideoTypes = new VideoType[] {};
+ VideoTypes = new VideoType[] { };
Genres = new string[] { };
Studios = new string[] { };
@@ -313,6 +317,7 @@ namespace MediaBrowser.Model.Querying
ImageTypes = new ImageType[] { };
AirDays = new DayOfWeek[] { };
SeriesStatuses = new SeriesStatus[] { };
+ EnableImageTypes = new ImageType[] { };
}
}
}
diff --git a/MediaBrowser.Model/Querying/ItemsByNameQuery.cs b/MediaBrowser.Model/Querying/ItemsByNameQuery.cs
index bef2f7aed..578f22f60 100644
--- a/MediaBrowser.Model/Querying/ItemsByNameQuery.cs
+++ b/MediaBrowser.Model/Querying/ItemsByNameQuery.cs
@@ -101,7 +101,22 @@ namespace MediaBrowser.Model.Querying
/// </summary>
/// <value><c>null</c> if [is played] contains no value, <c>true</c> if [is played]; otherwise, <c>false</c>.</value>
public bool? IsPlayed { 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; }
+
/// <summary>
/// Initializes a new instance of the <see cref="ItemsByNameQuery" /> class.
/// </summary>
@@ -115,6 +130,7 @@ namespace MediaBrowser.Model.Querying
SortBy = new string[] { };
ExcludeItemTypes = new string[] { };
IncludeItemTypes = new string[] { };
+ EnableImageTypes = new ImageType[] { };
}
}
}
diff --git a/MediaBrowser.Model/Querying/LatestItemsQuery.cs b/MediaBrowser.Model/Querying/LatestItemsQuery.cs
index ccf5ab087..a8086e5cd 100644
--- a/MediaBrowser.Model/Querying/LatestItemsQuery.cs
+++ b/MediaBrowser.Model/Querying/LatestItemsQuery.cs
@@ -1,4 +1,6 @@

+using MediaBrowser.Model.Entities;
+
namespace MediaBrowser.Model.Querying
{
public class LatestItemsQuery
@@ -50,5 +52,25 @@ 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/NextUpQuery.cs b/MediaBrowser.Model/Querying/NextUpQuery.cs
index 0e9c9882f..b5f50bde0 100644
--- a/MediaBrowser.Model/Querying/NextUpQuery.cs
+++ b/MediaBrowser.Model/Querying/NextUpQuery.cs
@@ -1,4 +1,5 @@
-
+using MediaBrowser.Model.Entities;
+
namespace MediaBrowser.Model.Querying
{
public class NextUpQuery
@@ -38,5 +39,25 @@ namespace MediaBrowser.Model.Querying
/// </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 NextUpQuery()
+ {
+ EnableImageTypes = new ImageType[] {};
+ }
}
}
diff --git a/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs b/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs
index e5a875e88..665b980eb 100644
--- a/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs
+++ b/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs
@@ -1,4 +1,6 @@
-namespace MediaBrowser.Model.Querying
+using MediaBrowser.Model.Entities;
+
+namespace MediaBrowser.Model.Querying
{
public class UpcomingEpisodesQuery
{
@@ -31,5 +33,25 @@
/// </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[] {};
+ }
}
} \ No newline at end of file
diff --git a/MediaBrowser.Model/Session/ClientCapabilities.cs b/MediaBrowser.Model/Session/ClientCapabilities.cs
index cbc1501d2..fc0d3a1fb 100644
--- a/MediaBrowser.Model/Session/ClientCapabilities.cs
+++ b/MediaBrowser.Model/Session/ClientCapabilities.cs
@@ -13,11 +13,13 @@ namespace MediaBrowser.Model.Session
public string MessageCallbackUrl { get; set; }
public bool SupportsContentUploading { get; set; }
+ public bool SupportsDeviceId { get; set; }
public ClientCapabilities()
{
PlayableMediaTypes = new List<string>();
SupportedCommands = new List<string>();
+ SupportsDeviceId = true;
}
}
} \ No newline at end of file
diff --git a/MediaBrowser.Model/Sync/SyncJob.cs b/MediaBrowser.Model/Sync/SyncJob.cs
index f69fccae5..db67f3cbb 100644
--- a/MediaBrowser.Model/Sync/SyncJob.cs
+++ b/MediaBrowser.Model/Sync/SyncJob.cs
@@ -46,26 +46,26 @@ namespace MediaBrowser.Model.Sync
/// <value><c>true</c> if [unwatched only]; otherwise, <c>false</c>.</value>
public bool UnwatchedOnly { get; set; }
/// <summary>
- /// Gets or sets the limit.
+ /// Gets or sets a value indicating whether [remove when watched].
/// </summary>
- /// <value>The limit.</value>
- public long? Limit { get; set; }
+ /// <value><c>true</c> if [remove when watched]; otherwise, <c>false</c>.</value>
+ public bool RemoveWhenWatched { get; set; }
/// <summary>
- /// Gets or sets the type of the limit.
+ /// Gets or sets a value indicating whether [synchronize new content].
/// </summary>
- /// <value>The type of the limit.</value>
- public SyncLimitType? LimitType { get; set; }
+ /// <value><c>true</c> if [synchronize new content]; otherwise, <c>false</c>.</value>
+ public bool SyncNewContent { 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 requested item ids.
/// </summary>
/// <value>The requested item ids.</value>
public List<string> RequestedItemIds { get; set; }
/// <summary>
- /// Gets or sets a value indicating whether this instance is dynamic.
- /// </summary>
- /// <value><c>true</c> if this instance is dynamic; otherwise, <c>false</c>.</value>
- public bool IsDynamic { get; set; }
- /// <summary>
/// Gets or sets the date created.
/// </summary>
/// <value>The date created.</value>
diff --git a/MediaBrowser.Model/Sync/SyncJobRequest.cs b/MediaBrowser.Model/Sync/SyncJobRequest.cs
index 987f396e4..4e044d62a 100644
--- a/MediaBrowser.Model/Sync/SyncJobRequest.cs
+++ b/MediaBrowser.Model/Sync/SyncJobRequest.cs
@@ -35,19 +35,25 @@ namespace MediaBrowser.Model.Sync
/// <value><c>true</c> if [unwatched only]; otherwise, <c>false</c>.</value>
public bool UnwatchedOnly { get; set; }
/// <summary>
- /// Gets or sets the limit.
+ /// Gets or sets a value indicating whether [remove when watched].
/// </summary>
- /// <value>The limit.</value>
- public long? Limit { get; set; }
+ /// <value><c>true</c> if [remove when watched]; otherwise, <c>false</c>.</value>
+ public bool RemoveWhenWatched { get; set; }
+ /// <summary>
+ /// Gets or sets a value indicating whether [synchronize new content].
+ /// </summary>
+ /// <value><c>true</c> if [synchronize new content]; otherwise, <c>false</c>.</value>
+ public bool SyncNewContent { get; set; }
/// <summary>
- /// Gets or sets the type of the limit.
+ /// Gets or sets the limit.
/// </summary>
- /// <value>The type of the limit.</value>
- public SyncLimitType? LimitType { get; set; }
+ /// <value>The limit.</value>
+ public int? ItemLimit { get; set; }
public SyncJobRequest()
{
ItemIds = new List<string>();
+ SyncNewContent = true;
}
}
}
diff --git a/MediaBrowser.Model/Sync/SyncJobStatus.cs b/MediaBrowser.Model/Sync/SyncJobStatus.cs
index ebe375ad8..42af96509 100644
--- a/MediaBrowser.Model/Sync/SyncJobStatus.cs
+++ b/MediaBrowser.Model/Sync/SyncJobStatus.cs
@@ -4,10 +4,9 @@ namespace MediaBrowser.Model.Sync
public enum SyncJobStatus
{
Queued = 0,
- Transcoding = 1,
- TranscodingFailed = 2,
- Transferring = 3,
- Completed = 4,
- Cancelled = 5
+ Converting = 1,
+ Transferring = 2,
+ Completed = 3,
+ Cancelled = 4
}
}
diff --git a/MediaBrowser.Model/Sync/SyncLimitType.cs b/MediaBrowser.Model/Sync/SyncLimitType.cs
deleted file mode 100644
index d20f9e33d..000000000
--- a/MediaBrowser.Model/Sync/SyncLimitType.cs
+++ /dev/null
@@ -1,7 +0,0 @@
-namespace MediaBrowser.Model.Sync
-{
- public enum SyncLimitType
- {
- ItemCount = 0
- }
-} \ No newline at end of file
diff --git a/MediaBrowser.Model/Users/UserPolicy.cs b/MediaBrowser.Model/Users/UserPolicy.cs
new file mode 100644
index 000000000..02d177747
--- /dev/null
+++ b/MediaBrowser.Model/Users/UserPolicy.cs
@@ -0,0 +1,11 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace MediaBrowser.Model.Users
+{
+ public class UserPolicy
+ {
+ }
+}