Post GPL cleanup
This commit is contained in:
parent
c6618d0a5f
commit
340a2c6512
|
@ -2,7 +2,6 @@
|
|||
using MediaBrowser.Common.Net;
|
||||
using MediaBrowser.Controller;
|
||||
using MediaBrowser.Controller.Configuration;
|
||||
using MediaBrowser.Controller.Connect;
|
||||
using MediaBrowser.Controller.Drawing;
|
||||
using MediaBrowser.Controller.Dto;
|
||||
using MediaBrowser.Controller.Entities;
|
||||
|
|
|
@ -55,12 +55,11 @@ namespace MediaBrowser.Api
|
|||
return Request.Headers[name];
|
||||
}
|
||||
|
||||
private static readonly string[] EmptyStringArray = Array.Empty<string>();
|
||||
public static string[] SplitValue(string value, char delim)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(value))
|
||||
{
|
||||
return EmptyStringArray;
|
||||
return Array.Empty<string>();
|
||||
}
|
||||
|
||||
return value.Split(new[] { delim }, StringSplitOptions.RemoveEmptyEntries);
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
using MediaBrowser.Common.Extensions;
|
||||
using MediaBrowser.Controller.Authentication;
|
||||
using MediaBrowser.Common.Extensions;
|
||||
using MediaBrowser.Common.Net;
|
||||
using MediaBrowser.Controller.Configuration;
|
||||
using MediaBrowser.Controller.Devices;
|
||||
|
@ -10,11 +11,9 @@ using MediaBrowser.Model.Connect;
|
|||
using MediaBrowser.Model.Dto;
|
||||
using MediaBrowser.Model.Users;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
using MediaBrowser.Model.Services;
|
||||
using MediaBrowser.Controller.Authentication;
|
||||
|
||||
namespace MediaBrowser.Api
|
||||
{
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using System.Threading.Tasks;
|
||||
using MediaBrowser.Controller.Entities;
|
||||
using MediaBrowser.Model.Users;
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using MediaBrowser.Model.Entities;
|
||||
|
||||
namespace MediaBrowser.Controller.Chapters
|
||||
|
@ -9,12 +8,6 @@ namespace MediaBrowser.Controller.Chapters
|
|||
/// </summary>
|
||||
public interface IChapterManager
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets the chapters.
|
||||
/// </summary>
|
||||
/// <param name="itemId">The item identifier.</param>
|
||||
/// <returns>List{ChapterInfo}.</returns>
|
||||
|
||||
/// <summary>
|
||||
/// Saves the chapters.
|
||||
/// </summary>
|
||||
|
|
|
@ -20,8 +20,8 @@ namespace MediaBrowser.Controller.Collections
|
|||
public CollectionCreationOptions()
|
||||
{
|
||||
ProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
ItemIdList = new string[] {};
|
||||
UserIds = new Guid[] {};
|
||||
ItemIdList = Array.Empty<string>();
|
||||
UserIds = Array.Empty<Guid>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,45 +0,0 @@
|
|||
using MediaBrowser.Controller.Entities;
|
||||
using MediaBrowser.Model.Connect;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MediaBrowser.Controller.Connect
|
||||
{
|
||||
public interface IConnectManager
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets the wan API address.
|
||||
/// </summary>
|
||||
/// <value>The wan API address.</value>
|
||||
string WanApiAddress { get; }
|
||||
|
||||
/// <summary>
|
||||
/// Links the user.
|
||||
/// </summary>
|
||||
/// <param name="userId">The user identifier.</param>
|
||||
/// <param name="connectUsername">The connect username.</param>
|
||||
/// <returns>Task.</returns>
|
||||
Task<UserLinkResult> LinkUser(string userId, string connectUsername);
|
||||
|
||||
/// <summary>
|
||||
/// Removes the link.
|
||||
/// </summary>
|
||||
/// <param name="userId">The user identifier.</param>
|
||||
/// <returns>Task.</returns>
|
||||
Task RemoveConnect(string userId);
|
||||
|
||||
User GetUserFromExchangeToken(string token);
|
||||
|
||||
/// <summary>
|
||||
/// Authenticates the specified username.
|
||||
/// </summary>
|
||||
Task<ConnectAuthenticationResult> Authenticate(string username, string password, string passwordMd5);
|
||||
|
||||
/// <summary>
|
||||
/// Determines whether [is authorization token valid] [the specified token].
|
||||
/// </summary>
|
||||
/// <param name="token">The token.</param>
|
||||
/// <returns><c>true</c> if [is authorization token valid] [the specified token]; otherwise, <c>false</c>.</returns>
|
||||
bool IsAuthorizationTokenValid(string token);
|
||||
}
|
||||
}
|
|
@ -2,7 +2,6 @@
|
|||
using MediaBrowser.Model.Dto;
|
||||
using MediaBrowser.Model.Querying;
|
||||
using System.Collections.Generic;
|
||||
using MediaBrowser.Controller.Sync;
|
||||
|
||||
namespace MediaBrowser.Controller.Dto
|
||||
{
|
||||
|
|
|
@ -20,7 +20,7 @@ namespace MediaBrowser.Controller.Entities
|
|||
{
|
||||
public AggregateFolder()
|
||||
{
|
||||
PhysicalLocationsList = new string[] { };
|
||||
PhysicalLocationsList = Array.Empty<string>();
|
||||
}
|
||||
|
||||
[IgnoreDataMember]
|
||||
|
|
|
@ -2,13 +2,8 @@
|
|||
using MediaBrowser.Model.Configuration;
|
||||
using MediaBrowser.Model.Dto;
|
||||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Model.MediaInfo;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using MediaBrowser.Common.Extensions;
|
||||
using MediaBrowser.Controller.Persistence;
|
||||
using MediaBrowser.Model.Serialization;
|
||||
|
||||
|
@ -36,8 +31,8 @@ namespace MediaBrowser.Controller.Entities.Audio
|
|||
|
||||
public Audio()
|
||||
{
|
||||
Artists = new string[] {};
|
||||
AlbumArtists = new string[] {};
|
||||
Artists = Array.Empty<string>();
|
||||
AlbumArtists = Array.Empty<string>();
|
||||
}
|
||||
|
||||
public override double GetDefaultPrimaryImageAspectRatio()
|
||||
|
|
|
@ -23,8 +23,8 @@ namespace MediaBrowser.Controller.Entities.Audio
|
|||
|
||||
public MusicAlbum()
|
||||
{
|
||||
Artists = new string[] {};
|
||||
AlbumArtists = new string[] {};
|
||||
Artists = Array.Empty<string>();
|
||||
AlbumArtists = Array.Empty<string>();
|
||||
}
|
||||
|
||||
[IgnoreDataMember]
|
||||
|
|
|
@ -129,13 +129,12 @@ namespace MediaBrowser.Controller.Entities.Audio
|
|||
return base.IsSaveLocalMetadataEnabled();
|
||||
}
|
||||
|
||||
private readonly Task _cachedTask = Task.FromResult(true);
|
||||
protected override Task ValidateChildrenInternal(IProgress<double> progress, CancellationToken cancellationToken, bool recursive, bool refreshChildMetadata, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService)
|
||||
{
|
||||
if (IsAccessedByName)
|
||||
{
|
||||
// Should never get in here anyway
|
||||
return _cachedTask;
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
return base.ValidateChildrenInternal(progress, cancellationToken, recursive, refreshChildMetadata, refreshOptions, directoryService);
|
||||
|
|
|
@ -35,24 +35,24 @@ namespace MediaBrowser.Controller.Entities
|
|||
/// </summary>
|
||||
public abstract class BaseItem : IHasProviderIds, IHasLookupInfo<ItemLookupInfo>
|
||||
{
|
||||
protected static MetadataFields[] EmptyMetadataFieldsArray = new MetadataFields[] { };
|
||||
protected static MediaUrl[] EmptyMediaUrlArray = new MediaUrl[] { };
|
||||
protected static ItemImageInfo[] EmptyItemImageInfoArray = new ItemImageInfo[] { };
|
||||
public static readonly LinkedChild[] EmptyLinkedChildArray = new LinkedChild[] { };
|
||||
protected static MetadataFields[] EmptyMetadataFieldsArray = Array.Empty<MetadataFields>();
|
||||
protected static MediaUrl[] EmptyMediaUrlArray = Array.Empty<MediaUrl>();
|
||||
protected static ItemImageInfo[] EmptyItemImageInfoArray = Array.Empty<ItemImageInfo>();
|
||||
public static readonly LinkedChild[] EmptyLinkedChildArray = Array.Empty<LinkedChild>();
|
||||
|
||||
protected BaseItem()
|
||||
{
|
||||
ThemeSongIds = new Guid[] {};
|
||||
ThemeVideoIds = new Guid[] {};
|
||||
Tags = new string[] {};
|
||||
Genres = new string[] {};
|
||||
Studios = new string[] {};
|
||||
ThemeSongIds = Array.Empty<Guid>();
|
||||
ThemeVideoIds = Array.Empty<Guid>();
|
||||
Tags = Array.Empty<string>();
|
||||
Genres = Array.Empty<string>();
|
||||
Studios = Array.Empty<string>();
|
||||
ProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
LockedFields = EmptyMetadataFieldsArray;
|
||||
ImageInfos = EmptyItemImageInfoArray;
|
||||
ProductionLocations = new string[] {};
|
||||
RemoteTrailers = new MediaUrl[] { };
|
||||
ExtraIds = new Guid[] {};
|
||||
ProductionLocations = Array.Empty<string>();
|
||||
RemoteTrailers = Array.Empty<MediaUrl>();
|
||||
ExtraIds = Array.Empty<Guid>();
|
||||
}
|
||||
|
||||
public static readonly char[] SlugReplaceChars = { '?', '/', '&' };
|
||||
|
@ -62,7 +62,6 @@ namespace MediaBrowser.Controller.Entities
|
|||
/// The supported image extensions
|
||||
/// </summary>
|
||||
public static readonly string[] SupportedImageExtensions = { ".png", ".jpg", ".jpeg", ".tbn", ".gif" };
|
||||
public static readonly List<string> SupportedImageExtensionsList = SupportedImageExtensions.ToList();
|
||||
|
||||
/// <summary>
|
||||
/// The trailer folder name
|
||||
|
@ -2895,6 +2894,10 @@ namespace MediaBrowser.Controller.Entities
|
|||
return ThemeVideoIds.Select(LibraryManager.GetItemById).Where(i => i.ExtraType.Equals(Model.Entities.ExtraType.ThemeVideo)).OrderBy(i => i.SortName);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the remote trailers.
|
||||
/// </summary>
|
||||
/// <value>The remote trailers.</value>
|
||||
public MediaUrl[] RemoteTrailers { get; set; }
|
||||
|
||||
public IEnumerable<BaseItem> GetExtras()
|
||||
|
@ -2913,21 +2916,24 @@ namespace MediaBrowser.Controller.Entities
|
|||
}
|
||||
|
||||
public virtual bool IsHD {
|
||||
get{
|
||||
get
|
||||
{
|
||||
return Height >= 720;
|
||||
}
|
||||
}
|
||||
}
|
||||
public bool IsShortcut{ get; set;}
|
||||
public string ShortcutPath{ get; set;}
|
||||
public int Width { get; set; }
|
||||
public int Height { get; set; }
|
||||
public Guid[] ExtraIds { get; set; }
|
||||
public virtual long GetRunTimeTicksForPlayState() {
|
||||
public virtual long GetRunTimeTicksForPlayState()
|
||||
{
|
||||
return RunTimeTicks ?? 0;
|
||||
}
|
||||
// what does this do?
|
||||
public static ExtraType[] DisplayExtraTypes = new[] {Model.Entities.ExtraType.ThemeSong, Model.Entities.ExtraType.ThemeVideo };
|
||||
public virtual bool SupportsExternalTransfer {
|
||||
public virtual bool SupportsExternalTransfer
|
||||
{
|
||||
get {
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -31,18 +31,10 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
public CollectionFolder()
|
||||
{
|
||||
PhysicalLocationsList = new string[] { };
|
||||
PhysicalFolderIds = new Guid[] { };
|
||||
PhysicalLocationsList = Array.Empty<string>();
|
||||
PhysicalFolderIds = Array.Empty<Guid>();
|
||||
}
|
||||
|
||||
//public override double? GetDefaultPrimaryImageAspectRatio()
|
||||
//{
|
||||
// double value = 16;
|
||||
// value /= 9;
|
||||
|
||||
// return value;
|
||||
//}
|
||||
|
||||
[IgnoreDataMember]
|
||||
public override bool SupportsPlayedStatus
|
||||
{
|
||||
|
@ -339,7 +331,7 @@ namespace MediaBrowser.Controller.Entities
|
|||
/// <returns>Task.</returns>
|
||||
protected override Task ValidateChildrenInternal(IProgress<double> progress, CancellationToken cancellationToken, bool recursive, bool refreshChildMetadata, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService)
|
||||
{
|
||||
return Task.FromResult(true);
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -12,10 +12,10 @@ namespace MediaBrowser.Controller.Entities
|
|||
{
|
||||
public Game()
|
||||
{
|
||||
MultiPartGameFiles = new string[] {};
|
||||
MultiPartGameFiles = Array.Empty<string>();
|
||||
RemoteTrailers = EmptyMediaUrlArray;
|
||||
LocalTrailerIds = new Guid[] {};
|
||||
RemoteTrailerIds = new Guid[] {};
|
||||
LocalTrailerIds = Array.Empty<Guid>();
|
||||
RemoteTrailerIds = Array.Empty<Guid>();
|
||||
}
|
||||
|
||||
public Guid[] LocalTrailerIds { get; set; }
|
||||
|
@ -38,12 +38,6 @@ namespace MediaBrowser.Controller.Entities
|
|||
get { return false; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the remote trailers.
|
||||
/// </summary>
|
||||
/// <value>The remote trailers.</value>
|
||||
public MediaUrl[] RemoteTrailers { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets the type of the media.
|
||||
/// </summary>
|
||||
|
|
|
@ -4,7 +4,6 @@ using System.Collections.Generic;
|
|||
using MediaBrowser.Model.Configuration;
|
||||
using System.Linq;
|
||||
using MediaBrowser.Controller.Dto;
|
||||
using MediaBrowser.Model.Querying;
|
||||
|
||||
namespace MediaBrowser.Controller.Entities
|
||||
{
|
||||
|
@ -48,7 +47,6 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
public string PresentationUniqueKey { get; set; }
|
||||
public string Path { get; set; }
|
||||
public string PathNotStartsWith { get; set; }
|
||||
public string Name { get; set; }
|
||||
|
||||
public string Person { get; set; }
|
||||
|
@ -160,8 +158,6 @@ namespace MediaBrowser.Controller.Entities
|
|||
public bool EnableGroupByMetadataKey { get; set; }
|
||||
public bool? HasChapterImages { get; set; }
|
||||
|
||||
// why tuple vs value tuple?
|
||||
//public Tuple<string, SortOrder>[] OrderBy { get; set; }
|
||||
public ValueTuple<string, SortOrder>[] OrderBy { get; set; }
|
||||
|
||||
public DateTime? MinDateCreated { get; set; }
|
||||
|
@ -180,44 +176,44 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
public InternalItemsQuery()
|
||||
{
|
||||
AlbumArtistIds = new Guid[] {};
|
||||
AlbumIds = new Guid[] {};
|
||||
AncestorIds = new Guid[] {};
|
||||
ArtistIds = new Guid[] {};
|
||||
BlockUnratedItems = new UnratedItem[] { };
|
||||
BoxSetLibraryFolders = new Guid[] {};
|
||||
ChannelIds = new Guid[] {};
|
||||
ContributingArtistIds = new Guid[] {};
|
||||
AlbumArtistIds = Array.Empty<Guid>();
|
||||
AlbumIds = Array.Empty<Guid>();
|
||||
AncestorIds = Array.Empty<Guid>();
|
||||
ArtistIds = Array.Empty<Guid>();
|
||||
BlockUnratedItems = Array.Empty<UnratedItem>();
|
||||
BoxSetLibraryFolders = Array.Empty<Guid>();
|
||||
ChannelIds = Array.Empty<Guid>();
|
||||
ContributingArtistIds = Array.Empty<Guid>();
|
||||
DtoOptions = new DtoOptions();
|
||||
EnableTotalRecordCount = true;
|
||||
ExcludeArtistIds = new Guid[] {};
|
||||
ExcludeInheritedTags = new string[] {};
|
||||
ExcludeItemIds = new Guid[] {};
|
||||
ExcludeItemTypes = new string[] {};
|
||||
ExcludeArtistIds = Array.Empty<Guid>();
|
||||
ExcludeInheritedTags = Array.Empty<string>();
|
||||
ExcludeItemIds = Array.Empty<Guid>();
|
||||
ExcludeItemTypes = Array.Empty<string>();
|
||||
ExcludeProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
ExcludeTags = new string[] {};
|
||||
GenreIds = new Guid[] {};
|
||||
Genres = new string[] {};
|
||||
ExcludeTags = Array.Empty<string>();
|
||||
GenreIds = Array.Empty<Guid>();
|
||||
Genres = Array.Empty<string>();
|
||||
GroupByPresentationUniqueKey = true;
|
||||
HasAnyProviderId = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
ImageTypes = new ImageType[] { };
|
||||
IncludeItemTypes = new string[] {};
|
||||
ItemIds = new Guid[] {};
|
||||
MediaTypes = new string[] {};
|
||||
ImageTypes = Array.Empty<ImageType>();
|
||||
IncludeItemTypes = Array.Empty<string>();
|
||||
ItemIds = Array.Empty<Guid>();
|
||||
MediaTypes = Array.Empty<string>();
|
||||
MinSimilarityScore = 20;
|
||||
OfficialRatings = new string[] {};
|
||||
OfficialRatings = Array.Empty<string>();
|
||||
OrderBy = Array.Empty<ValueTuple<string, SortOrder>>();
|
||||
PersonIds = new Guid[] {};
|
||||
PersonTypes = new string[] {};
|
||||
PresetViews = new string[] {};
|
||||
SeriesStatuses = new SeriesStatus[] { };
|
||||
SourceTypes = new SourceType[] { };
|
||||
StudioIds = new Guid[] {};
|
||||
Tags = new string[] {};
|
||||
TopParentIds = new Guid[] {};
|
||||
TrailerTypes = new TrailerType[] { };
|
||||
VideoTypes = new VideoType[] { };
|
||||
Years = new int[] { };
|
||||
PersonIds = Array.Empty<Guid>();
|
||||
PersonTypes = Array.Empty<string>();
|
||||
PresetViews = Array.Empty<string>();
|
||||
SeriesStatuses = Array.Empty<SeriesStatus>();
|
||||
SourceTypes = Array.Empty<SourceType>();
|
||||
StudioIds = Array.Empty<Guid>();
|
||||
Tags = Array.Empty<string>();
|
||||
TopParentIds = Array.Empty<Guid>();
|
||||
TrailerTypes = Array.Empty<TrailerType>();
|
||||
VideoTypes = Array.Empty<VideoType>();
|
||||
Years = Array.Empty<int>();
|
||||
}
|
||||
|
||||
public InternalItemsQuery(User user)
|
||||
|
|
|
@ -14,8 +14,8 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
public InternalPeopleQuery()
|
||||
{
|
||||
PersonTypes = new string[] { };
|
||||
ExcludePersonTypes = new string[] { };
|
||||
PersonTypes = Array.Empty<string>();
|
||||
ExcludePersonTypes = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -19,8 +19,8 @@ namespace MediaBrowser.Controller.Entities.Movies
|
|||
public BoxSet()
|
||||
{
|
||||
RemoteTrailers = EmptyMediaUrlArray;
|
||||
LocalTrailerIds = new Guid[] { };
|
||||
RemoteTrailerIds = new Guid[] { };
|
||||
LocalTrailerIds = Array.Empty<Guid>();
|
||||
RemoteTrailerIds = Array.Empty<Guid>();
|
||||
|
||||
DisplayOrder = ItemSortBy.PremiereDate;
|
||||
}
|
||||
|
@ -52,12 +52,6 @@ namespace MediaBrowser.Controller.Entities.Movies
|
|||
public Guid[] LocalTrailerIds { get; set; }
|
||||
public Guid[] RemoteTrailerIds { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the remote trailers.
|
||||
/// </summary>
|
||||
/// <value>The remote trailers.</value>
|
||||
public MediaUrl[] RemoteTrailers { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the display order.
|
||||
/// </summary>
|
||||
|
@ -70,12 +64,7 @@ namespace MediaBrowser.Controller.Entities.Movies
|
|||
}
|
||||
|
||||
public override double GetDefaultPrimaryImageAspectRatio()
|
||||
{
|
||||
double value = 2;
|
||||
value /= 3;
|
||||
|
||||
return value;
|
||||
}
|
||||
=> 2 / 3;
|
||||
|
||||
public override UnratedItem GetBlockUnratedType()
|
||||
{
|
||||
|
@ -254,7 +243,7 @@ namespace MediaBrowser.Controller.Entities.Movies
|
|||
return FlattenItems(boxset.GetLinkedChildren(), expandedFolders);
|
||||
}
|
||||
|
||||
return new BaseItem[] { };
|
||||
return Array.Empty<BaseItem>();
|
||||
}
|
||||
|
||||
return new[] { item };
|
||||
|
|
|
@ -6,8 +6,6 @@ using System.Collections.Generic;
|
|||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
using MediaBrowser.Controller.IO;
|
||||
using MediaBrowser.Model.IO;
|
||||
using MediaBrowser.Model.Providers;
|
||||
using MediaBrowser.Model.Serialization;
|
||||
|
@ -32,8 +30,6 @@ namespace MediaBrowser.Controller.Entities.Movies
|
|||
public Guid[] LocalTrailerIds { get; set; }
|
||||
public Guid[] RemoteTrailerIds { get; set; }
|
||||
|
||||
public MediaUrl[] RemoteTrailers { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name of the TMDB collection.
|
||||
/// </summary>
|
||||
|
@ -55,10 +51,7 @@ namespace MediaBrowser.Controller.Entities.Movies
|
|||
return 0;
|
||||
}
|
||||
|
||||
double value = 2;
|
||||
value /= 3;
|
||||
|
||||
return value;
|
||||
return 2 / 3;
|
||||
}
|
||||
|
||||
protected override async Task<bool> RefreshedOwnedItems(MetadataRefreshOptions options, List<FileSystemMetadata> fileSystemChildren, CancellationToken cancellationToken)
|
||||
|
|
|
@ -14,7 +14,7 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
public MusicVideo()
|
||||
{
|
||||
Artists = new string[] {};
|
||||
Artists = Array.Empty<string>();
|
||||
}
|
||||
|
||||
[IgnoreDataMember]
|
||||
|
|
|
@ -58,6 +58,7 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
public override double GetDefaultPrimaryImageAspectRatio()
|
||||
{
|
||||
// REVIEW: @bond
|
||||
if (Width.HasValue && Height.HasValue)
|
||||
{
|
||||
double width = Width.Value;
|
||||
|
@ -85,8 +86,8 @@ namespace MediaBrowser.Controller.Entities
|
|||
return base.GetDefaultPrimaryImageAspectRatio();
|
||||
}
|
||||
|
||||
public int? Width { get; set; }
|
||||
public int? Height { get; set; }
|
||||
public new int? Width { get; set; }
|
||||
public new int? Height { get; set; }
|
||||
public string CameraMake { get; set; }
|
||||
public string CameraModel { get; set; }
|
||||
public string Software { get; set; }
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
using MediaBrowser.Controller.Providers;
|
||||
using MediaBrowser.Controller.Providers;
|
||||
using MediaBrowser.Model.Configuration;
|
||||
using MediaBrowser.Model.Entities;
|
||||
using System;
|
||||
|
@ -19,13 +19,12 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||
public Episode()
|
||||
{
|
||||
RemoteTrailers = EmptyMediaUrlArray;
|
||||
LocalTrailerIds = new Guid[] {};
|
||||
RemoteTrailerIds = new Guid[] {};
|
||||
LocalTrailerIds = Array.Empty<Guid>();
|
||||
RemoteTrailerIds = Array.Empty<Guid>();
|
||||
}
|
||||
|
||||
public Guid[] LocalTrailerIds { get; set; }
|
||||
public Guid[] RemoteTrailerIds { get; set; }
|
||||
public MediaUrl[] RemoteTrailers { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets the season in which it aired.
|
||||
|
@ -112,10 +111,7 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||
return 0;
|
||||
}
|
||||
|
||||
double value = 16;
|
||||
value /= 9;
|
||||
|
||||
return value;
|
||||
return 16 / 9;
|
||||
}
|
||||
|
||||
public override List<string> GetUserDataKeys()
|
||||
|
|
|
@ -102,10 +102,11 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||
get
|
||||
{
|
||||
var seriesId = SeriesId;
|
||||
if (seriesId.Equals(Guid.Empty)) {
|
||||
if (seriesId == Guid.Empty)
|
||||
{
|
||||
seriesId = FindSeriesId();
|
||||
}
|
||||
return !seriesId.Equals(Guid.Empty) ? (LibraryManager.GetItemById(seriesId) as Series) : null;
|
||||
return seriesId == Guid.Empty ? null : (LibraryManager.GetItemById(seriesId) as Series);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -227,7 +228,7 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||
public Guid FindSeriesId()
|
||||
{
|
||||
var series = FindParent<Series>();
|
||||
return series == null ? Guid.Empty: series.Id;
|
||||
return series == null ? Guid.Empty : series.Id;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -23,9 +23,9 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||
public Series()
|
||||
{
|
||||
RemoteTrailers = EmptyMediaUrlArray;
|
||||
LocalTrailerIds = new Guid[] {};
|
||||
RemoteTrailerIds = new Guid[] {};
|
||||
AirDays = new DayOfWeek[] { };
|
||||
LocalTrailerIds = Array.Empty<Guid>();
|
||||
RemoteTrailerIds = Array.Empty<Guid>();
|
||||
AirDays = Array.Empty<DayOfWeek>();
|
||||
}
|
||||
|
||||
public DayOfWeek[] AirDays { get; set; }
|
||||
|
@ -73,8 +73,6 @@ namespace MediaBrowser.Controller.Entities.TV
|
|||
public Guid[] LocalTrailerIds { get; set; }
|
||||
public Guid[] RemoteTrailerIds { get; set; }
|
||||
|
||||
public MediaUrl[] RemoteTrailers { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// airdate, dvd or absolute
|
||||
/// </summary>
|
||||
|
|
|
@ -15,18 +15,13 @@ namespace MediaBrowser.Controller.Entities
|
|||
{
|
||||
public Trailer()
|
||||
{
|
||||
TrailerTypes = new TrailerType[] { };
|
||||
TrailerTypes = Array.Empty<TrailerType>();
|
||||
}
|
||||
|
||||
public TrailerType[] TrailerTypes { get; set; }
|
||||
|
||||
public override double GetDefaultPrimaryImageAspectRatio()
|
||||
{
|
||||
double value = 2;
|
||||
value /= 3;
|
||||
|
||||
return value;
|
||||
}
|
||||
=> 2 / 3;
|
||||
|
||||
public override UnratedItem GetBlockUnratedType()
|
||||
{
|
||||
|
|
|
@ -1,21 +1,18 @@
|
|||
using MediaBrowser.Controller.Playlists;
|
||||
using MediaBrowser.Controller.TV;
|
||||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Model.Querying;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MediaBrowser.Model.Serialization;
|
||||
using System.Threading.Tasks;
|
||||
using MediaBrowser.Controller.Dto;
|
||||
using MediaBrowser.Controller.Collections;
|
||||
|
||||
namespace MediaBrowser.Controller.Entities
|
||||
{
|
||||
public class UserView : Folder, IHasCollectionType
|
||||
{
|
||||
public string ViewType { get; set; }
|
||||
public Guid DisplayParentId { get; set; }
|
||||
public new Guid DisplayParentId { get; set; }
|
||||
|
||||
public Guid? UserId { get; set; }
|
||||
|
||||
|
@ -68,14 +65,6 @@ namespace MediaBrowser.Controller.Entities
|
|||
}
|
||||
}
|
||||
|
||||
//public override double? GetDefaultPrimaryImageAspectRatio()
|
||||
//{
|
||||
// double value = 16;
|
||||
// value /= 9;
|
||||
|
||||
// return value;
|
||||
//}
|
||||
|
||||
public override int GetChildCount(User user)
|
||||
{
|
||||
return GetChildren(user, true).Count;
|
||||
|
@ -161,8 +150,8 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
public static bool IsEligibleForGrouping(Folder folder)
|
||||
{
|
||||
var collectionFolder = folder as ICollectionFolder;
|
||||
return collectionFolder != null && IsEligibleForGrouping(collectionFolder.CollectionType);
|
||||
return folder is ICollectionFolder collectionFolder
|
||||
&& IsEligibleForGrouping(collectionFolder.CollectionType);
|
||||
}
|
||||
|
||||
private static string[] ViewTypesEligibleForGrouping = new string[]
|
||||
|
@ -195,7 +184,7 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
protected override Task ValidateChildrenInternal(IProgress<double> progress, System.Threading.CancellationToken cancellationToken, bool recursive, bool refreshChildMetadata, Providers.MetadataRefreshOptions refreshOptions, Providers.IDirectoryService directoryService)
|
||||
{
|
||||
return Task.FromResult(true);
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
[IgnoreDataMember]
|
||||
|
|
|
@ -10,7 +10,6 @@ using System.Globalization;
|
|||
using System.Linq;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using MediaBrowser.Common.Extensions;
|
||||
using MediaBrowser.Model.IO;
|
||||
using MediaBrowser.Model.Serialization;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
|
@ -132,8 +131,6 @@ namespace MediaBrowser.Controller.Entities
|
|||
public bool HasSubtitles { get; set; }
|
||||
|
||||
public bool IsPlaceHolder { get; set; }
|
||||
public bool IsShortcut { get; set; }
|
||||
public string ShortcutPath { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the default index of the video stream.
|
||||
|
@ -173,7 +170,7 @@ namespace MediaBrowser.Controller.Entities
|
|||
}
|
||||
else
|
||||
{
|
||||
return new string[] {};
|
||||
return Array.Empty<string>();
|
||||
}
|
||||
return mediaEncoder.GetPlayableStreamFileNames(Path, videoType);
|
||||
}
|
||||
|
@ -186,9 +183,9 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
public Video()
|
||||
{
|
||||
AdditionalParts = new string[] {};
|
||||
LocalAlternateVersions = new string[] {};
|
||||
SubtitleFiles = new string[] {};
|
||||
AdditionalParts = Array.Empty<string>();
|
||||
LocalAlternateVersions = Array.Empty<string>();
|
||||
SubtitleFiles = Array.Empty<string>();
|
||||
LinkedAlternateVersions = EmptyLinkedChildArray;
|
||||
}
|
||||
|
||||
|
@ -215,10 +212,10 @@ namespace MediaBrowser.Controller.Entities
|
|||
{
|
||||
if (!string.IsNullOrEmpty(PrimaryVersionId))
|
||||
{
|
||||
var item = LibraryManager.GetItemById(PrimaryVersionId) as Video;
|
||||
if (item != null)
|
||||
var item = LibraryManager.GetItemById(PrimaryVersionId);
|
||||
if (item is Video video)
|
||||
{
|
||||
return item.MediaSourceCount;
|
||||
return video.MediaSourceCount;
|
||||
}
|
||||
}
|
||||
return LinkedAlternateVersions.Length + LocalAlternateVersions.Length + 1;
|
||||
|
@ -366,7 +363,7 @@ namespace MediaBrowser.Controller.Entities
|
|||
/// Gets the additional parts.
|
||||
/// </summary>
|
||||
/// <returns>IEnumerable{Video}.</returns>
|
||||
public IEnumerable<Video> GetAdditionalParts()
|
||||
public IOrderedEnumerable<Video> GetAdditionalParts()
|
||||
{
|
||||
return GetAdditionalPartIds()
|
||||
.Select(i => LibraryManager.GetItemById(i))
|
||||
|
@ -420,8 +417,7 @@ namespace MediaBrowser.Controller.Entities
|
|||
{
|
||||
var updateType = base.UpdateFromResolvedItem(newItem);
|
||||
|
||||
var newVideo = newItem as Video;
|
||||
if (newVideo != null)
|
||||
if (newItem is Video newVideo)
|
||||
{
|
||||
if (!AdditionalParts.SequenceEqual(newVideo.AdditionalParts, StringComparer.Ordinal))
|
||||
{
|
||||
|
@ -463,7 +459,7 @@ namespace MediaBrowser.Controller.Entities
|
|||
.Select(i => i.FullName)
|
||||
.ToArray();
|
||||
}
|
||||
return new string[] {};
|
||||
return Array.Empty<string>();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -618,9 +614,5 @@ namespace MediaBrowser.Controller.Entities
|
|||
|
||||
return list;
|
||||
}
|
||||
|
||||
public static bool IsHD (Video video) {
|
||||
return video.Height >= 720;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -5,7 +5,6 @@ using MediaBrowser.Model.Dto;
|
|||
using MediaBrowser.Model.Entities;
|
||||
using System;
|
||||
using System.Threading;
|
||||
using MediaBrowser.Model.Querying;
|
||||
|
||||
namespace MediaBrowser.Controller.Library
|
||||
{
|
||||
|
|
|
@ -2,10 +2,7 @@
|
|||
using MediaBrowser.Controller.Providers;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using MediaBrowser.Controller.Configuration;
|
||||
using MediaBrowser.Controller.IO;
|
||||
using MediaBrowser.Model.Configuration;
|
||||
using MediaBrowser.Model.IO;
|
||||
|
||||
|
@ -169,6 +166,7 @@ namespace MediaBrowser.Controller.Library
|
|||
AdditionalLocations.Add(path);
|
||||
}
|
||||
|
||||
// REVIEW: @bond
|
||||
/// <summary>
|
||||
/// Gets the physical locations.
|
||||
/// </summary>
|
||||
|
@ -177,7 +175,7 @@ namespace MediaBrowser.Controller.Library
|
|||
{
|
||||
get
|
||||
{
|
||||
var paths = string.IsNullOrEmpty(Path) ? new string[] { } : new[] { Path };
|
||||
var paths = string.IsNullOrEmpty(Path) ? Array.Empty<string>() : new[] { Path };
|
||||
return AdditionalLocations == null ? paths : paths.Concat(AdditionalLocations).ToArray();
|
||||
}
|
||||
}
|
||||
|
@ -261,7 +259,7 @@ namespace MediaBrowser.Controller.Library
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Equalses the specified args.
|
||||
/// Equals the specified args.
|
||||
/// </summary>
|
||||
/// <param name="args">The args.</param>
|
||||
/// <returns><c>true</c> if XXXX, <c>false</c> otherwise</returns>
|
||||
|
|
|
@ -47,50 +47,19 @@ namespace MediaBrowser.Controller.LiveTv
|
|||
return list;
|
||||
}
|
||||
|
||||
public static double GetDefaultPrimaryImageAspectRatio(IHasProgramAttributes item)
|
||||
{
|
||||
var serviceName = item.ServiceName;
|
||||
|
||||
if (item.IsMovie)
|
||||
{
|
||||
if (string.Equals(serviceName, EmbyServiceName, StringComparison.OrdinalIgnoreCase) || string.Equals(serviceName, "Next Pvr", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
double value = 2;
|
||||
value /= 3;
|
||||
|
||||
return value;
|
||||
}
|
||||
else
|
||||
{
|
||||
double value = 16;
|
||||
value /= 9;
|
||||
|
||||
return value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if (string.Equals(serviceName, EmbyServiceName, StringComparison.OrdinalIgnoreCase) || string.Equals(serviceName, "Next Pvr", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
double value = 2;
|
||||
value /= 3;
|
||||
|
||||
return value;
|
||||
}
|
||||
else
|
||||
{
|
||||
double value = 16;
|
||||
value /= 9;
|
||||
|
||||
return value;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static string EmbyServiceName = "Emby";
|
||||
public override double GetDefaultPrimaryImageAspectRatio()
|
||||
{
|
||||
return GetDefaultPrimaryImageAspectRatio(this);
|
||||
var serviceName = ServiceName;
|
||||
|
||||
if (string.Equals(serviceName, EmbyServiceName, StringComparison.OrdinalIgnoreCase) || string.Equals(serviceName, "Next Pvr", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
return 2 / 3;
|
||||
}
|
||||
else
|
||||
{
|
||||
return 16 / 9;
|
||||
}
|
||||
}
|
||||
|
||||
[IgnoreDataMember]
|
||||
|
|
|
@ -10,11 +10,11 @@ namespace MediaBrowser.Controller.LiveTv
|
|||
{
|
||||
public TimerInfo()
|
||||
{
|
||||
Genres = new string[] { };
|
||||
Genres = Array.Empty<string>();
|
||||
KeepUntil = KeepUntil.UntilDeleted;
|
||||
ProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
SeriesProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
Tags = new string[] { };
|
||||
Tags = Array.Empty<string>();
|
||||
}
|
||||
|
||||
public Dictionary<string, string> ProviderIds { get; set; }
|
||||
|
|
|
@ -3,7 +3,6 @@ using System.Collections.Generic;
|
|||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
using MediaBrowser.Controller.Entities;
|
||||
using MediaBrowser.Model.Configuration;
|
||||
using MediaBrowser.Model.Dlna;
|
||||
|
@ -12,8 +11,6 @@ using MediaBrowser.Model.Entities;
|
|||
using MediaBrowser.Model.IO;
|
||||
using MediaBrowser.Model.MediaInfo;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
using MediaBrowser.Common.Configuration;
|
||||
using MediaBrowser.Model.Reflection;
|
||||
|
||||
namespace MediaBrowser.Controller.MediaEncoding
|
||||
{
|
||||
|
@ -343,19 +340,19 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
|
||||
public int GetVideoProfileScore(string profile)
|
||||
{
|
||||
var list = new []
|
||||
string[] list =
|
||||
{
|
||||
"Constrained Baseline",
|
||||
"ConstrainedBaseline",
|
||||
"Baseline",
|
||||
"Extended",
|
||||
"Main",
|
||||
"High",
|
||||
"Progressive High",
|
||||
"Constrained High"
|
||||
"ProgressiveHigh",
|
||||
"ConstrainedHigh"
|
||||
};
|
||||
|
||||
// strip spaces because they may be stripped out on the query string
|
||||
return Array.FindIndex(list, t => string.Equals(t.Replace(" ", ""), profile.Replace(" ", ""), StringComparison.OrdinalIgnoreCase));
|
||||
return Array.FindIndex(list, t => string.Equals(t, profile.Replace(" ", ""), StringComparison.OrdinalIgnoreCase));
|
||||
}
|
||||
|
||||
public string GetInputPathArgument(EncodingJobInfo state)
|
||||
|
@ -516,18 +513,12 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
|
||||
public string NormalizeTranscodingLevel(string videoCodec, string level)
|
||||
{
|
||||
double requestLevel;
|
||||
|
||||
// Clients may direct play higher than level 41, but there's no reason to transcode higher
|
||||
if (double.TryParse(level, NumberStyles.Any, _usCulture, out requestLevel))
|
||||
if (double.TryParse(level, NumberStyles.Any, _usCulture, out double requestLevel)
|
||||
&& string.Equals(videoCodec, "h264", StringComparison.OrdinalIgnoreCase)
|
||||
&& requestLevel > 41)
|
||||
{
|
||||
if (string.Equals(videoCodec, "h264", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
if (requestLevel > 41)
|
||||
{
|
||||
return "41";
|
||||
}
|
||||
}
|
||||
return "41";
|
||||
}
|
||||
|
||||
return level;
|
||||
|
@ -623,7 +614,7 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
// h264 (h264_qsv)
|
||||
else if (string.Equals(videoEncoder, "h264_qsv", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
string[] valid_h264_qsv = new string[] { "veryslow", "slower", "slow", "medium", "fast", "faster", "veryfast" };
|
||||
string[] valid_h264_qsv = { "veryslow", "slower", "slow", "medium", "fast", "faster", "veryfast" };
|
||||
|
||||
if (valid_h264_qsv.Contains(encodingOptions.H264Preset, StringComparer.OrdinalIgnoreCase))
|
||||
{
|
||||
|
@ -1958,12 +1949,12 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
}
|
||||
else
|
||||
{
|
||||
state.PlayableStreamFileNames = new string[] { };
|
||||
state.PlayableStreamFileNames = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
state.PlayableStreamFileNames = new string[] { };
|
||||
state.PlayableStreamFileNames = Array.Empty<string>();
|
||||
}
|
||||
|
||||
if (mediaSource.Timestamp.HasValue)
|
||||
|
|
|
@ -207,7 +207,7 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
}
|
||||
}
|
||||
|
||||
return new string[] { };
|
||||
return Array.Empty<string>();
|
||||
}
|
||||
|
||||
public string GetRequestedLevel(string codec)
|
||||
|
@ -317,10 +317,10 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
_logger = logger;
|
||||
TranscodingType = jobType;
|
||||
RemoteHttpHeaders = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
PlayableStreamFileNames = new string[] { };
|
||||
SupportedAudioCodecs = new string[] { };
|
||||
SupportedVideoCodecs = new string[] { };
|
||||
SupportedSubtitleCodecs = new string[] { };
|
||||
PlayableStreamFileNames = Array.Empty<string>();
|
||||
SupportedAudioCodecs = Array.Empty<string>();
|
||||
SupportedVideoCodecs = Array.Empty<string>();
|
||||
SupportedSubtitleCodecs = Array.Empty<string>();
|
||||
}
|
||||
|
||||
public bool IsSegmentedLiveStream
|
||||
|
|
|
@ -10,7 +10,6 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
public class EncodingJobOptions : BaseEncodingJobOptions
|
||||
{
|
||||
public string OutputDirectory { get; set; }
|
||||
|
||||
public string ItemId { get; set; }
|
||||
public string MediaSourceId { get; set; }
|
||||
public string AudioCodec { get; set; }
|
||||
|
|
|
@ -18,7 +18,7 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
|
||||
public MediaInfoRequest()
|
||||
{
|
||||
PlayableStreamFileNames = new string[] {};
|
||||
PlayableStreamFileNames = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
using MediaBrowser.Controller.Entities;
|
||||
using System;
|
||||
|
||||
|
||||
namespace MediaBrowser.Controller.Net
|
||||
{
|
||||
public class AuthorizationInfo
|
||||
|
@ -12,12 +11,7 @@ namespace MediaBrowser.Controller.Net
|
|||
/// <value>The user identifier.</value>
|
||||
public Guid UserId {
|
||||
get {
|
||||
if (User == null) {
|
||||
return Guid.Empty;
|
||||
}
|
||||
else {
|
||||
return User.Id;
|
||||
}
|
||||
return User == null ? Guid.Empty : User.Id;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using System;
|
||||
using System.Collections.Specialized;
|
||||
using MediaBrowser.Model.Services;
|
||||
|
||||
namespace MediaBrowser.Controller.Net
|
||||
|
@ -7,7 +6,6 @@ namespace MediaBrowser.Controller.Net
|
|||
/// <summary>
|
||||
/// Class WebSocketConnectEventArgs
|
||||
/// </summary>
|
||||
|
||||
public class WebSocketConnectingEventArgs : EventArgs
|
||||
{
|
||||
/// <summary>
|
||||
|
|
|
@ -4,7 +4,6 @@ using System.Collections.Generic;
|
|||
using System.Threading.Tasks;
|
||||
using System;
|
||||
|
||||
|
||||
namespace MediaBrowser.Controller.Playlists
|
||||
{
|
||||
public interface IPlaylistManager
|
||||
|
|
|
@ -15,14 +15,14 @@ namespace MediaBrowser.Controller.Playlists
|
|||
{
|
||||
public class Playlist : Folder, IHasShares
|
||||
{
|
||||
public static string[] SupportedExtensions = new string[] {
|
||||
|
||||
".m3u",
|
||||
".m3u8",
|
||||
".pls",
|
||||
".wpl",
|
||||
".zpl"
|
||||
};
|
||||
public static string[] SupportedExtensions =
|
||||
{
|
||||
".m3u",
|
||||
".m3u8",
|
||||
".pls",
|
||||
".wpl",
|
||||
".zpl"
|
||||
};
|
||||
|
||||
public Guid OwnerUserId { get; set; }
|
||||
|
||||
|
@ -30,7 +30,7 @@ namespace MediaBrowser.Controller.Playlists
|
|||
|
||||
public Playlist()
|
||||
{
|
||||
Shares = new Share[] { };
|
||||
Shares = Array.Empty<Share>();
|
||||
}
|
||||
|
||||
[IgnoreDataMember]
|
||||
|
@ -131,7 +131,7 @@ namespace MediaBrowser.Controller.Playlists
|
|||
|
||||
protected override Task ValidateChildrenInternal(IProgress<double> progress, CancellationToken cancellationToken, bool recursive, bool refreshChildMetadata, MetadataRefreshOptions refreshOptions, IDirectoryService directoryService)
|
||||
{
|
||||
return Task.FromResult(true);
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
public override List<BaseItem> GetChildren(User user, bool includeLinkedChildren, InternalItemsQuery query)
|
||||
|
@ -186,8 +186,7 @@ namespace MediaBrowser.Controller.Playlists
|
|||
|
||||
private static IEnumerable<BaseItem> GetPlaylistItems(BaseItem item, User user, string mediaType, DtoOptions options)
|
||||
{
|
||||
var musicGenre = item as MusicGenre;
|
||||
if (musicGenre != null)
|
||||
if (item is MusicGenre musicGenre)
|
||||
{
|
||||
return LibraryManager.GetItemList(new InternalItemsQuery(user)
|
||||
{
|
||||
|
@ -199,8 +198,7 @@ namespace MediaBrowser.Controller.Playlists
|
|||
});
|
||||
}
|
||||
|
||||
var musicArtist = item as MusicArtist;
|
||||
if (musicArtist != null)
|
||||
if (item is MusicArtist musicArtist)
|
||||
{
|
||||
return LibraryManager.GetItemList(new InternalItemsQuery(user)
|
||||
{
|
||||
|
@ -212,8 +210,7 @@ namespace MediaBrowser.Controller.Playlists
|
|||
});
|
||||
}
|
||||
|
||||
var folder = item as Folder;
|
||||
if (folder != null)
|
||||
if (item is Folder folder)
|
||||
{
|
||||
var query = new InternalItemsQuery(user)
|
||||
{
|
||||
|
|
|
@ -22,7 +22,7 @@ namespace MediaBrowser.Controller.Providers
|
|||
{
|
||||
ArtistProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
SongInfos = new List<SongInfo>();
|
||||
AlbumArtists = EmptyStringArray;
|
||||
AlbumArtists = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -20,7 +20,7 @@ namespace MediaBrowser.Controller.Providers
|
|||
ImageRefreshMode = MetadataRefreshMode.Default;
|
||||
DirectoryService = directoryService;
|
||||
|
||||
ReplaceImages = new ImageType[] { };
|
||||
ReplaceImages = Array.Empty<ImageType>();
|
||||
IsAutomated = true;
|
||||
}
|
||||
|
||||
|
@ -30,4 +30,4 @@ namespace MediaBrowser.Controller.Providers
|
|||
(ReplaceAllImages || ReplaceImages.Contains(type));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,8 +6,6 @@ namespace MediaBrowser.Controller.Providers
|
|||
{
|
||||
public class ItemLookupInfo : IHasProviderIds
|
||||
{
|
||||
protected static string[] EmptyStringArray = new string[] { };
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
|
|
|
@ -1,8 +1,6 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using MediaBrowser.Controller.Entities;
|
||||
using MediaBrowser.Controller.IO;
|
||||
using MediaBrowser.Model.IO;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using MediaBrowser.Model.Providers;
|
||||
|
@ -47,7 +45,7 @@ namespace MediaBrowser.Controller.Providers
|
|||
{
|
||||
if (RefreshPaths == null)
|
||||
{
|
||||
RefreshPaths = new string[] { };
|
||||
RefreshPaths = Array.Empty<string>();
|
||||
}
|
||||
|
||||
RefreshPaths = copy.RefreshPaths.ToArray();
|
||||
|
|
|
@ -74,4 +74,4 @@ namespace MediaBrowser.Controller.Providers
|
|||
return userData;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
using System;
|
||||
|
||||
namespace MediaBrowser.Controller.Providers
|
||||
{
|
||||
|
@ -9,8 +10,8 @@ namespace MediaBrowser.Controller.Providers
|
|||
|
||||
public SongInfo()
|
||||
{
|
||||
Artists = EmptyStringArray;
|
||||
AlbumArtists = EmptyStringArray;
|
||||
Artists = Array.Empty<string>();
|
||||
AlbumArtists = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
using System;
|
||||
|
||||
|
||||
namespace MediaBrowser.Controller.Session
|
||||
{
|
||||
public class AuthenticationRequest
|
||||
|
@ -9,7 +8,6 @@ namespace MediaBrowser.Controller.Session
|
|||
public Guid UserId { get; set; }
|
||||
public string Password { get; set; }
|
||||
public string PasswordSha1 { get; set; }
|
||||
public string PasswordMd5 { get; set; }
|
||||
public string App { get; set; }
|
||||
public string AppVersion { get; set; }
|
||||
public string DeviceId { get; set; }
|
||||
|
|
|
@ -5,7 +5,6 @@ using MediaBrowser.Controller.Security;
|
|||
using MediaBrowser.Model.Dto;
|
||||
using MediaBrowser.Model.Events;
|
||||
using MediaBrowser.Model.Session;
|
||||
using MediaBrowser.Model.Users;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
|
|
|
@ -22,9 +22,9 @@ namespace MediaBrowser.Controller.Session
|
|||
_sessionManager = sessionManager;
|
||||
_logger = logger;
|
||||
|
||||
AdditionalUsers = new SessionUserInfo[] { };
|
||||
AdditionalUsers = Array.Empty<SessionUserInfo>();
|
||||
PlayState = new PlayerStateInfo();
|
||||
SessionControllers = new ISessionController[] { };
|
||||
SessionControllers = Array.Empty<ISessionController>();
|
||||
}
|
||||
|
||||
public PlayerStateInfo PlayState { get; set; }
|
||||
|
@ -49,7 +49,7 @@ namespace MediaBrowser.Controller.Session
|
|||
{
|
||||
if (Capabilities == null)
|
||||
{
|
||||
return new string[] {};
|
||||
return Array.Empty<string>();
|
||||
}
|
||||
return Capabilities.PlayableMediaTypes;
|
||||
}
|
||||
|
@ -363,7 +363,7 @@ namespace MediaBrowser.Controller.Session
|
|||
StopAutomaticProgress();
|
||||
|
||||
var controllers = SessionControllers.ToList();
|
||||
SessionControllers = new ISessionController[] { };
|
||||
SessionControllers = Array.Empty<ISessionController>();
|
||||
|
||||
foreach (var controller in controllers)
|
||||
{
|
||||
|
|
|
@ -32,8 +32,8 @@ namespace MediaBrowser.Controller.Subtitles
|
|||
SearchAllProviders = true;
|
||||
ProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
|
||||
DisabledSubtitleFetchers = new string[] {};
|
||||
SubtitleFetcherOrder = new string[] {};
|
||||
DisabledSubtitleFetchers = Array.Empty<string>();
|
||||
SubtitleFetcherOrder = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -77,12 +77,12 @@ namespace MediaBrowser.LocalMetadata.Images
|
|||
return directoryService.GetFileSystemEntries(path)
|
||||
.Where(i => BaseItem.SupportedImageExtensions.Contains(i.Extension, StringComparer.OrdinalIgnoreCase) || i.IsDirectory)
|
||||
|
||||
.OrderBy(i => BaseItem.SupportedImageExtensionsList.IndexOf(i.Extension ?? string.Empty));
|
||||
.OrderBy(i => Array.IndexOf(BaseItem.SupportedImageExtensions, i.Extension ?? string.Empty));
|
||||
}
|
||||
|
||||
return directoryService.GetFiles(path)
|
||||
.Where(i => BaseItem.SupportedImageExtensions.Contains(i.Extension, StringComparer.OrdinalIgnoreCase))
|
||||
.OrderBy(i => BaseItem.SupportedImageExtensionsList.IndexOf(i.Extension ?? string.Empty));
|
||||
.OrderBy(i => Array.IndexOf(BaseItem.SupportedImageExtensions, i.Extension ?? string.Empty));
|
||||
}
|
||||
|
||||
public List<LocalImageInfo> GetImages(BaseItem item, IDirectoryService directoryService)
|
||||
|
@ -106,7 +106,7 @@ namespace MediaBrowser.LocalMetadata.Images
|
|||
IEnumerable<FileSystemMetadata> files = paths.SelectMany(i => _fileSystem.GetFiles(i, BaseItem.SupportedImageExtensions, true, false));
|
||||
|
||||
files = files
|
||||
.OrderBy(i => BaseItem.SupportedImageExtensionsList.IndexOf(i.Extension ?? string.Empty));
|
||||
.OrderBy(i => Array.IndexOf(BaseItem.SupportedImageExtensions, i.Extension ?? string.Empty));
|
||||
|
||||
var list = new List<LocalImageInfo>();
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
using System.Collections.Generic;
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Channels
|
||||
{
|
||||
|
@ -76,10 +76,9 @@ namespace MediaBrowser.Model.Channels
|
|||
|
||||
public ChannelFeatures()
|
||||
{
|
||||
MediaTypes = new ChannelMediaType[] { };
|
||||
ContentTypes = new ChannelMediaContentType[] { };
|
||||
|
||||
DefaultSortFields = new ChannelItemSortField[] { };
|
||||
MediaTypes = Array.Empty<ChannelMediaType>();
|
||||
ContentTypes = Array.Empty<ChannelMediaContentType>();
|
||||
DefaultSortFields = Array.Empty<ChannelItemSortField>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,7 +6,6 @@ namespace MediaBrowser.Model.Configuration
|
|||
{
|
||||
public class LibraryOptions
|
||||
{
|
||||
public bool EnableArchiveMediaFiles { get; set; }
|
||||
public bool EnablePhotos { get; set; }
|
||||
public bool EnableRealtimeMonitor { get; set; }
|
||||
public bool EnableChapterImageExtraction { get; set; }
|
||||
|
@ -65,10 +64,10 @@ namespace MediaBrowser.Model.Configuration
|
|||
|
||||
public LibraryOptions()
|
||||
{
|
||||
TypeOptions = new TypeOptions[] { };
|
||||
DisabledSubtitleFetchers = new string[] { };
|
||||
SubtitleFetcherOrder = new string[] { };
|
||||
DisabledLocalMetadataReaders = new string[] { };
|
||||
TypeOptions = Array.Empty<TypeOptions>();
|
||||
DisabledSubtitleFetchers = Array.Empty<string>();
|
||||
SubtitleFetcherOrder = Array.Empty<string>();
|
||||
DisabledLocalMetadataReaders = Array.Empty<string>();
|
||||
|
||||
SkipSubtitlesIfAudioTrackMatches = true;
|
||||
RequirePerfectSubtitleMatch = true;
|
||||
|
@ -76,7 +75,7 @@ namespace MediaBrowser.Model.Configuration
|
|||
EnablePhotos = true;
|
||||
SaveSubtitlesWithMedia = true;
|
||||
EnableRealtimeMonitor = true;
|
||||
PathInfos = new MediaPathInfo[] { };
|
||||
PathInfos = Array.Empty<MediaPathInfo>();
|
||||
EnableInternetProviders = true;
|
||||
EnableAutomaticSeriesGrouping = true;
|
||||
SeasonZeroDisplayName = "Specials";
|
||||
|
@ -141,11 +140,11 @@ namespace MediaBrowser.Model.Configuration
|
|||
|
||||
public TypeOptions()
|
||||
{
|
||||
MetadataFetchers = new string[] { };
|
||||
MetadataFetcherOrder = new string[] { };
|
||||
ImageFetchers = new string[] { };
|
||||
ImageFetcherOrder = new string[] { };
|
||||
ImageOptions = new ImageOption[] { };
|
||||
MetadataFetchers = Array.Empty<string>();
|
||||
MetadataFetcherOrder = Array.Empty<string>();
|
||||
ImageFetchers = Array.Empty<string>();
|
||||
ImageFetcherOrder = Array.Empty<string>();
|
||||
ImageOptions = Array.Empty<ImageOption>();
|
||||
}
|
||||
|
||||
public static Dictionary<string, ImageOption[]> DefaultImageOptions = new Dictionary<string, ImageOption[]>
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using MediaBrowser.Model.Extensions;
|
||||
using System;
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
{
|
||||
|
@ -21,18 +20,12 @@ namespace MediaBrowser.Model.Configuration
|
|||
|
||||
public MetadataOptions()
|
||||
{
|
||||
DisabledMetadataSavers = new string[] { };
|
||||
LocalMetadataReaderOrder = new string[] { };
|
||||
|
||||
DisabledMetadataFetchers = new string[] { };
|
||||
MetadataFetcherOrder = new string[] { };
|
||||
DisabledImageFetchers = new string[] { };
|
||||
ImageFetcherOrder = new string[] { };
|
||||
}
|
||||
|
||||
public bool IsMetadataSaverEnabled(string name)
|
||||
{
|
||||
return !ListHelper.ContainsIgnoreCase(DisabledMetadataSavers, name);
|
||||
DisabledMetadataSavers = Array.Empty<string>();
|
||||
LocalMetadataReaderOrder = Array.Empty<string>();
|
||||
DisabledMetadataFetchers = Array.Empty<string>();
|
||||
MetadataFetcherOrder = Array.Empty<string>();
|
||||
DisabledImageFetchers = Array.Empty<string>();
|
||||
ImageFetcherOrder = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
using System.Collections.Generic;
|
||||
using System;
|
||||
using MediaBrowser.Model.Entities;
|
||||
|
||||
namespace MediaBrowser.Model.Configuration
|
||||
|
@ -25,8 +25,8 @@ namespace MediaBrowser.Model.Configuration
|
|||
|
||||
public MetadataPluginSummary()
|
||||
{
|
||||
SupportedImageTypes = new ImageType[] { };
|
||||
Plugins = new MetadataPlugin[] { };
|
||||
SupportedImageTypes = Array.Empty<ImageType>();
|
||||
Plugins = Array.Empty<MetadataPlugin>();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -173,8 +173,6 @@ namespace MediaBrowser.Model.Configuration
|
|||
|
||||
public int RemoteClientBitrateLimit { get; set; }
|
||||
|
||||
public int SchemaVersion { get; set; }
|
||||
|
||||
public bool EnableFolderView { get; set; }
|
||||
public bool EnableGroupingIntoCollections { get; set; }
|
||||
public bool DisplaySpecialsWithinSeasons { get; set; }
|
||||
|
@ -201,13 +199,13 @@ namespace MediaBrowser.Model.Configuration
|
|||
/// </summary>
|
||||
public ServerConfiguration()
|
||||
{
|
||||
UninstalledPlugins = new string[] { };
|
||||
RemoteIPFilter = new string[] { };
|
||||
LocalNetworkSubnets = new string[] { };
|
||||
LocalNetworkAddresses = new string[] { };
|
||||
CodecsUsed = new string[] { };
|
||||
UninstalledPlugins = Array.Empty<string>();
|
||||
RemoteIPFilter = Array.Empty<string>();
|
||||
LocalNetworkSubnets = Array.Empty<string>();
|
||||
LocalNetworkAddresses = Array.Empty<string>();
|
||||
CodecsUsed = Array.Empty<string>();
|
||||
ImageExtractionTimeoutMs = 0;
|
||||
PathSubstitutions = new PathSubstitution[] { };
|
||||
PathSubstitutions = Array.Empty<PathSubstitution>();
|
||||
EnableSimpleArtistDetection = true;
|
||||
|
||||
DisplaySpecialsWithinSeasons = true;
|
||||
|
@ -235,7 +233,7 @@ namespace MediaBrowser.Model.Configuration
|
|||
|
||||
LibraryMonitorDelay = 60;
|
||||
|
||||
ContentTypes = new NameValuePair[] { };
|
||||
ContentTypes = Array.Empty<NameValuePair>();
|
||||
|
||||
PreferredMetadataLanguage = "en";
|
||||
MetadataCountryCode = "US";
|
||||
|
@ -248,56 +246,51 @@ namespace MediaBrowser.Model.Configuration
|
|||
|
||||
MetadataOptions = new[]
|
||||
{
|
||||
new MetadataOptions {ItemType = "Book"},
|
||||
|
||||
new MetadataOptions
|
||||
new MetadataOptions()
|
||||
{
|
||||
ItemType = "Book"
|
||||
},
|
||||
new MetadataOptions()
|
||||
{
|
||||
ItemType = "Movie"
|
||||
},
|
||||
|
||||
new MetadataOptions
|
||||
{
|
||||
ItemType = "MusicVideo",
|
||||
DisabledMetadataFetchers = new []{ "The Open Movie Database" },
|
||||
DisabledImageFetchers = new []{ "The Open Movie Database", "FanArt" }
|
||||
DisabledMetadataFetchers = new [] { "The Open Movie Database" },
|
||||
DisabledImageFetchers = new [] { "The Open Movie Database", "FanArt" }
|
||||
},
|
||||
|
||||
new MetadataOptions
|
||||
{
|
||||
ItemType = "Series",
|
||||
DisabledMetadataFetchers = new []{ "TheMovieDb" },
|
||||
DisabledImageFetchers = new []{ "TheMovieDb" }
|
||||
DisabledMetadataFetchers = new [] { "TheMovieDb" },
|
||||
DisabledImageFetchers = new [] { "TheMovieDb" }
|
||||
},
|
||||
|
||||
new MetadataOptions
|
||||
{
|
||||
ItemType = "MusicAlbum",
|
||||
DisabledMetadataFetchers = new []{ "TheAudioDB" }
|
||||
DisabledMetadataFetchers = new [] { "TheAudioDB" }
|
||||
},
|
||||
|
||||
new MetadataOptions
|
||||
{
|
||||
ItemType = "MusicArtist",
|
||||
DisabledMetadataFetchers = new []{ "TheAudioDB" }
|
||||
DisabledMetadataFetchers = new [] { "TheAudioDB" }
|
||||
},
|
||||
|
||||
new MetadataOptions
|
||||
{
|
||||
ItemType = "BoxSet"
|
||||
},
|
||||
|
||||
new MetadataOptions
|
||||
{
|
||||
ItemType = "Season",
|
||||
DisabledMetadataFetchers = new []{ "TheMovieDb" },
|
||||
DisabledMetadataFetchers = new [] { "TheMovieDb" },
|
||||
DisabledImageFetchers = new [] { "FanArt" }
|
||||
},
|
||||
|
||||
new MetadataOptions
|
||||
{
|
||||
ItemType = "Episode",
|
||||
DisabledMetadataFetchers = new []{ "The Open Movie Database", "TheMovieDb" },
|
||||
DisabledImageFetchers = new []{ "The Open Movie Database", "TheMovieDb" }
|
||||
DisabledMetadataFetchers = new [] { "The Open Movie Database", "TheMovieDb" },
|
||||
DisabledImageFetchers = new [] { "The Open Movie Database", "TheMovieDb" }
|
||||
}
|
||||
};
|
||||
}
|
||||
|
|
|
@ -57,10 +57,10 @@ namespace MediaBrowser.Model.Configuration
|
|||
HidePlayedInLatest = true;
|
||||
PlayDefaultAudioTrack = true;
|
||||
|
||||
LatestItemsExcludes = new string[] {};
|
||||
OrderedViews = new string[] {};
|
||||
MyMediaExcludes = new string[] {};
|
||||
GroupedFolders = new string[] {};
|
||||
LatestItemsExcludes = Array.Empty<string>();
|
||||
OrderedViews = Array.Empty<string>();
|
||||
MyMediaExcludes = Array.Empty<string>();
|
||||
GroupedFolders = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
|
||||
namespace MediaBrowser.Model.Connect
|
||||
{
|
||||
public class ConnectAuthenticationExchangeResult
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the local user identifier.
|
||||
/// </summary>
|
||||
/// <value>The local user identifier.</value>
|
||||
public string LocalUserId { get; set; }
|
||||
/// <summary>
|
||||
/// Gets or sets the access token.
|
||||
/// </summary>
|
||||
/// <value>The access token.</value>
|
||||
public string AccessToken { get; set; }
|
||||
}
|
||||
}
|
|
@ -1,17 +0,0 @@
|
|||
|
||||
namespace MediaBrowser.Model.Connect
|
||||
{
|
||||
public class ConnectAuthenticationResult
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the user.
|
||||
/// </summary>
|
||||
/// <value>The user.</value>
|
||||
public ConnectUser User { get; set; }
|
||||
/// <summary>
|
||||
/// Gets or sets the access token.
|
||||
/// </summary>
|
||||
/// <value>The access token.</value>
|
||||
public string AccessToken { get; set; }
|
||||
}
|
||||
}
|
|
@ -14,8 +14,8 @@ namespace MediaBrowser.Model.Connect
|
|||
|
||||
public ConnectAuthorization()
|
||||
{
|
||||
EnabledLibraries = new string[] {};
|
||||
EnabledChannels = new string[] {};
|
||||
EnabledLibraries = Array.Empty<string>();
|
||||
EnabledChannels = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,19 +0,0 @@
|
|||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Connect
|
||||
{
|
||||
public class ConnectAuthorizationRequest
|
||||
{
|
||||
public string SendingUserId { get; set; }
|
||||
public string ConnectUserName { get; set; }
|
||||
public string[] EnabledLibraries { get; set; }
|
||||
public bool EnableLiveTv { get; set; }
|
||||
public string[] EnabledChannels { get; set; }
|
||||
|
||||
public ConnectAuthorizationRequest()
|
||||
{
|
||||
EnabledLibraries = new string[] {};
|
||||
EnabledChannels = new string[] {};
|
||||
}
|
||||
}
|
||||
}
|
|
@ -5,22 +5,6 @@ namespace MediaBrowser.Model.Devices
|
|||
{
|
||||
public class DeviceInfo
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the name of the reported.
|
||||
/// </summary>
|
||||
/// <value>The name of the reported.</value>
|
||||
public string ReportedName { get; set; }
|
||||
/// <summary>
|
||||
/// Gets or sets the name of the custom.
|
||||
/// </summary>
|
||||
/// <value>The name of the custom.</value>
|
||||
public string CustomName { get; set; }
|
||||
/// <summary>
|
||||
/// Gets or sets the camera upload path.
|
||||
/// </summary>
|
||||
/// <value>The camera upload path.</value>
|
||||
public string CameraUploadPath { get; set; }
|
||||
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -5,11 +5,6 @@ namespace MediaBrowser.Model.Devices
|
|||
{
|
||||
public class DeviceQuery
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether [supports unique identifier].
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [supports unique identifier] contains no value, <c>true</c> if [supports unique identifier]; otherwise, <c>false</c>.</value>
|
||||
public bool? SupportsPersistentIdentifier { get; set; }
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether [supports synchronize].
|
||||
/// </summary>
|
||||
|
|
|
@ -10,15 +10,12 @@ namespace MediaBrowser.Model.Devices
|
|||
|
||||
public DevicesOptions()
|
||||
{
|
||||
EnabledCameraUploadDevices = new string[] {};
|
||||
EnabledCameraUploadDevices = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
|
||||
public class DeviceOptions
|
||||
{
|
||||
public string[] EnabledCameraUploadDevices { get; set; }
|
||||
public string CameraUploadPath { get; set; }
|
||||
public bool EnableCameraUploadSubfolders { get; set; }
|
||||
public string CustomName { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Xml.Serialization;
|
||||
using MediaBrowser.Model.Dlna;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
|
@ -17,7 +15,7 @@ namespace MediaBrowser.Model.Dlna
|
|||
|
||||
public ContainerProfile()
|
||||
{
|
||||
Conditions = new ProfileCondition[] { };
|
||||
Conditions = Array.Empty<ProfileCondition>();
|
||||
}
|
||||
|
||||
public string[] GetContainers()
|
||||
|
@ -25,13 +23,11 @@ namespace MediaBrowser.Model.Dlna
|
|||
return SplitValue(Container);
|
||||
}
|
||||
|
||||
private static readonly string[] EmptyStringArray = Array.Empty<string>();
|
||||
|
||||
public static string[] SplitValue(string value)
|
||||
{
|
||||
if (string.IsNullOrEmpty(value))
|
||||
{
|
||||
return EmptyStringArray;
|
||||
return Array.Empty<string>();
|
||||
}
|
||||
|
||||
return value.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
using MediaBrowser.Model.MediaInfo;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
|
@ -28,7 +27,7 @@ namespace MediaBrowser.Model.Dlna
|
|||
DlnaFlags flagValue = DlnaFlags.BackgroundTransferMode |
|
||||
DlnaFlags.InteractiveTransferMode |
|
||||
DlnaFlags.DlnaV15;
|
||||
|
||||
|
||||
string dlnaflags = string.Format(";DLNA.ORG_FLAGS={0}",
|
||||
DlnaMaps.FlagsToString(flagValue));
|
||||
|
||||
|
|
|
@ -1,13 +1,12 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
public class ResolutionNormalizer
|
||||
{
|
||||
private static readonly ResolutionConfiguration[] Configurations =
|
||||
new []
|
||||
private static readonly ResolutionConfiguration[] Configurations =
|
||||
new[]
|
||||
{
|
||||
new ResolutionConfiguration(426, 320000),
|
||||
new ResolutionConfiguration(640, 400000),
|
||||
|
@ -20,24 +19,24 @@ namespace MediaBrowser.Model.Dlna
|
|||
public static ResolutionOptions Normalize(int? inputBitrate,
|
||||
int? unused1,
|
||||
int? unused2,
|
||||
int outputBitrate,
|
||||
string inputCodec,
|
||||
int outputBitrate,
|
||||
string inputCodec,
|
||||
string outputCodec,
|
||||
int? maxWidth,
|
||||
int? maxHeight)
|
||||
{
|
||||
// If the bitrate isn't changing, then don't downlscale the resolution
|
||||
if (inputBitrate.HasValue && outputBitrate >= inputBitrate.Value)
|
||||
{
|
||||
if (maxWidth.HasValue || maxHeight.HasValue)
|
||||
{
|
||||
return new ResolutionOptions
|
||||
{
|
||||
MaxWidth = maxWidth,
|
||||
MaxHeight = maxHeight
|
||||
};
|
||||
}
|
||||
}
|
||||
// If the bitrate isn't changing, then don't downlscale the resolution
|
||||
if (inputBitrate.HasValue && outputBitrate >= inputBitrate.Value)
|
||||
{
|
||||
if (maxWidth.HasValue || maxHeight.HasValue)
|
||||
{
|
||||
return new ResolutionOptions
|
||||
{
|
||||
MaxWidth = maxWidth,
|
||||
MaxHeight = maxHeight
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
var resolutionConfig = GetResolutionConfiguration(outputBitrate);
|
||||
if (resolutionConfig != null)
|
||||
|
@ -90,8 +89,8 @@ namespace MediaBrowser.Model.Dlna
|
|||
{
|
||||
var inputScaleFactor = GetVideoBitrateScaleFactor(inputVideoCodec);
|
||||
var outputScaleFactor = GetVideoBitrateScaleFactor(outputVideoCodec);
|
||||
var scaleFactor = outputScaleFactor/inputScaleFactor;
|
||||
var newBitrate = scaleFactor*bitrate;
|
||||
var scaleFactor = outputScaleFactor / inputScaleFactor;
|
||||
var newBitrate = scaleFactor * bitrate;
|
||||
|
||||
return Convert.ToInt32(newBitrate);
|
||||
}
|
||||
|
|
|
@ -18,10 +18,10 @@ namespace MediaBrowser.Model.Dlna
|
|||
{
|
||||
public StreamInfo()
|
||||
{
|
||||
AudioCodecs = new string[] { };
|
||||
VideoCodecs = new string[] { };
|
||||
SubtitleCodecs = new string[] { };
|
||||
TranscodeReasons = new TranscodeReason[] { };
|
||||
AudioCodecs = Array.Empty<string>();
|
||||
VideoCodecs = Array.Empty<string>();
|
||||
SubtitleCodecs = Array.Empty<string>();
|
||||
TranscodeReasons = Array.Empty<TranscodeReason>();
|
||||
StreamOptions = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
}
|
||||
|
||||
|
|
|
@ -1,7 +1,5 @@
|
|||
using MediaBrowser.Model.Extensions;
|
||||
using System.Collections.Generic;
|
||||
using System.Xml.Serialization;
|
||||
using MediaBrowser.Model.Dlna;
|
||||
|
||||
namespace MediaBrowser.Model.Dlna
|
||||
{
|
||||
|
@ -43,4 +41,4 @@ namespace MediaBrowser.Model.Dlna
|
|||
return languages.Length == 0 || ListHelper.ContainsIgnoreCase(languages, subLanguage);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,10 +4,8 @@ using MediaBrowser.Model.Extensions;
|
|||
using MediaBrowser.Model.Library;
|
||||
using MediaBrowser.Model.LiveTv;
|
||||
using MediaBrowser.Model.Providers;
|
||||
using MediaBrowser.Model.Sync;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using MediaBrowser.Model.Serialization;
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
|
@ -67,7 +65,6 @@ namespace MediaBrowser.Model.Dto
|
|||
public int? AirsBeforeSeasonNumber { get; set; }
|
||||
public int? AirsAfterSeasonNumber { get; set; }
|
||||
public int? AirsBeforeEpisodeNumber { get; set; }
|
||||
public bool? DisplaySpecialsWithSeasons { get; set; }
|
||||
public bool? CanDelete { get; set; }
|
||||
public bool? CanDownload { get; set; }
|
||||
|
||||
|
@ -156,7 +153,6 @@ namespace MediaBrowser.Model.Dto
|
|||
/// <value>The channel identifier.</value>
|
||||
public Guid ChannelId { get; set; }
|
||||
public string ChannelName { get; set; }
|
||||
public string ServiceName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the overview.
|
||||
|
@ -479,26 +475,6 @@ namespace MediaBrowser.Model.Dto
|
|||
public int? PartCount { get; set; }
|
||||
public int? MediaSourceCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Determines whether the specified type is type.
|
||||
/// </summary>
|
||||
/// <param name="type">The type.</param>
|
||||
/// <returns><c>true</c> if the specified type is type; otherwise, <c>false</c>.</returns>
|
||||
public bool IsType(Type type)
|
||||
{
|
||||
return IsType(type.Name);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Determines whether the specified type is type.
|
||||
/// </summary>
|
||||
/// <param name="type">The type.</param>
|
||||
/// <returns><c>true</c> if the specified type is type; otherwise, <c>false</c>.</returns>
|
||||
public bool IsType(string type)
|
||||
{
|
||||
return StringHelper.EqualsIgnoreCase(Type, type);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the image tags.
|
||||
/// </summary>
|
||||
|
@ -601,12 +577,6 @@ namespace MediaBrowser.Model.Dto
|
|||
/// <value>The end date.</value>
|
||||
public DateTime? EndDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the home page URL.
|
||||
/// </summary>
|
||||
/// <value>The home page URL.</value>
|
||||
public string HomePageUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the locked fields.
|
||||
/// </summary>
|
||||
|
@ -677,11 +647,6 @@ namespace MediaBrowser.Model.Dto
|
|||
public double? Altitude { get; set; }
|
||||
public int? IsoSpeedRating { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Used by RecordingGroup
|
||||
/// </summary>
|
||||
public int? RecordingCount { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the series timer identifier.
|
||||
/// </summary>
|
||||
|
|
|
@ -1,38 +0,0 @@
|
|||
using MediaBrowser.Model.Serialization;
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// Class ChapterInfo
|
||||
/// </summary>
|
||||
public class ChapterInfoDto
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the start position ticks.
|
||||
/// </summary>
|
||||
/// <value>The start position ticks.</value>
|
||||
public long StartPositionTicks { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name.
|
||||
/// </summary>
|
||||
/// <value>The name.</value>
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the image tag.
|
||||
/// </summary>
|
||||
/// <value>The image tag.</value>
|
||||
public string ImageTag { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets a value indicating whether this instance has image.
|
||||
/// </summary>
|
||||
/// <value><c>true</c> if this instance has image; otherwise, <c>false</c>.</value>
|
||||
[IgnoreDataMember]
|
||||
public bool HasImage
|
||||
{
|
||||
get { return ImageTag != null; }
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,5 +1,4 @@
|
|||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
|
@ -43,7 +42,7 @@ namespace MediaBrowser.Model.Dto
|
|||
/// </summary>
|
||||
public GameSystemSummary()
|
||||
{
|
||||
GameFileExtensions = new string[] {};
|
||||
GameFileExtensions = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Model.Extensions;
|
||||
using MediaBrowser.Model.MediaInfo;
|
||||
using System.Collections.Generic;
|
||||
using MediaBrowser.Model.Serialization;
|
||||
|
@ -73,7 +72,7 @@ namespace MediaBrowser.Model.Dto
|
|||
|
||||
public MediaSourceInfo()
|
||||
{
|
||||
Formats = new string[] { };
|
||||
Formats = Array.Empty<string>();
|
||||
MediaStreams = new List<MediaStream>();
|
||||
RequiredHttpHeaders = new Dictionary<string, string>();
|
||||
SupportsTranscoding = true;
|
||||
|
@ -115,12 +114,6 @@ namespace MediaBrowser.Model.Dto
|
|||
public int? DefaultAudioStreamIndex { get; set; }
|
||||
public int? DefaultSubtitleStreamIndex { get; set; }
|
||||
|
||||
[IgnoreDataMember]
|
||||
public MediaStream DefaultAudioStream
|
||||
{
|
||||
get { return GetDefaultAudioStream(DefaultAudioStreamIndex); }
|
||||
}
|
||||
|
||||
public MediaStream GetDefaultAudioStream(int? defaultIndex)
|
||||
{
|
||||
if (defaultIndex.HasValue)
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Model.Globalization;
|
||||
using MediaBrowser.Model.Providers;
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
|
@ -17,11 +17,11 @@ namespace MediaBrowser.Model.Dto
|
|||
|
||||
public MetadataEditorInfo()
|
||||
{
|
||||
ParentalRatingOptions = new ParentalRating[] { };
|
||||
Countries = new CountryInfo[] { };
|
||||
Cultures = new CultureDto[] { };
|
||||
ExternalIdInfos = new ExternalIdInfo[] { };
|
||||
ContentTypeOptions = new NameValuePair[] { };
|
||||
ParentalRatingOptions = Array.Empty<ParentalRating>();
|
||||
Countries = Array.Empty<CountryInfo>();
|
||||
Cultures = Array.Empty<CultureDto>();
|
||||
ExternalIdInfos = Array.Empty<ExternalIdInfo>();
|
||||
ContentTypeOptions = Array.Empty<NameValuePair>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,7 +2,6 @@
|
|||
using MediaBrowser.Model.Connect;
|
||||
using MediaBrowser.Model.Users;
|
||||
using System;
|
||||
using MediaBrowser.Model.Serialization;
|
||||
|
||||
namespace MediaBrowser.Model.Dto
|
||||
{
|
||||
|
|
|
@ -51,12 +51,12 @@ namespace MediaBrowser.Model.Entities
|
|||
/// </summary>
|
||||
public LibraryUpdateInfo()
|
||||
{
|
||||
FoldersAddedTo = new string[] { };
|
||||
FoldersRemovedFrom = new string[] { };
|
||||
ItemsAdded = new string[] { };
|
||||
ItemsRemoved = new string[] { };
|
||||
ItemsUpdated = new string[] { };
|
||||
CollectionFolders = new string[] { };
|
||||
FoldersAddedTo = Array.Empty<string>();
|
||||
FoldersRemovedFrom = Array.Empty<string>();
|
||||
ItemsAdded = Array.Empty<string>();
|
||||
ItemsRemoved = Array.Empty<string>();
|
||||
ItemsUpdated = Array.Empty<string>();
|
||||
CollectionFolders = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -34,7 +34,7 @@ namespace MediaBrowser.Model.Entities
|
|||
/// </summary>
|
||||
public VirtualFolderInfo()
|
||||
{
|
||||
Locations = new string[] {};
|
||||
Locations = Array.Empty<string>();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
|
@ -46,7 +46,7 @@ namespace MediaBrowser.Model.Globalization
|
|||
|
||||
public CultureDto()
|
||||
{
|
||||
ThreeLetterISOLanguageNames = new string[] {};
|
||||
ThreeLetterISOLanguageNames = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -27,7 +27,7 @@ namespace MediaBrowser.Model.Library
|
|||
public UserViewQuery()
|
||||
{
|
||||
IncludeExternalContent = true;
|
||||
PresetViews = new string[] {};
|
||||
PresetViews = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -98,7 +98,7 @@ namespace MediaBrowser.Model.LiveTv
|
|||
public LiveTvChannelQuery()
|
||||
{
|
||||
EnableUserData = true;
|
||||
SortBy = new string[] {};
|
||||
SortBy = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,8 +25,8 @@ namespace MediaBrowser.Model.LiveTv
|
|||
|
||||
public LiveTvInfo()
|
||||
{
|
||||
Services = new LiveTvServiceInfo[] { };
|
||||
EnabledUsers = new string[] {};
|
||||
Services = Array.Empty<LiveTvServiceInfo>();
|
||||
EnabledUsers = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,9 +25,9 @@ namespace MediaBrowser.Model.LiveTv
|
|||
|
||||
public LiveTvOptions()
|
||||
{
|
||||
TunerHosts = new TunerHostInfo[] { };
|
||||
ListingProviders = new ListingsProviderInfo[] { };
|
||||
MediaLocationsCreated = new string[] { };
|
||||
TunerHosts = Array.Empty<TunerHostInfo>();
|
||||
ListingProviders = Array.Empty<ListingsProviderInfo>();
|
||||
MediaLocationsCreated = Array.Empty<string>();
|
||||
RecordingPostProcessorArguments = "\"{path}\"";
|
||||
}
|
||||
}
|
||||
|
@ -76,13 +76,13 @@ namespace MediaBrowser.Model.LiveTv
|
|||
|
||||
public ListingsProviderInfo()
|
||||
{
|
||||
NewsCategories = new string[] { "news", "journalism", "documentary", "current affairs" };
|
||||
SportsCategories = new string[] { "sports", "basketball", "baseball", "football" };
|
||||
KidsCategories = new string[] { "kids", "family", "children", "childrens", "disney" };
|
||||
MovieCategories = new string[] { "movie" };
|
||||
EnabledTuners = new string[] { };
|
||||
NewsCategories = new [] { "news", "journalism", "documentary", "current affairs" };
|
||||
SportsCategories = new [] { "sports", "basketball", "baseball", "football" };
|
||||
KidsCategories = new [] { "kids", "family", "children", "childrens", "disney" };
|
||||
MovieCategories = new [] { "movie" };
|
||||
EnabledTuners = Array.Empty<string>();
|
||||
EnableAllTuners = true;
|
||||
ChannelMappings = new NameValuePair[] {};
|
||||
ChannelMappings = Array.Empty<NameValuePair>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -52,7 +52,7 @@ namespace MediaBrowser.Model.LiveTv
|
|||
|
||||
public LiveTvServiceInfo()
|
||||
{
|
||||
Tuners = new string[] { };
|
||||
Tuners = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,117 +0,0 @@
|
|||
using MediaBrowser.Model.Entities;
|
||||
using System;
|
||||
using MediaBrowser.Model.Querying;
|
||||
|
||||
namespace MediaBrowser.Model.LiveTv
|
||||
{
|
||||
/// <summary>
|
||||
/// Class ProgramQuery.
|
||||
/// </summary>
|
||||
public class ProgramQuery
|
||||
{
|
||||
public ProgramQuery()
|
||||
{
|
||||
ChannelIds = new Guid[] { };
|
||||
OrderBy = new Tuple<string, SortOrder>[] { };
|
||||
Genres = new string[] {};
|
||||
GenreIds = new Guid[] { };
|
||||
EnableTotalRecordCount = true;
|
||||
EnableUserData = true;
|
||||
}
|
||||
|
||||
public bool EnableTotalRecordCount { get; set; }
|
||||
public bool EnableUserData { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Fields to return within the items, in addition to basic information
|
||||
/// </summary>
|
||||
/// <value>The fields.</value>
|
||||
public ItemFields[] Fields { get; set; }
|
||||
public bool? EnableImages { get; set; }
|
||||
public int? ImageTypeLimit { get; set; }
|
||||
public ImageType[] EnableImageTypes { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the channel ids.
|
||||
/// </summary>
|
||||
/// <value>The channel ids.</value>
|
||||
public Guid[] ChannelIds { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the user identifier.
|
||||
/// </summary>
|
||||
/// <value>The user identifier.</value>
|
||||
public string UserId { get; set; }
|
||||
public string SeriesTimerId { get; set; }
|
||||
public string Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The earliest date for which a program starts to return
|
||||
/// </summary>
|
||||
public DateTime? MinStartDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The latest date for which a program starts to return
|
||||
/// </summary>
|
||||
public DateTime? MaxStartDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The earliest date for which a program ends to return
|
||||
/// </summary>
|
||||
public DateTime? MinEndDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The latest date for which a program ends to return
|
||||
/// </summary>
|
||||
public DateTime? MaxEndDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Used to specific whether to return news or not
|
||||
/// </summary>
|
||||
/// <remarks>If set to null, all programs will be returned</remarks>
|
||||
public bool? IsNews { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Used to specific whether to return movies or not
|
||||
/// </summary>
|
||||
/// <remarks>If set to null, all programs will be returned</remarks>
|
||||
public bool? IsMovie { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance is kids.
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [is kids] contains no value, <c>true</c> if [is kids]; otherwise, <c>false</c>.</value>
|
||||
public bool? IsKids { get; set; }
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance is sports.
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [is sports] contains no value, <c>true</c> if [is sports]; otherwise, <c>false</c>.</value>
|
||||
public bool? IsSports { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Skips over a given number of items within the results. Use for paging.
|
||||
/// </summary>
|
||||
public int? StartIndex { get; set; }
|
||||
public bool? IsSeries { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance has aired.
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [has aired] contains no value, <c>true</c> if [has aired]; otherwise, <c>false</c>.</value>
|
||||
public bool? HasAired { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The maximum number of items to return
|
||||
/// </summary>
|
||||
public int? Limit { get; set; }
|
||||
|
||||
public Tuple<string, SortOrder>[] OrderBy { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Limit results to items containing specific genres
|
||||
/// </summary>
|
||||
/// <value>The genres.</value>
|
||||
public Guid[] GenreIds { get; set; }
|
||||
public string[] Genres { get; set; }
|
||||
}
|
||||
}
|
|
@ -1,73 +0,0 @@
|
|||
using MediaBrowser.Model.Entities;
|
||||
using MediaBrowser.Model.Querying;
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.LiveTv
|
||||
{
|
||||
public class RecommendedProgramQuery
|
||||
{
|
||||
/// <summary>
|
||||
/// Fields to return within the items, in addition to basic information
|
||||
/// </summary>
|
||||
/// <value>The fields.</value>
|
||||
public ItemFields[] Fields { get; set; }
|
||||
public bool? EnableImages { get; set; }
|
||||
public int? ImageTypeLimit { get; set; }
|
||||
public ImageType[] EnableImageTypes { get; set; }
|
||||
public Guid[] GenreIds { get; set; }
|
||||
|
||||
public bool EnableTotalRecordCount { get; set; }
|
||||
|
||||
public RecommendedProgramQuery()
|
||||
{
|
||||
EnableTotalRecordCount = true;
|
||||
GenreIds = new Guid[] { };
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the user identifier.
|
||||
/// </summary>
|
||||
/// <value>The user identifier.</value>
|
||||
public string UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance is airing.
|
||||
/// </summary>
|
||||
/// <value><c>true</c> if this instance is airing; otherwise, <c>false</c>.</value>
|
||||
public bool? IsAiring { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance has aired.
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [has aired] contains no value, <c>true</c> if [has aired]; otherwise, <c>false</c>.</value>
|
||||
public bool? HasAired { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The maximum number of items to return
|
||||
/// </summary>
|
||||
/// <value>The limit.</value>
|
||||
public int? Limit { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance is movie.
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [is movie] contains no value, <c>true</c> if [is movie]; otherwise, <c>false</c>.</value>
|
||||
public bool? IsNews { get; set; }
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance is movie.
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [is movie] contains no value, <c>true</c> if [is movie]; otherwise, <c>false</c>.</value>
|
||||
public bool? IsMovie { get; set; }
|
||||
public bool? IsSeries { get; set; }
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance is kids.
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [is kids] contains no value, <c>true</c> if [is kids]; otherwise, <c>false</c>.</value>
|
||||
public bool? IsKids { get; set; }
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether this instance is sports.
|
||||
/// </summary>
|
||||
/// <value><c>null</c> if [is sports] contains no value, <c>true</c> if [is sports]; otherwise, <c>false</c>.</value>
|
||||
public bool? IsSports { get; set; }
|
||||
}
|
||||
}
|
|
@ -7,8 +7,6 @@ namespace MediaBrowser.Model.MediaInfo
|
|||
{
|
||||
public class MediaInfo : MediaSourceInfo, IHasProviderIds
|
||||
{
|
||||
private static readonly string[] EmptyStringArray = new string[] {};
|
||||
|
||||
public ChapterInfo[] Chapters { get; set; }
|
||||
|
||||
/// <summary>
|
||||
|
@ -56,13 +54,13 @@ namespace MediaBrowser.Model.MediaInfo
|
|||
|
||||
public MediaInfo()
|
||||
{
|
||||
Chapters = new ChapterInfo[] { };
|
||||
Artists = new string[] {};
|
||||
AlbumArtists = EmptyStringArray;
|
||||
Studios = new string[] {};
|
||||
Genres = new string[] {};
|
||||
People = new BaseItemPerson[] { };
|
||||
Chapters = Array.Empty<ChapterInfo>();
|
||||
Artists = Array.Empty<string>();
|
||||
AlbumArtists = Array.Empty<string>();
|
||||
Studios = Array.Empty<string>();
|
||||
Genres = Array.Empty<string>();
|
||||
People = Array.Empty<BaseItemPerson>();
|
||||
ProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using MediaBrowser.Model.Dlna;
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.MediaInfo
|
||||
|
|
|
@ -21,18 +21,6 @@ namespace MediaBrowser.Model.Notifications
|
|||
/// </summary>
|
||||
/// <value><c>true</c> if enabled; otherwise, <c>false</c>.</value>
|
||||
public bool Enabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the title format string.
|
||||
/// </summary>
|
||||
/// <value>The title format string.</value>
|
||||
public string Title { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the description.
|
||||
/// </summary>
|
||||
/// <value>The description.</value>
|
||||
public string Description { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the disabled services.
|
||||
|
@ -48,9 +36,9 @@ namespace MediaBrowser.Model.Notifications
|
|||
|
||||
public NotificationOption()
|
||||
{
|
||||
DisabledServices = new string[] {};
|
||||
DisabledMonitorUsers = new string[] {};
|
||||
SendToUsers = new string[] {};
|
||||
DisabledServices = Array.Empty<string>();
|
||||
DisabledMonitorUsers = Array.Empty<string>();
|
||||
SendToUsers = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace MediaBrowser.Model.Notifications
|
||||
{
|
||||
|
@ -22,8 +21,6 @@ namespace MediaBrowser.Model.Notifications
|
|||
/// </summary>
|
||||
public string NotificationType { get; set; }
|
||||
|
||||
public Dictionary<string, string> Variables { get; set; }
|
||||
|
||||
public SendToUserType? SendToUserMode { get; set; }
|
||||
|
||||
public NotificationRequest()
|
||||
|
|
|
@ -1,8 +0,0 @@
|
|||
namespace MediaBrowser.Model.Notifications
|
||||
{
|
||||
public class NotificationServiceInfo
|
||||
{
|
||||
public string Name { get; set; }
|
||||
public string Id { get; set; }
|
||||
}
|
||||
}
|
|
@ -1,5 +1,4 @@
|
|||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Notifications
|
||||
{
|
||||
|
@ -14,16 +13,5 @@ namespace MediaBrowser.Model.Notifications
|
|||
public string Category { get; set; }
|
||||
|
||||
public bool IsBasedOnUserEvent { get; set; }
|
||||
|
||||
public string DefaultTitle { get; set; }
|
||||
|
||||
public string DefaultDescription { get; set; }
|
||||
|
||||
public string[] Variables { get; set; }
|
||||
|
||||
public NotificationTypeInfo()
|
||||
{
|
||||
Variables = new string[] {};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,11 +1,10 @@
|
|||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System;
|
||||
|
||||
namespace MediaBrowser.Model.Playlists
|
||||
{
|
||||
public class PlaylistCreationRequest
|
||||
{
|
||||
public string Name { get; set; }
|
||||
public string Name { get; set; }
|
||||
|
||||
public Guid[] ItemIdList { get; set; }
|
||||
|
||||
|
|
|
@ -18,10 +18,10 @@ namespace MediaBrowser.Model.Providers
|
|||
|
||||
public SubtitleOptions()
|
||||
{
|
||||
DownloadLanguages = new string[] {};
|
||||
DownloadLanguages = Array.Empty<string>();
|
||||
|
||||
SkipIfAudioTrackMatches = true;
|
||||
RequirePerfectMatch = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,10 +12,10 @@ namespace MediaBrowser.Model.Querying
|
|||
|
||||
public QueryFiltersLegacy()
|
||||
{
|
||||
Genres = new string[] {};
|
||||
Tags = new string[] {};
|
||||
OfficialRatings = new string[] {};
|
||||
Years = new int[] { };
|
||||
Genres = Array.Empty<string>();
|
||||
Tags = Array.Empty<string>();
|
||||
OfficialRatings = Array.Empty<string>();
|
||||
Years = Array.Empty<int>();
|
||||
}
|
||||
}
|
||||
public class QueryFilters
|
||||
|
@ -25,8 +25,8 @@ namespace MediaBrowser.Model.Querying
|
|||
|
||||
public QueryFilters()
|
||||
{
|
||||
Tags = new string[] {};
|
||||
Genres = new NameGuidPair[] { };
|
||||
Tags = Array.Empty<string>();
|
||||
Genres = Array.Empty<NameGuidPair>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -57,9 +57,9 @@ namespace MediaBrowser.Model.Search
|
|||
IncludePeople = true;
|
||||
IncludeStudios = true;
|
||||
|
||||
MediaTypes = new string[] {};
|
||||
IncludeItemTypes = new string[] {};
|
||||
ExcludeItemTypes = new string[] {};
|
||||
MediaTypes = Array.Empty<string>();
|
||||
IncludeItemTypes = Array.Empty<string>();
|
||||
ExcludeItemTypes = Array.Empty<string>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,9 +25,9 @@ namespace MediaBrowser.Model.Session
|
|||
|
||||
public ClientCapabilities()
|
||||
{
|
||||
PlayableMediaTypes = new string[] {};
|
||||
SupportedCommands = new string[] {};
|
||||
PlayableMediaTypes = Array.Empty<string>();
|
||||
SupportedCommands = Array.Empty<string>();
|
||||
SupportsPersistentIdentifier = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,117 +0,0 @@
|
|||
using MediaBrowser.Model.Dto;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace MediaBrowser.Model.Session
|
||||
{
|
||||
public class SessionInfoDto
|
||||
{
|
||||
/// <summary>
|
||||
/// Gets or sets the supported commands.
|
||||
/// </summary>
|
||||
/// <value>The supported commands.</value>
|
||||
public string[] SupportedCommands { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the playable media types.
|
||||
/// </summary>
|
||||
/// <value>The playable media types.</value>
|
||||
public string[] PlayableMediaTypes { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the id.
|
||||
/// </summary>
|
||||
/// <value>The id.</value>
|
||||
public string Id { get; set; }
|
||||
|
||||
public string ServerId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the user id.
|
||||
/// </summary>
|
||||
/// <value>The user id.</value>
|
||||
public string UserId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the user primary image tag.
|
||||
/// </summary>
|
||||
/// <value>The user primary image tag.</value>
|
||||
public string UserPrimaryImageTag { get; set; }
|
||||
|
||||
public string RemoteEndPoint { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name of the user.
|
||||
/// </summary>
|
||||
/// <value>The name of the user.</value>
|
||||
public string UserName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the additional users present.
|
||||
/// </summary>
|
||||
/// <value>The additional users present.</value>
|
||||
public SessionUserInfo[] AdditionalUsers { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the application version.
|
||||
/// </summary>
|
||||
/// <value>The application version.</value>
|
||||
public string ApplicationVersion { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the type of the client.
|
||||
/// </summary>
|
||||
/// <value>The type of the client.</value>
|
||||
public string Client { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the last activity date.
|
||||
/// </summary>
|
||||
/// <value>The last activity date.</value>
|
||||
public DateTime LastActivityDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the name of the device.
|
||||
/// </summary>
|
||||
/// <value>The name of the device.</value>
|
||||
public string DeviceName { get; set; }
|
||||
|
||||
public string DeviceType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the now playing item.
|
||||
/// </summary>
|
||||
/// <value>The now playing item.</value>
|
||||
public BaseItemDto NowPlayingItem { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the device id.
|
||||
/// </summary>
|
||||
/// <value>The device id.</value>
|
||||
public string DeviceId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the application icon URL.
|
||||
/// </summary>
|
||||
/// <value>The application icon URL.</value>
|
||||
public string AppIconUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets a value indicating whether [supports remote control].
|
||||
/// </summary>
|
||||
/// <value><c>true</c> if [supports remote control]; otherwise, <c>false</c>.</value>
|
||||
public bool SupportsRemoteControl { get; set; }
|
||||
|
||||
public PlayerStateInfo PlayState { get; set; }
|
||||
|
||||
public TranscodingInfo TranscodingInfo { get; set; }
|
||||
|
||||
public SessionInfoDto()
|
||||
{
|
||||
AdditionalUsers = new SessionUserInfo[] { };
|
||||
|
||||
PlayableMediaTypes = new string[] {};
|
||||
SupportedCommands = new string[] {};
|
||||
}
|
||||
}
|
||||
}
|
|
@ -1,6 +1,4 @@
|
|||
using System;
|
||||
using System.Collections.Generic;
|
||||
using MediaBrowser.Model.Sync;
|
||||
|
||||
namespace MediaBrowser.Model.Sync
|
||||
{
|
||||
|
@ -108,7 +106,7 @@ namespace MediaBrowser.Model.Sync
|
|||
|
||||
public SyncJob()
|
||||
{
|
||||
RequestedItemIds = new Guid[] { };
|
||||
RequestedItemIds = Array.Empty<Guid>();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -78,7 +78,7 @@ namespace MediaBrowser.Model.Users
|
|||
public UserPolicy()
|
||||
{
|
||||
EnableContentDeletion = true;
|
||||
EnableContentDeletionFromFolders = new string[] { };
|
||||
EnableContentDeletionFromFolders = Array.Empty<string>();
|
||||
|
||||
EnableSyncTranscoding = true;
|
||||
EnableMediaConversion = true;
|
||||
|
@ -97,20 +97,20 @@ namespace MediaBrowser.Model.Users
|
|||
|
||||
EnableSharedDeviceControl = true;
|
||||
|
||||
BlockedTags = new string[] { };
|
||||
BlockUnratedItems = new UnratedItem[] { };
|
||||
BlockedTags = Array.Empty<string>();
|
||||
BlockUnratedItems = Array.Empty<UnratedItem>();
|
||||
|
||||
EnableUserPreferenceAccess = true;
|
||||
|
||||
AccessSchedules = new AccessSchedule[] { };
|
||||
AccessSchedules = Array.Empty<AccessSchedule>();
|
||||
|
||||
EnableAllChannels = true;
|
||||
EnabledChannels = new string[] { };
|
||||
EnabledChannels = Array.Empty<string>();
|
||||
|
||||
EnableAllFolders = true;
|
||||
EnabledFolders = new string[] { };
|
||||
EnabledFolders = Array.Empty<string>();
|
||||
|
||||
EnabledDevices = new string[] { };
|
||||
EnabledDevices = Array.Empty<string>();
|
||||
EnableAllDevices = true;
|
||||
|
||||
EnableContentDownloading = true;
|
||||
|
@ -118,4 +118,4 @@ namespace MediaBrowser.Model.Users
|
|||
EnableRemoteAccess = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,20 +1,11 @@
|
|||
using MediaBrowser.Common.Configuration;
|
||||
using MediaBrowser.Common.Extensions;
|
||||
using MediaBrowser.Controller.Chapters;
|
||||
using MediaBrowser.Controller.Chapters;
|
||||
using MediaBrowser.Controller.Configuration;
|
||||
using MediaBrowser.Controller.Entities;
|
||||
using MediaBrowser.Controller.Entities.Movies;
|
||||
using MediaBrowser.Controller.Entities.TV;
|
||||
using MediaBrowser.Controller.Library;
|
||||
using MediaBrowser.Controller.Persistence;
|
||||
using MediaBrowser.Controller.Providers;
|
||||
using MediaBrowser.Model.Configuration;
|
||||
using MediaBrowser.Model.Entities;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace MediaBrowser.Providers.Chapters
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue
Block a user