diff options
Diffstat (limited to 'MediaBrowser.Model')
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<SyncJob>.</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 + { + } +} |
