diff options
1591 files changed, 11971 insertions, 16219 deletions
diff --git a/BDInfo/BDInfo.csproj b/BDInfo/BDInfo.csproj index b64f5e7a7..774e5709d 100644 --- a/BDInfo/BDInfo.csproj +++ b/BDInfo/BDInfo.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <Compile Include="..\SharedVersion.cs" Link="SharedVersion.cs" /> diff --git a/BDInfo/BDInfoSettings.cs b/BDInfo/BDInfoSettings.cs index 7abb67499..f4cb30016 100644 --- a/BDInfo/BDInfoSettings.cs +++ b/BDInfo/BDInfoSettings.cs @@ -1,105 +1,33 @@ - + namespace BDInfo { class BDInfoSettings { - public static bool GenerateStreamDiagnostics - { - get - { - return true; - } - } + public static bool GenerateStreamDiagnostics => true; - public static bool EnableSSIF - { - get - { - return true; - } - } + public static bool EnableSSIF => true; - public static bool AutosaveReport - { - get - { - return false; - } - } + public static bool AutosaveReport => false; - public static bool GenerateFrameDataFile - { - get - { - return false; - } - } + public static bool GenerateFrameDataFile => false; - public static bool FilterLoopingPlaylists - { - get - { - return true; - } - } + public static bool FilterLoopingPlaylists => true; - public static bool FilterShortPlaylists - { - get - { - return false; - } - } + public static bool FilterShortPlaylists => false; - public static int FilterShortPlaylistsValue - { - get - { - return 0; - } - } + public static int FilterShortPlaylistsValue => 0; - public static bool UseImagePrefix - { - get - { - return false; - } - } + public static bool UseImagePrefix => false; - public static string UseImagePrefixValue - { - get - { - return null; - } - } + public static string UseImagePrefixValue => null; /// <summary> /// Setting this to false throws an IComparer error on some discs. /// </summary> - public static bool KeepStreamOrder - { - get - { - return true; - } - } + public static bool KeepStreamOrder => true; - public static bool GenerateTextSummary - { - get - { - return false; - } - } + public static bool GenerateTextSummary => false; - public static string LastPath - { - get - { - return string.Empty; - } - } + public static string LastPath => string.Empty; } } diff --git a/BDInfo/BDROM.cs b/BDInfo/BDROM.cs index 7d8268222..b747d996f 100644 --- a/BDInfo/BDROM.cs +++ b/BDInfo/BDROM.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -164,7 +164,7 @@ namespace BDInfo if (DirectoryPLAYLIST != null) { FileSystemMetadata[] files = GetFiles(DirectoryPLAYLIST.FullName, ".mpls").ToArray(); - foreach (FileSystemMetadata file in files) + foreach (var file in files) { PlaylistFiles.Add( file.Name.ToUpper(), new TSPlaylistFile(this, file, _fileSystem, textEncoding)); @@ -174,7 +174,7 @@ namespace BDInfo if (DirectorySTREAM != null) { FileSystemMetadata[] files = GetFiles(DirectorySTREAM.FullName, ".m2ts").ToArray(); - foreach (FileSystemMetadata file in files) + foreach (var file in files) { StreamFiles.Add( file.Name.ToUpper(), new TSStreamFile(file, _fileSystem)); @@ -184,7 +184,7 @@ namespace BDInfo if (DirectoryCLIPINF != null) { FileSystemMetadata[] files = GetFiles(DirectoryCLIPINF.FullName, ".clpi").ToArray(); - foreach (FileSystemMetadata file in files) + foreach (var file in files) { StreamClipFiles.Add( file.Name.ToUpper(), new TSStreamClipFile(file, _fileSystem, textEncoding)); @@ -194,7 +194,7 @@ namespace BDInfo if (DirectorySSIF != null) { FileSystemMetadata[] files = GetFiles(DirectorySSIF.FullName, ".ssif").ToArray(); - foreach (FileSystemMetadata file in files) + foreach (var file in files) { InterleavedFiles.Add( file.Name.ToUpper(), new TSInterleavedFile(file)); @@ -214,8 +214,8 @@ namespace BDInfo public void Scan() { - List<TSStreamClipFile> errorStreamClipFiles = new List<TSStreamClipFile>(); - foreach (TSStreamClipFile streamClipFile in StreamClipFiles.Values) + var errorStreamClipFiles = new List<TSStreamClipFile>(); + foreach (var streamClipFile in StreamClipFiles.Values) { try { @@ -239,7 +239,7 @@ namespace BDInfo } } - foreach (TSStreamFile streamFile in StreamFiles.Values) + foreach (var streamFile in StreamFiles.Values) { string ssifName = Path.GetFileNameWithoutExtension(streamFile.Name) + ".SSIF"; if (InterleavedFiles.ContainsKey(ssifName)) @@ -252,8 +252,8 @@ namespace BDInfo StreamFiles.Values.CopyTo(streamFiles, 0); Array.Sort(streamFiles, CompareStreamFiles); - List<TSPlaylistFile> errorPlaylistFiles = new List<TSPlaylistFile>(); - foreach (TSPlaylistFile playlistFile in PlaylistFiles.Values) + var errorPlaylistFiles = new List<TSPlaylistFile>(); + foreach (var playlistFile in PlaylistFiles.Values) { try { @@ -277,15 +277,15 @@ namespace BDInfo } } - List<TSStreamFile> errorStreamFiles = new List<TSStreamFile>(); - foreach (TSStreamFile streamFile in streamFiles) + var errorStreamFiles = new List<TSStreamFile>(); + foreach (var streamFile in streamFiles) { try { - List<TSPlaylistFile> playlists = new List<TSPlaylistFile>(); - foreach (TSPlaylistFile playlist in PlaylistFiles.Values) + var playlists = new List<TSPlaylistFile>(); + foreach (var playlist in PlaylistFiles.Values) { - foreach (TSStreamClip streamClip in playlist.StreamClips) + foreach (var streamClip in playlist.StreamClips) { if (streamClip.Name == streamFile.Name) { @@ -314,12 +314,12 @@ namespace BDInfo } } - foreach (TSPlaylistFile playlistFile in PlaylistFiles.Values) + foreach (var playlistFile in PlaylistFiles.Values) { playlistFile.Initialize(); if (!Is50Hz) { - foreach (TSVideoStream videoStream in playlistFile.VideoStreams) + foreach (var videoStream in playlistFile.VideoStreams) { if (videoStream.FrameRate == TSFrameRate.FRAMERATE_25 || videoStream.FrameRate == TSFrameRate.FRAMERATE_50) @@ -369,7 +369,7 @@ namespace BDInfo if (dir != null) { FileSystemMetadata[] children = _fileSystem.GetDirectories(dir.FullName).ToArray(); - foreach (FileSystemMetadata child in children) + foreach (var child in children) { if (string.Equals(child.Name, name, StringComparison.OrdinalIgnoreCase)) { @@ -378,7 +378,7 @@ namespace BDInfo } if (searchDepth > 0) { - foreach (FileSystemMetadata child in children) + foreach (var child in children) { GetDirectory( name, child, searchDepth - 1); @@ -395,7 +395,7 @@ namespace BDInfo //if (!ExcludeDirs.Contains(directoryInfo.Name.ToUpper())) // TODO: Keep? { FileSystemMetadata[] pathFiles = _fileSystem.GetFiles(directoryInfo.FullName).ToArray(); - foreach (FileSystemMetadata pathFile in pathFiles) + foreach (var pathFile in pathFiles) { if (pathFile.Extension.ToUpper() == ".SSIF") { @@ -405,7 +405,7 @@ namespace BDInfo } FileSystemMetadata[] pathChildren = _fileSystem.GetDirectories(directoryInfo.FullName).ToArray(); - foreach (FileSystemMetadata pathChild in pathChildren) + foreach (var pathChild in pathChildren) { size += GetDirectorySize(pathChild); } diff --git a/BDInfo/LanguageCodes.cs b/BDInfo/LanguageCodes.cs index 90d0bccc4..ab2693ffb 100644 --- a/BDInfo/LanguageCodes.cs +++ b/BDInfo/LanguageCodes.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // diff --git a/BDInfo/Properties/AssemblyInfo.cs b/BDInfo/Properties/AssemblyInfo.cs index 77bd9df2a..788cf7366 100644 --- a/BDInfo/Properties/AssemblyInfo.cs +++ b/BDInfo/Properties/AssemblyInfo.cs @@ -15,7 +15,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyCulture("")] [assembly: NeutralResourcesLanguage("en")] -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] diff --git a/BDInfo/ReadMe.txt b/BDInfo/ReadMe.txt index 68326d560..e70b0b66c 100644 --- a/BDInfo/ReadMe.txt +++ b/BDInfo/ReadMe.txt @@ -1,5 +1,5 @@ -The source is taken from the BDRom folder of this project: +The source is taken from the BDRom folder of this project: http://www.cinemasquid.com/blu-ray/tools/bdinfo -BDInfoSettings was taken from the FormSettings class, and changed so that the settings all return defaults.
\ No newline at end of file +BDInfoSettings was taken from the FormSettings class, and changed so that the settings all return defaults. diff --git a/BDInfo/TSCodecAC3.cs b/BDInfo/TSCodecAC3.cs index 144141c30..35d306a19 100644 --- a/BDInfo/TSCodecAC3.cs +++ b/BDInfo/TSCodecAC3.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -24,7 +24,7 @@ namespace BDInfo { public abstract class TSCodecAC3 { - private static byte[] eac3_blocks = new byte[] { 1, 2, 3, 6 }; + private static byte[] eac3_blocks = new byte[] { 1, 2, 3, 6 }; public static void Scan( TSAudioStream stream, diff --git a/BDInfo/TSCodecAVC.cs b/BDInfo/TSCodecAVC.cs index 43c6d6f85..5833d169f 100644 --- a/BDInfo/TSCodecAVC.cs +++ b/BDInfo/TSCodecAVC.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // diff --git a/BDInfo/TSCodecDTS.cs b/BDInfo/TSCodecDTS.cs index 904dcd986..ff94cb702 100644 --- a/BDInfo/TSCodecDTS.cs +++ b/BDInfo/TSCodecDTS.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // diff --git a/BDInfo/TSCodecDTSHD.cs b/BDInfo/TSCodecDTSHD.cs index 3c5ad85cc..57a136d2d 100644 --- a/BDInfo/TSCodecDTSHD.cs +++ b/BDInfo/TSCodecDTSHD.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -211,7 +211,7 @@ namespace BDInfo // TODO if (stream.CoreStream != null) { - TSAudioStream coreStream = (TSAudioStream)stream.CoreStream; + var coreStream = (TSAudioStream)stream.CoreStream; if (coreStream.AudioMode == TSAudioMode.Extended && stream.ChannelCount == 5) { diff --git a/BDInfo/TSCodecLPCM.cs b/BDInfo/TSCodecLPCM.cs index d12674f0e..5709d8689 100644 --- a/BDInfo/TSCodecLPCM.cs +++ b/BDInfo/TSCodecLPCM.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // diff --git a/BDInfo/TSCodecMPEG2.cs b/BDInfo/TSCodecMPEG2.cs index 1d523528e..8bcd07d02 100644 --- a/BDInfo/TSCodecMPEG2.cs +++ b/BDInfo/TSCodecMPEG2.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // diff --git a/BDInfo/TSCodecMVC.cs b/BDInfo/TSCodecMVC.cs index 80fed3886..abff0c1b0 100644 --- a/BDInfo/TSCodecMVC.cs +++ b/BDInfo/TSCodecMVC.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // diff --git a/BDInfo/TSCodecTrueHD.cs b/BDInfo/TSCodecTrueHD.cs index 6ea78614c..5e81e162c 100644 --- a/BDInfo/TSCodecTrueHD.cs +++ b/BDInfo/TSCodecTrueHD.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // diff --git a/BDInfo/TSCodecVC1.cs b/BDInfo/TSCodecVC1.cs index ce9eabdb9..e2fbbf692 100644 --- a/BDInfo/TSCodecVC1.cs +++ b/BDInfo/TSCodecVC1.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // diff --git a/BDInfo/TSInterleavedFile.cs b/BDInfo/TSInterleavedFile.cs index 44a16bbaa..0f35cfb2a 100644 --- a/BDInfo/TSInterleavedFile.cs +++ b/BDInfo/TSInterleavedFile.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -17,7 +17,6 @@ // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA //============================================================================= -using System.IO; using MediaBrowser.Model.IO; // TODO: Do more interesting things here... diff --git a/BDInfo/TSPlaylistFile.cs b/BDInfo/TSPlaylistFile.cs index c4e8d62ec..ba0b37f00 100644 --- a/BDInfo/TSPlaylistFile.cs +++ b/BDInfo/TSPlaylistFile.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -21,7 +21,6 @@ using System; using System.Collections.Generic; using System.IO; -using System.Text; using MediaBrowser.Model.IO; using MediaBrowser.Model.Text; @@ -86,9 +85,9 @@ namespace BDInfo _fileSystem = fileSystem; _textEncoding = textEncoding; IsCustom = true; - foreach (TSStreamClip clip in clips) + foreach (var clip in clips) { - TSStreamClip newClip = new TSStreamClip( + var newClip = new TSStreamClip( clip.StreamFile, clip.StreamClipFile); newClip.Name = clip.Name; @@ -124,7 +123,7 @@ namespace BDInfo get { ulong size = 0; - foreach (TSStreamClip clip in StreamClips) + foreach (var clip in StreamClips) { size += clip.InterleavedFileSize; } @@ -136,7 +135,7 @@ namespace BDInfo get { ulong size = 0; - foreach (TSStreamClip clip in StreamClips) + foreach (var clip in StreamClips) { size += clip.FileSize; } @@ -148,7 +147,7 @@ namespace BDInfo get { double length = 0; - foreach (TSStreamClip clip in StreamClips) + foreach (var clip in StreamClips) { if (clip.AngleIndex == 0) { @@ -164,7 +163,7 @@ namespace BDInfo get { double length = 0; - foreach (TSStreamClip clip in StreamClips) + foreach (var clip in StreamClips) { length += clip.Length; } @@ -177,7 +176,7 @@ namespace BDInfo get { ulong size = 0; - foreach (TSStreamClip clip in StreamClips) + foreach (var clip in StreamClips) { if (clip.AngleIndex == 0) { @@ -193,7 +192,7 @@ namespace BDInfo get { ulong size = 0; - foreach (TSStreamClip clip in StreamClips) + foreach (var clip in StreamClips) { size += clip.PacketSize; } @@ -264,7 +263,7 @@ namespace BDInfo int itemCount = ReadInt16(data, ref pos); int subitemCount = ReadInt16(data, ref pos); - List<TSStreamClip> chapterClips = new List<TSStreamClip>(); + var chapterClips = new List<TSStreamClip>(); for (int itemIndex = 0; itemIndex < itemCount; itemIndex++) { int itemStart = pos; @@ -311,7 +310,7 @@ namespace BDInfo if (outTime < 0) outTime &= 0x7FFFFFFF; double timeOut = (double)outTime / 45000; - TSStreamClip streamClip = new TSStreamClip( + var streamClip = new TSStreamClip( streamFile, streamClipFile); streamClip.Name = streamFileName; //TODO @@ -362,7 +361,7 @@ namespace BDInfo FileInfo.Name, angleClipFileName)); } - TSStreamClip angleClip = + var angleClip = new TSStreamClip(angleFile, angleClipFile); angleClip.AngleIndex = angle + 1; angleClip.TimeIn = streamClip.TimeIn; @@ -395,33 +394,33 @@ namespace BDInfo for (int i = 0; i < streamCountVideo; i++) { - TSStream stream = CreatePlaylistStream(data, ref pos); + var stream = CreatePlaylistStream(data, ref pos); if (stream != null) PlaylistStreams[stream.PID] = stream; } for (int i = 0; i < streamCountAudio; i++) { - TSStream stream = CreatePlaylistStream(data, ref pos); + var stream = CreatePlaylistStream(data, ref pos); if (stream != null) PlaylistStreams[stream.PID] = stream; } for (int i = 0; i < streamCountPG; i++) { - TSStream stream = CreatePlaylistStream(data, ref pos); + var stream = CreatePlaylistStream(data, ref pos); if (stream != null) PlaylistStreams[stream.PID] = stream; } for (int i = 0; i < streamCountIG; i++) { - TSStream stream = CreatePlaylistStream(data, ref pos); + var stream = CreatePlaylistStream(data, ref pos); if (stream != null) PlaylistStreams[stream.PID] = stream; } for (int i = 0; i < streamCountSecondaryAudio; i++) { - TSStream stream = CreatePlaylistStream(data, ref pos); + var stream = CreatePlaylistStream(data, ref pos); if (stream != null) PlaylistStreams[stream.PID] = stream; pos += 2; } for (int i = 0; i < streamCountSecondaryVideo; i++) { - TSStream stream = CreatePlaylistStream(data, ref pos); + var stream = CreatePlaylistStream(data, ref pos); if (stream != null) PlaylistStreams[stream.PID] = stream; pos += 6; } @@ -446,7 +445,7 @@ namespace BDInfo chapterIndex < chapterCount; chapterIndex++) { - int chapterType = data[pos+1]; + int chapterType = data[pos + 1]; if (chapterType == 1) { @@ -459,7 +458,7 @@ namespace BDInfo ((long)data[pos + 6] << 8) + ((long)data[pos + 7]); - TSStreamClip streamClip = chapterClips[streamFileIndex]; + var streamClip = chapterClips[streamFileIndex]; double chapterSeconds = (double)chapterTime / 45000; @@ -499,8 +498,8 @@ namespace BDInfo { LoadStreamClips(); - Dictionary<string, List<double>> clipTimes = new Dictionary<string, List<double>>(); - foreach (TSStreamClip clip in StreamClips) + var clipTimes = new Dictionary<string, List<double>>(); + foreach (var clip in StreamClips) { if (clip.AngleIndex == 0) { @@ -568,7 +567,7 @@ namespace BDInfo int streamLength = data[pos++]; int streamPos = pos; - TSStreamType streamType = (TSStreamType)data[pos++]; + var streamType = (TSStreamType)data[pos++]; switch (streamType) { case TSStreamType.MVC_VIDEO: @@ -580,11 +579,11 @@ namespace BDInfo case TSStreamType.MPEG2_VIDEO: case TSStreamType.VC1_VIDEO: - TSVideoFormat videoFormat = (TSVideoFormat) + var videoFormat = (TSVideoFormat) (data[pos] >> 4); - TSFrameRate frameRate = (TSFrameRate) + var frameRate = (TSFrameRate) (data[pos] & 0xF); - TSAspectRatio aspectRatio = (TSAspectRatio) + var aspectRatio = (TSAspectRatio) (data[pos + 1] >> 4); stream = new TSVideoStream(); @@ -618,9 +617,9 @@ namespace BDInfo int audioFormat = ReadByte(data, ref pos); - TSChannelLayout channelLayout = (TSChannelLayout) + var channelLayout = (TSChannelLayout) (audioFormat >> 4); - TSSampleRate sampleRate = (TSSampleRate) + var sampleRate = (TSSampleRate) (audioFormat & 0xF); string audioLanguage = ReadString(data, 3, ref pos); @@ -713,7 +712,7 @@ namespace BDInfo { referenceClip = StreamClips[0]; } - foreach (TSStreamClip clip in StreamClips) + foreach (var clip in StreamClips) { if (clip.StreamClipFile.Streams.Count > referenceClip.StreamClipFile.Streams.Count) { @@ -739,12 +738,12 @@ namespace BDInfo } } - foreach (TSStream clipStream + foreach (var clipStream in referenceClip.StreamClipFile.Streams.Values) { if (!Streams.ContainsKey(clipStream.PID)) { - TSStream stream = clipStream.Clone(); + var stream = clipStream.Clone(); Streams[clipStream.PID] = stream; if (!IsCustom && !PlaylistStreams.ContainsKey(stream.PID)) @@ -780,7 +779,7 @@ namespace BDInfo referenceClip.StreamFile.Streams.ContainsKey(4114) && !Streams.ContainsKey(4114)) { - TSStream stream = referenceClip.StreamFile.Streams[4114].Clone(); + var stream = referenceClip.StreamFile.Streams[4114].Clone(); Streams[4114] = stream; if (stream.IsVideoStream) { @@ -788,12 +787,12 @@ namespace BDInfo } } - foreach (TSStream clipStream + foreach (var clipStream in referenceClip.StreamFile.Streams.Values) { if (Streams.ContainsKey(clipStream.PID)) { - TSStream stream = Streams[clipStream.PID]; + var stream = Streams[clipStream.PID]; if (stream.StreamType != clipStream.StreamType) continue; @@ -812,8 +811,8 @@ namespace BDInfo else if (stream.IsAudioStream && clipStream.IsAudioStream) { - TSAudioStream audioStream = (TSAudioStream)stream; - TSAudioStream clipAudioStream = (TSAudioStream)clipStream; + var audioStream = (TSAudioStream)stream; + var clipAudioStream = (TSAudioStream)clipStream; if (clipAudioStream.ChannelCount > audioStream.ChannelCount) { @@ -864,7 +863,7 @@ namespace BDInfo SortedStreams.Add(stream); for (int i = 0; i < AngleCount; i++) { - TSStream angleStream = stream.Clone(); + var angleStream = stream.Clone(); angleStream.AngleIndex = i + 1; AngleStreams[i][angleStream.PID] = angleStream; SortedStreams.Add(angleStream); @@ -901,7 +900,7 @@ namespace BDInfo public void ClearBitrates() { - foreach (TSStreamClip clip in StreamClips) + foreach (var clip in StreamClips) { clip.PayloadBytes = 0; clip.PacketCount = 0; @@ -909,7 +908,7 @@ namespace BDInfo if (clip.StreamFile != null) { - foreach (TSStream stream in clip.StreamFile.Streams.Values) + foreach (var stream in clip.StreamFile.Streams.Values) { stream.PayloadBytes = 0; stream.PacketCount = 0; @@ -924,7 +923,7 @@ namespace BDInfo } } - foreach (TSStream stream in SortedStreams) + foreach (var stream in SortedStreams) { stream.PayloadBytes = 0; stream.PacketCount = 0; diff --git a/BDInfo/TSStream.cs b/BDInfo/TSStream.cs index 250308b1a..3c30a8597 100644 --- a/BDInfo/TSStream.cs +++ b/BDInfo/TSStream.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -109,7 +109,7 @@ namespace BDInfo public TSDescriptor Clone() { - TSDescriptor descriptor = + var descriptor = new TSDescriptor(Name, (byte)Value.Length); Value.CopyTo(descriptor.Value, 0); return descriptor; @@ -142,21 +142,12 @@ namespace BDInfo public double PacketSeconds = 0; public int AngleIndex = 0; - public ulong PacketSize - { - get - { - return PacketCount * 192; - } - } + public ulong PacketSize => PacketCount * 192; private string _LanguageCode; public string LanguageCode { - get - { - return _LanguageCode; - } + get => _LanguageCode; set { _LanguageCode = value; @@ -398,13 +389,7 @@ namespace BDInfo } } - public virtual string Description - { - get - { - return ""; - } - } + public virtual string Description => ""; public abstract TSStream Clone(); @@ -419,7 +404,7 @@ namespace BDInfo if (Descriptors != null) { stream.Descriptors = new List<TSDescriptor>(); - foreach (TSDescriptor descriptor in Descriptors) + foreach (var descriptor in Descriptors) { stream.Descriptors.Add(descriptor.Clone()); } @@ -444,10 +429,7 @@ namespace BDInfo private TSVideoFormat _VideoFormat; public TSVideoFormat VideoFormat { - get - { - return _VideoFormat; - } + get => _VideoFormat; set { _VideoFormat = value; @@ -488,10 +470,7 @@ namespace BDInfo private TSFrameRate _FrameRate; public TSFrameRate FrameRate { - get - { - return _FrameRate; - } + get => _FrameRate; set { _FrameRate = value; @@ -574,7 +553,7 @@ namespace BDInfo public override TSStream Clone() { - TSVideoStream stream = new TSVideoStream(); + var stream = new TSVideoStream(); CopyTo(stream); stream.VideoFormat = _VideoFormat; @@ -748,7 +727,7 @@ namespace BDInfo public override TSStream Clone() { - TSAudioStream stream = new TSAudioStream(); + var stream = new TSAudioStream(); CopyTo(stream); stream.SampleRate = SampleRate; @@ -777,7 +756,7 @@ namespace BDInfo public override TSStream Clone() { - TSGraphicsStream stream = new TSGraphicsStream(); + var stream = new TSGraphicsStream(); CopyTo(stream); return stream; } @@ -793,7 +772,7 @@ namespace BDInfo public override TSStream Clone() { - TSTextStream stream = new TSTextStream(); + var stream = new TSTextStream(); CopyTo(stream); return stream; } diff --git a/BDInfo/TSStreamBuffer.cs b/BDInfo/TSStreamBuffer.cs index 2f9094876..30bd1a3f4 100644 --- a/BDInfo/TSStreamBuffer.cs +++ b/BDInfo/TSStreamBuffer.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -37,21 +37,9 @@ namespace BDInfo Stream = new MemoryStream(Buffer); } - public long Length - { - get - { - return (long)BufferLength; - } - } + public long Length => (long)BufferLength; - public long Position - { - get - { - return Stream.Position; - } - } + public long Position => Stream.Position; public void Add( byte[] buffer, @@ -123,7 +111,7 @@ namespace BDInfo data += (Stream.ReadByte() << shift); shift -= 8; } - BitVector32 vector = new BitVector32(data); + var vector = new BitVector32(data); int value = 0; for (int i = SkipBits; i < SkipBits + bits; i++) diff --git a/BDInfo/TSStreamClip.cs b/BDInfo/TSStreamClip.cs index d7592a71a..295eeb6b1 100644 --- a/BDInfo/TSStreamClip.cs +++ b/BDInfo/TSStreamClip.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -74,13 +74,7 @@ namespace BDInfo } } - public ulong PacketSize - { - get - { - return PacketCount * 192; - } - } + public ulong PacketSize => PacketCount * 192; public ulong PacketBitRate { @@ -96,11 +90,11 @@ namespace BDInfo public bool IsCompatible(TSStreamClip clip) { - foreach (TSStream stream1 in StreamFile.Streams.Values) + foreach (var stream1 in StreamFile.Streams.Values) { if (clip.StreamFile.Streams.ContainsKey(stream1.PID)) { - TSStream stream2 = clip.StreamFile.Streams[stream1.PID]; + var stream2 = clip.StreamFile.Streams[stream1.PID]; if (stream1.StreamType != stream2.StreamType) { return false; diff --git a/BDInfo/TSStreamClipFile.cs b/BDInfo/TSStreamClipFile.cs index f311dd839..be6299e1a 100644 --- a/BDInfo/TSStreamClipFile.cs +++ b/BDInfo/TSStreamClipFile.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -21,7 +21,6 @@ using System; using System.Collections.Generic; using System.IO; -using System.Text; using MediaBrowser.Model.IO; using MediaBrowser.Model.Text; @@ -37,7 +36,7 @@ namespace BDInfo public string Name = null; public Dictionary<ushort, TSStream> Streams = - new Dictionary<ushort,TSStream>(); + new Dictionary<ushort, TSStream>(); public TSStreamClipFile( FileSystemMetadata fileInfo, IFileSystem fileSystem, ITextEncoding textEncoding) @@ -115,7 +114,7 @@ namespace BDInfo streamOffset += 2; - TSStreamType streamType = (TSStreamType) + var streamType = (TSStreamType) clipData[streamOffset + 1]; switch (streamType) { @@ -127,18 +126,18 @@ namespace BDInfo case TSStreamType.MPEG1_VIDEO: case TSStreamType.MPEG2_VIDEO: case TSStreamType.VC1_VIDEO: - { - TSVideoFormat videoFormat = (TSVideoFormat) - (clipData[streamOffset + 2] >> 4); - TSFrameRate frameRate = (TSFrameRate) - (clipData[streamOffset + 2] & 0xF); - TSAspectRatio aspectRatio = (TSAspectRatio) - (clipData[streamOffset + 3] >> 4); - - stream = new TSVideoStream(); - ((TSVideoStream)stream).VideoFormat = videoFormat; - ((TSVideoStream)stream).AspectRatio = aspectRatio; - ((TSVideoStream)stream).FrameRate = frameRate; + { + var videoFormat = (TSVideoFormat) + (clipData[streamOffset + 2] >> 4); + var frameRate = (TSFrameRate) + (clipData[streamOffset + 2] & 0xF); + var aspectRatio = (TSAspectRatio) + (clipData[streamOffset + 3] >> 4); + + stream = new TSVideoStream(); + ((TSVideoStream)stream).VideoFormat = videoFormat; + ((TSVideoStream)stream).AspectRatio = aspectRatio; + ((TSVideoStream)stream).FrameRate = frameRate; #if DEBUG Debug.WriteLine(string.Format( "\t{0} {1} {2} {3} {4}", @@ -148,8 +147,8 @@ namespace BDInfo frameRate, aspectRatio)); #endif - } - break; + } + break; case TSStreamType.AC3_AUDIO: case TSStreamType.AC3_PLUS_AUDIO: @@ -162,23 +161,23 @@ namespace BDInfo case TSStreamType.LPCM_AUDIO: case TSStreamType.MPEG1_AUDIO: case TSStreamType.MPEG2_AUDIO: - { - byte[] languageBytes = new byte[3]; - Array.Copy(clipData, streamOffset + 3, - languageBytes, 0, languageBytes.Length); - string languageCode = - _textEncoding.GetASCIIEncoding().GetString(languageBytes, 0, languageBytes.Length); - - TSChannelLayout channelLayout = (TSChannelLayout) - (clipData[streamOffset + 2] >> 4); - TSSampleRate sampleRate = (TSSampleRate) - (clipData[streamOffset + 2] & 0xF); - - stream = new TSAudioStream(); - ((TSAudioStream)stream).LanguageCode = languageCode; - ((TSAudioStream)stream).ChannelLayout = channelLayout; - ((TSAudioStream)stream).SampleRate = TSAudioStream.ConvertSampleRate(sampleRate); - ((TSAudioStream)stream).LanguageCode = languageCode; + { + byte[] languageBytes = new byte[3]; + Array.Copy(clipData, streamOffset + 3, + languageBytes, 0, languageBytes.Length); + string languageCode = + _textEncoding.GetASCIIEncoding().GetString(languageBytes, 0, languageBytes.Length); + + var channelLayout = (TSChannelLayout) + (clipData[streamOffset + 2] >> 4); + var sampleRate = (TSSampleRate) + (clipData[streamOffset + 2] & 0xF); + + stream = new TSAudioStream(); + ((TSAudioStream)stream).LanguageCode = languageCode; + ((TSAudioStream)stream).ChannelLayout = channelLayout; + ((TSAudioStream)stream).SampleRate = TSAudioStream.ConvertSampleRate(sampleRate); + ((TSAudioStream)stream).LanguageCode = languageCode; #if DEBUG Debug.WriteLine(string.Format( "\t{0} {1} {2} {3} {4}", @@ -188,20 +187,20 @@ namespace BDInfo channelLayout, sampleRate)); #endif - } - break; + } + break; case TSStreamType.INTERACTIVE_GRAPHICS: case TSStreamType.PRESENTATION_GRAPHICS: - { - byte[] languageBytes = new byte[3]; - Array.Copy(clipData, streamOffset + 2, - languageBytes, 0, languageBytes.Length); - string languageCode = - _textEncoding.GetASCIIEncoding().GetString(languageBytes, 0, languageBytes.Length); + { + byte[] languageBytes = new byte[3]; + Array.Copy(clipData, streamOffset + 2, + languageBytes, 0, languageBytes.Length); + string languageCode = + _textEncoding.GetASCIIEncoding().GetString(languageBytes, 0, languageBytes.Length); stream = new TSGraphicsStream(); - stream.LanguageCode = languageCode; + stream.LanguageCode = languageCode; #if DEBUG Debug.WriteLine(string.Format( "\t{0} {1} {2}", @@ -209,16 +208,16 @@ namespace BDInfo streamType, languageCode)); #endif - } - break; + } + break; case TSStreamType.SUBTITLE: - { - byte[] languageBytes = new byte[3]; - Array.Copy(clipData, streamOffset + 3, - languageBytes, 0, languageBytes.Length); - string languageCode = - _textEncoding.GetASCIIEncoding().GetString(languageBytes, 0, languageBytes.Length); + { + byte[] languageBytes = new byte[3]; + Array.Copy(clipData, streamOffset + 3, + languageBytes, 0, languageBytes.Length); + string languageCode = + _textEncoding.GetASCIIEncoding().GetString(languageBytes, 0, languageBytes.Length); #if DEBUG Debug.WriteLine(string.Format( "\t{0} {1} {2}", @@ -227,9 +226,9 @@ namespace BDInfo languageCode)); #endif stream = new TSTextStream(); - stream.LanguageCode = languageCode; - } - break; + stream.LanguageCode = languageCode; + } + break; } if (stream != null) diff --git a/BDInfo/TSStreamFile.cs b/BDInfo/TSStreamFile.cs index 00e6b338e..ecf6609e2 100644 --- a/BDInfo/TSStreamFile.cs +++ b/BDInfo/TSStreamFile.cs @@ -1,4 +1,4 @@ -//============================================================================ +//============================================================================ // BDInfo - Blu-ray Video and Audio Analysis Tool // Copyright © 2010 Cinema Squid // @@ -283,7 +283,7 @@ namespace BDInfo bool isAVC = false; bool isMVC = false; - foreach (TSStream finishedStream in Streams.Values) + foreach (var finishedStream in Streams.Values) { if (!finishedStream.IsInitialized) { @@ -327,10 +327,10 @@ namespace BDInfo UpdateStreamBitrate(PID, PTSPID, PTS, PTSDiff); } - foreach (TSPlaylistFile playlist in Playlists) + foreach (var playlist in Playlists) { double packetSeconds = 0; - foreach (TSStreamClip clip in playlist.StreamClips) + foreach (var clip in playlist.StreamClips) { if (clip.AngleIndex == 0) { @@ -339,7 +339,7 @@ namespace BDInfo } if (packetSeconds > 0) { - foreach (TSStream playlistStream in playlist.SortedStreams) + foreach (var playlistStream in playlist.SortedStreams) { if (playlistStream.IsVBR) { @@ -366,14 +366,14 @@ namespace BDInfo { if (Playlists == null) return; - TSStreamState streamState = StreamStates[PID]; + var streamState = StreamStates[PID]; double streamTime = (double)PTS / 90000; double streamInterval = (double)PTSDiff / 90000; double streamOffset = streamTime + streamInterval; - foreach (TSPlaylistFile playlist in Playlists) + foreach (var playlist in Playlists) { - foreach (TSStreamClip clip in playlist.StreamClips) + foreach (var clip in playlist.StreamClips) { if (clip.Name != this.Name) continue; @@ -390,7 +390,7 @@ namespace BDInfo clip.PacketSeconds = streamOffset - clip.TimeIn; } - Dictionary<ushort, TSStream> playlistStreams = playlist.Streams; + var playlistStreams = playlist.Streams; if (clip.AngleIndex > 0 && clip.AngleIndex < playlist.AngleStreams.Count + 1) { @@ -398,7 +398,7 @@ namespace BDInfo } if (playlistStreams.ContainsKey(PID)) { - TSStream stream = playlistStreams[PID]; + var stream = playlistStreams[PID]; stream.PayloadBytes += streamState.WindowBytes; stream.PacketCount += streamState.WindowPackets; @@ -425,13 +425,13 @@ namespace BDInfo if (Streams.ContainsKey(PID)) { - TSStream stream = Streams[PID]; + var stream = Streams[PID]; stream.PayloadBytes += streamState.WindowBytes; stream.PacketCount += streamState.WindowPackets; if (stream.IsVideoStream) { - TSStreamDiagnostics diag = new TSStreamDiagnostics(); + var diag = new TSStreamDiagnostics(); diag.Marker = (double)PTS / 90000; diag.Interval = (double)PTSDiff / 90000; diag.Bytes = streamState.WindowBytes; @@ -482,7 +482,7 @@ namespace BDInfo StreamStates.Clear(); StreamDiagnostics.Clear(); - TSPacketParser parser = + var parser = new TSPacketParser(); long fileLength = (uint)fileStream.Length; @@ -536,80 +536,80 @@ namespace BDInfo switch (parser.HeaderParse) { case 2: - { - parser.TransportErrorIndicator = - (byte)((buffer[i] >> 7) & 0x1); - parser.PayloadUnitStartIndicator = - (byte)((buffer[i] >> 6) & 0x1); - parser.TransportPriority = - (byte)((buffer[i] >> 5) & 0x1); - parser.PID = - (ushort)((buffer[i] & 0x1f) << 8); - } - break; - - case 1: - { - parser.PID |= (ushort)buffer[i]; - if (Streams.ContainsKey(parser.PID)) - { - parser.Stream = Streams[parser.PID]; - } - else { - parser.Stream = null; + parser.TransportErrorIndicator = + (byte)((buffer[i] >> 7) & 0x1); + parser.PayloadUnitStartIndicator = + (byte)((buffer[i] >> 6) & 0x1); + parser.TransportPriority = + (byte)((buffer[i] >> 5) & 0x1); + parser.PID = + (ushort)((buffer[i] & 0x1f) << 8); } - if (!StreamStates.ContainsKey(parser.PID)) - { - StreamStates[parser.PID] = new TSStreamState(); - } - parser.StreamState = StreamStates[parser.PID]; - parser.StreamState.TotalPackets++; - parser.StreamState.WindowPackets++; - parser.TotalPackets++; - } - break; + break; - case 0: - { - parser.TransportScramblingControl = - (byte)((buffer[i] >> 6) & 0x3); - parser.AdaptionFieldControl = - (byte)((buffer[i] >> 4) & 0x3); - - if ((parser.AdaptionFieldControl & 0x2) == 0x2) - { - parser.AdaptionFieldState = true; - } - if (parser.PayloadUnitStartIndicator == 1) + case 1: { - if (parser.PID == 0) + parser.PID |= (ushort)buffer[i]; + if (Streams.ContainsKey(parser.PID)) { - parser.PATSectionStart = true; + parser.Stream = Streams[parser.PID]; } - else if (parser.PID == parser.PMTPID) + else { - parser.PMTSectionStart = true; + parser.Stream = null; } - else if (parser.StreamState != null && - parser.StreamState.TransferState) + if (!StreamStates.ContainsKey(parser.PID)) { - parser.StreamState.TransferState = false; - parser.StreamState.TransferCount++; + StreamStates[parser.PID] = new TSStreamState(); + } + parser.StreamState = StreamStates[parser.PID]; + parser.StreamState.TotalPackets++; + parser.StreamState.WindowPackets++; + parser.TotalPackets++; + } + break; - bool isFinished = ScanStream( - parser.Stream, - parser.StreamState, - parser.StreamState.StreamBuffer); + case 0: + { + parser.TransportScramblingControl = + (byte)((buffer[i] >> 6) & 0x3); + parser.AdaptionFieldControl = + (byte)((buffer[i] >> 4) & 0x3); - if (!isFullScan && isFinished) + if ((parser.AdaptionFieldControl & 0x2) == 0x2) + { + parser.AdaptionFieldState = true; + } + if (parser.PayloadUnitStartIndicator == 1) + { + if (parser.PID == 0) + { + parser.PATSectionStart = true; + } + else if (parser.PID == parser.PMTPID) + { + parser.PMTSectionStart = true; + } + else if (parser.StreamState != null && + parser.StreamState.TransferState) { - return; + parser.StreamState.TransferState = false; + parser.StreamState.TransferCount++; + + bool isFinished = ScanStream( + parser.Stream, + parser.StreamState, + parser.StreamState.StreamBuffer); + + if (!isFullScan && isFinished) + { + return; + } } } } - } - break; + break; } } else if (parser.AdaptionFieldState) @@ -670,7 +670,8 @@ namespace BDInfo parser.PAT[parser.PATOffset++] = buffer[i++]; parser.PATSectionLength--; parser.PacketLength--; - } --i; + } + --i; if (parser.PATSectionLength == 0) { @@ -801,7 +802,8 @@ namespace BDInfo PMT[parser.PMTOffset++] = buffer[i++]; --parser.PMTSectionLength; --parser.PacketLength; - } --i; + } + --i; if (parser.PMTSectionLength == 0) { @@ -837,7 +839,7 @@ namespace BDInfo if (!Streams.ContainsKey(streamPID)) { - List<TSDescriptor> streamDescriptors = + var streamDescriptors = new List<TSDescriptor>(); /* @@ -994,7 +996,7 @@ namespace BDInfo { --parser.PMTProgramDescriptorLength; - TSDescriptor descriptor = parser.PMTProgramDescriptors[ + var descriptor = parser.PMTProgramDescriptors[ parser.PMTProgramDescriptors.Count - 1]; int valueIndex = @@ -1024,8 +1026,8 @@ namespace BDInfo parser.StreamState != null && parser.TransportScramblingControl == 0) { - TSStream stream = parser.Stream; - TSStreamState streamState = parser.StreamState; + var stream = parser.Stream; + var streamState = parser.StreamState; streamState.Parse = (streamState.Parse << 8) + buffer[i]; @@ -1459,7 +1461,7 @@ namespace BDInfo ulong PTSLast = 0; ulong PTSDiff = 0; - foreach (TSStream stream in Streams.Values) + foreach (var stream in Streams.Values) { if (!stream.IsVideoStream) continue; @@ -1495,10 +1497,10 @@ namespace BDInfo case TSStreamType.MPEG1_VIDEO: case TSStreamType.MPEG2_VIDEO: case TSStreamType.VC1_VIDEO: - { - stream = new TSVideoStream(); - } - break; + { + stream = new TSVideoStream(); + } + break; case TSStreamType.AC3_AUDIO: case TSStreamType.AC3_PLUS_AUDIO: @@ -1511,23 +1513,23 @@ namespace BDInfo case TSStreamType.LPCM_AUDIO: case TSStreamType.MPEG1_AUDIO: case TSStreamType.MPEG2_AUDIO: - { - stream = new TSAudioStream(); - } - break; + { + stream = new TSAudioStream(); + } + break; case TSStreamType.INTERACTIVE_GRAPHICS: case TSStreamType.PRESENTATION_GRAPHICS: - { - stream = new TSGraphicsStream(); - } - break; + { + stream = new TSGraphicsStream(); + } + break; case TSStreamType.SUBTITLE: - { - stream = new TSTextStream(); - } - break; + { + stream = new TSTextStream(); + } + break; default: break; diff --git a/DvdLib/BigEndianBinaryReader.cs b/DvdLib/BigEndianBinaryReader.cs index 56d9db825..b3b2eabd5 100644 --- a/DvdLib/BigEndianBinaryReader.cs +++ b/DvdLib/BigEndianBinaryReader.cs @@ -1,7 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; +using System; using System.IO; namespace DvdLib diff --git a/DvdLib/DvdLib.csproj b/DvdLib/DvdLib.csproj index b64f5e7a7..774e5709d 100644 --- a/DvdLib/DvdLib.csproj +++ b/DvdLib/DvdLib.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <Compile Include="..\SharedVersion.cs" Link="SharedVersion.cs" /> diff --git a/DvdLib/Ifo/AudioAttributes.cs b/DvdLib/Ifo/AudioAttributes.cs index 5b3b9fd9a..b76f9fc05 100644 --- a/DvdLib/Ifo/AudioAttributes.cs +++ b/DvdLib/Ifo/AudioAttributes.cs @@ -1,8 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - namespace DvdLib.Ifo { public enum AudioCodec diff --git a/DvdLib/Ifo/Cell.cs b/DvdLib/Ifo/Cell.cs index d0f442e36..268ab897e 100644 --- a/DvdLib/Ifo/Cell.cs +++ b/DvdLib/Ifo/Cell.cs @@ -1,7 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; using System.IO; namespace DvdLib.Ifo diff --git a/DvdLib/Ifo/CellPlaybackInfo.cs b/DvdLib/Ifo/CellPlaybackInfo.cs index ae3883eaa..e588e51ac 100644 --- a/DvdLib/Ifo/CellPlaybackInfo.cs +++ b/DvdLib/Ifo/CellPlaybackInfo.cs @@ -1,7 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; using System.IO; namespace DvdLib.Ifo diff --git a/DvdLib/Ifo/CellPositionInfo.cs b/DvdLib/Ifo/CellPositionInfo.cs index 2e0715940..2b973e083 100644 --- a/DvdLib/Ifo/CellPositionInfo.cs +++ b/DvdLib/Ifo/CellPositionInfo.cs @@ -1,7 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; using System.IO; namespace DvdLib.Ifo diff --git a/DvdLib/Ifo/Chapter.cs b/DvdLib/Ifo/Chapter.cs index 802c6ce62..bd3bd9704 100644 --- a/DvdLib/Ifo/Chapter.cs +++ b/DvdLib/Ifo/Chapter.cs @@ -1,8 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - namespace DvdLib.Ifo { public class Chapter diff --git a/DvdLib/Ifo/Dvd.cs b/DvdLib/Ifo/Dvd.cs index b43f0e832..f784be83e 100644 --- a/DvdLib/Ifo/Dvd.cs +++ b/DvdLib/Ifo/Dvd.cs @@ -1,9 +1,7 @@ -using System; +using System; using System.Collections.Generic; -using System.Linq; -using System.Text; using System.IO; -using System.Diagnostics; +using System.Linq; using MediaBrowser.Model.IO; namespace DvdLib.Ifo @@ -33,10 +31,9 @@ namespace DvdLib.Ifo foreach (var ifo in allIfos) { var num = ifo.Name.Split('_').ElementAtOrDefault(1); - ushort ifoNumber; var numbersRead = new List<ushort>(); - if (!string.IsNullOrEmpty(num) && ushort.TryParse(num, out ifoNumber) && !numbersRead.Contains(ifoNumber)) + if (!string.IsNullOrEmpty(num) && ushort.TryParse(num, out var ifoNumber) && !numbersRead.Contains(ifoNumber)) { ReadVTS(ifoNumber, ifo.FullName); numbersRead.Add(ifoNumber); @@ -47,7 +44,7 @@ namespace DvdLib.Ifo { using (var vmgFs = _fileSystem.GetFileStream(vmgPath.FullName, FileOpenMode.Open, FileAccessMode.Read, FileShareMode.Read)) { - using (BigEndianBinaryReader vmgRead = new BigEndianBinaryReader(vmgFs)) + using (var vmgRead = new BigEndianBinaryReader(vmgFs)) { vmgFs.Seek(0x3E, SeekOrigin.Begin); _titleSetCount = vmgRead.ReadUInt16(); @@ -73,7 +70,7 @@ namespace DvdLib.Ifo read.BaseStream.Seek(6, SeekOrigin.Current); for (uint titleNum = 1; titleNum <= _titleCount; titleNum++) { - Title t = new Title(titleNum); + var t = new Title(titleNum); t.ParseTT_SRPT(read); Titles.Add(t); } @@ -100,7 +97,7 @@ namespace DvdLib.Ifo using (var vtsFs = _fileSystem.GetFileStream(vtsPath, FileOpenMode.Open, FileAccessMode.Read, FileShareMode.Read)) { - using (BigEndianBinaryReader vtsRead = new BigEndianBinaryReader(vtsFs)) + using (var vtsRead = new BigEndianBinaryReader(vtsFs)) { // Read VTS_PTT_SRPT vtsFs.Seek(0xC8, SeekOrigin.Begin); @@ -121,7 +118,7 @@ namespace DvdLib.Ifo { uint chapNum = 1; vtsFs.Seek(baseAddr + offsets[titleNum], SeekOrigin.Begin); - Title t = Titles.FirstOrDefault(vtst => vtst.IsVTSTitle(vtsNum, titleNum + 1)); + var t = Titles.FirstOrDefault(vtst => vtst.IsVTSTitle(vtsNum, titleNum + 1)); if (t == null) continue; do @@ -151,11 +148,11 @@ namespace DvdLib.Ifo vtsFs.Seek(3, SeekOrigin.Current); uint vtsPgcOffset = vtsRead.ReadUInt32(); - Title t = Titles.FirstOrDefault(vtst => vtst.IsVTSTitle(vtsNum, titleNum)); + var t = Titles.FirstOrDefault(vtst => vtst.IsVTSTitle(vtsNum, titleNum)); if (t != null) t.AddPgc(vtsRead, startByte + vtsPgcOffset, entryPgc, pgcNum); } } } } } -}
\ No newline at end of file +} diff --git a/DvdLib/Ifo/DvdTime.cs b/DvdLib/Ifo/DvdTime.cs index 072cd8d88..3688089ec 100644 --- a/DvdLib/Ifo/DvdTime.cs +++ b/DvdLib/Ifo/DvdTime.cs @@ -1,7 +1,4 @@ using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; namespace DvdLib.Ifo { diff --git a/DvdLib/Ifo/PgcCommandTable.cs b/DvdLib/Ifo/PgcCommandTable.cs index 2ead78cef..d329fcba2 100644 --- a/DvdLib/Ifo/PgcCommandTable.cs +++ b/DvdLib/Ifo/PgcCommandTable.cs @@ -1,7 +1,4 @@ -using System; using System.Collections.Generic; -using System.Linq; -using System.Text; namespace DvdLib.Ifo { diff --git a/DvdLib/Ifo/Program.cs b/DvdLib/Ifo/Program.cs index 48870d9dd..af08afa35 100644 --- a/DvdLib/Ifo/Program.cs +++ b/DvdLib/Ifo/Program.cs @@ -1,7 +1,4 @@ -using System; using System.Collections.Generic; -using System.Linq; -using System.Text; namespace DvdLib.Ifo { diff --git a/DvdLib/Ifo/ProgramChain.cs b/DvdLib/Ifo/ProgramChain.cs index 85dfcea05..80889738f 100644 --- a/DvdLib/Ifo/ProgramChain.cs +++ b/DvdLib/Ifo/ProgramChain.cs @@ -1,8 +1,6 @@ -using System; using System.Collections.Generic; -using System.Linq; -using System.Text; using System.IO; +using System.Linq; namespace DvdLib.Ifo { @@ -89,7 +87,7 @@ namespace DvdLib.Ifo br.BaseStream.Seek(startPos + _cellPositionOffset, SeekOrigin.Begin); for (int cellNum = 0; cellNum < _cellCount; cellNum++) { - Cell c = new Cell(); + var c = new Cell(); c.ParsePosition(br); Cells.Add(c); } @@ -101,12 +99,12 @@ namespace DvdLib.Ifo } br.BaseStream.Seek(startPos + _programMapOffset, SeekOrigin.Begin); - List<int> cellNumbers = new List<int>(); + var cellNumbers = new List<int>(); for (int progNum = 0; progNum < _programCount; progNum++) cellNumbers.Add(br.ReadByte() - 1); for (int i = 0; i < cellNumbers.Count; i++) { - int max = (i + 1 == cellNumbers.Count) ? _cellCount : cellNumbers[i+1]; + int max = (i + 1 == cellNumbers.Count) ? _cellCount : cellNumbers[i + 1]; Programs.Add(new Program(Cells.Where((c, idx) => idx >= cellNumbers[i] && idx < max).ToList())); } } diff --git a/DvdLib/Ifo/Title.cs b/DvdLib/Ifo/Title.cs index 6ef83b4fb..335e92992 100644 --- a/DvdLib/Ifo/Title.cs +++ b/DvdLib/Ifo/Title.cs @@ -1,7 +1,4 @@ -using System; using System.Collections.Generic; -using System.Linq; -using System.Text; using System.IO; namespace DvdLib.Ifo @@ -53,7 +50,7 @@ namespace DvdLib.Ifo long curPos = br.BaseStream.Position; br.BaseStream.Seek(startByte, SeekOrigin.Begin); - ProgramChain pgc = new ProgramChain(pgcNum); + var pgc = new ProgramChain(pgcNum); pgc.ParseHeader(br); ProgramChains.Add(pgc); if (entryPgc) EntryProgramChain = pgc; diff --git a/DvdLib/Ifo/UserOperation.cs b/DvdLib/Ifo/UserOperation.cs index c3cffd487..757a5a05d 100644 --- a/DvdLib/Ifo/UserOperation.cs +++ b/DvdLib/Ifo/UserOperation.cs @@ -1,7 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; +using System; namespace DvdLib.Ifo { diff --git a/DvdLib/Ifo/VideoAttributes.cs b/DvdLib/Ifo/VideoAttributes.cs index b2d375942..8b3996715 100644 --- a/DvdLib/Ifo/VideoAttributes.cs +++ b/DvdLib/Ifo/VideoAttributes.cs @@ -1,8 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; - namespace DvdLib.Ifo { public enum VideoCodec diff --git a/DvdLib/Properties/AssemblyInfo.cs b/DvdLib/Properties/AssemblyInfo.cs index 54e2c6b44..5fc055d1f 100644 --- a/DvdLib/Properties/AssemblyInfo.cs +++ b/DvdLib/Properties/AssemblyInfo.cs @@ -15,7 +15,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyCulture("")] [assembly: NeutralResourcesLanguage("en")] -// Setting ComVisible to false makes the types in this assembly not visible -// to COM components. If you need to access a type in this assembly from +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] diff --git a/Emby.Dlna/Api/DlnaServerService.cs b/Emby.Dlna/Api/DlnaServerService.cs index 194ae73e0..01c9fe50f 100644 --- a/Emby.Dlna/Api/DlnaServerService.cs +++ b/Emby.Dlna/Api/DlnaServerService.cs @@ -1,14 +1,14 @@ -using MediaBrowser.Controller.Dlna; using System; using System.Collections.Generic; using System.IO; +using System.Linq; +using System.Text; using System.Threading.Tasks; -using MediaBrowser.Model.Services; +using Emby.Dlna.Main; using MediaBrowser.Common.Extensions; -using System.Text; +using MediaBrowser.Controller.Dlna; using MediaBrowser.Controller.Net; -using System.Linq; -using Emby.Dlna.Main; +using MediaBrowser.Model.Services; namespace Emby.Dlna.Api { @@ -115,29 +115,11 @@ namespace Emby.Dlna.Api public IRequest Request { get; set; } private IHttpResultFactory _resultFactory; - private IContentDirectory ContentDirectory - { - get - { - return DlnaEntryPoint.Current.ContentDirectory; - } - } + private IContentDirectory ContentDirectory => DlnaEntryPoint.Current.ContentDirectory; - private IConnectionManager ConnectionManager - { - get - { - return DlnaEntryPoint.Current.ConnectionManager; - } - } + private IConnectionManager ConnectionManager => DlnaEntryPoint.Current.ConnectionManager; - private IMediaReceiverRegistrar MediaReceiverRegistrar - { - get - { - return DlnaEntryPoint.Current.MediaReceiverRegistrar; - } - } + private IMediaReceiverRegistrar MediaReceiverRegistrar => DlnaEntryPoint.Current.MediaReceiverRegistrar; public DlnaServerService(IDlnaManager dlnaManager, IHttpResultFactory httpResultFactory) { @@ -227,7 +209,7 @@ namespace Emby.Dlna.Api // TODO: Work out what this is doing. if (string.Equals(first, "mediabrowser", StringComparison.OrdinalIgnoreCase) || string.Equals(first, "emby", StringComparison.OrdinalIgnoreCase) || - string.Equals(first, "jellyfin", StringComparison.OrdinalIgnoreCase )) + string.Equals(first, "jellyfin", StringComparison.OrdinalIgnoreCase)) { index++; } @@ -259,7 +241,7 @@ namespace Emby.Dlna.Api var cacheLength = TimeSpan.FromDays(365); var cacheKey = Request.RawUrl.GetMD5(); - return _resultFactory.GetStaticResult(Request, cacheKey, null, cacheLength, contentType, () => Task.FromResult<Stream>(_dlnaManager.GetIcon(request.Filename).Stream)); + return _resultFactory.GetStaticResult(Request, cacheKey, null, cacheLength, contentType, () => Task.FromResult(_dlnaManager.GetIcon(request.Filename).Stream)); } public object Subscribe(ProcessContentDirectoryEventRequest request) diff --git a/Emby.Dlna/Api/DlnaService.cs b/Emby.Dlna/Api/DlnaService.cs index fec610d23..7f51f477a 100644 --- a/Emby.Dlna/Api/DlnaService.cs +++ b/Emby.Dlna/Api/DlnaService.cs @@ -1,4 +1,4 @@ -using System.Linq; +using System.Linq; using MediaBrowser.Controller.Dlna; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Dlna; @@ -80,4 +80,4 @@ namespace Emby.Dlna.Api _dlnaManager.CreateProfile(request); } } -}
\ No newline at end of file +} diff --git a/Emby.Dlna/Common/Argument.cs b/Emby.Dlna/Common/Argument.cs index e6a220a7f..3e325c41c 100644 --- a/Emby.Dlna/Common/Argument.cs +++ b/Emby.Dlna/Common/Argument.cs @@ -1,12 +1,12 @@ - + namespace Emby.Dlna.Common { public class Argument { - public string Name { get; set; } + public string Name { get; set; } - public string Direction { get; set; } + public string Direction { get; set; } - public string RelatedStateVariable { get; set; } + public string RelatedStateVariable { get; set; } } } diff --git a/Emby.Dlna/Common/DeviceIcon.cs b/Emby.Dlna/Common/DeviceIcon.cs index 27ae92d6f..3a91b952e 100644 --- a/Emby.Dlna/Common/DeviceIcon.cs +++ b/Emby.Dlna/Common/DeviceIcon.cs @@ -1,4 +1,4 @@ - + namespace Emby.Dlna.Common { public class DeviceIcon diff --git a/Emby.Dlna/Common/DeviceService.cs b/Emby.Dlna/Common/DeviceService.cs index 0d91dbe76..c60d65291 100644 --- a/Emby.Dlna/Common/DeviceService.cs +++ b/Emby.Dlna/Common/DeviceService.cs @@ -1,4 +1,4 @@ - + namespace Emby.Dlna.Common { public class DeviceService diff --git a/Emby.Dlna/Common/ServiceAction.cs b/Emby.Dlna/Common/ServiceAction.cs index 1bcc6a1d6..5e030d396 100644 --- a/Emby.Dlna/Common/ServiceAction.cs +++ b/Emby.Dlna/Common/ServiceAction.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace Emby.Dlna.Common { diff --git a/Emby.Dlna/Common/StateVariable.cs b/Emby.Dlna/Common/StateVariable.cs index 571e17d06..4ca84bf51 100644 --- a/Emby.Dlna/Common/StateVariable.cs +++ b/Emby.Dlna/Common/StateVariable.cs @@ -1,4 +1,3 @@ -using System.Collections.Generic; using System; namespace Emby.Dlna.Common diff --git a/Emby.Dlna/Configuration/DlnaOptions.cs b/Emby.Dlna/Configuration/DlnaOptions.cs index 6ab337752..0ebb490a1 100644 --- a/Emby.Dlna/Configuration/DlnaOptions.cs +++ b/Emby.Dlna/Configuration/DlnaOptions.cs @@ -1,4 +1,4 @@ - + namespace Emby.Dlna.Configuration { public class DlnaOptions diff --git a/Emby.Dlna/ConfigurationExtension.cs b/Emby.Dlna/ConfigurationExtension.cs index f19f0dfb5..82d726e01 100644 --- a/Emby.Dlna/ConfigurationExtension.cs +++ b/Emby.Dlna/ConfigurationExtension.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Common.Configuration; -using Emby.Dlna.Configuration; using System.Collections.Generic; +using Emby.Dlna.Configuration; +using MediaBrowser.Common.Configuration; namespace Emby.Dlna { diff --git a/Emby.Dlna/ConnectionManager/ConnectionManager.cs b/Emby.Dlna/ConnectionManager/ConnectionManager.cs index ab747d189..cc427f2a1 100644 --- a/Emby.Dlna/ConnectionManager/ConnectionManager.cs +++ b/Emby.Dlna/ConnectionManager/ConnectionManager.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Common.Net; +using System.Collections.Generic; +using Emby.Dlna.Service; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dlna; -using Emby.Dlna.Service; -using System.Collections.Generic; using MediaBrowser.Model.Xml; using Microsoft.Extensions.Logging; diff --git a/Emby.Dlna/ConnectionManager/ConnectionManagerXmlBuilder.cs b/Emby.Dlna/ConnectionManager/ConnectionManagerXmlBuilder.cs index db18025e6..f5873455a 100644 --- a/Emby.Dlna/ConnectionManager/ConnectionManagerXmlBuilder.cs +++ b/Emby.Dlna/ConnectionManager/ConnectionManagerXmlBuilder.cs @@ -1,6 +1,6 @@ +using System.Collections.Generic; using Emby.Dlna.Common; using Emby.Dlna.Service; -using System.Collections.Generic; namespace Emby.Dlna.ConnectionManager { diff --git a/Emby.Dlna/ConnectionManager/ControlHandler.cs b/Emby.Dlna/ConnectionManager/ControlHandler.cs index 7e3e5f650..16211c61f 100644 --- a/Emby.Dlna/ConnectionManager/ControlHandler.cs +++ b/Emby.Dlna/ConnectionManager/ControlHandler.cs @@ -1,12 +1,11 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Configuration; -using Emby.Dlna.Server; -using Emby.Dlna.Service; -using MediaBrowser.Model.Dlna; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; +using Emby.Dlna.Service; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.ConnectionManager { diff --git a/Emby.Dlna/ConnectionManager/ServiceActionListBuilder.cs b/Emby.Dlna/ConnectionManager/ServiceActionListBuilder.cs index 674bc4c8e..b7727b558 100644 --- a/Emby.Dlna/ConnectionManager/ServiceActionListBuilder.cs +++ b/Emby.Dlna/ConnectionManager/ServiceActionListBuilder.cs @@ -1,5 +1,5 @@ -using Emby.Dlna.Common; using System.Collections.Generic; +using Emby.Dlna.Common; namespace Emby.Dlna.ConnectionManager { diff --git a/Emby.Dlna/ContentDirectory/ContentDirectory.cs b/Emby.Dlna/ContentDirectory/ContentDirectory.cs index 7c809a952..cd21599d0 100644 --- a/Emby.Dlna/ContentDirectory/ContentDirectory.cs +++ b/Emby.Dlna/ContentDirectory/ContentDirectory.cs @@ -1,18 +1,18 @@ -using MediaBrowser.Common.Net; +using System; +using System.Collections.Generic; +using Emby.Dlna.Service; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dlna; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; -using Emby.Dlna.Service; -using MediaBrowser.Model.Dlna; -using Microsoft.Extensions.Logging; -using System; -using System.Collections.Generic; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.TV; +using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Globalization; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.ContentDirectory { diff --git a/Emby.Dlna/ContentDirectory/ContentDirectoryXmlBuilder.cs b/Emby.Dlna/ContentDirectory/ContentDirectoryXmlBuilder.cs index 2695a5433..15fdb36c4 100644 --- a/Emby.Dlna/ContentDirectory/ContentDirectoryXmlBuilder.cs +++ b/Emby.Dlna/ContentDirectory/ContentDirectoryXmlBuilder.cs @@ -1,6 +1,6 @@ +using System.Collections.Generic; using Emby.Dlna.Common; using Emby.Dlna.Service; -using System.Collections.Generic; namespace Emby.Dlna.ContentDirectory { diff --git a/Emby.Dlna/ContentDirectory/ControlHandler.cs b/Emby.Dlna/ContentDirectory/ControlHandler.cs index 57d4078a5..2f6a0ecee 100644 --- a/Emby.Dlna/ContentDirectory/ControlHandler.cs +++ b/Emby.Dlna/ContentDirectory/ControlHandler.cs @@ -1,19 +1,3 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Channels; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using Emby.Dlna.Didl; -using Emby.Dlna.Server; -using Emby.Dlna.Service; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; using System.Globalization; @@ -21,17 +5,28 @@ using System.IO; using System.Linq; using System.Text; using System.Threading; -using System.Threading.Tasks; using System.Xml; +using Emby.Dlna.Didl; +using Emby.Dlna.Service; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Playlists; using MediaBrowser.Controller.TV; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Xml; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.LiveTv; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.ContentDirectory { @@ -197,9 +192,7 @@ namespace Emby.Dlna.ContentDirectory public string GetValueOrDefault(IDictionary<string, string> sparams, string key, string defaultValue) { - string val; - - if (sparams.TryGetValue(key, out val)) + if (sparams.TryGetValue(key, out string val)) { return val; } @@ -221,14 +214,12 @@ namespace Emby.Dlna.ContentDirectory int? requestedCount = null; int? start = 0; - int requestedVal; - if (sparams.ContainsKey("RequestedCount") && int.TryParse(sparams["RequestedCount"], out requestedVal) && requestedVal > 0) + if (sparams.ContainsKey("RequestedCount") && int.TryParse(sparams["RequestedCount"], out var requestedVal) && requestedVal > 0) { requestedCount = requestedVal; } - int startVal; - if (sparams.ContainsKey("StartingIndex") && int.TryParse(sparams["StartingIndex"], out startVal) && startVal > 0) + if (sparams.ContainsKey("StartingIndex") && int.TryParse(sparams["StartingIndex"], out var startVal) && startVal > 0) { start = startVal; } @@ -247,7 +238,7 @@ namespace Emby.Dlna.ContentDirectory var dlnaOptions = _config.GetDlnaConfiguration(); - using (XmlWriter writer = XmlWriter.Create(builder, settings)) + using (var writer = XmlWriter.Create(builder, settings)) { //writer.WriteStartDocument(); @@ -311,7 +302,7 @@ namespace Emby.Dlna.ContentDirectory var resXML = builder.ToString(); - return new [] + return new[] { new KeyValuePair<string,string>("Result", resXML), new KeyValuePair<string,string>("NumberReturned", provided.ToString(_usCulture)), @@ -339,14 +330,12 @@ namespace Emby.Dlna.ContentDirectory int? requestedCount = null; int? start = 0; - int requestedVal; - if (sparams.ContainsKey("RequestedCount") && int.TryParse(sparams["RequestedCount"], out requestedVal) && requestedVal > 0) + if (sparams.ContainsKey("RequestedCount") && int.TryParse(sparams["RequestedCount"], out var requestedVal) && requestedVal > 0) { requestedCount = requestedVal; } - int startVal; - if (sparams.ContainsKey("StartingIndex") && int.TryParse(sparams["StartingIndex"], out startVal) && startVal > 0) + if (sparams.ContainsKey("StartingIndex") && int.TryParse(sparams["StartingIndex"], out var startVal) && startVal > 0) { start = startVal; } @@ -363,7 +352,7 @@ namespace Emby.Dlna.ContentDirectory int totalCount = 0; int provided = 0; - using (XmlWriter writer = XmlWriter.Create(builder, settings)) + using (var writer = XmlWriter.Create(builder, settings)) { //writer.WriteStartDocument(); @@ -1144,7 +1133,7 @@ namespace Emby.Dlna.ContentDirectory StartIndex = query.StartIndex, UserId = query.User.Id - }, new [] { parent }, query.DtoOptions); + }, new[] { parent }, query.DtoOptions); return ToResult(result); } @@ -1298,7 +1287,6 @@ namespace Emby.Dlna.ContentDirectory private ServerItem ParseItemId(string id, User user) { - Guid itemId; StubType? stubType = null; // After using PlayTo, MediaMonkey sends a request to the server trying to get item info @@ -1324,7 +1312,7 @@ namespace Emby.Dlna.ContentDirectory } } - if (Guid.TryParse(id, out itemId)) + if (Guid.TryParse(id, out var itemId)) { var item = _libraryManager.GetItemById(itemId); diff --git a/Emby.Dlna/ContentDirectory/ServiceActionListBuilder.cs b/Emby.Dlna/ContentDirectory/ServiceActionListBuilder.cs index 7749a39af..e999314fa 100644 --- a/Emby.Dlna/ContentDirectory/ServiceActionListBuilder.cs +++ b/Emby.Dlna/ContentDirectory/ServiceActionListBuilder.cs @@ -1,5 +1,5 @@ -using Emby.Dlna.Common; using System.Collections.Generic; +using Emby.Dlna.Common; namespace Emby.Dlna.ContentDirectory { @@ -7,7 +7,7 @@ namespace Emby.Dlna.ContentDirectory { public IEnumerable<ServiceAction> GetActions() { - return new [] + return new[] { GetSearchCapabilitiesAction(), GetSortCapabilitiesAction(), diff --git a/Emby.Dlna/ControlRequest.cs b/Emby.Dlna/ControlRequest.cs index 2b8ce844a..afd9a0b87 100644 --- a/Emby.Dlna/ControlRequest.cs +++ b/Emby.Dlna/ControlRequest.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.IO; namespace Emby.Dlna diff --git a/Emby.Dlna/ControlResponse.cs b/Emby.Dlna/ControlResponse.cs index 889a6940c..d2b79fc58 100644 --- a/Emby.Dlna/ControlResponse.cs +++ b/Emby.Dlna/ControlResponse.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace Emby.Dlna { @@ -15,4 +15,4 @@ namespace Emby.Dlna Headers = new Dictionary<string, string>(); } } -}
\ No newline at end of file +} diff --git a/Emby.Dlna/Didl/DidlBuilder.cs b/Emby.Dlna/Didl/DidlBuilder.cs index a8217c0d4..d2f635e56 100644 --- a/Emby.Dlna/Didl/DidlBuilder.cs +++ b/Emby.Dlna/Didl/DidlBuilder.cs @@ -1,4 +1,11 @@ -using MediaBrowser.Model.Extensions; +using System; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Text; +using System.Xml; +using Emby.Dlna.Configuration; +using Emby.Dlna.ContentDirectory; using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Entities; @@ -6,23 +13,15 @@ using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Playlists; -using Emby.Dlna.ContentDirectory; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using System; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Xml; -using MediaBrowser.Controller.MediaEncoding; -using Emby.Dlna.Configuration; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.Net; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.Didl { @@ -79,7 +78,7 @@ namespace Emby.Dlna.Didl using (StringWriter builder = new StringWriterWithEncoding(Encoding.UTF8)) { - using (XmlWriter writer = XmlWriter.Create(builder, settings)) + using (var writer = XmlWriter.Create(builder, settings)) { //writer.WriteStartDocument(); diff --git a/Emby.Dlna/Didl/Filter.cs b/Emby.Dlna/Didl/Filter.cs index 2c9a1ea18..a0e67870e 100644 --- a/Emby.Dlna/Didl/Filter.cs +++ b/Emby.Dlna/Didl/Filter.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Model.Extensions; using System; -using System.Collections.Generic; +using MediaBrowser.Model.Extensions; namespace Emby.Dlna.Didl { diff --git a/Emby.Dlna/Didl/StringWriterWithEncoding.cs b/Emby.Dlna/Didl/StringWriterWithEncoding.cs index b5c565801..c3c4bd393 100644 --- a/Emby.Dlna/Didl/StringWriterWithEncoding.cs +++ b/Emby.Dlna/Didl/StringWriterWithEncoding.cs @@ -1,8 +1,6 @@ -using System; -using System.Collections.Generic; +using System; using System.IO; using System.Text; -using System.Threading.Tasks; namespace Emby.Dlna.Didl { @@ -53,9 +51,6 @@ namespace Emby.Dlna.Didl _encoding = encoding; } - public override Encoding Encoding - { - get { return (null == _encoding) ? base.Encoding : _encoding; } - } + public override Encoding Encoding => (null == _encoding) ? base.Encoding : _encoding; } } diff --git a/Emby.Dlna/DlnaManager.cs b/Emby.Dlna/DlnaManager.cs index a8777cbac..5e99416b3 100644 --- a/Emby.Dlna/DlnaManager.cs +++ b/Emby.Dlna/DlnaManager.cs @@ -1,24 +1,22 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Dlna; -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Controller.Plugins; -using Emby.Dlna.Profiles; -using Emby.Dlna.Server; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Drawing; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Text.RegularExpressions; +using Emby.Dlna.Profiles; +using Emby.Dlna.Server; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Dlna; +using MediaBrowser.Controller.Drawing; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Drawing; using MediaBrowser.Model.IO; using MediaBrowser.Model.Reflection; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Dlna { @@ -241,9 +239,7 @@ namespace Emby.Dlna return false; } - string value; - - if (headers.TryGetValue(header.Name, out value)) + if (headers.TryGetValue(header.Name, out string value)) { switch (header.Match) { @@ -263,21 +259,9 @@ namespace Emby.Dlna return false; } - private string UserProfilesPath - { - get - { - return Path.Combine(_appPaths.ConfigurationDirectoryPath, "dlna", "user"); - } - } + private string UserProfilesPath => Path.Combine(_appPaths.ConfigurationDirectoryPath, "dlna", "user"); - private string SystemProfilesPath - { - get - { - return Path.Combine(_appPaths.ConfigurationDirectoryPath, "dlna", "system"); - } - } + private string SystemProfilesPath => Path.Combine(_appPaths.ConfigurationDirectoryPath, "dlna", "system"); private IEnumerable<DeviceProfile> GetProfiles(string path, DeviceProfileType type) { @@ -302,8 +286,7 @@ namespace Emby.Dlna { lock (_profiles) { - Tuple<InternalProfileInfo, DeviceProfile> profileTuple; - if (_profiles.TryGetValue(path, out profileTuple)) + if (_profiles.TryGetValue(path, out Tuple<InternalProfileInfo, DeviceProfile> profileTuple)) { return profileTuple.Item2; } diff --git a/Emby.Dlna/Emby.Dlna.csproj b/Emby.Dlna/Emby.Dlna.csproj index f48816453..f155bce6d 100644 --- a/Emby.Dlna/Emby.Dlna.csproj +++ b/Emby.Dlna/Emby.Dlna.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <Compile Include="..\SharedVersion.cs" Link="SharedVersion.cs" /> diff --git a/Emby.Dlna/EventSubscriptionResponse.cs b/Emby.Dlna/EventSubscriptionResponse.cs index 1c405e601..6dc1aacf4 100644 --- a/Emby.Dlna/EventSubscriptionResponse.cs +++ b/Emby.Dlna/EventSubscriptionResponse.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace Emby.Dlna { diff --git a/Emby.Dlna/Eventing/EventManager.cs b/Emby.Dlna/Eventing/EventManager.cs index ea9ba3f22..b4ff3ec1d 100644 --- a/Emby.Dlna/Eventing/EventManager.cs +++ b/Emby.Dlna/Eventing/EventManager.cs @@ -1,7 +1,3 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Dlna; -using Microsoft.Extensions.Logging; using System; using System.Collections.Concurrent; using System.Collections.Generic; @@ -9,6 +5,9 @@ using System.Globalization; using System.Linq; using System.Text; using System.Threading.Tasks; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Net; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.Eventing { @@ -83,9 +82,7 @@ namespace Emby.Dlna.Eventing // Starts with SECOND- header = header.Split('-').Last(); - int val; - - if (int.TryParse(header, NumberStyles.Integer, _usCulture, out val)) + if (int.TryParse(header, NumberStyles.Integer, _usCulture, out var val)) { return val; } @@ -98,8 +95,7 @@ namespace Emby.Dlna.Eventing { _logger.LogDebug("Cancelling event subscription {0}", subscriptionId); - EventSubscription sub; - _subscriptions.TryRemove(subscriptionId, out sub); + _subscriptions.TryRemove(subscriptionId, out EventSubscription sub); return new EventSubscriptionResponse { @@ -130,9 +126,7 @@ namespace Emby.Dlna.Eventing private EventSubscription GetSubscription(string id, bool throwOnMissing) { - EventSubscription e; - - if (!_subscriptions.TryGetValue(id, out e) && throwOnMissing) + if (!_subscriptions.TryGetValue(id, out EventSubscription e) && throwOnMissing) { throw new ResourceNotFoundException("Event with Id " + id + " not found."); } diff --git a/Emby.Dlna/Eventing/EventSubscription.cs b/Emby.Dlna/Eventing/EventSubscription.cs index adb042d6c..eb8781e0c 100644 --- a/Emby.Dlna/Eventing/EventSubscription.cs +++ b/Emby.Dlna/Eventing/EventSubscription.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace Emby.Dlna.Eventing { @@ -23,12 +23,6 @@ namespace Emby.Dlna.Eventing TriggerCount++; } - public bool IsExpired - { - get - { - return SubscriptionTime.AddSeconds(TimeoutSeconds) >= DateTime.UtcNow; - } - } + public bool IsExpired => SubscriptionTime.AddSeconds(TimeoutSeconds) >= DateTime.UtcNow; } } diff --git a/Emby.Dlna/IConnectionManager.cs b/Emby.Dlna/IConnectionManager.cs index 5f889a34c..855c4454d 100644 --- a/Emby.Dlna/IConnectionManager.cs +++ b/Emby.Dlna/IConnectionManager.cs @@ -1,4 +1,4 @@ - + namespace Emby.Dlna { public interface IConnectionManager : IEventManager, IUpnpService diff --git a/Emby.Dlna/IContentDirectory.cs b/Emby.Dlna/IContentDirectory.cs index d63af4ef2..b54a17c00 100644 --- a/Emby.Dlna/IContentDirectory.cs +++ b/Emby.Dlna/IContentDirectory.cs @@ -1,4 +1,4 @@ - + namespace Emby.Dlna { public interface IContentDirectory : IEventManager, IUpnpService diff --git a/Emby.Dlna/IEventManager.cs b/Emby.Dlna/IEventManager.cs index e90476fe3..4f67a1b9b 100644 --- a/Emby.Dlna/IEventManager.cs +++ b/Emby.Dlna/IEventManager.cs @@ -1,4 +1,4 @@ - + namespace Emby.Dlna { public interface IEventManager diff --git a/Emby.Dlna/IMediaReceiverRegistrar.cs b/Emby.Dlna/IMediaReceiverRegistrar.cs index cb43221e5..5dde01f58 100644 --- a/Emby.Dlna/IMediaReceiverRegistrar.cs +++ b/Emby.Dlna/IMediaReceiverRegistrar.cs @@ -1,4 +1,4 @@ - + namespace Emby.Dlna { public interface IMediaReceiverRegistrar : IEventManager, IUpnpService diff --git a/Emby.Dlna/IUpnpService.cs b/Emby.Dlna/IUpnpService.cs index 0a52e9acf..ab8aa4619 100644 --- a/Emby.Dlna/IUpnpService.cs +++ b/Emby.Dlna/IUpnpService.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace Emby.Dlna { diff --git a/Emby.Dlna/Main/DlnaEntryPoint.cs b/Emby.Dlna/Main/DlnaEntryPoint.cs index eae3f22de..1ab6014eb 100644 --- a/Emby.Dlna/Main/DlnaEntryPoint.cs +++ b/Emby.Dlna/Main/DlnaEntryPoint.cs @@ -1,4 +1,10 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Emby.Dlna.PlayTo; +using Emby.Dlna.Ssdp; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Controller; @@ -6,25 +12,19 @@ using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dlna; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Plugins; using MediaBrowser.Controller.Session; using MediaBrowser.Controller.TV; -using Emby.Dlna.PlayTo; -using Emby.Dlna.Ssdp; -using Microsoft.Extensions.Logging; -using System; -using System.Linq; -using System.Threading.Tasks; -using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Globalization; using MediaBrowser.Model.Net; using MediaBrowser.Model.System; using MediaBrowser.Model.Threading; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; using Rssdp; using Rssdp.Infrastructure; -using System.Threading; namespace Emby.Dlna.Main { @@ -282,7 +282,7 @@ namespace Emby.Dlna.Main SetProperies(device, fullService); _Publisher.AddDevice(device); - var embeddedDevices = new [] + var embeddedDevices = new[] { "urn:schemas-upnp-org:service:ContentDirectory:1", "urn:schemas-upnp-org:service:ConnectionManager:1", @@ -308,8 +308,7 @@ namespace Emby.Dlna.Main private string CreateUuid(string text) { - Guid guid; - if (!Guid.TryParse(text, out guid)) + if (!Guid.TryParse(text, out var guid)) { guid = text.GetMD5(); } diff --git a/Emby.Dlna/MediaReceiverRegistrar/ControlHandler.cs b/Emby.Dlna/MediaReceiverRegistrar/ControlHandler.cs index 5ffa30f68..6257892b1 100644 --- a/Emby.Dlna/MediaReceiverRegistrar/ControlHandler.cs +++ b/Emby.Dlna/MediaReceiverRegistrar/ControlHandler.cs @@ -1,11 +1,10 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Configuration; -using Emby.Dlna.Server; -using Emby.Dlna.Service; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; +using Emby.Dlna.Service; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.MediaReceiverRegistrar { diff --git a/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrar.cs b/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrar.cs index f07af0464..2b84528ea 100644 --- a/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrar.cs +++ b/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrar.cs @@ -1,11 +1,9 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Dlna; -using Emby.Dlna.Service; -using Microsoft.Extensions.Logging; -using System; using System.Collections.Generic; +using Emby.Dlna.Service; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.MediaReceiverRegistrar { diff --git a/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrarXmlBuilder.cs b/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrarXmlBuilder.cs index efddbc670..641341185 100644 --- a/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrarXmlBuilder.cs +++ b/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrarXmlBuilder.cs @@ -1,6 +1,6 @@ +using System.Collections.Generic; using Emby.Dlna.Common; using Emby.Dlna.Service; -using System.Collections.Generic; namespace Emby.Dlna.MediaReceiverRegistrar { diff --git a/Emby.Dlna/MediaReceiverRegistrar/ServiceActionListBuilder.cs b/Emby.Dlna/MediaReceiverRegistrar/ServiceActionListBuilder.cs index a1f328411..86429f605 100644 --- a/Emby.Dlna/MediaReceiverRegistrar/ServiceActionListBuilder.cs +++ b/Emby.Dlna/MediaReceiverRegistrar/ServiceActionListBuilder.cs @@ -1,5 +1,5 @@ -using Emby.Dlna.Common; using System.Collections.Generic; +using Emby.Dlna.Common; namespace Emby.Dlna.MediaReceiverRegistrar { @@ -7,7 +7,7 @@ namespace Emby.Dlna.MediaReceiverRegistrar { public IEnumerable<ServiceAction> GetActions() { - return new [] + return new[] { GetIsValidated(), GetIsAuthorized(), diff --git a/Emby.Dlna/PlayTo/CurrentIdEventArgs.cs b/Emby.Dlna/PlayTo/CurrentIdEventArgs.cs index 99aa50bd9..fdf435bcf 100644 --- a/Emby.Dlna/PlayTo/CurrentIdEventArgs.cs +++ b/Emby.Dlna/PlayTo/CurrentIdEventArgs.cs @@ -1,9 +1,9 @@ -using System; +using System; namespace Emby.Dlna.PlayTo { public class CurrentIdEventArgs : EventArgs { - public string Id { get; set; } + public string Id { get; set; } } } diff --git a/Emby.Dlna/PlayTo/Device.cs b/Emby.Dlna/PlayTo/Device.cs index cf53bb861..68aa0a6a7 100644 --- a/Emby.Dlna/PlayTo/Device.cs +++ b/Emby.Dlna/PlayTo/Device.cs @@ -1,21 +1,17 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using Emby.Dlna.Common; -using Emby.Dlna.Ssdp; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; using System; using System.Collections.Generic; using System.Globalization; using System.Linq; -using System.Net; -using System.Security; using System.Threading; using System.Threading.Tasks; using System.Xml.Linq; +using Emby.Dlna.Common; using Emby.Dlna.Server; +using Emby.Dlna.Ssdp; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Model.Threading; -using MediaBrowser.Model.Extensions; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.PlayTo { @@ -39,10 +35,7 @@ namespace Emby.Dlna.PlayTo RefreshVolumeIfNeeded(); return _volume; } - set - { - _volume = value; - } + set => _volume = value; } public TimeSpan? Duration { get; set; } @@ -50,41 +43,17 @@ namespace Emby.Dlna.PlayTo private TimeSpan _position = TimeSpan.FromSeconds(0); public TimeSpan Position { - get - { - return _position; - } - set - { - _position = value; - } + get => _position; + set => _position = value; } public TRANSPORTSTATE TransportState { get; private set; } - public bool IsPlaying - { - get - { - return TransportState == TRANSPORTSTATE.PLAYING; - } - } + public bool IsPlaying => TransportState == TRANSPORTSTATE.PLAYING; - public bool IsPaused - { - get - { - return TransportState == TRANSPORTSTATE.PAUSED || TransportState == TRANSPORTSTATE.PAUSED_PLAYBACK; - } - } + public bool IsPaused => TransportState == TRANSPORTSTATE.PAUSED || TransportState == TRANSPORTSTATE.PAUSED_PLAYBACK; - public bool IsStopped - { - get - { - return TransportState == TRANSPORTSTATE.STOPPED; - } - } + public bool IsStopped => TransportState == TRANSPORTSTATE.STOPPED; #endregion @@ -620,9 +589,7 @@ namespace Emby.Dlna.PlayTo if (transportStateValue != null) { - TRANSPORTSTATE state; - - if (Enum.TryParse(transportStateValue, true, out state)) + if (Enum.TryParse(transportStateValue, true, out TRANSPORTSTATE state)) { return state; } diff --git a/Emby.Dlna/PlayTo/DeviceInfo.cs b/Emby.Dlna/PlayTo/DeviceInfo.cs index d453a3d82..9e7c04bdb 100644 --- a/Emby.Dlna/PlayTo/DeviceInfo.cs +++ b/Emby.Dlna/PlayTo/DeviceInfo.cs @@ -1,6 +1,6 @@ -using Emby.Dlna.Common; -using MediaBrowser.Model.Dlna; using System.Collections.Generic; +using Emby.Dlna.Common; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.PlayTo { @@ -34,26 +34,14 @@ namespace Emby.Dlna.PlayTo private string _baseUrl = string.Empty; public string BaseUrl { - get - { - return _baseUrl; - } - set - { - _baseUrl = value; - } + get => _baseUrl; + set => _baseUrl = value; } public DeviceIcon Icon { get; set; } private readonly List<DeviceService> _services = new List<DeviceService>(); - public List<DeviceService> Services - { - get - { - return _services; - } - } + public List<DeviceService> Services => _services; public DeviceIdentification ToDeviceIdentification() { diff --git a/Emby.Dlna/PlayTo/PlayToController.cs b/Emby.Dlna/PlayTo/PlayToController.cs index c7e45b896..409b8442c 100644 --- a/Emby.Dlna/PlayTo/PlayToController.cs +++ b/Emby.Dlna/PlayTo/PlayToController.cs @@ -1,28 +1,25 @@ -using MediaBrowser.Controller.Dlna; -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Session; -using Emby.Dlna.Didl; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Session; -using MediaBrowser.Model.System; using System; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Threading; using System.Threading.Tasks; +using Emby.Dlna.Didl; using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Dlna; +using MediaBrowser.Controller.Drawing; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Controller.Session; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Events; using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Extensions; -using System.Net.Http; using MediaBrowser.Model.Services; +using MediaBrowser.Model.Session; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.PlayTo { @@ -47,18 +44,9 @@ namespace Emby.Dlna.PlayTo private readonly string _accessToken; private readonly DateTime _creationTime; - public bool IsSessionActive - { - get - { - return !_disposed && _device != null; - } - } + public bool IsSessionActive => !_disposed && _device != null; - public bool SupportsMediaControl - { - get { return IsSessionActive; } - } + public bool SupportsMediaControl => IsSessionActive; public PlayToController(SessionInfo session, ISessionManager sessionManager, ILibraryManager libraryManager, ILogger logger, IDlnaManager dlnaManager, IUserManager userManager, IImageProcessor imageProcessor, string serverAddress, string accessToken, IDeviceDiscovery deviceDiscovery, IUserDataManager userDataManager, ILocalizationManager localization, IMediaSourceManager mediaSourceManager, IConfigurationManager config, IMediaEncoder mediaEncoder) { @@ -110,14 +98,11 @@ namespace Emby.Dlna.PlayTo { var info = e.Argument; - string nts; - info.Headers.TryGetValue("NTS", out nts); + info.Headers.TryGetValue("NTS", out string nts); - string usn; - if (!info.Headers.TryGetValue("USN", out usn)) usn = string.Empty; + if (!info.Headers.TryGetValue("USN", out string usn)) usn = string.Empty; - string nt; - if (!info.Headers.TryGetValue("NT", out nt)) nt = string.Empty; + if (!info.Headers.TryGetValue("NT", out string nt)) nt = string.Empty; if (usn.IndexOf(_device.Properties.UUID, StringComparison.OrdinalIgnoreCase) != -1 && !_disposed) @@ -439,13 +424,7 @@ namespace Emby.Dlna.PlayTo private int _currentPlaylistIndex; private readonly List<PlaylistItem> _playlist = new List<PlaylistItem>(); - private List<PlaylistItem> Playlist - { - get - { - return _playlist; - } - } + private List<PlaylistItem> Playlist => _playlist; private void AddItemFromId(Guid id, List<BaseItem> list) { @@ -641,9 +620,7 @@ namespace Emby.Dlna.PlayTo private Task SendGeneralCommand(GeneralCommand command, CancellationToken cancellationToken) { - GeneralCommandType commandType; - - if (Enum.TryParse(command.Name, true, out commandType)) + if (Enum.TryParse(command.Name, true, out GeneralCommandType commandType)) { switch (commandType) { @@ -659,13 +636,9 @@ namespace Emby.Dlna.PlayTo return _device.ToggleMute(cancellationToken); case GeneralCommandType.SetAudioStreamIndex: { - string arg; - - if (command.Arguments.TryGetValue("Index", out arg)) + if (command.Arguments.TryGetValue("Index", out string arg)) { - int val; - - if (int.TryParse(arg, NumberStyles.Integer, _usCulture, out val)) + if (int.TryParse(arg, NumberStyles.Integer, _usCulture, out var val)) { return SetAudioStreamIndex(val); } @@ -677,13 +650,9 @@ namespace Emby.Dlna.PlayTo } case GeneralCommandType.SetSubtitleStreamIndex: { - string arg; - - if (command.Arguments.TryGetValue("Index", out arg)) + if (command.Arguments.TryGetValue("Index", out string arg)) { - int val; - - if (int.TryParse(arg, NumberStyles.Integer, _usCulture, out val)) + if (int.TryParse(arg, NumberStyles.Integer, _usCulture, out var val)) { return SetSubtitleStreamIndex(val); } @@ -695,13 +664,9 @@ namespace Emby.Dlna.PlayTo } case GeneralCommandType.SetVolume: { - string arg; - - if (command.Arguments.TryGetValue("Volume", out arg)) + if (command.Arguments.TryGetValue("Volume", out string arg)) { - int volume; - - if (int.TryParse(arg, NumberStyles.Integer, _usCulture, out volume)) + if (int.TryParse(arg, NumberStyles.Integer, _usCulture, out var volume)) { return _device.SetVolume(volume, cancellationToken); } @@ -896,8 +861,7 @@ namespace Emby.Dlna.PlayTo { var value = values.Get(name); - int result; - if (int.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out result)) + if (int.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -909,8 +873,7 @@ namespace Emby.Dlna.PlayTo { var value = values.Get(name); - long result; - if (long.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out result)) + if (long.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var result)) { return result; } diff --git a/Emby.Dlna/PlayTo/PlayToManager.cs b/Emby.Dlna/PlayTo/PlayToManager.cs index 47d00aad5..2836ee95d 100644 --- a/Emby.Dlna/PlayTo/PlayToManager.cs +++ b/Emby.Dlna/PlayTo/PlayToManager.cs @@ -1,26 +1,23 @@ -using MediaBrowser.Common.Net; +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Net; using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dlna; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Session; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Session; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Net; -using System.Threading.Tasks; using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Controller.Session; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Events; using MediaBrowser.Model.Globalization; using MediaBrowser.Model.Net; +using MediaBrowser.Model.Session; using MediaBrowser.Model.Threading; -using System.Threading; -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Devices; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.PlayTo { @@ -81,11 +78,9 @@ namespace Emby.Dlna.PlayTo var info = e.Argument; - string usn; - if (!info.Headers.TryGetValue("USN", out usn)) usn = string.Empty; + if (!info.Headers.TryGetValue("USN", out string usn)) usn = string.Empty; - string nt; - if (!info.Headers.TryGetValue("NT", out nt)) nt = string.Empty; + if (!info.Headers.TryGetValue("NT", out string nt)) nt = string.Empty; string location = info.Location.ToString(); @@ -158,8 +153,7 @@ namespace Emby.Dlna.PlayTo _logger.LogDebug("Attempting to create PlayToController from location {0}", location); _logger.LogDebug("Logging session activity from location {0}", location); - string uuid; - if (info.Headers.TryGetValue("USN", out uuid)) + if (info.Headers.TryGetValue("USN", out string uuid)) { uuid = GetUuid(uuid); } diff --git a/Emby.Dlna/PlayTo/PlaybackProgressEventArgs.cs b/Emby.Dlna/PlayTo/PlaybackProgressEventArgs.cs index b89f7a864..ffa56419b 100644 --- a/Emby.Dlna/PlayTo/PlaybackProgressEventArgs.cs +++ b/Emby.Dlna/PlayTo/PlaybackProgressEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace Emby.Dlna.PlayTo { @@ -6,4 +6,4 @@ namespace Emby.Dlna.PlayTo { public uBaseObject MediaInfo { get; set; } } -}
\ No newline at end of file +} diff --git a/Emby.Dlna/PlayTo/PlaybackStartEventArgs.cs b/Emby.Dlna/PlayTo/PlaybackStartEventArgs.cs index 17d2540a5..8cd8b47ac 100644 --- a/Emby.Dlna/PlayTo/PlaybackStartEventArgs.cs +++ b/Emby.Dlna/PlayTo/PlaybackStartEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace Emby.Dlna.PlayTo { diff --git a/Emby.Dlna/PlayTo/PlaybackStoppedEventArgs.cs b/Emby.Dlna/PlayTo/PlaybackStoppedEventArgs.cs index 847c33ff7..2afdc324d 100644 --- a/Emby.Dlna/PlayTo/PlaybackStoppedEventArgs.cs +++ b/Emby.Dlna/PlayTo/PlaybackStoppedEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace Emby.Dlna.PlayTo { @@ -12,4 +12,4 @@ namespace Emby.Dlna.PlayTo public uBaseObject OldMediaInfo { get; set; } public uBaseObject NewMediaInfo { get; set; } } -}
\ No newline at end of file +} diff --git a/Emby.Dlna/PlayTo/PlaylistItem.cs b/Emby.Dlna/PlayTo/PlaylistItem.cs index b60e6a6fb..1e62b61e9 100644 --- a/Emby.Dlna/PlayTo/PlaylistItem.cs +++ b/Emby.Dlna/PlayTo/PlaylistItem.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.PlayTo { @@ -12,4 +12,4 @@ namespace Emby.Dlna.PlayTo public DeviceProfile Profile { get; set; } } -}
\ No newline at end of file +} diff --git a/Emby.Dlna/PlayTo/PlaylistItemFactory.cs b/Emby.Dlna/PlayTo/PlaylistItemFactory.cs index 1080320e0..aceb634e3 100644 --- a/Emby.Dlna/PlayTo/PlaylistItemFactory.cs +++ b/Emby.Dlna/PlayTo/PlaylistItemFactory.cs @@ -1,10 +1,9 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Session; -using System; using System.Globalization; using System.IO; using System.Linq; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Session; namespace Emby.Dlna.PlayTo { diff --git a/Emby.Dlna/PlayTo/SsdpHttpClient.cs b/Emby.Dlna/PlayTo/SsdpHttpClient.cs index 963577169..1ad99fac5 100644 --- a/Emby.Dlna/PlayTo/SsdpHttpClient.cs +++ b/Emby.Dlna/PlayTo/SsdpHttpClient.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using Emby.Dlna.Common; using System; using System.Globalization; using System.IO; using System.Text; +using System.Threading; using System.Threading.Tasks; using System.Xml.Linq; -using System.Threading; +using Emby.Dlna.Common; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; namespace Emby.Dlna.PlayTo { diff --git a/Emby.Dlna/PlayTo/TRANSPORTSTATE.cs b/Emby.Dlna/PlayTo/TRANSPORTSTATE.cs index 93d306a17..9f1690b04 100644 --- a/Emby.Dlna/PlayTo/TRANSPORTSTATE.cs +++ b/Emby.Dlna/PlayTo/TRANSPORTSTATE.cs @@ -1,4 +1,4 @@ -namespace Emby.Dlna.PlayTo +namespace Emby.Dlna.PlayTo { public enum TRANSPORTSTATE { @@ -8,4 +8,4 @@ PAUSED_PLAYBACK, PAUSED } -}
\ No newline at end of file +} diff --git a/Emby.Dlna/PlayTo/TransportCommands.cs b/Emby.Dlna/PlayTo/TransportCommands.cs index e34ce8797..b96fa43e5 100644 --- a/Emby.Dlna/PlayTo/TransportCommands.cs +++ b/Emby.Dlna/PlayTo/TransportCommands.cs @@ -1,8 +1,8 @@ -using System; -using Emby.Dlna.Common; +using System; using System.Collections.Generic; using System.Linq; using System.Xml.Linq; +using Emby.Dlna.Common; using Emby.Dlna.Ssdp; namespace Emby.Dlna.PlayTo @@ -12,27 +12,15 @@ namespace Emby.Dlna.PlayTo private List<StateVariable> _stateVariables = new List<StateVariable>(); public List<StateVariable> StateVariables { - get - { - return _stateVariables; - } - set - { - _stateVariables = value; - } + get => _stateVariables; + set => _stateVariables = value; } private List<ServiceAction> _serviceActions = new List<ServiceAction>(); public List<ServiceAction> ServiceActions { - get - { - return _serviceActions; - } - set - { - _serviceActions = value; - } + get => _serviceActions; + set => _serviceActions = value; } public static TransportCommands Create(XDocument document) diff --git a/Emby.Dlna/PlayTo/TransportStateEventArgs.cs b/Emby.Dlna/PlayTo/TransportStateEventArgs.cs index c6a96f58c..7dcd39e10 100644 --- a/Emby.Dlna/PlayTo/TransportStateEventArgs.cs +++ b/Emby.Dlna/PlayTo/TransportStateEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace Emby.Dlna.PlayTo { diff --git a/Emby.Dlna/PlayTo/UpnpContainer.cs b/Emby.Dlna/PlayTo/UpnpContainer.cs index 4c07f3605..943e0347b 100644 --- a/Emby.Dlna/PlayTo/UpnpContainer.cs +++ b/Emby.Dlna/PlayTo/UpnpContainer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Xml.Linq; using Emby.Dlna.Ssdp; diff --git a/Emby.Dlna/PlayTo/uBaseObject.cs b/Emby.Dlna/PlayTo/uBaseObject.cs index 3d80d7ed0..f29a126df 100644 --- a/Emby.Dlna/PlayTo/uBaseObject.cs +++ b/Emby.Dlna/PlayTo/uBaseObject.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace Emby.Dlna.PlayTo { diff --git a/Emby.Dlna/PlayTo/uParser.cs b/Emby.Dlna/PlayTo/uParser.cs index 4d26ee6b3..3a0ffffd4 100644 --- a/Emby.Dlna/PlayTo/uParser.cs +++ b/Emby.Dlna/PlayTo/uParser.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Xml.Linq; diff --git a/Emby.Dlna/PlayTo/uParserObject.cs b/Emby.Dlna/PlayTo/uParserObject.cs index 4e75adf1f..87a7f69c6 100644 --- a/Emby.Dlna/PlayTo/uParserObject.cs +++ b/Emby.Dlna/PlayTo/uParserObject.cs @@ -1,4 +1,4 @@ -using System.Xml.Linq; +using System.Xml.Linq; namespace Emby.Dlna.PlayTo { @@ -6,4 +6,4 @@ namespace Emby.Dlna.PlayTo { public XElement Element { get; set; } } -}
\ No newline at end of file +} diff --git a/Emby.Dlna/PlayTo/uPnpNamespaces.cs b/Emby.Dlna/PlayTo/uPnpNamespaces.cs index 81acb5e41..7132ecd15 100644 --- a/Emby.Dlna/PlayTo/uPnpNamespaces.cs +++ b/Emby.Dlna/PlayTo/uPnpNamespaces.cs @@ -1,4 +1,4 @@ -using System.Xml.Linq; +using System.Xml.Linq; namespace Emby.Dlna.PlayTo { diff --git a/Emby.Dlna/Profiles/DefaultProfile.cs b/Emby.Dlna/Profiles/DefaultProfile.cs index 1295c2f9a..ea50bd4a7 100644 --- a/Emby.Dlna/Profiles/DefaultProfile.cs +++ b/Emby.Dlna/Profiles/DefaultProfile.cs @@ -1,7 +1,5 @@ -using MediaBrowser.Model.Dlna; using System.Linq; -using System.Xml.Serialization; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/DenonAvrProfile.cs b/Emby.Dlna/Profiles/DenonAvrProfile.cs index b8a44396a..a73885191 100644 --- a/Emby.Dlna/Profiles/DenonAvrProfile.cs +++ b/Emby.Dlna/Profiles/DenonAvrProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/DirectTvProfile.cs b/Emby.Dlna/Profiles/DirectTvProfile.cs index 4243c1c9d..317c0976a 100644 --- a/Emby.Dlna/Profiles/DirectTvProfile.cs +++ b/Emby.Dlna/Profiles/DirectTvProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/DishHopperJoeyProfile.cs b/Emby.Dlna/Profiles/DishHopperJoeyProfile.cs index c1d1eede2..d501cce0d 100644 --- a/Emby.Dlna/Profiles/DishHopperJoeyProfile.cs +++ b/Emby.Dlna/Profiles/DishHopperJoeyProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/Foobar2000Profile.cs b/Emby.Dlna/Profiles/Foobar2000Profile.cs index 69a5d05dd..947194bce 100644 --- a/Emby.Dlna/Profiles/Foobar2000Profile.cs +++ b/Emby.Dlna/Profiles/Foobar2000Profile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/LgTvProfile.cs b/Emby.Dlna/Profiles/LgTvProfile.cs index 79cf2ebfd..145685ab1 100644 --- a/Emby.Dlna/Profiles/LgTvProfile.cs +++ b/Emby.Dlna/Profiles/LgTvProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/LinksysDMA2100Profile.cs b/Emby.Dlna/Profiles/LinksysDMA2100Profile.cs index ffb735d8d..3f0bb4263 100644 --- a/Emby.Dlna/Profiles/LinksysDMA2100Profile.cs +++ b/Emby.Dlna/Profiles/LinksysDMA2100Profile.cs @@ -1,4 +1,3 @@ -using System.Xml.Serialization; using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles diff --git a/Emby.Dlna/Profiles/MarantzProfile.cs b/Emby.Dlna/Profiles/MarantzProfile.cs index b5b486a9c..162e284be 100644 --- a/Emby.Dlna/Profiles/MarantzProfile.cs +++ b/Emby.Dlna/Profiles/MarantzProfile.cs @@ -1,4 +1,3 @@ -using System.Xml.Serialization; using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles diff --git a/Emby.Dlna/Profiles/MediaMonkeyProfile.cs b/Emby.Dlna/Profiles/MediaMonkeyProfile.cs index 441933efa..53cae4e2f 100644 --- a/Emby.Dlna/Profiles/MediaMonkeyProfile.cs +++ b/Emby.Dlna/Profiles/MediaMonkeyProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { @@ -14,9 +13,9 @@ namespace Emby.Dlna.Profiles Identification = new DeviceIdentification { - FriendlyName = @"MediaMonkey", + FriendlyName = @"MediaMonkey", - Headers = new[] + Headers = new[] { new HttpHeaderInfo { diff --git a/Emby.Dlna/Profiles/PanasonicVieraProfile.cs b/Emby.Dlna/Profiles/PanasonicVieraProfile.cs index 53d6a62bb..5f31ec484 100644 --- a/Emby.Dlna/Profiles/PanasonicVieraProfile.cs +++ b/Emby.Dlna/Profiles/PanasonicVieraProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { @@ -218,4 +217,4 @@ namespace Emby.Dlna.Profiles }; } } -}
\ No newline at end of file +} diff --git a/Emby.Dlna/Profiles/PopcornHourProfile.cs b/Emby.Dlna/Profiles/PopcornHourProfile.cs index b91089b1b..aefe8c44f 100644 --- a/Emby.Dlna/Profiles/PopcornHourProfile.cs +++ b/Emby.Dlna/Profiles/PopcornHourProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SamsungSmartTvProfile.cs b/Emby.Dlna/Profiles/SamsungSmartTvProfile.cs index b55146ffd..51a1c8173 100644 --- a/Emby.Dlna/Profiles/SamsungSmartTvProfile.cs +++ b/Emby.Dlna/Profiles/SamsungSmartTvProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { @@ -363,4 +362,4 @@ namespace Emby.Dlna.Profiles }; } } -}
\ No newline at end of file +} diff --git a/Emby.Dlna/Profiles/SharpSmartTvProfile.cs b/Emby.Dlna/Profiles/SharpSmartTvProfile.cs index d27a0e782..f840cfb34 100644 --- a/Emby.Dlna/Profiles/SharpSmartTvProfile.cs +++ b/Emby.Dlna/Profiles/SharpSmartTvProfile.cs @@ -1,4 +1,3 @@ -using System.Xml.Serialization; using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles diff --git a/Emby.Dlna/Profiles/SonyBlurayPlayer2013.cs b/Emby.Dlna/Profiles/SonyBlurayPlayer2013.cs index dd2ca7a7d..2af1d3b50 100644 --- a/Emby.Dlna/Profiles/SonyBlurayPlayer2013.cs +++ b/Emby.Dlna/Profiles/SonyBlurayPlayer2013.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyBlurayPlayer2014.cs b/Emby.Dlna/Profiles/SonyBlurayPlayer2014.cs index 69a2f2b61..3de0b5192 100644 --- a/Emby.Dlna/Profiles/SonyBlurayPlayer2014.cs +++ b/Emby.Dlna/Profiles/SonyBlurayPlayer2014.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyBlurayPlayer2015.cs b/Emby.Dlna/Profiles/SonyBlurayPlayer2015.cs index ef443e56e..889484bea 100644 --- a/Emby.Dlna/Profiles/SonyBlurayPlayer2015.cs +++ b/Emby.Dlna/Profiles/SonyBlurayPlayer2015.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyBlurayPlayer2016.cs b/Emby.Dlna/Profiles/SonyBlurayPlayer2016.cs index 92e5cb086..acb90bd01 100644 --- a/Emby.Dlna/Profiles/SonyBlurayPlayer2016.cs +++ b/Emby.Dlna/Profiles/SonyBlurayPlayer2016.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyBlurayPlayerProfile.cs b/Emby.Dlna/Profiles/SonyBlurayPlayerProfile.cs index 2bf65351e..e1808b205 100644 --- a/Emby.Dlna/Profiles/SonyBlurayPlayerProfile.cs +++ b/Emby.Dlna/Profiles/SonyBlurayPlayerProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyBravia2010Profile.cs b/Emby.Dlna/Profiles/SonyBravia2010Profile.cs index 7b452c536..f8e8faa76 100644 --- a/Emby.Dlna/Profiles/SonyBravia2010Profile.cs +++ b/Emby.Dlna/Profiles/SonyBravia2010Profile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyBravia2011Profile.cs b/Emby.Dlna/Profiles/SonyBravia2011Profile.cs index 75fefa9a8..111f36e9b 100644 --- a/Emby.Dlna/Profiles/SonyBravia2011Profile.cs +++ b/Emby.Dlna/Profiles/SonyBravia2011Profile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyBravia2012Profile.cs b/Emby.Dlna/Profiles/SonyBravia2012Profile.cs index 1d55d91f9..d5efe4270 100644 --- a/Emby.Dlna/Profiles/SonyBravia2012Profile.cs +++ b/Emby.Dlna/Profiles/SonyBravia2012Profile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyBravia2013Profile.cs b/Emby.Dlna/Profiles/SonyBravia2013Profile.cs index 555ce419b..3b0228694 100644 --- a/Emby.Dlna/Profiles/SonyBravia2013Profile.cs +++ b/Emby.Dlna/Profiles/SonyBravia2013Profile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyBravia2014Profile.cs b/Emby.Dlna/Profiles/SonyBravia2014Profile.cs index b6e5bbea5..e860eae34 100644 --- a/Emby.Dlna/Profiles/SonyBravia2014Profile.cs +++ b/Emby.Dlna/Profiles/SonyBravia2014Profile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyPs3Profile.cs b/Emby.Dlna/Profiles/SonyPs3Profile.cs index fc69d2dd3..88d064695 100644 --- a/Emby.Dlna/Profiles/SonyPs3Profile.cs +++ b/Emby.Dlna/Profiles/SonyPs3Profile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/SonyPs4Profile.cs b/Emby.Dlna/Profiles/SonyPs4Profile.cs index 9b444ec24..499cf8803 100644 --- a/Emby.Dlna/Profiles/SonyPs4Profile.cs +++ b/Emby.Dlna/Profiles/SonyPs4Profile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/WdtvLiveProfile.cs b/Emby.Dlna/Profiles/WdtvLiveProfile.cs index bab557674..bf7b1ab47 100644 --- a/Emby.Dlna/Profiles/WdtvLiveProfile.cs +++ b/Emby.Dlna/Profiles/WdtvLiveProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { @@ -17,7 +16,7 @@ namespace Emby.Dlna.Profiles { ModelName = "WD TV", - Headers = new [] + Headers = new[] { new HttpHeaderInfo {Name = "User-Agent", Value = "alphanetworks", Match = HeaderMatchType.Substring}, new HttpHeaderInfo diff --git a/Emby.Dlna/Profiles/XboxOneProfile.cs b/Emby.Dlna/Profiles/XboxOneProfile.cs index 46740cb31..710b891e3 100644 --- a/Emby.Dlna/Profiles/XboxOneProfile.cs +++ b/Emby.Dlna/Profiles/XboxOneProfile.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dlna; -using System.Xml.Serialization; +using MediaBrowser.Model.Dlna; namespace Emby.Dlna.Profiles { diff --git a/Emby.Dlna/Profiles/Xml/Default.xml b/Emby.Dlna/Profiles/Xml/Default.xml index 9b862fec3..daac4135a 100644 --- a/Emby.Dlna/Profiles/Xml/Default.xml +++ b/Emby.Dlna/Profiles/Xml/Default.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Generic Device</Name> <Manufacturer>Jellyfin</Manufacturer> <ManufacturerUrl>https://github.com/jellyfin/jellyfin</ManufacturerUrl> diff --git a/Emby.Dlna/Profiles/Xml/Denon AVR.xml b/Emby.Dlna/Profiles/Xml/Denon AVR.xml index 599726c51..c76cd9a89 100644 --- a/Emby.Dlna/Profiles/Xml/Denon AVR.xml +++ b/Emby.Dlna/Profiles/Xml/Denon AVR.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Denon AVR</Name> <Identification> <FriendlyName>Denon:\[AVR:.*</FriendlyName> diff --git a/Emby.Dlna/Profiles/Xml/DirecTV HD-DVR.xml b/Emby.Dlna/Profiles/Xml/DirecTV HD-DVR.xml index e640e86bf..f2ce68ab5 100644 --- a/Emby.Dlna/Profiles/Xml/DirecTV HD-DVR.xml +++ b/Emby.Dlna/Profiles/Xml/DirecTV HD-DVR.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>DirecTV HD-DVR</Name> <Identification> <FriendlyName>^DIRECTV.*$</FriendlyName> diff --git a/Emby.Dlna/Profiles/Xml/Dish Hopper-Joey.xml b/Emby.Dlna/Profiles/Xml/Dish Hopper-Joey.xml index 615774adf..5ff497560 100644 --- a/Emby.Dlna/Profiles/Xml/Dish Hopper-Joey.xml +++ b/Emby.Dlna/Profiles/Xml/Dish Hopper-Joey.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Dish Hopper-Joey</Name> <Identification> <Manufacturer>Echostar Technologies LLC</Manufacturer> diff --git a/Emby.Dlna/Profiles/Xml/LG Smart TV.xml b/Emby.Dlna/Profiles/Xml/LG Smart TV.xml index 21dccf531..a0f0e0ee8 100644 --- a/Emby.Dlna/Profiles/Xml/LG Smart TV.xml +++ b/Emby.Dlna/Profiles/Xml/LG Smart TV.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>LG Smart TV</Name> <Identification> <FriendlyName>LG.*</FriendlyName> diff --git a/Emby.Dlna/Profiles/Xml/Linksys DMA2100.xml b/Emby.Dlna/Profiles/Xml/Linksys DMA2100.xml index ac081bba3..55910c77f 100644 --- a/Emby.Dlna/Profiles/Xml/Linksys DMA2100.xml +++ b/Emby.Dlna/Profiles/Xml/Linksys DMA2100.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Linksys DMA2100</Name> <Identification> <ModelName>DMA2100us</ModelName> diff --git a/Emby.Dlna/Profiles/Xml/Marantz.xml b/Emby.Dlna/Profiles/Xml/Marantz.xml index 2bbdecde8..a6345ab3f 100644 --- a/Emby.Dlna/Profiles/Xml/Marantz.xml +++ b/Emby.Dlna/Profiles/Xml/Marantz.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Marantz</Name> <Identification> <Manufacturer>Marantz</Manufacturer> diff --git a/Emby.Dlna/Profiles/Xml/MediaMonkey.xml b/Emby.Dlna/Profiles/Xml/MediaMonkey.xml index 955c30e85..2c2c3a1de 100644 --- a/Emby.Dlna/Profiles/Xml/MediaMonkey.xml +++ b/Emby.Dlna/Profiles/Xml/MediaMonkey.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>MediaMonkey</Name> <Identification> <FriendlyName>MediaMonkey</FriendlyName> diff --git a/Emby.Dlna/Profiles/Xml/Panasonic Viera.xml b/Emby.Dlna/Profiles/Xml/Panasonic Viera.xml index 0da0e0926..934f0550d 100644 --- a/Emby.Dlna/Profiles/Xml/Panasonic Viera.xml +++ b/Emby.Dlna/Profiles/Xml/Panasonic Viera.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Panasonic Viera</Name> <Identification> <FriendlyName>VIERA</FriendlyName> diff --git a/Emby.Dlna/Profiles/Xml/Popcorn Hour.xml b/Emby.Dlna/Profiles/Xml/Popcorn Hour.xml index 775d40b74..eab220fae 100644 --- a/Emby.Dlna/Profiles/Xml/Popcorn Hour.xml +++ b/Emby.Dlna/Profiles/Xml/Popcorn Hour.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Popcorn Hour</Name> <Manufacturer>Jellyfin</Manufacturer> <ManufacturerUrl>https://github.com/jellyfin/jellyfin</ManufacturerUrl> @@ -88,4 +89,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Samsung Smart TV.xml b/Emby.Dlna/Profiles/Xml/Samsung Smart TV.xml index 1362d8c38..3e6f56e5b 100644 --- a/Emby.Dlna/Profiles/Xml/Samsung Smart TV.xml +++ b/Emby.Dlna/Profiles/Xml/Samsung Smart TV.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Samsung Smart TV</Name> <Identification> <ModelUrl>samsung.com</ModelUrl> @@ -124,4 +125,4 @@ <SubtitleProfile format="srt" method="Embed" /> <SubtitleProfile format="srt" method="External" didlMode="CaptionInfoEx" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sharp Smart TV.xml b/Emby.Dlna/Profiles/Xml/Sharp Smart TV.xml index dac2fdea4..74240b843 100644 --- a/Emby.Dlna/Profiles/Xml/Sharp Smart TV.xml +++ b/Emby.Dlna/Profiles/Xml/Sharp Smart TV.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sharp Smart TV</Name> <Identification> <Manufacturer>Sharp</Manufacturer> @@ -56,4 +57,4 @@ <SubtitleProfile format="srt" method="Embed" /> <SubtitleProfile format="srt" method="External" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2013.xml b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2013.xml index 0cb0c52c2..2c5614883 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2013.xml +++ b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2013.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Blu-ray Player 2013</Name> <Identification> <ModelNumber>BDP-2013</ModelNumber> @@ -83,4 +84,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2014.xml b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2014.xml index 602c54f61..44f9821b3 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2014.xml +++ b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2014.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Blu-ray Player 2014</Name> <Identification> <ModelNumber>BDP-2014</ModelNumber> @@ -83,4 +84,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2015.xml b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2015.xml index 701aba85f..a7d17c1a0 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2015.xml +++ b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2015.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Blu-ray Player 2015</Name> <Identification> <ModelNumber>BDP-2015</ModelNumber> @@ -81,4 +82,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2016.xml b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2016.xml index 5f9012678..b42b1e84f 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2016.xml +++ b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player 2016.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Blu-ray Player 2016</Name> <Identification> <ModelNumber>BDP-2016</ModelNumber> @@ -81,4 +82,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player.xml b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player.xml index 765d5d5fe..46857caf0 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player.xml +++ b/Emby.Dlna/Profiles/Xml/Sony Blu-ray Player.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Blu-ray Player</Name> <Identification> <FriendlyName>Blu-ray Disc Player</FriendlyName> @@ -111,4 +112,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Bravia (2010).xml b/Emby.Dlna/Profiles/Xml/Sony Bravia (2010).xml index d84531758..f20e9fcb6 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Bravia (2010).xml +++ b/Emby.Dlna/Profiles/Xml/Sony Bravia (2010).xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Bravia (2010)</Name> <Identification> <FriendlyName>KDL-\d{2}[EHLNPB]X\d[01]\d.*</FriendlyName> @@ -129,4 +130,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Bravia (2011).xml b/Emby.Dlna/Profiles/Xml/Sony Bravia (2011).xml index 8e376fbf9..49819ccfd 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Bravia (2011).xml +++ b/Emby.Dlna/Profiles/Xml/Sony Bravia (2011).xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Bravia (2011)</Name> <Identification> <FriendlyName>KDL-\d{2}([A-Z]X\d2\d|CX400).*</FriendlyName> @@ -135,4 +136,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Bravia (2012).xml b/Emby.Dlna/Profiles/Xml/Sony Bravia (2012).xml index 92a04dc7a..aaad7b342 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Bravia (2012).xml +++ b/Emby.Dlna/Profiles/Xml/Sony Bravia (2012).xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Bravia (2012)</Name> <Identification> <FriendlyName>KDL-\d{2}[A-Z]X\d5(\d|G).*</FriendlyName> @@ -111,4 +112,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Bravia (2013).xml b/Emby.Dlna/Profiles/Xml/Sony Bravia (2013).xml index 953ac0a43..8e2e8dbaa 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Bravia (2013).xml +++ b/Emby.Dlna/Profiles/Xml/Sony Bravia (2013).xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Bravia (2013)</Name> <Identification> <FriendlyName>KDL-\d{2}[WR][5689]\d{2}A.*</FriendlyName> @@ -110,4 +111,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony Bravia (2014).xml b/Emby.Dlna/Profiles/Xml/Sony Bravia (2014).xml index 34afe7e6e..17a6135e1 100644 --- a/Emby.Dlna/Profiles/Xml/Sony Bravia (2014).xml +++ b/Emby.Dlna/Profiles/Xml/Sony Bravia (2014).xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony Bravia (2014)</Name> <Identification> <FriendlyName>(KDL-\d{2}W[5-9]\d{2}B|KDL-\d{2}R480|XBR-\d{2}X[89]\d{2}B|KD-\d{2}[SX][89]\d{3}B).*</FriendlyName> @@ -110,4 +111,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony PlayStation 3.xml b/Emby.Dlna/Profiles/Xml/Sony PlayStation 3.xml index d1afc162c..df385135c 100644 --- a/Emby.Dlna/Profiles/Xml/Sony PlayStation 3.xml +++ b/Emby.Dlna/Profiles/Xml/Sony PlayStation 3.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony PlayStation 3</Name> <Identification> <FriendlyName>PLAYSTATION 3</FriendlyName> @@ -101,4 +102,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Sony PlayStation 4.xml b/Emby.Dlna/Profiles/Xml/Sony PlayStation 4.xml index 090abe417..20f50f6b6 100644 --- a/Emby.Dlna/Profiles/Xml/Sony PlayStation 4.xml +++ b/Emby.Dlna/Profiles/Xml/Sony PlayStation 4.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Sony PlayStation 4</Name> <Identification> <FriendlyName>PLAYSTATION 4</FriendlyName> @@ -104,4 +105,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/WDTV Live.xml b/Emby.Dlna/Profiles/Xml/WDTV Live.xml index db4ce4722..05380e33a 100644 --- a/Emby.Dlna/Profiles/Xml/WDTV Live.xml +++ b/Emby.Dlna/Profiles/Xml/WDTV Live.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>WDTV Live</Name> <Identification> <ModelName>WD TV</ModelName> @@ -90,4 +91,4 @@ <SubtitleProfile format="subrip" method="Embed" /> <SubtitleProfile format="idx" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/Xbox One.xml b/Emby.Dlna/Profiles/Xml/Xbox One.xml index 40e05f7fc..5f5cf1af3 100644 --- a/Emby.Dlna/Profiles/Xml/Xbox One.xml +++ b/Emby.Dlna/Profiles/Xml/Xbox One.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>Xbox One</Name> <Identification> <ModelName>Xbox One</ModelName> @@ -122,4 +123,4 @@ <SubtitleProfiles> <SubtitleProfile format="srt" method="Embed" /> </SubtitleProfiles> -</Profile>
\ No newline at end of file +</Profile> diff --git a/Emby.Dlna/Profiles/Xml/foobar2000.xml b/Emby.Dlna/Profiles/Xml/foobar2000.xml index 19dc10e83..f3eedb35c 100644 --- a/Emby.Dlna/Profiles/Xml/foobar2000.xml +++ b/Emby.Dlna/Profiles/Xml/foobar2000.xml @@ -1,5 +1,6 @@ <?xml version="1.0"?> -<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> +<Profile xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <Name>foobar2000</Name> <Identification> <FriendlyName>foobar</FriendlyName> diff --git a/Emby.Dlna/Properties/AssemblyInfo.cs b/Emby.Dlna/Properties/AssemblyInfo.cs index fd3b43369..9d3a22c97 100644 --- a/Emby.Dlna/Properties/AssemblyInfo.cs +++ b/Emby.Dlna/Properties/AssemblyInfo.cs @@ -1,6 +1,5 @@ -using System.Resources; using System.Reflection; -using System.Runtime.InteropServices; +using System.Resources; // General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information diff --git a/Emby.Dlna/Server/DescriptionXmlBuilder.cs b/Emby.Dlna/Server/DescriptionXmlBuilder.cs index bd57f4c43..e0ecbee43 100644 --- a/Emby.Dlna/Server/DescriptionXmlBuilder.cs +++ b/Emby.Dlna/Server/DescriptionXmlBuilder.cs @@ -1,12 +1,11 @@ -using Emby.Dlna.Common; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Extensions; using System; using System.Collections.Generic; using System.Globalization; using System.Linq; -using System.Security; using System.Text; +using Emby.Dlna.Common; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Extensions; namespace Emby.Dlna.Server { diff --git a/Emby.Dlna/Service/BaseControlHandler.cs b/Emby.Dlna/Service/BaseControlHandler.cs index ae094cc2f..5f78674b8 100644 --- a/Emby.Dlna/Service/BaseControlHandler.cs +++ b/Emby.Dlna/Service/BaseControlHandler.cs @@ -1,7 +1,3 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Dlna; -using Emby.Dlna.Server; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.IO; @@ -9,9 +5,10 @@ using System.Linq; using System.Text; using System.Xml; using Emby.Dlna.Didl; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Extensions; using MediaBrowser.Model.Xml; -using MediaBrowser.Model.Extensions; +using Microsoft.Extensions.Logging; namespace Emby.Dlna.Service { @@ -88,7 +85,7 @@ namespace Emby.Dlna.Service StringWriter builder = new StringWriterWithEncoding(Encoding.UTF8); - using (XmlWriter writer = XmlWriter.Create(builder, settings)) + using (var writer = XmlWriter.Create(builder, settings)) { writer.WriteStartDocument(true); @@ -205,7 +202,7 @@ namespace Emby.Dlna.Service return result; } - private void ParseFirstBodyChild(XmlReader reader, IDictionary<string,string> headers) + private void ParseFirstBodyChild(XmlReader reader, IDictionary<string, string> headers) { reader.MoveToContent(); reader.Read(); @@ -229,7 +226,7 @@ namespace Emby.Dlna.Service { public string LocalName; public string NamespaceURI; - public IDictionary<string, string> Headers = new Dictionary<string,string>(StringComparer.OrdinalIgnoreCase); + public IDictionary<string, string> Headers = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase); } protected abstract IEnumerable<KeyValuePair<string, string>> GetResult(string methodName, IDictionary<string, string> methodParams); diff --git a/Emby.Dlna/Service/BaseService.cs b/Emby.Dlna/Service/BaseService.cs index 10ef12c6c..5359e94c4 100644 --- a/Emby.Dlna/Service/BaseService.cs +++ b/Emby.Dlna/Service/BaseService.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Dlna; using Emby.Dlna.Eventing; +using MediaBrowser.Common.Net; using Microsoft.Extensions.Logging; namespace Emby.Dlna.Service diff --git a/Emby.Dlna/Service/ControlErrorHandler.cs b/Emby.Dlna/Service/ControlErrorHandler.cs index 431dea932..d5eb4a887 100644 --- a/Emby.Dlna/Service/ControlErrorHandler.cs +++ b/Emby.Dlna/Service/ControlErrorHandler.cs @@ -1,4 +1,3 @@ -using MediaBrowser.Controller.Dlna; using System; using System.IO; using System.Text; @@ -21,7 +20,7 @@ namespace Emby.Dlna.Service StringWriter builder = new StringWriterWithEncoding(Encoding.UTF8); - using (XmlWriter writer = XmlWriter.Create(builder, settings)) + using (var writer = XmlWriter.Create(builder, settings)) { writer.WriteStartDocument(true); diff --git a/Emby.Dlna/Service/ServiceXmlBuilder.cs b/Emby.Dlna/Service/ServiceXmlBuilder.cs index 68782ffb7..bd1f0bf05 100644 --- a/Emby.Dlna/Service/ServiceXmlBuilder.cs +++ b/Emby.Dlna/Service/ServiceXmlBuilder.cs @@ -1,7 +1,6 @@ -using Emby.Dlna.Common; using System.Collections.Generic; -using System.Security; using System.Text; +using Emby.Dlna.Common; using Emby.Dlna.Server; namespace Emby.Dlna.Service diff --git a/Emby.Dlna/Ssdp/DeviceDiscovery.cs b/Emby.Dlna/Ssdp/DeviceDiscovery.cs index e01ff8149..069d704b8 100644 --- a/Emby.Dlna/Ssdp/DeviceDiscovery.cs +++ b/Emby.Dlna/Ssdp/DeviceDiscovery.cs @@ -1,19 +1,12 @@ -using MediaBrowser.Common.Events; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Dlna; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Linq; -using System.Net; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Events; using MediaBrowser.Model.Net; using MediaBrowser.Model.Threading; +using Microsoft.Extensions.Logging; using Rssdp; using Rssdp.Infrastructure; diff --git a/Emby.Dlna/Ssdp/Extensions.cs b/Emby.Dlna/Ssdp/Extensions.cs index 41a361515..c680c123e 100644 --- a/Emby.Dlna/Ssdp/Extensions.cs +++ b/Emby.Dlna/Ssdp/Extensions.cs @@ -1,6 +1,3 @@ -using System; -using System.Net; -using System.Threading.Tasks; using System.Xml.Linq; namespace Emby.Dlna.Ssdp diff --git a/Emby.Drawing.Skia/Emby.Drawing.Skia.csproj b/Emby.Drawing.Skia/Emby.Drawing.Skia.csproj index 7d6643d54..1eb537741 100644 --- a/Emby.Drawing.Skia/Emby.Drawing.Skia.csproj +++ b/Emby.Drawing.Skia/Emby.Drawing.Skia.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> diff --git a/Emby.Drawing.Skia/PercentPlayedDrawer.cs b/Emby.Drawing.Skia/PercentPlayedDrawer.cs index e291a462b..a204999fe 100644 --- a/Emby.Drawing.Skia/PercentPlayedDrawer.cs +++ b/Emby.Drawing.Skia/PercentPlayedDrawer.cs @@ -1,6 +1,6 @@ -using SkiaSharp; -using MediaBrowser.Model.Drawing; using System; +using MediaBrowser.Model.Drawing; +using SkiaSharp; namespace Emby.Drawing.Skia { diff --git a/Emby.Drawing.Skia/PlayedIndicatorDrawer.cs b/Emby.Drawing.Skia/PlayedIndicatorDrawer.cs index a4d8a2938..7e9cb8c5c 100644 --- a/Emby.Drawing.Skia/PlayedIndicatorDrawer.cs +++ b/Emby.Drawing.Skia/PlayedIndicatorDrawer.cs @@ -1,8 +1,8 @@ -using SkiaSharp; using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Net; using MediaBrowser.Model.Drawing; using MediaBrowser.Model.IO; +using SkiaSharp; namespace Emby.Drawing.Skia { @@ -51,7 +51,7 @@ namespace Emby.Drawing.Skia paint.Typeface = emojiTypeface; - canvas.DrawText(text, (float)x-20, OffsetFromTopRightCorner + 12, paint); + canvas.DrawText(text, (float)x - 20, OffsetFromTopRightCorner + 12, paint); } } } diff --git a/Emby.Drawing.Skia/SkiaEncoder.cs b/Emby.Drawing.Skia/SkiaEncoder.cs index dc5ae77cc..8f517681e 100644 --- a/Emby.Drawing.Skia/SkiaEncoder.cs +++ b/Emby.Drawing.Skia/SkiaEncoder.cs @@ -1,18 +1,17 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Model.Drawing; -using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; -using SkiaSharp; using System; +using System.Globalization; using System.IO; using System.Linq; using System.Reflection; -using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Extensions; -using System.Globalization; +using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; +using SkiaSharp; namespace Emby.Drawing.Skia { @@ -35,46 +34,34 @@ namespace Emby.Drawing.Skia LogVersion(); } - public string[] SupportedInputFormats - { - get + public string[] SupportedInputFormats => + new[] { - // Some common file name extensions for RAW picture files include: .cr2, .crw, .dng, .nef, .orf, .rw2, .pef, .arw, .sr2, .srf, and .tif. - return new[] - { - "jpeg", - "jpg", - "png", - - "dng", - - "webp", - "gif", - "bmp", - "ico", - "astc", - "ktx", - "pkm", - "wbmp", - - // TODO - // Are all of these supported? https://github.com/google/skia/blob/master/infra/bots/recipes/test.py#L454 - - // working on windows at least - "cr2", - "nef", - "arw" - }; - } - } + "jpeg", + "jpg", + "png", - public ImageFormat[] SupportedOutputFormats - { - get - { - return new[] { ImageFormat.Webp, ImageFormat.Jpg, ImageFormat.Png }; - } - } + "dng", + + "webp", + "gif", + "bmp", + "ico", + "astc", + "ktx", + "pkm", + "wbmp", + + // TODO + // Are all of these supported? https://github.com/google/skia/blob/master/infra/bots/recipes/test.py#L454 + + // working on windows at least + "cr2", + "nef", + "arw" + }; + + public ImageFormat[] SupportedOutputFormats => new[] { ImageFormat.Webp, ImageFormat.Jpg, ImageFormat.Png }; private void LogVersion() { @@ -667,19 +654,10 @@ namespace Emby.Drawing.Skia } } - public string Name - { - get { return "Skia"; } - } + public string Name => "Skia"; - public bool SupportsImageCollageCreation - { - get { return true; } - } + public bool SupportsImageCollageCreation => true; - public bool SupportsImageEncoding - { - get { return true; } - } + public bool SupportsImageEncoding => true; } } diff --git a/Emby.Drawing.Skia/StripCollageBuilder.cs b/Emby.Drawing.Skia/StripCollageBuilder.cs index b3e7dbb5f..8d984de11 100644 --- a/Emby.Drawing.Skia/StripCollageBuilder.cs +++ b/Emby.Drawing.Skia/StripCollageBuilder.cs @@ -1,9 +1,9 @@ -using SkiaSharp; -using MediaBrowser.Common.Configuration; using System; +using System.Collections.Generic; using System.IO; +using MediaBrowser.Common.Configuration; using MediaBrowser.Model.IO; -using System.Collections.Generic; +using SkiaSharp; namespace Emby.Drawing.Skia { @@ -164,7 +164,7 @@ namespace Emby.Drawing.Skia private SKBitmap GetNextValidImage(string[] paths, int currentIndex, out int newIndex) { - Dictionary<int, int> imagesTested = new Dictionary<int, int>(); + var imagesTested = new Dictionary<int, int>(); SKBitmap bitmap = null; while (imagesTested.Count < paths.Length) @@ -174,7 +174,7 @@ namespace Emby.Drawing.Skia currentIndex = 0; } - bitmap = SkiaEncoder.Decode(paths[currentIndex], false, _fileSystem, null, out SKEncodedOrigin origin); + bitmap = SkiaEncoder.Decode(paths[currentIndex], false, _fileSystem, null, out var origin); imagesTested[currentIndex] = 0; diff --git a/Emby.Drawing.Skia/UnplayedCountIndicator.cs b/Emby.Drawing.Skia/UnplayedCountIndicator.cs index b59bc1026..e1d1ecff8 100644 --- a/Emby.Drawing.Skia/UnplayedCountIndicator.cs +++ b/Emby.Drawing.Skia/UnplayedCountIndicator.cs @@ -1,12 +1,9 @@ -using SkiaSharp; +using System.Globalization; using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Net; using MediaBrowser.Model.Drawing; -using System.Globalization; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using SkiaSharp; namespace Emby.Drawing.Skia { diff --git a/Emby.Drawing/Common/ImageHeader.cs b/Emby.Drawing/Common/ImageHeader.cs index 3aa0cac25..c08cdabb2 100644 --- a/Emby.Drawing/Common/ImageHeader.cs +++ b/Emby.Drawing/Common/ImageHeader.cs @@ -1,12 +1,10 @@ -using MediaBrowser.Model.Drawing; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.IO; using System.Linq; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Model.Drawing; using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace Emby.Drawing.Common { @@ -76,7 +74,7 @@ namespace Emby.Drawing.Common /// </summary> /// <param name="binaryReader">The binary reader.</param> /// <returns>Size.</returns> - /// <exception cref="System.ArgumentException">binaryReader</exception> + /// <exception cref="ArgumentException">binaryReader</exception> /// <exception cref="ArgumentException">The image was of an unrecognized format.</exception> private static ImageSize GetDimensions(BinaryReader binaryReader) { @@ -203,7 +201,7 @@ namespace Emby.Drawing.Common /// </summary> /// <param name="binaryReader">The binary reader.</param> /// <returns>Size.</returns> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentException"></exception> private static ImageSize DecodeJfif(BinaryReader binaryReader) { // A JPEG image consists of a sequence of segments, diff --git a/Emby.Drawing/Emby.Drawing.csproj b/Emby.Drawing/Emby.Drawing.csproj index 5ffaaed27..ba29c656b 100644 --- a/Emby.Drawing/Emby.Drawing.csproj +++ b/Emby.Drawing/Emby.Drawing.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" /> diff --git a/Emby.Drawing/ImageProcessor.cs b/Emby.Drawing/ImageProcessor.cs index 4e4b36507..28aae9cae 100644 --- a/Emby.Drawing/ImageProcessor.cs +++ b/Emby.Drawing/ImageProcessor.cs @@ -1,27 +1,26 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Drawing; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; using System; -using System.Collections.Concurrent; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; using Emby.Drawing.Common; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Drawing; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Drawing; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Net; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Threading; -using MediaBrowser.Model.Extensions; +using Microsoft.Extensions.Logging; namespace Emby.Drawing { @@ -75,7 +74,7 @@ namespace Emby.Drawing public IImageEncoder ImageEncoder { - get { return _imageEncoder; } + get => _imageEncoder; set { if (value == null) @@ -87,67 +86,44 @@ namespace Emby.Drawing } } - public string[] SupportedInputFormats - { - get + public string[] SupportedInputFormats => + new string[] { - return new string[] - { - "tiff", - "tif", - "jpeg", - "jpg", - "png", - "aiff", - "cr2", - "crw", - - // Remove until supported - //"nef", - "orf", - "pef", - "arw", - "webp", - "gif", - "bmp", - "erf", - "raf", - "rw2", - "nrw", - "dng", - "ico", - "astc", - "ktx", - "pkm", - "wbmp" - }; - } - } + "tiff", + "tif", + "jpeg", + "jpg", + "png", + "aiff", + "cr2", + "crw", + // Remove until supported + //"nef", + "orf", + "pef", + "arw", + "webp", + "gif", + "bmp", + "erf", + "raf", + "rw2", + "nrw", + "dng", + "ico", + "astc", + "ktx", + "pkm", + "wbmp" + }; - public bool SupportsImageCollageCreation - { - get - { - return _imageEncoder.SupportsImageCollageCreation; - } - } - private string ResizedImageCachePath - { - get - { - return Path.Combine(_appPaths.ImageCachePath, "resized-images"); - } - } + public bool SupportsImageCollageCreation => _imageEncoder.SupportsImageCollageCreation; - private string EnhancedImageCachePath - { - get - { - return Path.Combine(_appPaths.ImageCachePath, "enhanced-images"); - } - } + private string ResizedImageCachePath => Path.Combine(_appPaths.ImageCachePath, "resized-images"); + + private string EnhancedImageCachePath => Path.Combine(_appPaths.ImageCachePath, "enhanced-images"); public void AddParts(IEnumerable<IImageEnhancer> enhancers) { @@ -515,7 +491,7 @@ namespace Emby.Drawing /// <param name="item">The item.</param> /// <param name="image">The image.</param> /// <returns>Guid.</returns> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public string GetImageCacheTag(BaseItem item, ItemImageInfo image) { var supportedEnhancers = GetSupportedEnhancers(item, image.Type); @@ -547,7 +523,7 @@ namespace Emby.Drawing /// <param name="image">The image.</param> /// <param name="imageEnhancers">The image enhancers.</param> /// <returns>Guid.</returns> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public string GetImageCacheTag(BaseItem item, ItemImageInfo image, IImageEnhancer[] imageEnhancers) { var originalImagePath = image.Path; @@ -768,7 +744,7 @@ namespace Emby.Drawing /// <param name="uniqueName">Name of the unique.</param> /// <param name="fileExtension">The file extension.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// path /// or /// uniqueName @@ -802,7 +778,7 @@ namespace Emby.Drawing /// <param name="path">The path.</param> /// <param name="filename">The filename.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// path /// or /// filename @@ -870,8 +846,7 @@ namespace Emby.Drawing { lock (_locks) { - LockInfo info; - if (_locks.TryGetValue(key, out info)) + if (_locks.TryGetValue(key, out LockInfo info)) { info.Count++; } diff --git a/Emby.Drawing/NullImageEncoder.cs b/Emby.Drawing/NullImageEncoder.cs index 95ea42ecf..e6f205a1f 100644 --- a/Emby.Drawing/NullImageEncoder.cs +++ b/Emby.Drawing/NullImageEncoder.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Controller.Drawing; using MediaBrowser.Model.Drawing; @@ -6,26 +6,15 @@ namespace Emby.Drawing { public class NullImageEncoder : IImageEncoder { - public string[] SupportedInputFormats - { - get + public string[] SupportedInputFormats => + new[] { - return new[] - { - "png", - "jpeg", - "jpg" - }; - } - } + "png", + "jpeg", + "jpg" + }; - public ImageFormat[] SupportedOutputFormats - { - get - { - return new[] { ImageFormat.Jpg, ImageFormat.Png }; - } - } + public ImageFormat[] SupportedOutputFormats => new[] { ImageFormat.Jpg, ImageFormat.Png }; public void CropWhiteSpace(string inputPath, string outputPath) { @@ -42,20 +31,11 @@ namespace Emby.Drawing throw new NotImplementedException(); } - public string Name - { - get { return "Null Image Encoder"; } - } + public string Name => "Null Image Encoder"; - public bool SupportsImageCollageCreation - { - get { return false; } - } + public bool SupportsImageCollageCreation => false; - public bool SupportsImageEncoding - { - get { return false; } - } + public bool SupportsImageEncoding => false; public ImageSize GetImageSize(string path) { diff --git a/Emby.IsoMounting/IsoMounter.sln b/Emby.IsoMounting/IsoMounter.sln index 7505be4f7..55db1b1ae 100644 --- a/Emby.IsoMounting/IsoMounter.sln +++ b/Emby.IsoMounting/IsoMounter.sln @@ -1,4 +1,4 @@ - + Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 VisualStudioVersion = 15.0.27004.2009 diff --git a/Emby.IsoMounting/IsoMounter/Configuration/PluginConfiguration.cs b/Emby.IsoMounting/IsoMounter/Configuration/PluginConfiguration.cs index 9308b8c89..4755e4e82 100644 --- a/Emby.IsoMounting/IsoMounter/Configuration/PluginConfiguration.cs +++ b/Emby.IsoMounting/IsoMounter/Configuration/PluginConfiguration.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.Plugins; +using MediaBrowser.Model.Plugins; namespace IsoMounter.Configuration { public class PluginConfiguration : BasePluginConfiguration { } -}
\ No newline at end of file +} diff --git a/Emby.IsoMounting/IsoMounter/IsoMounter.csproj b/Emby.IsoMounting/IsoMounter/IsoMounter.csproj index 9274f9763..2a81f5aa0 100644 --- a/Emby.IsoMounting/IsoMounter/IsoMounter.csproj +++ b/Emby.IsoMounting/IsoMounter/IsoMounter.csproj @@ -8,7 +8,7 @@ <ProjectReference Include="..\..\MediaBrowser.Model\MediaBrowser.Model.csproj" /> <ProjectReference Include="..\..\MediaBrowser.Common\MediaBrowser.Common.csproj" /> </ItemGroup> - + <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> <GenerateAssemblyInfo>false</GenerateAssemblyInfo> diff --git a/Emby.IsoMounting/IsoMounter/LinuxIsoManager.cs b/Emby.IsoMounting/IsoMounter/LinuxIsoManager.cs index ab85cb721..ac486f167 100644 --- a/Emby.IsoMounting/IsoMounter/LinuxIsoManager.cs +++ b/Emby.IsoMounting/IsoMounter/LinuxIsoManager.cs @@ -1,19 +1,19 @@ using System; using System.IO; +using System.Runtime.InteropServices; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.System; -using System.Runtime.InteropServices; +using Microsoft.Extensions.Logging; namespace IsoMounter { public class LinuxIsoManager : IIsoMounter { [DllImport("libc", SetLastError = true)] - public static extern uint getuid(); + static extern uint getuid(); #region Private Fields @@ -87,9 +87,12 @@ namespace IsoMounter UmountCommand ); - if (!string.IsNullOrEmpty(SudoCommand) && !string.IsNullOrEmpty(MountCommand) && !string.IsNullOrEmpty(UmountCommand)) { + if (!string.IsNullOrEmpty(SudoCommand) && !string.IsNullOrEmpty(MountCommand) && !string.IsNullOrEmpty(UmountCommand)) + { ExecutablesAvailable = true; - } else { + } + else + { ExecutablesAvailable = false; } @@ -99,21 +102,11 @@ namespace IsoMounter #region Interface Implementation for IIsoMounter - public bool IsInstalled { - get { - return true; - } - } + public bool IsInstalled => true; - public string Name { - get { return "LinuxMount"; } - } + public string Name => "LinuxMount"; - public bool RequiresInstallation { - get { - return false; - } - } + public bool RequiresInstallation => false; public bool CanMount(string path) { @@ -148,10 +141,12 @@ namespace IsoMounter public Task<IIsoMount> Mount(string isoPath, CancellationToken cancellationToken) { - if (MountISO(isoPath, out LinuxMount mountedISO)) { + if (MountISO(isoPath, out LinuxMount mountedISO)) + { return Task.FromResult<IIsoMount>(mountedISO); } - else { + else + { throw new IOException(string.Format( "An error occurred trying to mount image [$0].", isoPath @@ -180,7 +175,8 @@ namespace IsoMounter protected virtual void Dispose(bool disposing) { - if (disposed) { + if (disposed) + { return; } @@ -190,7 +186,8 @@ namespace IsoMounter disposing.ToString() ); - if (disposing) { + if (disposing) + { // // Free managed objects here. @@ -217,7 +214,8 @@ namespace IsoMounter { string path = test.Trim(); - if (!string.IsNullOrEmpty(path) && FileSystem.FileExists(path = Path.Combine(path, name))) { + if (!string.IsNullOrEmpty(path) && FileSystem.FileExists(path = Path.Combine(path, name))) + { return FileSystem.GetFullPath(path); } } @@ -247,7 +245,8 @@ namespace IsoMounter bool processFailed = false; var process = ProcessFactory.Create( - new ProcessOptions { + new ProcessOptions + { CreateNoWindow = true, RedirectStandardOutput = true, RedirectStandardError = true, @@ -285,9 +284,12 @@ namespace IsoMounter _logger.LogDebug(ex, "[{Name}] Unhandled exception executing command.", Name); } - if (!processFailed && process.ExitCode == 0) { + if (!processFailed && process.ExitCode == 0) + { return true; - } else { + } + else + { return false; } @@ -300,7 +302,8 @@ namespace IsoMounter string cmdFilename; string mountPoint = Path.Combine(MountPointRoot, Guid.NewGuid().ToString()); - if (!string.IsNullOrEmpty(isoPath)) { + if (!string.IsNullOrEmpty(isoPath)) + { _logger.LogInformation( "[{Name}] Attempting to mount [{Path}].", @@ -314,7 +317,9 @@ namespace IsoMounter mountPoint ); - } else { + } + else + { throw new ArgumentNullException(nameof(isoPath)); @@ -333,10 +338,13 @@ namespace IsoMounter throw new IOException("Unable to create mount point for " + isoPath); } - if (GetUID() == 0) { + if (GetUID() == 0) + { cmdFilename = MountCommand; cmdArguments = string.Format("\"{0}\" \"{1}\"", isoPath, mountPoint); - } else { + } + else + { cmdFilename = SudoCommand; cmdArguments = string.Format("\"{0}\" \"{1}\" \"{2}\"", MountCommand, isoPath, mountPoint); } @@ -348,7 +356,8 @@ namespace IsoMounter cmdArguments ); - if (ExecuteCommand(cmdFilename, cmdArguments)) { + if (ExecuteCommand(cmdFilename, cmdArguments)) + { _logger.LogInformation( "[{0}] ISO mount completed successfully.", @@ -357,7 +366,9 @@ namespace IsoMounter mountedISO = new LinuxMount(this, isoPath, mountPoint); - } else { + } + else + { _logger.LogInformation( "[{0}] ISO mount completed with errors.", @@ -387,7 +398,8 @@ namespace IsoMounter string cmdArguments; string cmdFilename; - if (mount != null) { + if (mount != null) + { _logger.LogInformation( "[{0}] Attempting to unmount ISO [{1}] mounted on [{2}].", @@ -396,16 +408,21 @@ namespace IsoMounter mount.MountedPath ); - } else { + } + else + { throw new ArgumentNullException(nameof(mount)); } - if (GetUID() == 0) { + if (GetUID() == 0) + { cmdFilename = UmountCommand; cmdArguments = string.Format("\"{0}\"", mount.MountedPath); - } else { + } + else + { cmdFilename = SudoCommand; cmdArguments = string.Format("\"{0}\" \"{1}\"", UmountCommand, mount.MountedPath); } @@ -417,14 +434,17 @@ namespace IsoMounter cmdArguments ); - if (ExecuteCommand(cmdFilename, cmdArguments)) { + if (ExecuteCommand(cmdFilename, cmdArguments)) + { _logger.LogInformation( "[{0}] ISO unmount completed successfully.", Name ); - } else { + } + else + { _logger.LogInformation( "[{0}] ISO unmount completed with errors.", diff --git a/Emby.IsoMounting/IsoMounter/LinuxMount.cs b/Emby.IsoMounting/IsoMounter/LinuxMount.cs index da2eb1983..b8636822b 100644 --- a/Emby.IsoMounting/IsoMounter/LinuxMount.cs +++ b/Emby.IsoMounting/IsoMounter/LinuxMount.cs @@ -45,11 +45,13 @@ namespace IsoMounter protected virtual void Dispose(bool disposing) { - if (disposed) { + if (disposed) + { return; } - if (disposing) { + if (disposing) + { // // Free managed objects here. diff --git a/Emby.IsoMounting/IsoMounter/Plugin.cs b/Emby.IsoMounting/IsoMounter/Plugin.cs index ea5317502..f45b39d3e 100644 --- a/Emby.IsoMounting/IsoMounter/Plugin.cs +++ b/Emby.IsoMounting/IsoMounter/Plugin.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Plugins; -using MediaBrowser.Model.Serialization; using System; using IsoMounter.Configuration; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Plugins; +using MediaBrowser.Model.Serialization; namespace IsoMounter { @@ -13,30 +13,18 @@ namespace IsoMounter } private Guid _id = new Guid("4682DD4C-A675-4F1B-8E7C-79ADF137A8F8"); - public override Guid Id - { - get { return _id; } - } + public override Guid Id => _id; /// <summary> /// Gets the name of the plugin /// </summary> /// <value>The name.</value> - public override string Name - { - get { return "Iso Mounter"; } - } + public override string Name => "Iso Mounter"; /// <summary> /// Gets the description. /// </summary> /// <value>The description.</value> - public override string Description - { - get - { - return "Mount and stream ISO contents"; - } - } + public override string Description => "Mount and stream ISO contents"; } } diff --git a/Emby.IsoMounting/IsoMounter/Properties/AssemblyInfo.cs b/Emby.IsoMounting/IsoMounter/Properties/AssemblyInfo.cs index 8a26b12a2..d60eccc2e 100644 --- a/Emby.IsoMounting/IsoMounter/Properties/AssemblyInfo.cs +++ b/Emby.IsoMounting/IsoMounter/Properties/AssemblyInfo.cs @@ -2,7 +2,7 @@ using System.Reflection; using System.Resources; using System.Runtime.InteropServices; -// General Information about an assembly is controlled through the following +// General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. [assembly: AssemblyTitle("IsoMounter")] diff --git a/Emby.Naming/Audio/AlbumParser.cs b/Emby.Naming/Audio/AlbumParser.cs index c88631a0c..7d029a9f4 100644 --- a/Emby.Naming/Audio/AlbumParser.cs +++ b/Emby.Naming/Audio/AlbumParser.cs @@ -1,10 +1,9 @@ -using Emby.Naming.Common; -using Emby.Naming.Video; using System; using System.Globalization; using System.IO; using System.Linq; using System.Text.RegularExpressions; +using Emby.Naming.Common; namespace Emby.Naming.Audio { @@ -50,8 +49,7 @@ namespace Emby.Naming.Audio tmp = tmp.Trim().Split(' ').FirstOrDefault() ?? string.Empty; - int val; - if (int.TryParse(tmp, NumberStyles.Integer, CultureInfo.InvariantCulture, out val)) + if (int.TryParse(tmp, NumberStyles.Integer, CultureInfo.InvariantCulture, out var val)) { result.IsMultiPart = true; break; diff --git a/Emby.Naming/Audio/AudioFileParser.cs b/Emby.Naming/Audio/AudioFileParser.cs index 20016915a..609eb779a 100644 --- a/Emby.Naming/Audio/AudioFileParser.cs +++ b/Emby.Naming/Audio/AudioFileParser.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Linq; using Emby.Naming.Common; diff --git a/Emby.Naming/Audio/MultiPartResult.cs b/Emby.Naming/Audio/MultiPartResult.cs index fae0ae4d8..b1fa6e563 100644 --- a/Emby.Naming/Audio/MultiPartResult.cs +++ b/Emby.Naming/Audio/MultiPartResult.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.Audio { public class MultiPartResult diff --git a/Emby.Naming/AudioBook/AudioBookFileInfo.cs b/Emby.Naming/AudioBook/AudioBookFileInfo.cs index 88a98d0f1..de66a5402 100644 --- a/Emby.Naming/AudioBook/AudioBookFileInfo.cs +++ b/Emby.Naming/AudioBook/AudioBookFileInfo.cs @@ -1,6 +1,4 @@ - using System; -using Emby.Naming.Video; namespace Emby.Naming.AudioBook { diff --git a/Emby.Naming/AudioBook/AudioBookFilePathParser.cs b/Emby.Naming/AudioBook/AudioBookFilePathParser.cs index b4805edd2..590979794 100644 --- a/Emby.Naming/AudioBook/AudioBookFilePathParser.cs +++ b/Emby.Naming/AudioBook/AudioBookFilePathParser.cs @@ -1,12 +1,7 @@ -using System; -using System.Collections.Generic; using System.Globalization; using System.IO; -using System.Linq; -using System.Text; using System.Text.RegularExpressions; using Emby.Naming.Common; -using Emby.Naming.TV; namespace Emby.Naming.AudioBook { @@ -21,7 +16,7 @@ namespace Emby.Naming.AudioBook public AudioBookFilePathParserResult Parse(string path, bool IsDirectory) { - AudioBookFilePathParserResult result = Parse(path); + var result = Parse(path); return !result.Success ? new AudioBookFilePathParserResult() : result; } @@ -39,8 +34,7 @@ namespace Emby.Naming.AudioBook var value = match.Groups["chapter"]; if (value.Success) { - int intValue; - if (int.TryParse(value.Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out intValue)) + if (int.TryParse(value.Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var intValue)) { result.ChapterNumber = intValue; } @@ -51,8 +45,7 @@ namespace Emby.Naming.AudioBook var value = match.Groups["part"]; if (value.Success) { - int intValue; - if (int.TryParse(value.Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out intValue)) + if (int.TryParse(value.Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var intValue)) { result.ChapterNumber = intValue; } diff --git a/Emby.Naming/AudioBook/AudioBookFilePathParserResult.cs b/Emby.Naming/AudioBook/AudioBookFilePathParserResult.cs index 759e7b8ad..3a8e3c31f 100644 --- a/Emby.Naming/AudioBook/AudioBookFilePathParserResult.cs +++ b/Emby.Naming/AudioBook/AudioBookFilePathParserResult.cs @@ -1,7 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; - namespace Emby.Naming.AudioBook { public class AudioBookFilePathParserResult diff --git a/Emby.Naming/AudioBook/AudioBookInfo.cs b/Emby.Naming/AudioBook/AudioBookInfo.cs index d7af63d91..f6e1d5be4 100644 --- a/Emby.Naming/AudioBook/AudioBookInfo.cs +++ b/Emby.Naming/AudioBook/AudioBookInfo.cs @@ -1,5 +1,4 @@ -using System.Collections.Generic; -using Emby.Naming.Video; +using System.Collections.Generic; namespace Emby.Naming.AudioBook { diff --git a/Emby.Naming/AudioBook/AudioBookListResolver.cs b/Emby.Naming/AudioBook/AudioBookListResolver.cs index 8cf6a03bd..4e3ad7cac 100644 --- a/Emby.Naming/AudioBook/AudioBookListResolver.cs +++ b/Emby.Naming/AudioBook/AudioBookListResolver.cs @@ -1,6 +1,4 @@ -using System; using System.Collections.Generic; -using System.IO; using System.Linq; using Emby.Naming.Common; using Emby.Naming.Video; diff --git a/Emby.Naming/AudioBook/AudioBookResolver.cs b/Emby.Naming/AudioBook/AudioBookResolver.cs index 7c658f43a..f8f13bc5e 100644 --- a/Emby.Naming/AudioBook/AudioBookResolver.cs +++ b/Emby.Naming/AudioBook/AudioBookResolver.cs @@ -1,9 +1,7 @@ -using System; +using System; using System.IO; using System.Linq; using Emby.Naming.Common; -using Emby.Naming.TV; -using Emby.Naming.Video; namespace Emby.Naming.AudioBook { diff --git a/Emby.Naming/Common/EpisodeExpression.cs b/Emby.Naming/Common/EpisodeExpression.cs index 3b9687c60..fd85bf76a 100644 --- a/Emby.Naming/Common/EpisodeExpression.cs +++ b/Emby.Naming/Common/EpisodeExpression.cs @@ -1,12 +1,13 @@ -using System.Text.RegularExpressions; using System; +using System.Text.RegularExpressions; namespace Emby.Naming.Common { public class EpisodeExpression { private string _expression; - public string Expression { get { return _expression; } set { _expression = value; _regex = null; } } + public string Expression { get => _expression; + set { _expression = value; _regex = null; } } public bool IsByDate { get; set; } public bool IsOptimistic { get; set; } @@ -16,13 +17,7 @@ namespace Emby.Naming.Common public string[] DateTimeFormats { get; set; } private Regex _regex; - public Regex Regex - { - get - { - return _regex ?? (_regex = new Regex(Expression, RegexOptions.IgnoreCase | RegexOptions.Compiled)); - } - } + public Regex Regex => _regex ?? (_regex = new Regex(Expression, RegexOptions.IgnoreCase | RegexOptions.Compiled)); public EpisodeExpression(string expression, bool byDate) { diff --git a/Emby.Naming/Common/MediaType.cs b/Emby.Naming/Common/MediaType.cs index 2a3d433cf..49cc9ee39 100644 --- a/Emby.Naming/Common/MediaType.cs +++ b/Emby.Naming/Common/MediaType.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.Common { public enum MediaType diff --git a/Emby.Naming/Common/NamingOptions.cs b/Emby.Naming/Common/NamingOptions.cs index 014f4ebde..2ef0208ba 100644 --- a/Emby.Naming/Common/NamingOptions.cs +++ b/Emby.Naming/Common/NamingOptions.cs @@ -1,8 +1,7 @@ -using Emby.Naming.Video; -using System.Collections.Generic; using System; using System.Linq; using System.Text.RegularExpressions; +using Emby.Naming.Video; namespace Emby.Naming.Common { diff --git a/Emby.Naming/Emby.Naming.csproj b/Emby.Naming/Emby.Naming.csproj index de40a39d2..88e3af522 100644 --- a/Emby.Naming/Emby.Naming.csproj +++ b/Emby.Naming/Emby.Naming.csproj @@ -5,13 +5,6 @@ <GenerateAssemblyInfo>false</GenerateAssemblyInfo> </PropertyGroup> - <PropertyGroup> - <Authors>Jellyfin Contributors</Authors> - <PackageId>Jellyfin.Naming</PackageId> - <PackageLicenseUrl>https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt</PackageLicenseUrl> - <RepositoryUrl>https://github.com/jellyfin/jellyfin</RepositoryUrl> - </PropertyGroup> - <ItemGroup> <Compile Include="..\SharedVersion.cs" Link="SharedVersion.cs" /> </ItemGroup> @@ -20,4 +13,11 @@ <ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" /> </ItemGroup> + <PropertyGroup> + <Authors>Jellyfin Contributors</Authors> + <PackageId>Jellyfin.Naming</PackageId> + <PackageLicenseUrl>https://www.gnu.org/licenses/old-licenses/gpl-2.0.txt</PackageLicenseUrl> + <RepositoryUrl>https://github.com/jellyfin/jellyfin</RepositoryUrl> + </PropertyGroup> + </Project> diff --git a/Emby.Naming/Extensions/StringExtensions.cs b/Emby.Naming/Extensions/StringExtensions.cs index e773dbfe8..26c09aeb4 100644 --- a/Emby.Naming/Extensions/StringExtensions.cs +++ b/Emby.Naming/Extensions/StringExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Text; namespace Emby.Naming.Extensions diff --git a/Emby.Naming/StringExtensions.cs b/Emby.Naming/StringExtensions.cs index 5598ddb4c..7c61922af 100644 --- a/Emby.Naming/StringExtensions.cs +++ b/Emby.Naming/StringExtensions.cs @@ -1,5 +1,4 @@ -using System; -using System.Collections.Generic; +using System; using System.Text; namespace Emby.Naming diff --git a/Emby.Naming/Subtitles/SubtitleInfo.cs b/Emby.Naming/Subtitles/SubtitleInfo.cs index 3ece0679e..e4709dfbb 100644 --- a/Emby.Naming/Subtitles/SubtitleInfo.cs +++ b/Emby.Naming/Subtitles/SubtitleInfo.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.Subtitles { public class SubtitleInfo diff --git a/Emby.Naming/Subtitles/SubtitleParser.cs b/Emby.Naming/Subtitles/SubtitleParser.cs index 9c279cc09..ac9432d57 100644 --- a/Emby.Naming/Subtitles/SubtitleParser.cs +++ b/Emby.Naming/Subtitles/SubtitleParser.cs @@ -1,7 +1,7 @@ -using Emby.Naming.Common; using System; using System.IO; using System.Linq; +using Emby.Naming.Common; namespace Emby.Naming.Subtitles { diff --git a/Emby.Naming/TV/EpisodeInfo.cs b/Emby.Naming/TV/EpisodeInfo.cs index 41397480e..c8aca7a6f 100644 --- a/Emby.Naming/TV/EpisodeInfo.cs +++ b/Emby.Naming/TV/EpisodeInfo.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.TV { public class EpisodeInfo diff --git a/Emby.Naming/TV/EpisodePathParser.cs b/Emby.Naming/TV/EpisodePathParser.cs index 813be3f7a..9485d697b 100644 --- a/Emby.Naming/TV/EpisodePathParser.cs +++ b/Emby.Naming/TV/EpisodePathParser.cs @@ -1,9 +1,9 @@ -using Emby.Naming.Common; using System; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Text.RegularExpressions; +using Emby.Naming.Common; namespace Emby.Naming.TV { @@ -122,8 +122,7 @@ namespace Emby.Naming.TV } else if (expression.IsNamed) { - int num; - if (int.TryParse(match.Groups["seasonnumber"].Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(match.Groups["seasonnumber"].Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var num)) { result.SeasonNumber = num; } @@ -133,7 +132,7 @@ namespace Emby.Naming.TV result.EpisodeNumber = num; } - Group endingNumberGroup = match.Groups["endingepnumber"]; + var endingNumberGroup = match.Groups["endingepnumber"]; if (endingNumberGroup.Success) { // Will only set EndingEpsiodeNumber if the captured number is not followed by additional numbers @@ -154,8 +153,7 @@ namespace Emby.Naming.TV } else { - int num; - if (int.TryParse(match.Groups[1].Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(match.Groups[1].Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var num)) { result.SeasonNumber = num; } diff --git a/Emby.Naming/TV/EpisodePathParserResult.cs b/Emby.Naming/TV/EpisodePathParserResult.cs index 9890c78a4..e1a48bfbc 100644 --- a/Emby.Naming/TV/EpisodePathParserResult.cs +++ b/Emby.Naming/TV/EpisodePathParserResult.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.TV { public class EpisodePathParserResult diff --git a/Emby.Naming/TV/EpisodeResolver.cs b/Emby.Naming/TV/EpisodeResolver.cs index ec5ae2fbf..49a3558bd 100644 --- a/Emby.Naming/TV/EpisodeResolver.cs +++ b/Emby.Naming/TV/EpisodeResolver.cs @@ -1,8 +1,8 @@ -using Emby.Naming.Common; -using Emby.Naming.Video; using System; using System.IO; using System.Linq; +using Emby.Naming.Common; +using Emby.Naming.Video; namespace Emby.Naming.TV { diff --git a/Emby.Naming/TV/SeasonPathParser.cs b/Emby.Naming/TV/SeasonPathParser.cs index 72277e6b9..f1dcc50b8 100644 --- a/Emby.Naming/TV/SeasonPathParser.cs +++ b/Emby.Naming/TV/SeasonPathParser.cs @@ -1,8 +1,8 @@ -using Emby.Naming.Common; using System; using System.Globalization; using System.IO; using System.Linq; +using Emby.Naming.Common; namespace Emby.Naming.TV { @@ -72,8 +72,7 @@ namespace Emby.Naming.TV if (supportNumericSeasonFolders) { - int val; - if (int.TryParse(filename, NumberStyles.Integer, CultureInfo.InvariantCulture, out val)) + if (int.TryParse(filename, NumberStyles.Integer, CultureInfo.InvariantCulture, out var val)) { return new Tuple<int?, bool>(val, true); } @@ -83,8 +82,7 @@ namespace Emby.Naming.TV { var testFilename = filename.Substring(1); - int val; - if (int.TryParse(testFilename, NumberStyles.Integer, CultureInfo.InvariantCulture, out val)) + if (int.TryParse(testFilename, NumberStyles.Integer, CultureInfo.InvariantCulture, out var val)) { return new Tuple<int?, bool>(val, true); } @@ -121,8 +119,7 @@ namespace Emby.Naming.TV part = part.Substring(1); - int value; - if (int.TryParse(part, NumberStyles.Integer, CultureInfo.InvariantCulture, out value)) + if (int.TryParse(part, NumberStyles.Integer, CultureInfo.InvariantCulture, out var value)) { return value; } diff --git a/Emby.Naming/TV/SeasonPathParserResult.cs b/Emby.Naming/TV/SeasonPathParserResult.cs index 9a18d0a03..eab27a4a5 100644 --- a/Emby.Naming/TV/SeasonPathParserResult.cs +++ b/Emby.Naming/TV/SeasonPathParserResult.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.TV { public class SeasonPathParserResult diff --git a/Emby.Naming/Video/CleanDateTimeParser.cs b/Emby.Naming/Video/CleanDateTimeParser.cs index ee6ec8ba0..74807ef53 100644 --- a/Emby.Naming/Video/CleanDateTimeParser.cs +++ b/Emby.Naming/Video/CleanDateTimeParser.cs @@ -1,9 +1,9 @@ using System; -using Emby.Naming.Common; using System.Globalization; using System.IO; using System.Linq; using System.Text.RegularExpressions; +using Emby.Naming.Common; namespace Emby.Naming.Video { @@ -71,8 +71,7 @@ namespace Emby.Naming.Video if (match.Success && match.Groups.Count == 4) { - int year; - if (match.Groups[1].Success && match.Groups[2].Success && int.TryParse(match.Groups[2].Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out year)) + if (match.Groups[1].Success && match.Groups[2].Success && int.TryParse(match.Groups[2].Value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var year)) { name = match.Groups[1].Value; result.Year = year; diff --git a/Emby.Naming/Video/CleanDateTimeResult.cs b/Emby.Naming/Video/CleanDateTimeResult.cs index 946fd953c..6bf24e4d8 100644 --- a/Emby.Naming/Video/CleanDateTimeResult.cs +++ b/Emby.Naming/Video/CleanDateTimeResult.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.Video { public class CleanDateTimeResult diff --git a/Emby.Naming/Video/CleanStringResult.cs b/Emby.Naming/Video/CleanStringResult.cs index 0282863e0..b3bc59712 100644 --- a/Emby.Naming/Video/CleanStringResult.cs +++ b/Emby.Naming/Video/CleanStringResult.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.Video { public class CleanStringResult diff --git a/Emby.Naming/Video/ExtraResolver.cs b/Emby.Naming/Video/ExtraResolver.cs index bde1a4765..3459b689a 100644 --- a/Emby.Naming/Video/ExtraResolver.cs +++ b/Emby.Naming/Video/ExtraResolver.cs @@ -1,9 +1,9 @@ -using Emby.Naming.Audio; -using Emby.Naming.Common; using System; using System.IO; using System.Linq; using System.Text.RegularExpressions; +using Emby.Naming.Audio; +using Emby.Naming.Common; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/ExtraResult.cs b/Emby.Naming/Video/ExtraResult.cs index ca79af9da..ff6f20c47 100644 --- a/Emby.Naming/Video/ExtraResult.cs +++ b/Emby.Naming/Video/ExtraResult.cs @@ -1,5 +1,3 @@ -using System.Collections.Generic; - namespace Emby.Naming.Video { public class ExtraResult diff --git a/Emby.Naming/Video/ExtraRule.cs b/Emby.Naming/Video/ExtraRule.cs index ef83b3cd6..b8eb8427e 100644 --- a/Emby.Naming/Video/ExtraRule.cs +++ b/Emby.Naming/Video/ExtraRule.cs @@ -1,4 +1,4 @@ -using Emby.Naming.Common; +using Emby.Naming.Common; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/ExtraRuleType.cs b/Emby.Naming/Video/ExtraRuleType.cs index 323c7cef6..565239ff9 100644 --- a/Emby.Naming/Video/ExtraRuleType.cs +++ b/Emby.Naming/Video/ExtraRuleType.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.Video { public enum ExtraRuleType diff --git a/Emby.Naming/Video/FileStack.cs b/Emby.Naming/Video/FileStack.cs index 2feea4cb3..2df1e9aed 100644 --- a/Emby.Naming/Video/FileStack.cs +++ b/Emby.Naming/Video/FileStack.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; diff --git a/Emby.Naming/Video/FlagParser.cs b/Emby.Naming/Video/FlagParser.cs index ef785ebf9..bb129499b 100644 --- a/Emby.Naming/Video/FlagParser.cs +++ b/Emby.Naming/Video/FlagParser.cs @@ -1,6 +1,6 @@ -using Emby.Naming.Common; using System; using System.IO; +using Emby.Naming.Common; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/Format3DParser.cs b/Emby.Naming/Video/Format3DParser.cs index e335d1055..e6f830c58 100644 --- a/Emby.Naming/Video/Format3DParser.cs +++ b/Emby.Naming/Video/Format3DParser.cs @@ -1,6 +1,6 @@ -using Emby.Naming.Common; using System; using System.Linq; +using Emby.Naming.Common; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/Format3DResult.cs b/Emby.Naming/Video/Format3DResult.cs index 147ccfc05..e12494079 100644 --- a/Emby.Naming/Video/Format3DResult.cs +++ b/Emby.Naming/Video/Format3DResult.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/Format3DRule.cs b/Emby.Naming/Video/Format3DRule.cs index 3c173efbc..dc260175a 100644 --- a/Emby.Naming/Video/Format3DRule.cs +++ b/Emby.Naming/Video/Format3DRule.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.Video { public class Format3DRule diff --git a/Emby.Naming/Video/StackResolver.cs b/Emby.Naming/Video/StackResolver.cs index 995e95d42..4893002c1 100644 --- a/Emby.Naming/Video/StackResolver.cs +++ b/Emby.Naming/Video/StackResolver.cs @@ -1,9 +1,9 @@ -using Emby.Naming.Common; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text.RegularExpressions; +using Emby.Naming.Common; using MediaBrowser.Model.IO; namespace Emby.Naming.Video diff --git a/Emby.Naming/Video/StackResult.cs b/Emby.Naming/Video/StackResult.cs index 920a7dea7..de35d2825 100644 --- a/Emby.Naming/Video/StackResult.cs +++ b/Emby.Naming/Video/StackResult.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/StubResolver.cs b/Emby.Naming/Video/StubResolver.cs index 33d6baefd..7925f381d 100644 --- a/Emby.Naming/Video/StubResolver.cs +++ b/Emby.Naming/Video/StubResolver.cs @@ -1,7 +1,7 @@ -using Emby.Naming.Common; using System; using System.IO; using System.Linq; +using Emby.Naming.Common; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/StubResult.cs b/Emby.Naming/Video/StubResult.cs index c9d06c9a7..597681337 100644 --- a/Emby.Naming/Video/StubResult.cs +++ b/Emby.Naming/Video/StubResult.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/StubTypeRule.cs b/Emby.Naming/Video/StubTypeRule.cs index 66ebfc3a2..b46050085 100644 --- a/Emby.Naming/Video/StubTypeRule.cs +++ b/Emby.Naming/Video/StubTypeRule.cs @@ -1,4 +1,3 @@ - namespace Emby.Naming.Video { public class StubTypeRule diff --git a/Emby.Naming/Video/VideoFileInfo.cs b/Emby.Naming/Video/VideoFileInfo.cs index 3cdc483ff..6a29ada7e 100644 --- a/Emby.Naming/Video/VideoFileInfo.cs +++ b/Emby.Naming/Video/VideoFileInfo.cs @@ -1,4 +1,4 @@ - + namespace Emby.Naming.Video { /// <summary> @@ -65,10 +65,7 @@ namespace Emby.Naming.Video /// Gets the file name without extension. /// </summary> /// <value>The file name without extension.</value> - public string FileNameWithoutExtension - { - get { return !IsDirectory ? System.IO.Path.GetFileNameWithoutExtension(Path) : System.IO.Path.GetFileName(Path); } - } + public string FileNameWithoutExtension => !IsDirectory ? System.IO.Path.GetFileNameWithoutExtension(Path) : System.IO.Path.GetFileName(Path); public override string ToString() { diff --git a/Emby.Naming/Video/VideoInfo.cs b/Emby.Naming/Video/VideoInfo.cs index 033a8ae2d..d96d0e757 100644 --- a/Emby.Naming/Video/VideoInfo.cs +++ b/Emby.Naming/Video/VideoInfo.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/VideoListResolver.cs b/Emby.Naming/Video/VideoListResolver.cs index 45d4593de..0506d0734 100644 --- a/Emby.Naming/Video/VideoListResolver.cs +++ b/Emby.Naming/Video/VideoListResolver.cs @@ -1,10 +1,10 @@ -using Emby.Naming.Common; using System; using System.Collections.Generic; using System.IO; using System.Linq; -using MediaBrowser.Model.IO; using System.Text.RegularExpressions; +using Emby.Naming.Common; +using MediaBrowser.Model.IO; namespace Emby.Naming.Video { diff --git a/Emby.Naming/Video/VideoResolver.cs b/Emby.Naming/Video/VideoResolver.cs index f6ab8cb87..9bd0cb3df 100644 --- a/Emby.Naming/Video/VideoResolver.cs +++ b/Emby.Naming/Video/VideoResolver.cs @@ -1,7 +1,7 @@ -using Emby.Naming.Common; using System; using System.IO; using System.Linq; +using Emby.Naming.Common; namespace Emby.Naming.Video { @@ -40,7 +40,7 @@ namespace Emby.Naming.Video /// <param name="path">The path.</param> /// <param name="IsDirectory">if set to <c>true</c> [is folder].</param> /// <returns>VideoFileInfo.</returns> - /// <exception cref="System.ArgumentNullException">path</exception> + /// <exception cref="ArgumentNullException">path</exception> public VideoFileInfo Resolve(string path, bool IsDirectory, bool parseName = true) { if (string.IsNullOrEmpty(path)) diff --git a/Emby.Notifications/Api/NotificationsService.cs b/Emby.Notifications/Api/NotificationsService.cs index d09552ebc..83845558a 100644 --- a/Emby.Notifications/Api/NotificationsService.cs +++ b/Emby.Notifications/Api/NotificationsService.cs @@ -1,14 +1,14 @@ -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Notifications; -using MediaBrowser.Model.Notifications; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.Services; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Notifications; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Notifications; +using MediaBrowser.Model.Services; namespace Emby.Notifications.Api { diff --git a/Emby.Notifications/CoreNotificationTypes.cs b/Emby.Notifications/CoreNotificationTypes.cs index b45a75b1e..158898084 100644 --- a/Emby.Notifications/CoreNotificationTypes.cs +++ b/Emby.Notifications/CoreNotificationTypes.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Controller; -using MediaBrowser.Controller.Notifications; -using MediaBrowser.Model.Notifications; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Notifications; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.Notifications; namespace Emby.Notifications { diff --git a/Emby.Notifications/Emby.Notifications.csproj b/Emby.Notifications/Emby.Notifications.csproj index 5b5ae445e..14caa4a55 100644 --- a/Emby.Notifications/Emby.Notifications.csproj +++ b/Emby.Notifications/Emby.Notifications.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> diff --git a/Emby.Notifications/NotificationConfigurationFactory.cs b/Emby.Notifications/NotificationConfigurationFactory.cs index 2d464910e..d08475f7d 100644 --- a/Emby.Notifications/NotificationConfigurationFactory.cs +++ b/Emby.Notifications/NotificationConfigurationFactory.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Model.Notifications; using System.Collections.Generic; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Model.Notifications; namespace Emby.Notifications { diff --git a/Emby.Notifications/NotificationManager.cs b/Emby.Notifications/NotificationManager.cs index fa8fdd9c1..3d1d4722d 100644 --- a/Emby.Notifications/NotificationManager.cs +++ b/Emby.Notifications/NotificationManager.cs @@ -1,18 +1,17 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Notifications; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Notifications; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Notifications; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Notifications; +using Microsoft.Extensions.Logging; namespace Emby.Notifications { diff --git a/Emby.Notifications/Notifications.cs b/Emby.Notifications/Notifications.cs index 101f9706c..fbdc39f94 100644 --- a/Emby.Notifications/Notifications.cs +++ b/Emby.Notifications/Notifications.cs @@ -1,27 +1,27 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Updates; using MediaBrowser.Controller; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Notifications; using MediaBrowser.Controller.Plugins; using MediaBrowser.Controller.Session; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.Activity; +using MediaBrowser.Model.Events; +using MediaBrowser.Model.Globalization; using MediaBrowser.Model.Notifications; using MediaBrowser.Model.Tasks; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Model.Threading; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Activity; -using MediaBrowser.Model.Events; +using Microsoft.Extensions.Logging; namespace Emby.Notifications { diff --git a/Emby.Photos/Emby.Photos.csproj b/Emby.Photos/Emby.Photos.csproj index 3ecab9176..e6b445202 100644 --- a/Emby.Photos/Emby.Photos.csproj +++ b/Emby.Photos/Emby.Photos.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Controller\MediaBrowser.Controller.csproj" /> diff --git a/Emby.Photos/PhotoProvider.cs b/Emby.Photos/PhotoProvider.cs index 726fd1d79..4fcd418f0 100644 --- a/Emby.Photos/PhotoProvider.cs +++ b/Emby.Photos/PhotoProvider.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Linq; using System.Threading; @@ -7,6 +7,7 @@ using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; using Microsoft.Extensions.Logging; @@ -14,7 +15,6 @@ using TagLib; using TagLib.IFD; using TagLib.IFD.Entries; using TagLib.IFD.Tags; -using MediaBrowser.Model.MediaInfo; namespace Emby.Photos { @@ -145,8 +145,7 @@ namespace Emby.Photos } else { - MediaBrowser.Model.Drawing.ImageOrientation orientation; - if (Enum.TryParse(image.ImageTag.Orientation.ToString(), true, out orientation)) + if (Enum.TryParse(image.ImageTag.Orientation.ToString(), true, out ImageOrientation orientation)) { item.Orientation = orientation; } @@ -200,9 +199,6 @@ namespace Emby.Photos return Task.FromResult(result); } - public string Name - { - get { return "Embedded Information"; } - } + public string Name => "Embedded Information"; } } diff --git a/Emby.Server.Implementations/Activity/ActivityLogEntryPoint.cs b/Emby.Server.Implementations/Activity/ActivityLogEntryPoint.cs index eca1ff0f5..a8e8f815a 100644 --- a/Emby.Server.Implementations/Activity/ActivityLogEntryPoint.cs +++ b/Emby.Server.Implementations/Activity/ActivityLogEntryPoint.cs @@ -1,29 +1,28 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Plugins; using MediaBrowser.Common.Updates; using MediaBrowser.Controller; +using MediaBrowser.Controller.Authentication; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Plugins; using MediaBrowser.Controller.Session; using MediaBrowser.Controller.Subtitles; using MediaBrowser.Model.Activity; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Tasks; -using MediaBrowser.Model.Updates; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Notifications; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Dto; -using MediaBrowser.Controller.Devices; -using MediaBrowser.Controller.Authentication; +using MediaBrowser.Model.Tasks; +using MediaBrowser.Model.Updates; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Activity { @@ -528,7 +527,7 @@ namespace Emby.Server.Implementations.Activity const int DaysInMonth = 30; // Get each non-zero value from TimeSpan component - List<string> values = new List<string>(); + var values = new List<string>(); // Number of years int days = span.Days; @@ -559,7 +558,7 @@ namespace Emby.Server.Implementations.Activity values.Add(CreateValueString(span.Seconds, "second")); // Combine values into string - StringBuilder builder = new StringBuilder(); + var builder = new StringBuilder(); for (int i = 0; i < values.Count; i++) { if (builder.Length > 0) diff --git a/Emby.Server.Implementations/Activity/ActivityManager.cs b/Emby.Server.Implementations/Activity/ActivityManager.cs index 0bb44a9d5..e526acb0d 100644 --- a/Emby.Server.Implementations/Activity/ActivityManager.cs +++ b/Emby.Server.Implementations/Activity/ActivityManager.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Controller.Library; +using System; +using System.Linq; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.Activity; using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Querying; -using System; -using System.Linq; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Activity { diff --git a/Emby.Server.Implementations/Activity/ActivityRepository.cs b/Emby.Server.Implementations/Activity/ActivityRepository.cs index 822219132..9e624cd02 100644 --- a/Emby.Server.Implementations/Activity/ActivityRepository.cs +++ b/Emby.Server.Implementations/Activity/ActivityRepository.cs @@ -6,11 +6,10 @@ using System.Linq; using Emby.Server.Implementations.Data; using MediaBrowser.Controller; using MediaBrowser.Model.Activity; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Querying; +using Microsoft.Extensions.Logging; using SQLitePCL.pretty; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.IO; namespace Emby.Server.Implementations.Activity { diff --git a/Emby.Server.Implementations/AppBase/BaseApplicationPaths.cs b/Emby.Server.Implementations/AppBase/BaseApplicationPaths.cs index 3ad2d4b91..e4a2cd9df 100644 --- a/Emby.Server.Implementations/AppBase/BaseApplicationPaths.cs +++ b/Emby.Server.Implementations/AppBase/BaseApplicationPaths.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; using MediaBrowser.Common.Configuration; namespace Emby.Server.Implementations.AppBase diff --git a/Emby.Server.Implementations/AppBase/BaseConfigurationManager.cs b/Emby.Server.Implementations/AppBase/BaseConfigurationManager.cs index 222a93a10..59c7c655f 100644 --- a/Emby.Server.Implementations/AppBase/BaseConfigurationManager.cs +++ b/Emby.Server.Implementations/AppBase/BaseConfigurationManager.cs @@ -9,8 +9,8 @@ using MediaBrowser.Common.Events; using MediaBrowser.Common.Extensions; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.AppBase { @@ -151,7 +151,7 @@ namespace Emby.Server.Implementations.AppBase /// Replaces the configuration. /// </summary> /// <param name="newConfiguration">The new configuration.</param> - /// <exception cref="System.ArgumentNullException">newConfiguration</exception> + /// <exception cref="ArgumentNullException">newConfiguration</exception> public virtual void ReplaceConfiguration(BaseApplicationConfiguration newConfiguration) { if (newConfiguration == null) @@ -188,7 +188,7 @@ namespace Emby.Server.Implementations.AppBase /// Replaces the cache path. /// </summary> /// <param name="newConfig">The new configuration.</param> - /// <exception cref="System.IO.DirectoryNotFoundException"></exception> + /// <exception cref="DirectoryNotFoundException"></exception> private void ValidateCachePath(BaseApplicationConfiguration newConfig) { var newPath = newConfig.CachePath; @@ -284,7 +284,7 @@ namespace Emby.Server.Implementations.AppBase validatingStore.Validate(currentConfiguration, configuration); } - NamedConfigurationUpdating?.Invoke( this, new ConfigurationUpdateEventArgs + NamedConfigurationUpdating?.Invoke(this, new ConfigurationUpdateEventArgs { Key = key, NewConfiguration = configuration diff --git a/Emby.Server.Implementations/ApplicationHost.cs b/Emby.Server.Implementations/ApplicationHost.cs index 283d6b6d7..91eaf9bbf 100644 --- a/Emby.Server.Implementations/ApplicationHost.cs +++ b/Emby.Server.Implementations/ApplicationHost.cs @@ -1,9 +1,24 @@ +using System; +using System.Collections.Concurrent; +using System.Collections.Generic; +using System.Diagnostics; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Net; +using System.Reflection; +using System.Runtime.InteropServices; +using System.Security.Cryptography.X509Certificates; +using System.Text; +using System.Threading; +using System.Threading.Tasks; using Emby.Common.Implementations.Serialization; -using Emby.Drawing; -using Emby.Photos; using Emby.Dlna; using Emby.Dlna.Main; using Emby.Dlna.Ssdp; +using Emby.Drawing; +using Emby.Notifications; +using Emby.Photos; using Emby.Server.Implementations.Activity; using Emby.Server.Implementations.Archiving; using Emby.Server.Implementations.Channels; @@ -22,7 +37,6 @@ using Emby.Server.Implementations.Library; using Emby.Server.Implementations.LiveTv; using Emby.Server.Implementations.Localization; using Emby.Server.Implementations.Net; -using Emby.Notifications; using Emby.Server.Implementations.Playlists; using Emby.Server.Implementations.Reflection; using Emby.Server.Implementations.ScheduledTasks; @@ -40,9 +54,9 @@ using MediaBrowser.Common.Events; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Common.Plugins; -using MediaBrowser.Model.Extensions; using MediaBrowser.Common.Updates; using MediaBrowser.Controller; +using MediaBrowser.Controller.Authentication; using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Chapters; using MediaBrowser.Controller.Collections; @@ -75,6 +89,7 @@ using MediaBrowser.Model.Cryptography; using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Events; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Globalization; using MediaBrowser.Model.IO; using MediaBrowser.Model.MediaInfo; @@ -93,26 +108,11 @@ using MediaBrowser.Providers.Manager; using MediaBrowser.Providers.Subtitles; using MediaBrowser.WebDashboard.Api; using MediaBrowser.XbmcMetadata.Providers; +using Microsoft.Extensions.Logging; using ServiceStack; -using System; -using System.Collections.Concurrent; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Net; -using System.Reflection; -using System.Runtime.InteropServices; -using System.Security.Cryptography.X509Certificates; -using System.Text; -using System.Threading; -using System.Threading.Tasks; +using ServiceStack.Text.Jsv; using StringExtensions = MediaBrowser.Controller.Extensions.StringExtensions; using X509Certificate = System.Security.Cryptography.X509Certificates.X509Certificate; -using MediaBrowser.Controller.Authentication; -using System.Diagnostics; -using ServiceStack.Text.Jsv; -using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations { @@ -812,7 +812,7 @@ namespace Emby.Server.Implementations RegisterSingleInstance(ServerConfigurationManager); IAssemblyInfo assemblyInfo = new AssemblyInfo(); - RegisterSingleInstance<IAssemblyInfo>(assemblyInfo); + RegisterSingleInstance(assemblyInfo); LocalizationManager = new LocalizationManager(ServerConfigurationManager, FileSystemManager, JsonSerializer, LoggerFactory.CreateLogger("LocalizationManager"), assemblyInfo, new TextLocalizer()); StringExtensions.LocalizationManager = LocalizationManager; @@ -910,7 +910,7 @@ namespace Emby.Server.Implementations RegisterSingleInstance(CollectionManager); PlaylistManager = new PlaylistManager(LibraryManager, FileSystemManager, LibraryMonitor, LoggerFactory.CreateLogger("PlaylistManager"), UserManager, ProviderManager); - RegisterSingleInstance<IPlaylistManager>(PlaylistManager); + RegisterSingleInstance(PlaylistManager); LiveTvManager = new LiveTvManager(this, HttpClient, ServerConfigurationManager, Logger, ItemRepository, ImageProcessor, UserDataManager, DtoService, UserManager, LibraryManager, TaskManager, LocalizationManager, JsonSerializer, ProviderManager, FileSystemManager, () => ChannelManager); RegisterSingleInstance(LiveTvManager); @@ -928,7 +928,7 @@ namespace Emby.Server.Implementations RegisterMediaEncoder(assemblyInfo); - EncodingManager = new Emby.Server.Implementations.MediaEncoder.EncodingManager(FileSystemManager, Logger, MediaEncoder, ChapterManager, LibraryManager); + EncodingManager = new MediaEncoder.EncodingManager(FileSystemManager, Logger, MediaEncoder, ChapterManager, LibraryManager); RegisterSingleInstance(EncodingManager); var activityLogRepo = GetActivityLogRepository(); @@ -940,7 +940,7 @@ namespace Emby.Server.Implementations RegisterSingleInstance<ISessionContext>(new SessionContext(UserManager, authContext, SessionManager)); AuthService = new AuthService(UserManager, authContext, ServerConfigurationManager, SessionManager, NetworkManager); - RegisterSingleInstance<IAuthService>(AuthService); + RegisterSingleInstance(AuthService); SubtitleEncoder = new MediaBrowser.MediaEncoding.Subtitles.SubtitleEncoder(LibraryManager, LoggerFactory.CreateLogger("SubtitleEncoder"), ApplicationPaths, FileSystemManager, MediaEncoder, JsonSerializer, HttpClient, MediaSourceManager, ProcessFactory, TextEncoding); RegisterSingleInstance(SubtitleEncoder); @@ -1013,7 +1013,7 @@ namespace Emby.Server.Implementations { var arr = str.ToCharArray(); - arr = Array.FindAll<char>(arr, (c => (char.IsLetterOrDigit(c) + arr = Array.FindAll(arr, (c => (char.IsLetterOrDigit(c) || char.IsWhiteSpace(c)))); var result = new string(arr); @@ -1047,7 +1047,7 @@ namespace Emby.Server.Implementations // Don't use an empty string password var password = string.IsNullOrWhiteSpace(info.Password) ? null : info.Password; - X509Certificate2 localCert = new X509Certificate2(certificateLocation, password); + var localCert = new X509Certificate2(certificateLocation, password); //localCert.PrivateKey = PrivateKey.CreateFromFile(pvk_file).RSA; if (!localCert.HasPrivateKey) { @@ -1789,8 +1789,7 @@ namespace Emby.Server.Implementations return false; } - Version minRequiredVersion; - if (minRequiredVersions.TryGetValue(filename, out minRequiredVersion)) + if (minRequiredVersions.TryGetValue(filename, out Version minRequiredVersion)) { try { @@ -1926,7 +1925,7 @@ namespace Emby.Server.Implementations return GetLocalApiUrl(response.ReadToEnd().Trim()); } } - catch(Exception ex) + catch (Exception ex) { Logger.LogError(ex, "Error getting WAN Ip address information"); } @@ -2005,8 +2004,7 @@ namespace Emby.Server.Implementations address = address.Substring(index + 1); } - IpAddressInfo result; - if (NetworkManager.TryParseIpAddress(address.Trim('/'), out result)) + if (NetworkManager.TryParseIpAddress(address.Trim('/'), out IpAddressInfo result)) { return result; } @@ -2025,8 +2023,7 @@ namespace Emby.Server.Implementations var apiUrl = GetLocalApiUrl(address); apiUrl += "/system/ping"; - bool cachedResult; - if (_validAddressResults.TryGetValue(apiUrl, out cachedResult)) + if (_validAddressResults.TryGetValue(apiUrl, out var cachedResult)) { return cachedResult; } diff --git a/Emby.Server.Implementations/Archiving/ZipClient.cs b/Emby.Server.Implementations/Archiving/ZipClient.cs index 169e7af0a..84072cde6 100644 --- a/Emby.Server.Implementations/Archiving/ZipClient.cs +++ b/Emby.Server.Implementations/Archiving/ZipClient.cs @@ -1,6 +1,5 @@ -using System.IO; +using System.IO; using MediaBrowser.Model.IO; -using SharpCompress.Archives.Rar; using SharpCompress.Archives.SevenZip; using SharpCompress.Archives.Tar; using SharpCompress.Common; diff --git a/Emby.Server.Implementations/Branding/BrandingConfigurationFactory.cs b/Emby.Server.Implementations/Branding/BrandingConfigurationFactory.cs index a29f55f16..b27f84848 100644 --- a/Emby.Server.Implementations/Branding/BrandingConfigurationFactory.cs +++ b/Emby.Server.Implementations/Branding/BrandingConfigurationFactory.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Model.Branding; using System.Collections.Generic; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Model.Branding; namespace Emby.Server.Implementations.Branding { diff --git a/Emby.Server.Implementations/Browser/BrowserLauncher.cs b/Emby.Server.Implementations/Browser/BrowserLauncher.cs index 4c9f442d1..718129ef0 100644 --- a/Emby.Server.Implementations/Browser/BrowserLauncher.cs +++ b/Emby.Server.Implementations/Browser/BrowserLauncher.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Controller; using System; +using MediaBrowser.Controller; namespace Emby.Server.Implementations.Browser { diff --git a/Emby.Server.Implementations/Channels/ChannelDynamicMediaSourceProvider.cs b/Emby.Server.Implementations/Channels/ChannelDynamicMediaSourceProvider.cs index 8448d3640..c10f00f9b 100644 --- a/Emby.Server.Implementations/Channels/ChannelDynamicMediaSourceProvider.cs +++ b/Emby.Server.Implementations/Channels/ChannelDynamicMediaSourceProvider.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Channels; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Dto; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Channels; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Model.Dto; namespace Emby.Server.Implementations.Channels { diff --git a/Emby.Server.Implementations/Channels/ChannelImageProvider.cs b/Emby.Server.Implementations/Channels/ChannelImageProvider.cs index 7eded70c0..bafa68818 100644 --- a/Emby.Server.Implementations/Channels/ChannelImageProvider.cs +++ b/Emby.Server.Implementations/Channels/ChannelImageProvider.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Channels; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Channels; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; namespace Emby.Server.Implementations.Channels { diff --git a/Emby.Server.Implementations/Channels/ChannelManager.cs b/Emby.Server.Implementations/Channels/ChannelManager.cs index 4cc3fd855..f98e199e6 100644 --- a/Emby.Server.Implementations/Channels/ChannelManager.cs +++ b/Emby.Server.Implementations/Channels/ChannelManager.cs @@ -1,37 +1,30 @@ +using System; +using System.Collections.Concurrent; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; +using MediaBrowser.Common.Progress; using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Channels; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Extensions; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Net; +using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Querying; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Concurrent; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Net; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Common.Progress; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.IO; -using MediaBrowser.Controller.Plugins; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Channels { @@ -394,9 +387,7 @@ namespace Emby.Server.Implementations.Channels private async Task<IEnumerable<MediaSourceInfo>> GetChannelItemMediaSourcesInternal(IRequiresMediaInfoCallback channel, string id, CancellationToken cancellationToken) { - Tuple<DateTime, List<MediaSourceInfo>> cachedInfo; - - if (_channelItemMediaInfo.TryGetValue(id, out cachedInfo)) + if (_channelItemMediaInfo.TryGetValue(id, out Tuple<DateTime, List<MediaSourceInfo>> cachedInfo)) { if ((DateTime.UtcNow - cachedInfo.Item1).TotalMinutes < 5) { @@ -625,7 +616,7 @@ namespace Emby.Server.Implementations.Channels if (sortByPremiereDate) { - query.OrderBy = new [] + query.OrderBy = new[] { new ValueTuple<string, SortOrder>(ItemSortBy.PremiereDate, SortOrder.Descending), new ValueTuple<string, SortOrder>(ItemSortBy.ProductionYear, SortOrder.Descending), @@ -634,7 +625,7 @@ namespace Emby.Server.Implementations.Channels } else { - query.OrderBy = new [] + query.OrderBy = new[] { new ValueTuple<string, SortOrder>(ItemSortBy.DateCreated, SortOrder.Descending) }; diff --git a/Emby.Server.Implementations/Channels/ChannelPostScanTask.cs b/Emby.Server.Implementations/Channels/ChannelPostScanTask.cs index bd717bc6a..ad6c537ef 100644 --- a/Emby.Server.Implementations/Channels/ChannelPostScanTask.cs +++ b/Emby.Server.Implementations/Channels/ChannelPostScanTask.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Channels; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Channels; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Channels { diff --git a/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs b/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs index c1e9fad8a..844f77a1a 100644 --- a/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs +++ b/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Controller.Channels; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Common.Progress; +using MediaBrowser.Controller.Channels; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Channels { diff --git a/Emby.Server.Implementations/Collections/CollectionImageProvider.cs b/Emby.Server.Implementations/Collections/CollectionImageProvider.cs index 858dada4b..6642d1ef4 100644 --- a/Emby.Server.Implementations/Collections/CollectionImageProvider.cs +++ b/Emby.Server.Implementations/Collections/CollectionImageProvider.cs @@ -1,4 +1,8 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Collections.Generic; +using System.Linq; +using Emby.Server.Implementations.Images; +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; @@ -6,13 +10,8 @@ using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using Emby.Server.Implementations.Images; -using MediaBrowser.Model.IO; using MediaBrowser.Model.Extensions; -using System; +using MediaBrowser.Model.IO; namespace Emby.Server.Implementations.Collections { diff --git a/Emby.Server.Implementations/Collections/CollectionManager.cs b/Emby.Server.Implementations/Collections/CollectionManager.cs index d1d793136..213bb35e4 100644 --- a/Emby.Server.Implementations/Collections/CollectionManager.cs +++ b/Emby.Server.Implementations/Collections/CollectionManager.cs @@ -1,24 +1,22 @@ -using MediaBrowser.Common.Events; -using MediaBrowser.Controller.Collections; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Collections; using MediaBrowser.Controller.Configuration; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Plugins; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Collections { diff --git a/Emby.Server.Implementations/Configuration/ServerConfigurationManager.cs b/Emby.Server.Implementations/Configuration/ServerConfigurationManager.cs index 6180645e4..ab2e1c9a9 100644 --- a/Emby.Server.Implementations/Configuration/ServerConfigurationManager.cs +++ b/Emby.Server.Implementations/Configuration/ServerConfigurationManager.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using Emby.Server.Implementations.AppBase; @@ -8,8 +8,8 @@ using MediaBrowser.Controller.Configuration; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Events; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Configuration { @@ -119,7 +119,7 @@ namespace Emby.Server.Implementations.Configuration /// Replaces the configuration. /// </summary> /// <param name="newConfiguration">The new configuration.</param> - /// <exception cref="System.IO.DirectoryNotFoundException"></exception> + /// <exception cref="DirectoryNotFoundException"></exception> public override void ReplaceConfiguration(BaseApplicationConfiguration newConfiguration) { var newConfig = (ServerConfiguration)newConfiguration; @@ -137,7 +137,7 @@ namespace Emby.Server.Implementations.Configuration /// Validates the SSL certificate. /// </summary> /// <param name="newConfig">The new configuration.</param> - /// <exception cref="System.IO.DirectoryNotFoundException"></exception> + /// <exception cref="DirectoryNotFoundException"></exception> private void ValidateSslCertificate(BaseApplicationConfiguration newConfig) { var serverConfig = (ServerConfiguration)newConfig; @@ -159,7 +159,7 @@ namespace Emby.Server.Implementations.Configuration /// Validates the metadata path. /// </summary> /// <param name="newConfig">The new configuration.</param> - /// <exception cref="System.IO.DirectoryNotFoundException"></exception> + /// <exception cref="DirectoryNotFoundException"></exception> private void ValidateMetadataPath(ServerConfiguration newConfig) { var newPath = newConfig.MetadataPath; diff --git a/Emby.Server.Implementations/Cryptography/CryptographyProvider.cs b/Emby.Server.Implementations/Cryptography/CryptographyProvider.cs index 6402da0c9..09fdbc856 100644 --- a/Emby.Server.Implementations/Cryptography/CryptographyProvider.cs +++ b/Emby.Server.Implementations/Cryptography/CryptographyProvider.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Security.Cryptography; using System.Text; diff --git a/Emby.Server.Implementations/Data/BaseSqliteRepository.cs b/Emby.Server.Implementations/Data/BaseSqliteRepository.cs index c714ba91b..0f432c36c 100644 --- a/Emby.Server.Implementations/Data/BaseSqliteRepository.cs +++ b/Emby.Server.Implementations/Data/BaseSqliteRepository.cs @@ -1,12 +1,11 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; +using System.Linq; using System.Threading; -using System.Threading.Tasks; using Microsoft.Extensions.Logging; -using SQLitePCL.pretty; -using System.Linq; using SQLitePCL; +using SQLitePCL.pretty; namespace Emby.Server.Implementations.Data { @@ -255,7 +254,7 @@ namespace Emby.Server.Implementations.Data { if (_disposed) { - throw new ObjectDisposedException(GetType().Name ,"Object has been disposed and cannot be accessed."); + throw new ObjectDisposedException(GetType().Name, "Object has been disposed and cannot be accessed."); } } diff --git a/Emby.Server.Implementations/Data/CleanDatabaseScheduledTask.cs b/Emby.Server.Implementations/Data/CleanDatabaseScheduledTask.cs index 536cf21f6..dcfe14943 100644 --- a/Emby.Server.Implementations/Data/CleanDatabaseScheduledTask.cs +++ b/Emby.Server.Implementations/Data/CleanDatabaseScheduledTask.cs @@ -1,16 +1,12 @@ -using MediaBrowser.Common.Progress; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Persistence; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using System; -using System.Collections.Generic; -using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Data { diff --git a/Emby.Server.Implementations/Data/ManagedConnection.cs b/Emby.Server.Implementations/Data/ManagedConnection.cs index 91a2dfdf6..b8f1e581a 100644 --- a/Emby.Server.Implementations/Data/ManagedConnection.cs +++ b/Emby.Server.Implementations/Data/ManagedConnection.cs @@ -1,13 +1,10 @@ -using System; +using System; using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; using SQLitePCL.pretty; namespace Emby.Server.Implementations.Data { - public class ManagedConnection : IDisposable + public class ManagedConnection : IDisposable { private SQLiteDatabaseConnection db; private readonly bool _closeOnDispose; @@ -50,7 +47,7 @@ namespace Emby.Server.Implementations.Data public T RunInTransaction<T>(Func<IDatabaseConnection, T> action, TransactionMode mode) { - return db.RunInTransaction<T>(action, mode); + return db.RunInTransaction(action, mode); } public IEnumerable<IReadOnlyList<IResultSetValue>> Query(string sql) diff --git a/Emby.Server.Implementations/Data/SqliteDisplayPreferencesRepository.cs b/Emby.Server.Implementations/Data/SqliteDisplayPreferencesRepository.cs index 49d8f79a2..9ed2b49e5 100644 --- a/Emby.Server.Implementations/Data/SqliteDisplayPreferencesRepository.cs +++ b/Emby.Server.Implementations/Data/SqliteDisplayPreferencesRepository.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Threading; @@ -7,8 +7,8 @@ using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; using SQLitePCL.pretty; namespace Emby.Server.Implementations.Data @@ -83,7 +83,7 @@ namespace Emby.Server.Implementations.Data /// <param name="client">The client.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public void SaveDisplayPreferences(DisplayPreferences displayPreferences, Guid userId, string client, CancellationToken cancellationToken) { if (displayPreferences == null) @@ -131,7 +131,7 @@ namespace Emby.Server.Implementations.Data /// <param name="userId">The user id.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public void SaveAllDisplayPreferences(IEnumerable<DisplayPreferences> displayPreferences, Guid userId, CancellationToken cancellationToken) { if (displayPreferences == null) @@ -163,7 +163,7 @@ namespace Emby.Server.Implementations.Data /// <param name="userId">The user id.</param> /// <param name="client">The client.</param> /// <returns>Task{DisplayPreferences}.</returns> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public DisplayPreferences GetDisplayPreferences(string displayPreferencesId, Guid userId, string client) { if (string.IsNullOrEmpty(displayPreferencesId)) @@ -202,7 +202,7 @@ namespace Emby.Server.Implementations.Data /// </summary> /// <param name="userId">The user id.</param> /// <returns>Task{DisplayPreferences}.</returns> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public IEnumerable<DisplayPreferences> GetAllDisplayPreferences(Guid userId) { var list = new List<DisplayPreferences>(); diff --git a/Emby.Server.Implementations/Data/SqliteExtensions.cs b/Emby.Server.Implementations/Data/SqliteExtensions.cs index d9b2db56e..a486cb1a0 100644 --- a/Emby.Server.Implementations/Data/SqliteExtensions.cs +++ b/Emby.Server.Implementations/Data/SqliteExtensions.cs @@ -1,10 +1,9 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; -using MediaBrowser.Model.IO; +using System.IO; using MediaBrowser.Model.Serialization; using SQLitePCL.pretty; -using System.IO; namespace Emby.Server.Implementations.Data { @@ -115,9 +114,7 @@ namespace Emby.Server.Implementations.Data { var dateText = result.ToString(); - DateTime dateTimeResult; - - if (DateTime.TryParseExact(dateText, _datetimeFormats, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None, out dateTimeResult)) + if (DateTime.TryParseExact(dateText, _datetimeFormats, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.None, out var dateTimeResult)) { return dateTimeResult.ToUniversalTime(); } @@ -129,7 +126,7 @@ namespace Emby.Server.Implementations.Data /// Serializes to bytes. /// </summary> /// <returns>System.Byte[][].</returns> - /// <exception cref="System.ArgumentNullException">obj</exception> + /// <exception cref="ArgumentNullException">obj</exception> public static byte[] SerializeToBytes(this IJsonSerializer json, object obj) { if (obj == null) @@ -202,8 +199,7 @@ namespace Emby.Server.Implementations.Data public static void TryBind(this IStatement statement, string name, double value) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { bindParam.Bind(value); } @@ -215,8 +211,7 @@ namespace Emby.Server.Implementations.Data public static void TryBind(this IStatement statement, string name, string value) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { if (value == null) { @@ -235,8 +230,7 @@ namespace Emby.Server.Implementations.Data public static void TryBind(this IStatement statement, string name, bool value) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { bindParam.Bind(value); } @@ -248,8 +242,7 @@ namespace Emby.Server.Implementations.Data public static void TryBind(this IStatement statement, string name, float value) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { bindParam.Bind(value); } @@ -261,8 +254,7 @@ namespace Emby.Server.Implementations.Data public static void TryBind(this IStatement statement, string name, int value) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { bindParam.Bind(value); } @@ -274,8 +266,7 @@ namespace Emby.Server.Implementations.Data public static void TryBind(this IStatement statement, string name, Guid value) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { bindParam.Bind(value.ToGuidBlob()); } @@ -287,8 +278,7 @@ namespace Emby.Server.Implementations.Data public static void TryBind(this IStatement statement, string name, DateTime value) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { bindParam.Bind(value.ToDateTimeParamValue()); } @@ -300,8 +290,7 @@ namespace Emby.Server.Implementations.Data public static void TryBind(this IStatement statement, string name, long value) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { bindParam.Bind(value); } @@ -313,8 +302,7 @@ namespace Emby.Server.Implementations.Data public static void TryBind(this IStatement statement, string name, byte[] value) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { bindParam.Bind(value); } @@ -326,8 +314,7 @@ namespace Emby.Server.Implementations.Data public static void TryBindNull(this IStatement statement, string name) { - IBindParameter bindParam; - if (statement.BindParameters.TryGetValue(name, out bindParam)) + if (statement.BindParameters.TryGetValue(name, out IBindParameter bindParam)) { bindParam.BindNull(); } diff --git a/Emby.Server.Implementations/Data/SqliteItemRepository.cs b/Emby.Server.Implementations/Data/SqliteItemRepository.cs index f1894fd4f..727a9e868 100644 --- a/Emby.Server.Implementations/Data/SqliteItemRepository.cs +++ b/Emby.Server.Implementations/Data/SqliteItemRepository.cs @@ -6,17 +6,17 @@ using System.Linq; using System.Runtime.Serialization; using System.Text; using System.Threading; -using System.Threading.Tasks; -using Emby.Server.Implementations.Devices; using Emby.Server.Implementations.Playlists; +using MediaBrowser.Controller; using MediaBrowser.Controller.Channels; -using MediaBrowser.Controller.Collections; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.Playlists; @@ -24,17 +24,13 @@ using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; using MediaBrowser.Model.LiveTv; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Reflection; -using SQLitePCL.pretty; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.System; using MediaBrowser.Model.Threading; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Controller.Library; +using Microsoft.Extensions.Logging; +using SQLitePCL.pretty; namespace Emby.Server.Implementations.Data { @@ -49,13 +45,7 @@ namespace Emby.Server.Implementations.Data /// Gets the name of the repository /// </summary> /// <value>The name.</value> - public string Name - { - get - { - return "SQLite"; - } - } + public string Name => "SQLite"; /// <summary> /// Gets the json serializer. @@ -101,21 +91,9 @@ namespace Emby.Server.Implementations.Data private const string ChaptersTableName = "Chapters2"; - protected override int? CacheSize - { - get - { - return 20000; - } - } + protected override int? CacheSize => 20000; - protected override bool EnableTempStoreMemory - { - get - { - return true; - } - } + protected override bool EnableTempStoreMemory => true; /// <summary> /// Opens the connection to the database @@ -553,7 +531,7 @@ namespace Emby.Server.Implementations.Data /// </summary> /// <param name="item">The item.</param> /// <param name="cancellationToken">The cancellation token.</param> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public void SaveItem(BaseItem item, CancellationToken cancellationToken) { if (item == null) @@ -596,7 +574,7 @@ namespace Emby.Server.Implementations.Data /// </summary> /// <param name="items">The items.</param> /// <param name="cancellationToken">The cancellation token.</param> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// items /// or /// cancellationToken @@ -1186,25 +1164,21 @@ namespace Emby.Server.Implementations.Data image.Path = RestorePath(parts[0]); - long ticks; - if (long.TryParse(parts[1], NumberStyles.Any, CultureInfo.InvariantCulture, out ticks)) + if (long.TryParse(parts[1], NumberStyles.Any, CultureInfo.InvariantCulture, out var ticks)) { image.DateModified = new DateTime(ticks, DateTimeKind.Utc); } - ImageType type; - if (Enum.TryParse(parts[2], true, out type)) + if (Enum.TryParse(parts[2], true, out ImageType type)) { image.Type = type; } if (parts.Length >= 5) { - int width; - int height; - if (int.TryParse(parts[3], NumberStyles.Integer, CultureInfo.InvariantCulture, out width)) + if (int.TryParse(parts[3], NumberStyles.Integer, CultureInfo.InvariantCulture, out var width)) { - if (int.TryParse(parts[4], NumberStyles.Integer, CultureInfo.InvariantCulture, out height)) + if (int.TryParse(parts[4], NumberStyles.Integer, CultureInfo.InvariantCulture, out var height)) { image.Width = width; image.Height = height; @@ -1220,8 +1194,8 @@ namespace Emby.Server.Implementations.Data /// </summary> /// <param name="id">The id.</param> /// <returns>BaseItem.</returns> - /// <exception cref="System.ArgumentNullException">id</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">id</exception> + /// <exception cref="ArgumentException"></exception> public BaseItem RetrieveItem(Guid id) { if (id.Equals(Guid.Empty)) @@ -1611,8 +1585,7 @@ namespace Emby.Server.Implementations.Data if (!reader.IsDBNull(index)) { - ProgramAudio audio; - if (Enum.TryParse(reader.GetString(index), true, out audio)) + if (Enum.TryParse(reader.GetString(index), true, out ProgramAudio audio)) { item.Audio = audio; } @@ -1656,9 +1629,7 @@ namespace Emby.Server.Implementations.Data item.LockedFields = reader.GetString(index).Split('|').Where(i => !string.IsNullOrWhiteSpace(i)).Select( i => { - MetadataFields parsedValue; - - if (Enum.TryParse(i, true, out parsedValue)) + if (Enum.TryParse(i, true, out MetadataFields parsedValue)) { return parsedValue; } @@ -1696,9 +1667,7 @@ namespace Emby.Server.Implementations.Data trailer.TrailerTypes = reader.GetString(index).Split('|').Where(i => !string.IsNullOrWhiteSpace(i)).Select( i => { - TrailerType parsedValue; - - if (Enum.TryParse(i, true, out parsedValue)) + if (Enum.TryParse(i, true, out TrailerType parsedValue)) { return parsedValue; } @@ -1879,8 +1848,7 @@ namespace Emby.Server.Implementations.Data if (!reader.IsDBNull(index)) { - ExtraType extraType; - if (Enum.TryParse(reader.GetString(index), true, out extraType)) + if (Enum.TryParse(reader.GetString(index), true, out ExtraType extraType)) { item.ExtraType = extraType; } @@ -1967,7 +1935,7 @@ namespace Emby.Server.Implementations.Data /// </summary> /// <param name="item">The item.</param> /// <returns>IEnumerable{ChapterInfo}.</returns> - /// <exception cref="System.ArgumentNullException">id</exception> + /// <exception cref="ArgumentNullException">id</exception> public List<ChapterInfo> GetChapters(BaseItem item) { CheckDisposed(); @@ -1999,7 +1967,7 @@ namespace Emby.Server.Implementations.Data /// <param name="item">The item.</param> /// <param name="index">The index.</param> /// <returns>ChapterInfo.</returns> - /// <exception cref="System.ArgumentNullException">id</exception> + /// <exception cref="ArgumentNullException">id</exception> public ChapterInfo GetChapter(BaseItem item, int index) { CheckDisposed(); @@ -5171,8 +5139,7 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type private IEnumerable<string> MapIncludeItemTypes(string value) { - string[] result; - if (_types.TryGetValue(value, out result)) + if (_types.TryGetValue(value, out string[] result)) { return result; } diff --git a/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs b/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs index cf60b71d6..48ff9ded8 100644 --- a/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs +++ b/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs @@ -5,11 +5,11 @@ using System.Linq; using System.Threading; using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.IO; using Microsoft.Extensions.Logging; using SQLitePCL.pretty; -using MediaBrowser.Controller.Library; namespace Emby.Server.Implementations.Data { @@ -110,7 +110,7 @@ namespace Emby.Server.Implementations.Data private List<Guid> GetAllUserIdsWithUserData(IDatabaseConnection db) { - List<Guid> list = new List<Guid>(); + var list = new List<Guid>(); using (var statement = PrepareStatement(db, "select DISTINCT UserId from UserData where UserId not null")) { @@ -271,7 +271,7 @@ namespace Emby.Server.Implementations.Data /// <param name="internalUserId">The user id.</param> /// <param name="key">The key.</param> /// <returns>Task{UserItemData}.</returns> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// userId /// or /// key diff --git a/Emby.Server.Implementations/Data/SqliteUserRepository.cs b/Emby.Server.Implementations/Data/SqliteUserRepository.cs index 125f254c1..ad37a0275 100644 --- a/Emby.Server.Implementations/Data/SqliteUserRepository.cs +++ b/Emby.Server.Implementations/Data/SqliteUserRepository.cs @@ -1,13 +1,11 @@ -using System; +using System; using System.Collections.Generic; using System.IO; -using System.Threading; using MediaBrowser.Controller; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Persistence; -using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; using SQLitePCL.pretty; namespace Emby.Server.Implementations.Data @@ -202,7 +200,7 @@ namespace Emby.Server.Implementations.Data /// </summary> /// <param name="user">The user.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">user</exception> + /// <exception cref="ArgumentNullException">user</exception> public void DeleteUser(User user) { if (user == null) diff --git a/Emby.Server.Implementations/Data/TypeMapper.cs b/Emby.Server.Implementations/Data/TypeMapper.cs index e0c2de918..37c952e88 100644 --- a/Emby.Server.Implementations/Data/TypeMapper.cs +++ b/Emby.Server.Implementations/Data/TypeMapper.cs @@ -1,7 +1,7 @@ -using System; +using System; using System.Collections.Concurrent; -using MediaBrowser.Model.Reflection; using System.Linq; +using MediaBrowser.Model.Reflection; namespace Emby.Server.Implementations.Data { @@ -27,7 +27,7 @@ namespace Emby.Server.Implementations.Data /// </summary> /// <param name="typeName">Name of the type.</param> /// <returns>Type.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public Type GetType(string typeName) { if (string.IsNullOrEmpty(typeName)) diff --git a/Emby.Server.Implementations/Devices/DeviceId.cs b/Emby.Server.Implementations/Devices/DeviceId.cs index 4f5950ac7..56e555937 100644 --- a/Emby.Server.Implementations/Devices/DeviceId.cs +++ b/Emby.Server.Implementations/Devices/DeviceId.cs @@ -25,8 +25,7 @@ namespace Emby.Server.Implementations.Devices { var value = File.ReadAllText(CachePath, Encoding.UTF8); - Guid guid; - if (Guid.TryParse(value, out guid)) + if (Guid.TryParse(value, out var guid)) { return value; } diff --git a/Emby.Server.Implementations/Devices/DeviceManager.cs b/Emby.Server.Implementations/Devices/DeviceManager.cs index c72334577..f2ab28d4c 100644 --- a/Emby.Server.Implementations/Devices/DeviceManager.cs +++ b/Emby.Server.Implementations/Devices/DeviceManager.cs @@ -1,30 +1,29 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Devices; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Devices; -using MediaBrowser.Model.Events; -using MediaBrowser.Model.Extensions; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Session; -using MediaBrowser.Model.Users; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading.Tasks; -using MediaBrowser.Model.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Configuration; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Plugins; -using MediaBrowser.Model.Globalization; using MediaBrowser.Controller.Security; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Devices; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Events; +using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Net; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Serialization; -using MediaBrowser.Common.Extensions; +using MediaBrowser.Model.Session; +using MediaBrowser.Model.Users; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Devices { @@ -99,8 +98,7 @@ namespace Emby.Server.Implementations.Devices { lock (_capabilitiesSyncLock) { - ClientCapabilities result; - if (_capabilitiesCache.TryGetValue(id, out result)) + if (_capabilitiesCache.TryGetValue(id, out var result)) { return result; } diff --git a/Emby.Server.Implementations/Diagnostics/CommonProcess.cs b/Emby.Server.Implementations/Diagnostics/CommonProcess.cs index 99871a3c6..d8a798c46 100644 --- a/Emby.Server.Implementations/Diagnostics/CommonProcess.cs +++ b/Emby.Server.Implementations/Diagnostics/CommonProcess.cs @@ -1,9 +1,9 @@ -using System; +using System; using System.Diagnostics; using System.IO; +using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.Diagnostics; -using System.Threading; namespace Emby.Server.Implementations.Diagnostics { diff --git a/Emby.Server.Implementations/Diagnostics/ProcessFactory.cs b/Emby.Server.Implementations/Diagnostics/ProcessFactory.cs index a2c511cb9..14aadaaae 100644 --- a/Emby.Server.Implementations/Diagnostics/ProcessFactory.cs +++ b/Emby.Server.Implementations/Diagnostics/ProcessFactory.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Diagnostics; +using MediaBrowser.Model.Diagnostics; namespace Emby.Server.Implementations.Diagnostics { diff --git a/Emby.Server.Implementations/Dto/DtoService.cs b/Emby.Server.Implementations/Dto/DtoService.cs index 3d519f35d..a45cde980 100644 --- a/Emby.Server.Implementations/Dto/DtoService.cs +++ b/Emby.Server.Implementations/Dto/DtoService.cs @@ -1,3 +1,8 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading.Tasks; using MediaBrowser.Common; using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Configuration; @@ -11,21 +16,15 @@ using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Persistence; +using MediaBrowser.Controller.Playlists; using MediaBrowser.Controller.Providers; -using MediaBrowser.Controller.Sync; using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading.Tasks; -using MediaBrowser.Model.IO; using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Playlists; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Querying; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Dto { @@ -72,7 +71,7 @@ namespace Emby.Server.Implementations.Dto /// <param name="user">The user.</param> /// <param name="owner">The owner.</param> /// <returns>Task{DtoBaseItem}.</returns> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public BaseItemDto GetBaseItemDto(BaseItem item, ItemFields[] fields, User user = null, BaseItem owner = null) { var options = new DtoOptions @@ -464,7 +463,7 @@ namespace Emby.Server.Implementations.Dto /// </summary> /// <param name="item">The item.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public string GetDtoId(BaseItem item) { return item.Id.ToString("N"); @@ -638,9 +637,7 @@ namespace Emby.Server.Implementations.Dto Type = person.Type }; - Person entity; - - if (dictionary.TryGetValue(person.Name, out entity)) + if (dictionary.TryGetValue(person.Name, out Person entity)) { baseItemPerson.PrimaryImageTag = GetImageCacheTag(entity, ImageType.Primary); baseItemPerson.Id = entity.Id.ToString("N"); diff --git a/Emby.Server.Implementations/Emby.Server.Implementations.csproj b/Emby.Server.Implementations/Emby.Server.Implementations.csproj index da3a4da07..5a0e1da4d 100644 --- a/Emby.Server.Implementations/Emby.Server.Implementations.csproj +++ b/Emby.Server.Implementations/Emby.Server.Implementations.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\Emby.Naming\Emby.Naming.csproj" /> diff --git a/Emby.Server.Implementations/EntryPoints/AutomaticRestartEntryPoint.cs b/Emby.Server.Implementations/EntryPoints/AutomaticRestartEntryPoint.cs index a0947c87d..0fc4c3858 100644 --- a/Emby.Server.Implementations/EntryPoints/AutomaticRestartEntryPoint.cs +++ b/Emby.Server.Implementations/EntryPoints/AutomaticRestartEntryPoint.cs @@ -1,16 +1,16 @@ -using MediaBrowser.Controller; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Plugins; -using MediaBrowser.Controller.Session; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Tasks; using System; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Controller.Plugins; +using MediaBrowser.Controller.Session; using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.Tasks; using MediaBrowser.Model.Threading; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.EntryPoints { diff --git a/Emby.Server.Implementations/EntryPoints/ExternalPortForwarding.cs b/Emby.Server.Implementations/EntryPoints/ExternalPortForwarding.cs index 6c658a695..8755ee3a7 100644 --- a/Emby.Server.Implementations/EntryPoints/ExternalPortForwarding.cs +++ b/Emby.Server.Implementations/EntryPoints/ExternalPortForwarding.cs @@ -2,6 +2,7 @@ using System; using System.Collections.Generic; using System.Globalization; using System.Net; +using System.Threading; using System.Threading.Tasks; using MediaBrowser.Common.Net; using MediaBrowser.Controller; @@ -9,10 +10,9 @@ using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Plugins; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Threading; +using Microsoft.Extensions.Logging; using Mono.Nat; -using System.Threading; namespace Emby.Server.Implementations.EntryPoints { @@ -108,11 +108,9 @@ namespace Emby.Server.Implementations.EntryPoints var info = e.Argument; - string usn; - if (!info.Headers.TryGetValue("USN", out usn)) usn = string.Empty; + if (!info.Headers.TryGetValue("USN", out string usn)) usn = string.Empty; - string nt; - if (!info.Headers.TryGetValue("NT", out nt)) nt = string.Empty; + if (!info.Headers.TryGetValue("NT", out string nt)) nt = string.Empty; // Filter device type if (usn.IndexOf("WANIPConnection:", StringComparison.OrdinalIgnoreCase) == -1 && @@ -141,8 +139,7 @@ namespace Emby.Server.Implementations.EntryPoints _logger.LogDebug("Found NAT device: " + identifier); - IPAddress address; - if (IPAddress.TryParse(info.Location.Host, out address)) + if (IPAddress.TryParse(info.Location.Host, out var address)) { // The Handle method doesn't need the port var endpoint = new IPEndPoint(address, info.Location.Port); @@ -153,8 +150,7 @@ namespace Emby.Server.Implementations.EntryPoints { var localAddressString = await _appHost.GetLocalApiUrl(CancellationToken.None).ConfigureAwait(false); - Uri uri; - if (Uri.TryCreate(localAddressString, UriKind.Absolute, out uri)) + if (Uri.TryCreate(localAddressString, UriKind.Absolute, out var uri)) { localAddressString = uri.Host; diff --git a/Emby.Server.Implementations/EntryPoints/LibraryChangedNotifier.cs b/Emby.Server.Implementations/EntryPoints/LibraryChangedNotifier.cs index a5c907213..7a8b09cf7 100644 --- a/Emby.Server.Implementations/EntryPoints/LibraryChangedNotifier.cs +++ b/Emby.Server.Implementations/EntryPoints/LibraryChangedNotifier.cs @@ -1,21 +1,20 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Plugins; -using MediaBrowser.Controller.Session; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Threading; using MediaBrowser.Controller.Channels; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Plugins; using MediaBrowser.Controller.Providers; +using MediaBrowser.Controller.Session; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Events; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Threading; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.EntryPoints { @@ -90,8 +89,7 @@ namespace Emby.Server.Implementations.EntryPoints var progress = e.Argument.Item2; - DateTime lastMessageSendTime; - if (_lastProgressMessageTimes.TryGetValue(item.Id, out lastMessageSendTime)) + if (_lastProgressMessageTimes.TryGetValue(item.Id, out var lastMessageSendTime)) { if (progress > 0 && progress < 100 && (DateTime.UtcNow - lastMessageSendTime).TotalMilliseconds < 1000) { diff --git a/Emby.Server.Implementations/EntryPoints/RecordingNotifier.cs b/Emby.Server.Implementations/EntryPoints/RecordingNotifier.cs index c7bd03960..e37ea96a1 100644 --- a/Emby.Server.Implementations/EntryPoints/RecordingNotifier.cs +++ b/Emby.Server.Implementations/EntryPoints/RecordingNotifier.cs @@ -58,7 +58,7 @@ namespace Emby.Server.Implementations.EntryPoints try { - await _sessionManager.SendMessageToUserSessions<TimerEventInfo>(users, name, info, CancellationToken.None); + await _sessionManager.SendMessageToUserSessions(users, name, info, CancellationToken.None); } catch (ObjectDisposedException) { diff --git a/Emby.Server.Implementations/EntryPoints/RefreshUsersMetadata.cs b/Emby.Server.Implementations/EntryPoints/RefreshUsersMetadata.cs index f0b834ccb..b7565adec 100644 --- a/Emby.Server.Implementations/EntryPoints/RefreshUsersMetadata.cs +++ b/Emby.Server.Implementations/EntryPoints/RefreshUsersMetadata.cs @@ -1,12 +1,12 @@ -using System; -using MediaBrowser.Controller.Library; -using System.Threading; -using MediaBrowser.Model.Tasks; +using System; using System.Collections.Generic; using System.Linq; +using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Tasks; using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.EntryPoints diff --git a/Emby.Server.Implementations/EntryPoints/ServerEventNotifier.cs b/Emby.Server.Implementations/EntryPoints/ServerEventNotifier.cs index 72dcabab3..92ea3a8f4 100644 --- a/Emby.Server.Implementations/EntryPoints/ServerEventNotifier.cs +++ b/Emby.Server.Implementations/EntryPoints/ServerEventNotifier.cs @@ -1,17 +1,14 @@ -using MediaBrowser.Common.Plugins; +using System; +using System.Collections.Generic; +using System.Threading; +using MediaBrowser.Common.Plugins; using MediaBrowser.Common.Updates; using MediaBrowser.Controller; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Plugins; using MediaBrowser.Controller.Session; -using MediaBrowser.Controller.Sync; using MediaBrowser.Model.Events; -using MediaBrowser.Model.Sync; -using System; -using System.Collections.Generic; -using System.Threading; using MediaBrowser.Model.Tasks; namespace Emby.Server.Implementations.EntryPoints diff --git a/Emby.Server.Implementations/EntryPoints/StartupWizard.cs b/Emby.Server.Implementations/EntryPoints/StartupWizard.cs index ffd98bf78..05c8b07ab 100644 --- a/Emby.Server.Implementations/EntryPoints/StartupWizard.cs +++ b/Emby.Server.Implementations/EntryPoints/StartupWizard.cs @@ -1,8 +1,8 @@ -using Emby.Server.Implementations.Browser; +using Emby.Server.Implementations.Browser; using MediaBrowser.Controller; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Plugins; using Microsoft.Extensions.Logging; -using MediaBrowser.Controller.Configuration; namespace Emby.Server.Implementations.EntryPoints { diff --git a/Emby.Server.Implementations/EntryPoints/SystemEvents.cs b/Emby.Server.Implementations/EntryPoints/SystemEvents.cs index e27de8967..72c8acd9f 100644 --- a/Emby.Server.Implementations/EntryPoints/SystemEvents.cs +++ b/Emby.Server.Implementations/EntryPoints/SystemEvents.cs @@ -1,12 +1,7 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using MediaBrowser.Model.System; -using MediaBrowser.Controller.Plugins; -using MediaBrowser.Common; +using System; using MediaBrowser.Controller; +using MediaBrowser.Controller.Plugins; +using MediaBrowser.Model.System; namespace Emby.Server.Implementations.EntryPoints { diff --git a/Emby.Server.Implementations/EntryPoints/UdpServerEntryPoint.cs b/Emby.Server.Implementations/EntryPoints/UdpServerEntryPoint.cs index 730ced055..2c8246d13 100644 --- a/Emby.Server.Implementations/EntryPoints/UdpServerEntryPoint.cs +++ b/Emby.Server.Implementations/EntryPoints/UdpServerEntryPoint.cs @@ -1,10 +1,10 @@ -using System; +using System; +using Emby.Server.Implementations.Udp; using MediaBrowser.Controller; using MediaBrowser.Controller.Plugins; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; -using Emby.Server.Implementations.Udp; using MediaBrowser.Model.Net; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.EntryPoints { diff --git a/Emby.Server.Implementations/EntryPoints/UserDataChangeNotifier.cs b/Emby.Server.Implementations/EntryPoints/UserDataChangeNotifier.cs index 58309ea1c..9e71ffceb 100644 --- a/Emby.Server.Implementations/EntryPoints/UserDataChangeNotifier.cs +++ b/Emby.Server.Implementations/EntryPoints/UserDataChangeNotifier.cs @@ -1,17 +1,17 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Plugins; -using MediaBrowser.Controller.Session; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Session; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Plugins; +using MediaBrowser.Controller.Session; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Session; using MediaBrowser.Model.Threading; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.EntryPoints { @@ -62,9 +62,7 @@ namespace Emby.Server.Implementations.EntryPoints UpdateTimer.Change(UpdateDuration, Timeout.Infinite); } - List<BaseItem> keys; - - if (!_changedItems.TryGetValue(e.UserId, out keys)) + if (!_changedItems.TryGetValue(e.UserId, out List<BaseItem> keys)) { keys = new List<BaseItem>(); _changedItems[e.UserId] = keys; diff --git a/Emby.Server.Implementations/EnvironmentInfo/EnvironmentInfo.cs b/Emby.Server.Implementations/EnvironmentInfo/EnvironmentInfo.cs index 24a3456c4..c8104150d 100644 --- a/Emby.Server.Implementations/EnvironmentInfo/EnvironmentInfo.cs +++ b/Emby.Server.Implementations/EnvironmentInfo/EnvironmentInfo.cs @@ -1,6 +1,6 @@ -using System; -using MediaBrowser.Model.System; +using System; using System.Runtime.InteropServices; +using MediaBrowser.Model.System; namespace Emby.Server.Implementations.EnvironmentInfo { diff --git a/Emby.Server.Implementations/FFMpeg/FFMpegInfo.cs b/Emby.Server.Implementations/FFMpeg/FFMpegInfo.cs index e725d22f5..60cd7b3d7 100644 --- a/Emby.Server.Implementations/FFMpeg/FFMpegInfo.cs +++ b/Emby.Server.Implementations/FFMpeg/FFMpegInfo.cs @@ -1,4 +1,4 @@ -namespace Emby.Server.Implementations.FFMpeg +namespace Emby.Server.Implementations.FFMpeg { /// <summary> /// Class FFMpegInfo @@ -21,4 +21,4 @@ /// <value>The version.</value> public string Version { get; set; } } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/FFMpeg/FFMpegInstallInfo.cs b/Emby.Server.Implementations/FFMpeg/FFMpegInstallInfo.cs index a1080a839..fa9cb5e01 100644 --- a/Emby.Server.Implementations/FFMpeg/FFMpegInstallInfo.cs +++ b/Emby.Server.Implementations/FFMpeg/FFMpegInstallInfo.cs @@ -1,4 +1,3 @@ - namespace Emby.Server.Implementations.FFMpeg { public class FFMpegInstallInfo @@ -15,4 +14,4 @@ namespace Emby.Server.Implementations.FFMpeg FFProbeFilename = "ffprobe"; } } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/FFMpeg/FFMpegLoader.cs b/Emby.Server.Implementations/FFMpeg/FFMpegLoader.cs index 83e3cb720..9a4aec958 100644 --- a/Emby.Server.Implementations/FFMpeg/FFMpegLoader.cs +++ b/Emby.Server.Implementations/FFMpeg/FFMpegLoader.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Net; -using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.IO; using System.Linq; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Net; +using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.FFMpeg { diff --git a/Emby.Server.Implementations/HttpClientManager/HttpClientInfo.cs b/Emby.Server.Implementations/HttpClientManager/HttpClientInfo.cs index 21cec9d2b..f747b01b9 100644 --- a/Emby.Server.Implementations/HttpClientManager/HttpClientInfo.cs +++ b/Emby.Server.Implementations/HttpClientManager/HttpClientInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Net.Http; namespace Emby.Server.Implementations.HttpClientManager diff --git a/Emby.Server.Implementations/HttpClientManager/HttpClientManager.cs b/Emby.Server.Implementations/HttpClientManager/HttpClientManager.cs index 2f5eed547..3aab10026 100644 --- a/Emby.Server.Implementations/HttpClientManager/HttpClientManager.cs +++ b/Emby.Server.Implementations/HttpClientManager/HttpClientManager.cs @@ -13,8 +13,8 @@ using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Net; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.HttpClientManager { @@ -82,7 +82,7 @@ namespace Emby.Server.Implementations.HttpClientManager /// <param name="host">The host.</param> /// <param name="enableHttpCompression">if set to <c>true</c> [enable HTTP compression].</param> /// <returns>HttpClient.</returns> - /// <exception cref="System.ArgumentNullException">host</exception> + /// <exception cref="ArgumentNullException">host</exception> private HttpClientInfo GetHttpClient(string host, bool enableHttpCompression) { if (string.IsNullOrEmpty(host)) @@ -90,11 +90,9 @@ namespace Emby.Server.Implementations.HttpClientManager throw new ArgumentNullException(nameof(host)); } - HttpClientInfo client; - var key = host + enableHttpCompression; - if (!_httpClients.TryGetValue(key, out client)) + if (!_httpClients.TryGetValue(key, out var client)) { client = new HttpClientInfo(); @@ -125,7 +123,7 @@ namespace Emby.Server.Implementations.HttpClientManager { string url = options.Url; - Uri uriAddress = new Uri(url); + var uriAddress = new Uri(url); string userInfo = uriAddress.UserInfo; if (!string.IsNullOrWhiteSpace(userInfo)) { @@ -133,7 +131,7 @@ namespace Emby.Server.Implementations.HttpClientManager url = url.Replace(userInfo + "@", string.Empty); } - WebRequest request = CreateWebRequest(url); + var request = CreateWebRequest(url); if (request is HttpWebRequest httpWebRequest) { @@ -188,7 +186,7 @@ namespace Emby.Server.Implementations.HttpClientManager private static CredentialCache GetCredential(string url, string username, string password) { //ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3; - CredentialCache credentialCache = new CredentialCache(); + var credentialCache = new CredentialCache(); credentialCache.Add(new Uri(url), "Basic", new NetworkCredential(username, password)); return credentialCache; } @@ -541,7 +539,7 @@ namespace Emby.Server.Implementations.HttpClientManager if (options.Progress == null) { - throw new ArgumentException("Options did not have a Progress value.",nameof(options)); + throw new ArgumentException("Options did not have a Progress value.", nameof(options)); } options.CancellationToken.ThrowIfCancellationRequested(); @@ -807,7 +805,7 @@ namespace Emby.Server.Implementations.HttpClientManager { var taskCompletion = new TaskCompletionSource<WebResponse>(); - Task<WebResponse> asyncTask = Task.Factory.FromAsync<WebResponse>(request.BeginGetResponse, request.EndGetResponse, null); + var asyncTask = Task.Factory.FromAsync(request.BeginGetResponse, request.EndGetResponse, null); ThreadPool.RegisterWaitForSingleObject((asyncTask as IAsyncResult).AsyncWaitHandle, TimeoutCallback, request, timeout, true); var callback = new TaskCallback { taskCompletion = taskCompletion }; @@ -823,7 +821,7 @@ namespace Emby.Server.Implementations.HttpClientManager { if (timedOut && state != null) { - WebRequest request = (WebRequest)state; + var request = (WebRequest)state; request.Abort(); } } diff --git a/Emby.Server.Implementations/HttpServer/FileWriter.cs b/Emby.Server.Implementations/HttpServer/FileWriter.cs index 568432902..c32c91670 100644 --- a/Emby.Server.Implementations/HttpServer/FileWriter.cs +++ b/Emby.Server.Implementations/HttpServer/FileWriter.cs @@ -1,13 +1,13 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; +using System.Linq; using System.Net; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Services; -using System.Linq; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.HttpServer { diff --git a/Emby.Server.Implementations/HttpServer/HttpListenerHost.cs b/Emby.Server.Implementations/HttpServer/HttpListenerHost.cs index 6b4f2bced..033ffd4c0 100644 --- a/Emby.Server.Implementations/HttpServer/HttpListenerHost.cs +++ b/Emby.Server.Implementations/HttpServer/HttpListenerHost.cs @@ -116,8 +116,7 @@ namespace Emby.Server.Implementations.HttpServer public Type GetServiceTypeByRequest(Type requestType) { - Type serviceType; - ServiceOperationsMap.TryGetValue(requestType, out serviceType); + ServiceOperationsMap.TryGetValue(requestType, out var serviceType); return serviceType; } @@ -199,13 +198,13 @@ namespace Emby.Server.Implementations.HttpServer { switch (ex) { - case ArgumentException _: return 400; - case SecurityException _: return 401; + case ArgumentException _: return 400; + case SecurityException _: return 401; case DirectoryNotFoundException _: case FileNotFoundException _: - case ResourceNotFoundException _: return 404; + case ResourceNotFoundException _: return 404; case RemoteServiceUnavailableException _: return 502; - default: return 500; + default: return 500; } } @@ -673,8 +672,7 @@ namespace Emby.Server.Implementations.HttpServer return null; } - string contentType; - var restPath = ServiceHandler.FindMatchingRestPath(httpReq.HttpMethod, pathInfo, out contentType); + var restPath = ServiceHandler.FindMatchingRestPath(httpReq.HttpMethod, pathInfo, out string contentType); if (restPath != null) { diff --git a/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs b/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs index bacf5556f..8b60d61d4 100644 --- a/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs +++ b/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs @@ -1,7 +1,3 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Net; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.Globalization; @@ -13,8 +9,12 @@ using System.Text; using System.Threading.Tasks; using System.Xml; using Emby.Server.Implementations.Services; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; using IRequest = MediaBrowser.Model.Services.IRequest; using MimeTypes = MediaBrowser.Model.Net.MimeTypes; @@ -96,8 +96,7 @@ namespace Emby.Server.Implementations.HttpServer responseHeaders = new Dictionary<string, string>(); } - string expires; - if (addCachePrevention && !responseHeaders.TryGetValue("Expires", out expires)) + if (addCachePrevention && !responseHeaders.TryGetValue("Expires", out string expires)) { responseHeaders["Expires"] = "-1"; } @@ -115,7 +114,8 @@ namespace Emby.Server.Implementations.HttpServer string compressionType = null; bool isHeadRequest = false; - if (requestContext != null) { + if (requestContext != null) + { compressionType = GetCompressionType(requestContext, content, contentType); isHeadRequest = string.Equals(requestContext.Verb, "head", StringComparison.OrdinalIgnoreCase); } @@ -142,8 +142,7 @@ namespace Emby.Server.Implementations.HttpServer responseHeaders = new Dictionary<string, string>(); } - string expires; - if (addCachePrevention && !responseHeaders.TryGetValue("Expires", out expires)) + if (addCachePrevention && !responseHeaders.TryGetValue("Expires", out string expires)) { responseHeaders["Expires"] = "-1"; } @@ -187,8 +186,7 @@ namespace Emby.Server.Implementations.HttpServer responseHeaders = new Dictionary<string, string>(); } - string expires; - if (addCachePrevention && !responseHeaders.TryGetValue("Expires", out expires)) + if (addCachePrevention && !responseHeaders.TryGetValue("Expires", out string expires)) { responseHeaders["Expires"] = "-1"; } @@ -716,7 +714,7 @@ namespace Emby.Server.Implementations.HttpServer { ifNoneMatchHeader = (ifNoneMatchHeader ?? string.Empty).Trim('\"'); - if (Guid.TryParse(ifNoneMatchHeader, out Guid ifNoneMatch) + if (Guid.TryParse(ifNoneMatchHeader, out var ifNoneMatch) && cacheKey.Equals(ifNoneMatch)) { return true; diff --git a/Emby.Server.Implementations/HttpServer/IHttpListener.cs b/Emby.Server.Implementations/HttpServer/IHttpListener.cs index d50d7df6b..835091361 100644 --- a/Emby.Server.Implementations/HttpServer/IHttpListener.cs +++ b/Emby.Server.Implementations/HttpServer/IHttpListener.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Controller.Net; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.Services; using Emby.Server.Implementations.Net; +using MediaBrowser.Controller.Net; +using MediaBrowser.Model.Services; namespace Emby.Server.Implementations.HttpServer { diff --git a/Emby.Server.Implementations/HttpServer/LoggerUtils.cs b/Emby.Server.Implementations/HttpServer/LoggerUtils.cs index 5b7bbe79c..d22d9db26 100644 --- a/Emby.Server.Implementations/HttpServer/LoggerUtils.cs +++ b/Emby.Server.Implementations/HttpServer/LoggerUtils.cs @@ -1,7 +1,7 @@ -using Microsoft.Extensions.Logging; using System; using System.Globalization; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.HttpServer { diff --git a/Emby.Server.Implementations/HttpServer/RangeRequestWriter.cs b/Emby.Server.Implementations/HttpServer/RangeRequestWriter.cs index ef47a7ca9..891a76ec2 100644 --- a/Emby.Server.Implementations/HttpServer/RangeRequestWriter.cs +++ b/Emby.Server.Implementations/HttpServer/RangeRequestWriter.cs @@ -1,4 +1,3 @@ -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Globalization; @@ -7,6 +6,7 @@ using System.Net; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.HttpServer { diff --git a/Emby.Server.Implementations/HttpServer/ResponseFilter.cs b/Emby.Server.Implementations/HttpServer/ResponseFilter.cs index afaee59f3..da2bf983a 100644 --- a/Emby.Server.Implementations/HttpServer/ResponseFilter.cs +++ b/Emby.Server.Implementations/HttpServer/ResponseFilter.cs @@ -1,8 +1,8 @@ -using Microsoft.Extensions.Logging; using System; using System.Globalization; using System.Text; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.HttpServer { diff --git a/Emby.Server.Implementations/HttpServer/Security/AuthService.cs b/Emby.Server.Implementations/HttpServer/Security/AuthService.cs index fb5bfa601..499a334fc 100644 --- a/Emby.Server.Implementations/HttpServer/Security/AuthService.cs +++ b/Emby.Server.Implementations/HttpServer/Security/AuthService.cs @@ -1,15 +1,13 @@ +using System; +using System.Linq; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Connect; -using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Security; using MediaBrowser.Controller.Session; -using System; -using System.Linq; using MediaBrowser.Model.Services; -using MediaBrowser.Common.Net; namespace Emby.Server.Implementations.HttpServer.Security { @@ -209,8 +207,7 @@ namespace Emby.Server.Implementations.HttpServer.Security private static AuthenticationInfo GetTokenInfo(IRequest request) { - object info; - request.Items.TryGetValue("OriginalAuthenticationInfo", out info); + request.Items.TryGetValue("OriginalAuthenticationInfo", out var info); return info as AuthenticationInfo; } diff --git a/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs b/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs index f561c3d60..cab41e65b 100644 --- a/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs +++ b/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs @@ -1,12 +1,10 @@ -using MediaBrowser.Controller.Connect; -using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Security; using System; using System.Collections.Generic; -using MediaBrowser.Model.Services; using System.Linq; -using System.Threading; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Security; +using MediaBrowser.Model.Services; namespace Emby.Server.Implementations.HttpServer.Security { @@ -28,8 +26,7 @@ namespace Emby.Server.Implementations.HttpServer.Security public AuthorizationInfo GetAuthorizationInfo(IRequest requestContext) { - object cached; - if (requestContext.Items.TryGetValue("AuthorizationInfo", out cached)) + if (requestContext.Items.TryGetValue("AuthorizationInfo", out var cached)) { return (AuthorizationInfo)cached; } diff --git a/Emby.Server.Implementations/HttpServer/Security/SessionContext.cs b/Emby.Server.Implementations/HttpServer/Security/SessionContext.cs index a919ce008..81e11d312 100644 --- a/Emby.Server.Implementations/HttpServer/Security/SessionContext.cs +++ b/Emby.Server.Implementations/HttpServer/Security/SessionContext.cs @@ -1,11 +1,10 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Security; using MediaBrowser.Controller.Session; -using System.Threading.Tasks; using MediaBrowser.Model.Services; -using System; namespace Emby.Server.Implementations.HttpServer.Security { @@ -32,8 +31,7 @@ namespace Emby.Server.Implementations.HttpServer.Security private AuthenticationInfo GetTokenInfo(IRequest request) { - object info; - request.Items.TryGetValue("OriginalAuthenticationInfo", out info); + request.Items.TryGetValue("OriginalAuthenticationInfo", out var info); return info as AuthenticationInfo; } diff --git a/Emby.Server.Implementations/HttpServer/StreamWriter.cs b/Emby.Server.Implementations/HttpServer/StreamWriter.cs index df0d74685..3269d44cf 100644 --- a/Emby.Server.Implementations/HttpServer/StreamWriter.cs +++ b/Emby.Server.Implementations/HttpServer/StreamWriter.cs @@ -1,12 +1,11 @@ -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Threading; using System.Threading.Tasks; - using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.HttpServer { diff --git a/Emby.Server.Implementations/HttpServer/WebSocketConnection.cs b/Emby.Server.Implementations/HttpServer/WebSocketConnection.cs index 5426114f6..b9146d007 100644 --- a/Emby.Server.Implementations/HttpServer/WebSocketConnection.cs +++ b/Emby.Server.Implementations/HttpServer/WebSocketConnection.cs @@ -1,15 +1,15 @@ -using System.Text; -using MediaBrowser.Controller.Net; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Serialization; using System; +using System.Net.WebSockets; +using System.Text; using System.Threading; using System.Threading.Tasks; +using Emby.Server.Implementations.Net; +using MediaBrowser.Controller.Net; +using MediaBrowser.Model.Net; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; using MediaBrowser.Model.Text; -using System.Net.WebSockets; -using Emby.Server.Implementations.Net; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.HttpServer { @@ -77,7 +77,7 @@ namespace Emby.Server.Implementations.HttpServer /// <param name="remoteEndPoint">The remote end point.</param> /// <param name="jsonSerializer">The json serializer.</param> /// <param name="logger">The logger.</param> - /// <exception cref="System.ArgumentNullException">socket</exception> + /// <exception cref="ArgumentNullException">socket</exception> public WebSocketConnection(IWebSocket socket, string remoteEndPoint, IJsonSerializer jsonSerializer, ILogger logger, ITextEncoding textEncoding) { if (socket == null) @@ -215,7 +215,7 @@ namespace Emby.Server.Implementations.HttpServer /// <param name="message">The message.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">message</exception> + /// <exception cref="ArgumentNullException">message</exception> public Task SendAsync<T>(WebSocketMessage<T> message, CancellationToken cancellationToken) { if (message == null) diff --git a/Emby.Server.Implementations/IO/ExtendedFileSystemInfo.cs b/Emby.Server.Implementations/IO/ExtendedFileSystemInfo.cs index 6b08c26c9..48b34a3a0 100644 --- a/Emby.Server.Implementations/IO/ExtendedFileSystemInfo.cs +++ b/Emby.Server.Implementations/IO/ExtendedFileSystemInfo.cs @@ -1,7 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; - namespace Emby.Server.Implementations.IO { public class ExtendedFileSystemInfo diff --git a/Emby.Server.Implementations/IO/FileRefresher.cs b/Emby.Server.Implementations/IO/FileRefresher.cs index c2def33db..6bee178ea 100644 --- a/Emby.Server.Implementations/IO/FileRefresher.cs +++ b/Emby.Server.Implementations/IO/FileRefresher.cs @@ -1,16 +1,16 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; -using MediaBrowser.Model.IO; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Extensions; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.IO; using MediaBrowser.Model.System; using MediaBrowser.Model.Tasks; using MediaBrowser.Model.Threading; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.IO { diff --git a/Emby.Server.Implementations/IO/IsoManager.cs b/Emby.Server.Implementations/IO/IsoManager.cs index e0cf32868..f0a15097c 100644 --- a/Emby.Server.Implementations/IO/IsoManager.cs +++ b/Emby.Server.Implementations/IO/IsoManager.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Threading; @@ -23,8 +23,8 @@ namespace Emby.Server.Implementations.IO /// <param name="isoPath">The iso path.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>IsoMount.</returns> - /// <exception cref="System.ArgumentNullException">isoPath</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">isoPath</exception> + /// <exception cref="ArgumentException"></exception> public Task<IIsoMount> Mount(string isoPath, CancellationToken cancellationToken) { if (string.IsNullOrEmpty(isoPath)) diff --git a/Emby.Server.Implementations/IO/LibraryMonitor.cs b/Emby.Server.Implementations/IO/LibraryMonitor.cs index 9a224bd0e..6a3204011 100644 --- a/Emby.Server.Implementations/IO/LibraryMonitor.cs +++ b/Emby.Server.Implementations/IO/LibraryMonitor.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.IO; @@ -9,10 +9,10 @@ using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Plugins; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.System; using MediaBrowser.Model.Tasks; using MediaBrowser.Model.Threading; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.IO { @@ -103,8 +103,7 @@ namespace Emby.Server.Implementations.IO // But if we make this delay too high, we risk missing legitimate changes, such as user adding a new file, or hand-editing metadata await Task.Delay(45000).ConfigureAwait(false); - string val; - _tempIgnoredPaths.TryRemove(path, out val); + _tempIgnoredPaths.TryRemove(path, out var val); if (refreshPath) { @@ -263,7 +262,7 @@ namespace Emby.Server.Implementations.IO /// <param name="lst">The LST.</param> /// <param name="path">The path.</param> /// <returns><c>true</c> if [contains parent folder] [the specified LST]; otherwise, <c>false</c>.</returns> - /// <exception cref="System.ArgumentNullException">path</exception> + /// <exception cref="ArgumentNullException">path</exception> private static bool ContainsParentFolder(IEnumerable<string> lst, string path) { if (string.IsNullOrEmpty(path)) @@ -365,9 +364,7 @@ namespace Emby.Server.Implementations.IO /// <param name="path">The path.</param> private void StopWatchingPath(string path) { - FileSystemWatcher watcher; - - if (_fileSystemWatchers.TryGetValue(path, out watcher)) + if (_fileSystemWatchers.TryGetValue(path, out var watcher)) { DisposeWatcher(watcher, true); } @@ -424,9 +421,7 @@ namespace Emby.Server.Implementations.IO /// <param name="watcher">The watcher.</param> private void RemoveWatcherFromList(FileSystemWatcher watcher) { - FileSystemWatcher removed; - - _fileSystemWatchers.TryRemove(watcher.Path, out removed); + _fileSystemWatchers.TryRemove(watcher.Path, out var removed); } /// <summary> diff --git a/Emby.Server.Implementations/IO/ManagedFileSystem.cs b/Emby.Server.Implementations/IO/ManagedFileSystem.cs index bee96c785..ae1470190 100644 --- a/Emby.Server.Implementations/IO/ManagedFileSystem.cs +++ b/Emby.Server.Implementations/IO/ManagedFileSystem.cs @@ -5,8 +5,8 @@ using System.IO; using System.Linq; using System.Text; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.System; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.IO { @@ -101,7 +101,7 @@ namespace Emby.Server.Implementations.IO /// </summary> /// <param name="filename">The filename.</param> /// <returns><c>true</c> if the specified filename is shortcut; otherwise, <c>false</c>.</returns> - /// <exception cref="System.ArgumentNullException">filename</exception> + /// <exception cref="ArgumentNullException">filename</exception> public virtual bool IsShortcut(string filename) { if (string.IsNullOrEmpty(filename)) @@ -118,7 +118,7 @@ namespace Emby.Server.Implementations.IO /// </summary> /// <param name="filename">The filename.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException">filename</exception> + /// <exception cref="ArgumentNullException">filename</exception> public virtual string ResolveShortcut(string filename) { if (string.IsNullOrEmpty(filename)) @@ -185,7 +185,7 @@ namespace Emby.Server.Implementations.IO /// </summary> /// <param name="shortcutPath">The shortcut path.</param> /// <param name="target">The target.</param> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// shortcutPath /// or /// target @@ -344,7 +344,7 @@ namespace Emby.Server.Implementations.IO /// </summary> /// <param name="filename">The filename.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException">filename</exception> + /// <exception cref="ArgumentNullException">filename</exception> public string GetValidFilename(string filename) { var builder = new StringBuilder(filename); @@ -526,7 +526,7 @@ namespace Emby.Server.Implementations.IO } else { - FileAttributes attributes = File.GetAttributes(path); + var attributes = File.GetAttributes(path); attributes = RemoveAttribute(attributes, FileAttributes.Hidden); File.SetAttributes(path, attributes); } @@ -550,7 +550,7 @@ namespace Emby.Server.Implementations.IO } else { - FileAttributes attributes = File.GetAttributes(path); + var attributes = File.GetAttributes(path); attributes = RemoveAttribute(attributes, FileAttributes.ReadOnly); File.SetAttributes(path, attributes); } diff --git a/Emby.Server.Implementations/IO/MbLinkShortcutHandler.cs b/Emby.Server.Implementations/IO/MbLinkShortcutHandler.cs index 8ac662f78..a306f94b3 100644 --- a/Emby.Server.Implementations/IO/MbLinkShortcutHandler.cs +++ b/Emby.Server.Implementations/IO/MbLinkShortcutHandler.cs @@ -1,7 +1,5 @@ -using System; +using System; using System.IO; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; namespace Emby.Server.Implementations.IO diff --git a/Emby.Server.Implementations/IO/StreamHelper.cs b/Emby.Server.Implementations/IO/StreamHelper.cs index e91817611..09cf4d4a3 100644 --- a/Emby.Server.Implementations/IO/StreamHelper.cs +++ b/Emby.Server.Implementations/IO/StreamHelper.cs @@ -1,6 +1,6 @@ -using System.IO; -using System.Threading; using System; +using System.IO; +using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.IO; diff --git a/Emby.Server.Implementations/IO/ThrottledStream.cs b/Emby.Server.Implementations/IO/ThrottledStream.cs index 3635ee1db..81e8abc98 100644 --- a/Emby.Server.Implementations/IO/ThrottledStream.cs +++ b/Emby.Server.Implementations/IO/ThrottledStream.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Threading; using System.Threading.Tasks; @@ -264,7 +264,7 @@ namespace Emby.Server.Implementations.IO { if (!ThrottleCheck(bufferSizeInBytes)) { - return ; + return; } _byteCount += bufferSizeInBytes; @@ -352,4 +352,4 @@ namespace Emby.Server.Implementations.IO } #endregion } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs b/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs index 964e38962..b99b98157 100644 --- a/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs +++ b/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs @@ -1,22 +1,18 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Playlists; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Model.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Drawing; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.Configuration; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Playlists; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Net; namespace Emby.Server.Implementations.Images diff --git a/Emby.Server.Implementations/Library/CoreResolutionIgnoreRule.cs b/Emby.Server.Implementations/Library/CoreResolutionIgnoreRule.cs index 7fb979d66..c0a126b84 100644 --- a/Emby.Server.Implementations/Library/CoreResolutionIgnoreRule.cs +++ b/Emby.Server.Implementations/Library/CoreResolutionIgnoreRule.cs @@ -1,13 +1,10 @@ -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Resolvers; using System; using System.Collections.Generic; -using System.IO; using System.Linq; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Resolvers; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; using Microsoft.Extensions.Logging; diff --git a/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs b/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs index 775b5d283..4013ac0c8 100644 --- a/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs +++ b/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs @@ -1,5 +1,4 @@ -using System; -using System.Collections.Generic; +using System; using System.Text; using System.Threading.Tasks; using MediaBrowser.Controller.Authentication; diff --git a/Emby.Server.Implementations/Library/ExclusiveLiveStream.cs b/Emby.Server.Implementations/Library/ExclusiveLiveStream.cs index 186ec63da..45a33a296 100644 --- a/Emby.Server.Implementations/Library/ExclusiveLiveStream.cs +++ b/Emby.Server.Implementations/Library/ExclusiveLiveStream.cs @@ -1,8 +1,8 @@ -using System; +using System; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.Dto; using MediaBrowser.Controller.Library; +using MediaBrowser.Model.Dto; namespace Emby.Server.Implementations.Library { diff --git a/Emby.Server.Implementations/Library/LibraryManager.cs b/Emby.Server.Implementations/Library/LibraryManager.cs index d901381cd..073005a1e 100644 --- a/Emby.Server.Implementations/Library/LibraryManager.cs +++ b/Emby.Server.Implementations/Library/LibraryManager.cs @@ -1,52 +1,48 @@ +using System; +using System.Collections.Concurrent; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Net; +using System.Threading; +using System.Threading.Tasks; +using Emby.Naming.Audio; +using Emby.Naming.Common; +using Emby.Naming.TV; +using Emby.Naming.Video; +using Emby.Server.Implementations.Library.Resolvers; +using Emby.Server.Implementations.Library.Validators; +using Emby.Server.Implementations.Playlists; +using Emby.Server.Implementations.ScheduledTasks; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Progress; +using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.IO; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.Resolvers; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Querying; -using Emby.Naming.Audio; -using Emby.Naming.Common; -using Emby.Naming.TV; -using Emby.Naming.Video; -using System; -using System.Collections.Concurrent; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Net; -using System.Threading; -using System.Threading.Tasks; -using Emby.Server.Implementations.Library.Resolvers; -using Emby.Server.Implementations.Library.Validators; -using Emby.Server.Implementations.ScheduledTasks; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Channels; -using MediaBrowser.Model.Channels; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Library; using MediaBrowser.Model.Net; -using SortOrder = MediaBrowser.Model.Entities.SortOrder; -using VideoResolver = Emby.Naming.Video.VideoResolver; -using MediaBrowser.Common.Configuration; - -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Tasks; -using Emby.Server.Implementations.Playlists; using MediaBrowser.Providers.MediaInfo; -using MediaBrowser.Controller; +using Microsoft.Extensions.Logging; +using SortOrder = MediaBrowser.Model.Entities.SortOrder; +using VideoResolver = Emby.Naming.Video.VideoResolver; namespace Emby.Server.Implementations.Library { @@ -391,7 +387,7 @@ namespace Emby.Server.Implementations.Library { try { - _logger.LogDebug("Deleting path {path}", fileSystemInfo.FullName); + _logger.LogDebug("Deleting path {path}", fileSystemInfo.FullName); if (fileSystemInfo.IsDirectory) { _fileSystem.DeleteDirectory(fileSystemInfo.FullName, true); @@ -436,8 +432,7 @@ namespace Emby.Server.Implementations.Library ItemRepository.DeleteItem(child.Id, CancellationToken.None); } - BaseItem removed; - _libraryItemsCache.TryRemove(item.Id, out removed); + _libraryItemsCache.TryRemove(item.Id, out BaseItem removed); ReportItemRemoved(item, parent); } @@ -715,14 +710,14 @@ namespace Emby.Server.Implementations.Library /// Creates the root media folder /// </summary> /// <returns>AggregateFolder.</returns> - /// <exception cref="System.InvalidOperationException">Cannot create the root folder until plugins have loaded</exception> + /// <exception cref="InvalidOperationException">Cannot create the root folder until plugins have loaded</exception> public AggregateFolder CreateRootFolder() { var rootFolderPath = ConfigurationManager.ApplicationPaths.RootFolderPath; _fileSystem.CreateDirectory(rootFolderPath); - var rootFolder = GetItemById(GetNewItemId(rootFolderPath, typeof(AggregateFolder))) as AggregateFolder ?? ((Folder)ResolvePath(_fileSystem.GetDirectoryInfo(rootFolderPath))).DeepCopy<Folder,AggregateFolder>(); + var rootFolder = GetItemById(GetNewItemId(rootFolderPath, typeof(AggregateFolder))) as AggregateFolder ?? ((Folder)ResolvePath(_fileSystem.GetDirectoryInfo(rootFolderPath))).DeepCopy<Folder, AggregateFolder>(); // In case program data folder was moved if (!string.Equals(rootFolder.Path, rootFolderPath, StringComparison.Ordinal)) @@ -791,7 +786,7 @@ namespace Emby.Server.Implementations.Library if (tmpItem == null) { - tmpItem = ((Folder)ResolvePath(_fileSystem.GetDirectoryInfo(userRootPath))).DeepCopy<Folder,UserRootFolder>(); + tmpItem = ((Folder)ResolvePath(_fileSystem.GetDirectoryInfo(userRootPath))).DeepCopy<Folder, UserRootFolder>(); } // In case program data folder was moved @@ -909,12 +904,12 @@ namespace Emby.Server.Implementations.Library /// </summary> /// <param name="value">The value.</param> /// <returns>Task{Year}.</returns> - /// <exception cref="System.ArgumentOutOfRangeException"></exception> + /// <exception cref="ArgumentOutOfRangeException"></exception> public Year GetYear(int value) { if (value <= 0) { - throw new ArgumentOutOfRangeException(nameof(value),"Years less than or equal to 0 are invalid."); + throw new ArgumentOutOfRangeException(nameof(value), "Years less than or equal to 0 are invalid."); } var name = value.ToString(CultureInfo.InvariantCulture); @@ -1237,7 +1232,7 @@ namespace Emby.Server.Implementations.Library /// </summary> /// <param name="id">The id.</param> /// <returns>BaseItem.</returns> - /// <exception cref="System.ArgumentNullException">id</exception> + /// <exception cref="ArgumentNullException">id</exception> public BaseItem GetItemById(Guid id) { if (id.Equals(Guid.Empty)) @@ -1245,9 +1240,7 @@ namespace Emby.Server.Implementations.Library throw new ArgumentNullException(nameof(id)); } - BaseItem item; - - if (LibraryItemsCache.TryGetValue(id, out item)) + if (LibraryItemsCache.TryGetValue(id, out BaseItem item)) { return item; } @@ -2079,7 +2072,7 @@ namespace Emby.Server.Implementations.Library public string GetConfiguredContentType(BaseItem item, bool inheritConfiguredPath) { - ICollectionFolder collectionFolder = item as ICollectionFolder; + var collectionFolder = item as ICollectionFolder; if (collectionFolder != null) { return collectionFolder.CollectionType; @@ -2375,7 +2368,7 @@ namespace Emby.Server.Implementations.Library string videoPath, string[] files) { - new SubtitleResolver(BaseItem.LocalizationManager, _fileSystem).AddExternalSubtitleStreams(streams, videoPath, streams.Count, files); + new SubtitleResolver(BaseItem.LocalizationManager, _fileSystem).AddExternalSubtitleStreams(streams, videoPath, streams.Count, files); } public bool IsVideoFile(string path, LibraryOptions libraryOptions) @@ -2421,11 +2414,11 @@ namespace Emby.Server.Implementations.Library var episodeInfo = episode.IsFileProtocol ? resolver.Resolve(episode.Path, isFolder, null, null, isAbsoluteNaming) : - new Emby.Naming.TV.EpisodeInfo(); + new Naming.TV.EpisodeInfo(); if (episodeInfo == null) { - episodeInfo = new Emby.Naming.TV.EpisodeInfo(); + episodeInfo = new Naming.TV.EpisodeInfo(); } var changed = false; @@ -2589,7 +2582,7 @@ namespace Emby.Server.Implementations.Library video.ParentId = Guid.Empty; video.OwnerId = owner.Id; video.ExtraType = ExtraType.Trailer; - video.TrailerTypes = new [] { TrailerType.LocalTrailer }; + video.TrailerTypes = new[] { TrailerType.LocalTrailer }; return video; diff --git a/Emby.Server.Implementations/Library/LiveStreamHelper.cs b/Emby.Server.Implementations/Library/LiveStreamHelper.cs index d0b3152ba..c3082a78a 100644 --- a/Emby.Server.Implementations/Library/LiveStreamHelper.cs +++ b/Emby.Server.Implementations/Library/LiveStreamHelper.cs @@ -1,19 +1,19 @@ -using System; +using System; +using System.Collections.Generic; using System.Globalization; +using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.MediaInfo; -using System.Collections.Generic; using MediaBrowser.Model.Serialization; -using MediaBrowser.Common.Configuration; -using System.IO; -using MediaBrowser.Common.Extensions; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library { diff --git a/Emby.Server.Implementations/Library/MediaSourceManager.cs b/Emby.Server.Implementations/Library/MediaSourceManager.cs index 3578d8763..e0ecb2bce 100644 --- a/Emby.Server.Implementations/Library/MediaSourceManager.cs +++ b/Emby.Server.Implementations/Library/MediaSourceManager.cs @@ -1,28 +1,27 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Threading; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Globalization; -using System.IO; -using System.Globalization; -using MediaBrowser.Common.Configuration; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library { @@ -128,7 +127,7 @@ namespace Emby.Server.Implementations.Library if (allowMediaProbe && mediaSources[0].Type != MediaSourceType.Placeholder && !mediaSources[0].MediaStreams.Any(i => i.Type == MediaStreamType.Audio || i.Type == MediaStreamType.Video)) { - await item.RefreshMetadata(new MediaBrowser.Controller.Providers.MetadataRefreshOptions(new DirectoryService(_logger, _fileSystem)) + await item.RefreshMetadata(new MetadataRefreshOptions(new DirectoryService(_logger, _fileSystem)) { EnableRemoteContentProbe = true, MetadataRefreshMode = MediaBrowser.Controller.Providers.MetadataRefreshMode.FullRefresh @@ -778,8 +777,7 @@ namespace Emby.Server.Implementations.Library try { - ILiveStream info; - if (_openStreams.TryGetValue(id, out info)) + if (_openStreams.TryGetValue(id, out ILiveStream info)) { return info; } @@ -811,9 +809,7 @@ namespace Emby.Server.Implementations.Library try { - ILiveStream liveStream; - - if (_openStreams.TryGetValue(id, out liveStream)) + if (_openStreams.TryGetValue(id, out ILiveStream liveStream)) { liveStream.ConsumerCount--; diff --git a/Emby.Server.Implementations/Library/MediaStreamSelector.cs b/Emby.Server.Implementations/Library/MediaStreamSelector.cs index 5d4c5a452..0a6c8845d 100644 --- a/Emby.Server.Implementations/Library/MediaStreamSelector.cs +++ b/Emby.Server.Implementations/Library/MediaStreamSelector.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; namespace Emby.Server.Implementations.Library { @@ -171,7 +171,7 @@ namespace Emby.Server.Implementations.Library private static int FindIndex(string[] list, string value) { - for (var i=0; i< list.Length; i++) + for (var i = 0; i < list.Length; i++) { if (string.Equals(list[i], value, StringComparison.OrdinalIgnoreCase)) { diff --git a/Emby.Server.Implementations/Library/MusicManager.cs b/Emby.Server.Implementations/Library/MusicManager.cs index 1319ee6f4..10602fea7 100644 --- a/Emby.Server.Implementations/Library/MusicManager.cs +++ b/Emby.Server.Implementations/Library/MusicManager.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Playlists; using System; using System.Collections.Generic; using System.Linq; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Playlists; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Querying; @@ -89,7 +89,7 @@ namespace Emby.Server.Implementations.Library Limit = 200, - OrderBy = new [] { new ValueTuple<string, SortOrder>(ItemSortBy.Random, SortOrder.Ascending) }, + OrderBy = new[] { new ValueTuple<string, SortOrder>(ItemSortBy.Random, SortOrder.Ascending) }, DtoOptions = dtoOptions diff --git a/Emby.Server.Implementations/Library/PathExtensions.cs b/Emby.Server.Implementations/Library/PathExtensions.cs index 2d3019d17..d3a81f622 100644 --- a/Emby.Server.Implementations/Library/PathExtensions.cs +++ b/Emby.Server.Implementations/Library/PathExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Text.RegularExpressions; namespace Emby.Server.Implementations.Library @@ -11,7 +11,7 @@ namespace Emby.Server.Implementations.Library /// <param name="str">The STR.</param> /// <param name="attrib">The attrib.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException">attrib</exception> + /// <exception cref="ArgumentNullException">attrib</exception> public static string GetAttributeValue(this string str, string attrib) { if (string.IsNullOrEmpty(str)) diff --git a/Emby.Server.Implementations/Library/ResolverHelper.cs b/Emby.Server.Implementations/Library/ResolverHelper.cs index 027d82c58..96d1bff92 100644 --- a/Emby.Server.Implementations/Library/ResolverHelper.cs +++ b/Emby.Server.Implementations/Library/ResolverHelper.cs @@ -1,10 +1,9 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; using System; using System.IO; using System.Linq; -using System.Text.RegularExpressions; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; namespace Emby.Server.Implementations.Library @@ -22,7 +21,7 @@ namespace Emby.Server.Implementations.Library /// <param name="fileSystem">The file system.</param> /// <param name="libraryManager">The library manager.</param> /// <param name="directoryService">The directory service.</param> - /// <exception cref="System.ArgumentException">Item must have a path</exception> + /// <exception cref="ArgumentException">Item must have a path</exception> public static void SetInitialItemValues(BaseItem item, Folder parent, IFileSystem fileSystem, ILibraryManager libraryManager, IDirectoryService directoryService) { // This version of the below method has no ItemResolveArgs, so we have to require the path already being set @@ -104,7 +103,7 @@ namespace Emby.Server.Implementations.Library /// <returns>System.String.</returns> private static string GetDisplayName(string path, bool isDirectory) { - return isDirectory ? Path.GetFileName(path) : Path.GetFileNameWithoutExtension(path); + return isDirectory ? Path.GetFileName(path) : Path.GetFileNameWithoutExtension(path); } /// <summary> diff --git a/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs index bac39122b..baa665fce 100644 --- a/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs @@ -1,16 +1,14 @@ -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Resolvers; -using MediaBrowser.Model.Entities; using System; -using MediaBrowser.Controller.Entities; +using System.Collections.Generic; using System.IO; using System.Linq; +using Emby.Naming.AudioBook; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; -using System.Collections.Generic; +using MediaBrowser.Controller.Resolvers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; -using Emby.Naming.Video; -using Emby.Naming.AudioBook; namespace Emby.Server.Implementations.Library.Resolvers.Audio { diff --git a/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs index da5fe48cd..3ce1da81a 100644 --- a/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs @@ -1,18 +1,14 @@ -using MediaBrowser.Controller.Entities.Audio; +using System; +using System.Collections.Generic; +using Emby.Naming.Audio; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.Resolvers; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using Emby.Naming.Audio; -using System; -using System.Collections.Generic; -using System.IO; - using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.Configuration; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Resolvers.Audio { diff --git a/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs index b3a5c27c8..74e9b8304 100644 --- a/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs @@ -1,15 +1,12 @@ -using MediaBrowser.Controller.Entities.Audio; +using System; +using System.Linq; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Resolvers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using System; -using System.IO; -using System.Linq; - using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.IO; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Resolvers.Audio { diff --git a/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs b/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs index b9ac2056f..d992f8d03 100644 --- a/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/BaseVideoResolver.cs @@ -1,13 +1,12 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Entities; -using Emby.Naming.Video; using System; using System.IO; using System.Linq; +using Emby.Naming.Video; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Resolvers { @@ -50,7 +49,7 @@ namespace Emby.Server.Implementations.Library.Resolvers var namingOptions = ((LibraryManager)LibraryManager).GetNamingOptions(); // If the path is a file check for a matching extensions - var parser = new Emby.Naming.Video.VideoResolver(namingOptions); + var parser = new VideoResolver(namingOptions); if (args.IsDirectory) { diff --git a/Emby.Server.Implementations/Library/Resolvers/Books/BookResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Books/BookResolver.cs index d7f80b3f4..f22554ee5 100644 --- a/Emby.Server.Implementations/Library/Resolvers/Books/BookResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/Books/BookResolver.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Linq; using MediaBrowser.Controller.Entities; diff --git a/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs b/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs index 47e7f7344..e48b6c967 100644 --- a/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Resolvers; diff --git a/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs b/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs index 529916619..a6db40714 100644 --- a/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Resolvers; diff --git a/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs index d3ab4dd37..922bd4bbb 100644 --- a/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs @@ -1,9 +1,9 @@ +using System; +using System.IO; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Entities; -using System; -using System.IO; using MediaBrowser.Model.Extensions; namespace Emby.Server.Implementations.Library.Resolvers.Movies diff --git a/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs index 0a45317a4..e48213dbb 100644 --- a/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs @@ -1,3 +1,9 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using Emby.Naming.Video; +using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; @@ -6,15 +12,7 @@ using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.Resolvers; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; -using Emby.Naming.Video; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Resolvers.Movies { diff --git a/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs b/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs index a073e0bd5..82779f8d3 100644 --- a/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs @@ -1,11 +1,9 @@ -using MediaBrowser.Controller.Drawing; +using System; +using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Resolvers; using MediaBrowser.Model.Entities; -using System; -using System.IO; -using System.Linq; namespace Emby.Server.Implementations.Library.Resolvers { diff --git a/Emby.Server.Implementations/Library/Resolvers/PhotoResolver.cs b/Emby.Server.Implementations/Library/Resolvers/PhotoResolver.cs index e3cce5f4b..78c1c6629 100644 --- a/Emby.Server.Implementations/Library/Resolvers/PhotoResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/PhotoResolver.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Entities; using System; using System.IO; using System.Linq; +using MediaBrowser.Controller.Drawing; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; namespace Emby.Server.Implementations.Library.Resolvers diff --git a/Emby.Server.Implementations/Library/Resolvers/PlaylistResolver.cs b/Emby.Server.Implementations/Library/Resolvers/PlaylistResolver.cs index e66c9f087..c295894d3 100644 --- a/Emby.Server.Implementations/Library/Resolvers/PlaylistResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/PlaylistResolver.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Playlists; using System; using System.IO; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.Entities; using System.Linq; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Playlists; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; namespace Emby.Server.Implementations.Library.Resolvers { diff --git a/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs b/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs index 5cf5cd3ad..fa8c89e88 100644 --- a/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs @@ -1,12 +1,10 @@ -using MediaBrowser.Controller; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Resolvers; using System; using System.IO; using System.Linq; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Resolvers; using MediaBrowser.Model.IO; namespace Emby.Server.Implementations.Library.Resolvers diff --git a/Emby.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs b/Emby.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs index 4e5ac959c..fed0904d1 100644 --- a/Emby.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/TV/EpisodeResolver.cs @@ -1,7 +1,7 @@ -using System; +using System; +using System.Linq; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; -using System.Linq; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; diff --git a/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs b/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs index 4bfedf3c6..ce1386e91 100644 --- a/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs @@ -1,10 +1,9 @@ using System.Globalization; +using Emby.Naming.TV; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Globalization; -using Emby.Naming.Common; -using Emby.Naming.TV; using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Resolvers.TV @@ -64,7 +63,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.TV if (!season.IndexNumber.HasValue || !seasonParserResult.IsSeasonFolder) { - var resolver = new Emby.Naming.TV.EpisodeResolver(namingOptions); + var resolver = new Naming.TV.EpisodeResolver(namingOptions); var folderName = System.IO.Path.GetFileName(path); var testPath = "\\\\test\\" + folderName; diff --git a/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs b/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs index 7d2865f0d..16b5a2d3a 100644 --- a/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs @@ -1,20 +1,15 @@ +using System; +using System.Collections.Generic; +using System.IO; +using Emby.Naming.TV; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.Resolvers; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using Emby.Naming.Common; -using Emby.Naming.TV; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; - using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.Configuration; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Resolvers.TV { @@ -156,7 +151,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.TV var namingOptions = ((LibraryManager)libraryManager).GetNamingOptions(); - var episodeResolver = new Emby.Naming.TV.EpisodeResolver(namingOptions); + var episodeResolver = new Naming.TV.EpisodeResolver(namingOptions); bool? isNamed = null; bool? isOptimistic = null; @@ -184,7 +179,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.TV /// </summary> /// <param name="path">The path.</param> /// <returns><c>true</c> if [is place holder] [the specified path]; otherwise, <c>false</c>.</returns> - /// <exception cref="System.ArgumentNullException">path</exception> + /// <exception cref="ArgumentNullException">path</exception> private static bool IsVideoPlaceHolder(string path) { if (string.IsNullOrEmpty(path)) diff --git a/Emby.Server.Implementations/Library/Resolvers/VideoResolver.cs b/Emby.Server.Implementations/Library/Resolvers/VideoResolver.cs index 030ff88f7..60752a85d 100644 --- a/Emby.Server.Implementations/Library/Resolvers/VideoResolver.cs +++ b/Emby.Server.Implementations/Library/Resolvers/VideoResolver.cs @@ -1,12 +1,11 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Resolvers; using MediaBrowser.Model.IO; namespace Emby.Server.Implementations.Library.Resolvers { public class GenericVideoResolver<T> : BaseVideoResolver<T> - where T : Video, new () + where T : Video, new() { public GenericVideoResolver(ILibraryManager libraryManager, IFileSystem fileSystem) : base(libraryManager, fileSystem) { diff --git a/Emby.Server.Implementations/Library/SearchEngine.cs b/Emby.Server.Implementations/Library/SearchEngine.cs index bbb139439..71638b197 100644 --- a/Emby.Server.Implementations/Library/SearchEngine.cs +++ b/Emby.Server.Implementations/Library/SearchEngine.cs @@ -1,17 +1,15 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Search; using System; using System.Collections.Generic; using System.Linq; -using System.Threading.Tasks; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Search; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library { @@ -78,7 +76,7 @@ namespace Emby.Server.Implementations.Library /// <param name="query">The query.</param> /// <param name="user">The user.</param> /// <returns>IEnumerable{SearchHintResult}.</returns> - /// <exception cref="System.ArgumentNullException">searchTerm</exception> + /// <exception cref="ArgumentNullException">searchTerm</exception> private List<SearchHintInfo> GetSearchHints(SearchQuery query, User user) { var searchTerm = query.SearchTerm; diff --git a/Emby.Server.Implementations/Library/UserDataManager.cs b/Emby.Server.Implementations/Library/UserDataManager.cs index 3ca4b6b10..dfa1edaff 100644 --- a/Emby.Server.Implementations/Library/UserDataManager.cs +++ b/Emby.Server.Implementations/Library/UserDataManager.cs @@ -1,16 +1,16 @@ -using MediaBrowser.Controller.Configuration; +using System; +using System.Collections.Concurrent; +using System.Collections.Generic; +using System.Globalization; +using System.Threading; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using Microsoft.Extensions.Logging; -using System; -using System.Collections.Concurrent; -using System.Collections.Generic; -using System.Threading; -using MediaBrowser.Controller.Dto; -using System.Globalization; namespace Emby.Server.Implementations.Library { @@ -193,7 +193,7 @@ namespace Emby.Server.Implementations.Library /// </summary> /// <param name="data">The data.</param> /// <returns>DtoUserItemData.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> private UserItemDataDto GetUserItemDataDto(UserItemData data) { if (data == null) diff --git a/Emby.Server.Implementations/Library/UserManager.cs b/Emby.Server.Implementations/Library/UserManager.cs index c059cbc75..f06c71386 100644 --- a/Emby.Server.Implementations/Library/UserManager.cs +++ b/Emby.Server.Implementations/Library/UserManager.cs @@ -1,37 +1,37 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common.Events; using MediaBrowser.Common.Net; using MediaBrowser.Controller; +using MediaBrowser.Controller.Authentication; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; +using MediaBrowser.Controller.Plugins; using MediaBrowser.Controller.Providers; +using MediaBrowser.Controller.Security; +using MediaBrowser.Controller.Session; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Connect; +using MediaBrowser.Model.Cryptography; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Users; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Text; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.Cryptography; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Authentication; -using MediaBrowser.Controller.Security; -using MediaBrowser.Controller.Devices; -using MediaBrowser.Controller.Session; -using MediaBrowser.Controller.Plugins; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library { @@ -158,7 +158,7 @@ namespace Emby.Server.Implementations.Library /// </summary> /// <param name="id">The id.</param> /// <returns>User.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public User GetUserById(Guid id) { if (id.Equals(Guid.Empty)) @@ -619,8 +619,8 @@ namespace Emby.Server.Implementations.Library /// <param name="user">The user.</param> /// <param name="newName">The new name.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">user</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">user</exception> + /// <exception cref="ArgumentException"></exception> public async Task RenameUser(User user, string newName) { if (user == null) @@ -652,8 +652,8 @@ namespace Emby.Server.Implementations.Library /// Updates the user. /// </summary> /// <param name="user">The user.</param> - /// <exception cref="System.ArgumentNullException">user</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">user</exception> + /// <exception cref="ArgumentException"></exception> public void UpdateUser(User user) { if (user == null) @@ -683,8 +683,8 @@ namespace Emby.Server.Implementations.Library /// </summary> /// <param name="name">The name.</param> /// <returns>User.</returns> - /// <exception cref="System.ArgumentNullException">name</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">name</exception> + /// <exception cref="ArgumentException"></exception> public async Task<User> CreateUser(string name) { if (string.IsNullOrWhiteSpace(name)) @@ -731,8 +731,8 @@ namespace Emby.Server.Implementations.Library /// </summary> /// <param name="user">The user.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">user</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">user</exception> + /// <exception cref="ArgumentException"></exception> public async Task DeleteUser(User user) { if (user == null) diff --git a/Emby.Server.Implementations/Library/UserViewManager.cs b/Emby.Server.Implementations/Library/UserViewManager.cs index d616e1209..9fa859bde 100644 --- a/Emby.Server.Implementations/Library/UserViewManager.cs +++ b/Emby.Server.Implementations/Library/UserViewManager.cs @@ -1,21 +1,19 @@ -using MediaBrowser.Controller.Channels; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Model.Channels; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Globalization; using MediaBrowser.Model.Library; using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Extensions; namespace Emby.Server.Implementations.Library { @@ -242,7 +240,7 @@ namespace Emby.Server.Implementations.Library { return _channelManager.GetLatestChannelItemsInternal(new InternalItemsQuery(user) { - ChannelIds = new [] { parentId }, + ChannelIds = new[] { parentId }, IsPlayed = request.IsPlayed, StartIndex = request.StartIndex, Limit = request.Limit, diff --git a/Emby.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs index eee66c8ac..27261d449 100644 --- a/Emby.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs +++ b/Emby.Server.Implementations/Library/Validators/ArtistsPostScanTask.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/Library/Validators/ArtistsValidator.cs b/Emby.Server.Implementations/Library/Validators/ArtistsValidator.cs index 278c0cc7a..294348660 100644 --- a/Emby.Server.Implementations/Library/Validators/ArtistsValidator.cs +++ b/Emby.Server.Implementations/Library/Validators/ArtistsValidator.cs @@ -1,16 +1,12 @@ -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; -using System.Collections.Generic; -using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Extensions; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs index ea1f2e552..2b067951d 100644 --- a/Emby.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs +++ b/Emby.Server.Implementations/Library/Validators/GameGenresPostScanTask.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/Library/Validators/GameGenresValidator.cs b/Emby.Server.Implementations/Library/Validators/GameGenresValidator.cs index 070777475..f5ffa1e45 100644 --- a/Emby.Server.Implementations/Library/Validators/GameGenresValidator.cs +++ b/Emby.Server.Implementations/Library/Validators/GameGenresValidator.cs @@ -1,11 +1,9 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; -using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/Library/Validators/GenresPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/GenresPostScanTask.cs index 4f4133340..056807300 100644 --- a/Emby.Server.Implementations/Library/Validators/GenresPostScanTask.cs +++ b/Emby.Server.Implementations/Library/Validators/GenresPostScanTask.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Library; using System; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; using Microsoft.Extensions.Logging; diff --git a/Emby.Server.Implementations/Library/Validators/GenresValidator.cs b/Emby.Server.Implementations/Library/Validators/GenresValidator.cs index 775cde299..f8459c61f 100644 --- a/Emby.Server.Implementations/Library/Validators/GenresValidator.cs +++ b/Emby.Server.Implementations/Library/Validators/GenresValidator.cs @@ -1,12 +1,9 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; -using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs index edc6f3ad6..d7ab92d30 100644 --- a/Emby.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs +++ b/Emby.Server.Implementations/Library/Validators/MusicGenresPostScanTask.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/Library/Validators/MusicGenresValidator.cs b/Emby.Server.Implementations/Library/Validators/MusicGenresValidator.cs index b5ed1c0e6..710e5d043 100644 --- a/Emby.Server.Implementations/Library/Validators/MusicGenresValidator.cs +++ b/Emby.Server.Implementations/Library/Validators/MusicGenresValidator.cs @@ -1,12 +1,9 @@ -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; -using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/Library/Validators/PeopleValidator.cs b/Emby.Server.Implementations/Library/Validators/PeopleValidator.cs index 50c7cfbc6..0ea543ba0 100644 --- a/Emby.Server.Implementations/Library/Validators/PeopleValidator.cs +++ b/Emby.Server.Implementations/Library/Validators/PeopleValidator.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; using System; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/Library/Validators/StudiosPostScanTask.cs b/Emby.Server.Implementations/Library/Validators/StudiosPostScanTask.cs index 45747dda1..4aa5c7e72 100644 --- a/Emby.Server.Implementations/Library/Validators/StudiosPostScanTask.cs +++ b/Emby.Server.Implementations/Library/Validators/StudiosPostScanTask.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/Library/Validators/StudiosValidator.cs b/Emby.Server.Implementations/Library/Validators/StudiosValidator.cs index 1a5ebac54..da4645a11 100644 --- a/Emby.Server.Implementations/Library/Validators/StudiosValidator.cs +++ b/Emby.Server.Implementations/Library/Validators/StudiosValidator.cs @@ -1,11 +1,10 @@ -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; -using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Library.Validators { diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/DirectRecorder.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/DirectRecorder.cs index 327b0181a..7d7ef21e3 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/DirectRecorder.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/DirectRecorder.cs @@ -1,13 +1,10 @@ -using System; -using System.IO; +using System; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; - using MediaBrowser.Common.Net; -using MediaBrowser.Controller.IO; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.IO; using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.EmbyTV diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs index b787e8f0f..64e5affd7 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs @@ -8,36 +8,36 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml; +using Emby.Server.Implementations.Library; using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; +using MediaBrowser.Common.Progress; +using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Events; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; using MediaBrowser.Model.LiveTv; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.MediaInfo; +using MediaBrowser.Model.Providers; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Reflection; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.IO; -using MediaBrowser.Common.Extensions; -using MediaBrowser.Common.Progress; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.System; using MediaBrowser.Model.Threading; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Reflection; -using MediaBrowser.Model.Providers; -using MediaBrowser.Model.MediaInfo; -using Emby.Server.Implementations.Library; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.EmbyTV { @@ -395,8 +395,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV private async Task<EpgChannelData> GetEpgChannels(IListingsProvider provider, ListingsProviderInfo info, bool enableCache, CancellationToken cancellationToken) { - EpgChannelData result; - if (!enableCache || !_epgChannels.TryGetValue(info.Id, out result)) + if (!enableCache || !_epgChannels.TryGetValue(info.Id, out var result)) { var channels = await provider.GetChannels(info, cancellationToken).ConfigureAwait(false); @@ -648,9 +647,8 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV TimerCancelled(this, new GenericEventArgs<string>(timerId)); } } - ActiveRecordingInfo activeRecordingInfo; - if (_activeRecordings.TryGetValue(timerId, out activeRecordingInfo)) + if (_activeRecordings.TryGetValue(timerId, out var activeRecordingInfo)) { activeRecordingInfo.Timer = timer; activeRecordingInfo.CancellationTokenSource.Cancel(); @@ -817,8 +815,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV } // Only update if not currently active - ActiveRecordingInfo activeRecordingInfo; - if (!_activeRecordings.TryGetValue(updatedTimer.Id, out activeRecordingInfo)) + if (!_activeRecordings.TryGetValue(updatedTimer.Id, out var activeRecordingInfo)) { existingTimer.PrePaddingSeconds = updatedTimer.PrePaddingSeconds; existingTimer.PostPaddingSeconds = updatedTimer.PostPaddingSeconds; @@ -860,9 +857,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV public string GetActiveRecordingPath(string id) { - ActiveRecordingInfo info; - - if (_activeRecordings.TryGetValue(id, out info)) + if (_activeRecordings.TryGetValue(id, out var info)) { return info.Path; } @@ -1428,8 +1423,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV TriggerRefresh(recordPath); _libraryMonitor.ReportFileSystemChangeComplete(recordPath, false); - ActiveRecordingInfo removed; - _activeRecordings.TryRemove(timer.Id, out removed); + _activeRecordings.TryRemove(timer.Id, out var removed); if (recordingStatus != RecordingStatus.Completed && DateTime.UtcNow < timer.EndDate && timer.RetryCount < 10) { @@ -1990,11 +1984,10 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV CloseOutput = false }; - using (XmlWriter writer = XmlWriter.Create(stream, settings)) + using (var writer = XmlWriter.Create(stream, settings)) { writer.WriteStartDocument(true); writer.WriteStartElement("tvshow"); - string id; if (timer.SeriesProviderIds.TryGetValue(MetadataProviders.Tvdb.ToString(), out id)) { @@ -2057,7 +2050,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV var isSeriesEpisode = timer.IsProgramSeries; - using (XmlWriter writer = XmlWriter.Create(stream, settings)) + using (var writer = XmlWriter.Create(stream, settings)) { writer.WriteStartDocument(true); @@ -2419,12 +2412,42 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV if (updateTimerSettings) { - existingTimer.KeepUntil = seriesTimer.KeepUntil; - existingTimer.IsPostPaddingRequired = seriesTimer.IsPostPaddingRequired; - existingTimer.IsPrePaddingRequired = seriesTimer.IsPrePaddingRequired; - existingTimer.PostPaddingSeconds = seriesTimer.PostPaddingSeconds; - existingTimer.PrePaddingSeconds = seriesTimer.PrePaddingSeconds; - existingTimer.Priority = seriesTimer.Priority; + // Only update if not currently active - test both new timer and existing in case Id's are different + // Id's could be different if the timer was created manually prior to series timer creation + if (!_activeRecordings.TryGetValue(timer.Id, out var activeRecordingInfo) && !_activeRecordings.TryGetValue(existingTimer.Id, out activeRecordingInfo)) + { + UpdateExistingTimerWithNewMetadata(existingTimer, timer); + + // Needed by ShouldCancelTimerForSeriesTimer + timer.IsManual = existingTimer.IsManual; + + if (ShouldCancelTimerForSeriesTimer(seriesTimer, timer)) + { + existingTimer.Status = RecordingStatus.Cancelled; + } + else if (!existingTimer.IsManual) + { + existingTimer.Status = RecordingStatus.New; + } + + if (existingTimer.Status != RecordingStatus.Cancelled) + { + enabledTimersForSeries.Add(existingTimer); + } + + if (updateTimerSettings) + { + existingTimer.KeepUntil = seriesTimer.KeepUntil; + existingTimer.IsPostPaddingRequired = seriesTimer.IsPostPaddingRequired; + existingTimer.IsPrePaddingRequired = seriesTimer.IsPrePaddingRequired; + existingTimer.PostPaddingSeconds = seriesTimer.PostPaddingSeconds; + existingTimer.PrePaddingSeconds = seriesTimer.PrePaddingSeconds; + existingTimer.Priority = seriesTimer.Priority; + } + + existingTimer.SeriesTimerId = seriesTimer.Id; + _timerProvider.Update(existingTimer); + } } existingTimer.SeriesTimerId = seriesTimer.Id; @@ -2497,7 +2520,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV if (string.IsNullOrWhiteSpace(channelId) && !parent.ChannelId.Equals(Guid.Empty)) { - if (!tempChannelCache.TryGetValue(parent.ChannelId, out var channel)) + if (!tempChannelCache.TryGetValue(parent.ChannelId, out LiveTvChannel channel)) { channel = _libraryManager.GetItemList(new InternalItemsQuery { @@ -2556,7 +2579,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV if (!programInfo.ChannelId.Equals(Guid.Empty)) { - if (!tempChannelCache.TryGetValue(programInfo.ChannelId, out var channel)) + if (!tempChannelCache.TryGetValue(programInfo.ChannelId, out LiveTvChannel channel)) { channel = _libraryManager.GetItemList(new InternalItemsQuery { diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs index 292f3621d..c09ee9348 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs @@ -1,27 +1,25 @@ using System; using System.Collections.Generic; -using System.Diagnostics; using System.Globalization; using System.IO; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Net; using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.LiveTv; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Library; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Reflection; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.EmbyTV { diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/EntryPoint.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/EntryPoint.cs index cc9e80a82..982a54b68 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/EntryPoint.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/EntryPoint.cs @@ -1,4 +1,3 @@ -using System; using MediaBrowser.Controller.Plugins; namespace Emby.Server.Implementations.LiveTv.EmbyTV diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/IRecorder.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/IRecorder.cs index e639a312c..6eced3050 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/IRecorder.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/IRecorder.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Library; diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs index 593f98881..1b8287ed1 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs @@ -1,12 +1,10 @@ -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.IO; using System.Linq; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.EmbyTV { diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs index e694a8281..ded3c7607 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/RecordingHelper.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Controller.LiveTv; using System; using System.Globalization; +using MediaBrowser.Controller.LiveTv; namespace Emby.Server.Implementations.LiveTv.EmbyTV { diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/SeriesTimerManager.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/SeriesTimerManager.cs index 620ba7650..d2ad65a1e 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/SeriesTimerManager.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/SeriesTimerManager.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.LiveTv; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; using System; +using MediaBrowser.Controller.LiveTv; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.EmbyTV { diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs index bdc6ae009..7f67d70a9 100644 --- a/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs +++ b/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs @@ -4,11 +4,11 @@ using System.Globalization; using System.Linq; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; using MediaBrowser.Model.IO; using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Threading; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.EmbyTV { @@ -140,8 +140,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV private void StopTimer(TimerInfo item) { - ITimer timer; - if (_timers.TryRemove(item.Id, out timer)) + if (_timers.TryRemove(item.Id, out var timer)) { timer.Dispose(); } diff --git a/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs b/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs index 0ba8c8b42..d3066e916 100644 --- a/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs +++ b/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs @@ -1,22 +1,22 @@ -using System.Net; -using MediaBrowser.Common; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.LiveTv; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.LiveTv; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; +using System.Net; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Common; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.Net; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.Listings { @@ -42,7 +42,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings private static List<string> GetScheduleRequestDates(DateTime startDateUtc, DateTime endDateUtc) { - List<string> dates = new List<string>(); + var dates = new List<string>(); var start = new List<DateTime> { startDateUtc, startDateUtc.ToLocalTime() }.Min().Date; var end = new List<DateTime> { endDateUtc, endDateUtc.ToLocalTime() }.Max().Date; @@ -104,7 +104,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings httpOptions.RequestHeaders["token"] = token; using (var response = await Post(httpOptions, true, info).ConfigureAwait(false)) - using (StreamReader reader = new StreamReader(response.Content)) + using (var reader = new StreamReader(response.Content)) { var dailySchedules = await _jsonSerializer.DeserializeFromStreamAsync<List<ScheduleDirect.Day>>(response.Content).ConfigureAwait(false); _logger.LogDebug("Found {ScheduleCount} programs on {ChannelID} ScheduleDirect", dailySchedules.Count, channelId); @@ -125,7 +125,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings httpOptions.RequestContent = "[\"" + string.Join("\", \"", programsID) + "\"]"; using (var innerResponse = await Post(httpOptions, true, info).ConfigureAwait(false)) - using (StreamReader innerReader = new StreamReader(innerResponse.Content)) + using (var innerReader = new StreamReader(innerResponse.Content)) { var programDetails = await _jsonSerializer.DeserializeFromStreamAsync<List<ScheduleDirect.ProgramDetails>>(innerResponse.Content).ConfigureAwait(false); var programDict = programDetails.ToDictionary(p => p.programID, y => y); @@ -136,7 +136,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings var images = await GetImageForPrograms(info, programIdsWithImages, cancellationToken).ConfigureAwait(false); - List<ProgramInfo> programsInfo = new List<ProgramInfo>(); + var programsInfo = new List<ProgramInfo>(); foreach (ScheduleDirect.Program schedule in dailySchedules.SelectMany(d => d.programs)) { //_logger.LogDebug("Proccesing Schedule for statio ID " + stationID + @@ -222,9 +222,9 @@ namespace Emby.Server.Implementations.LiveTv.Listings private ProgramInfo GetProgram(string channelId, ScheduleDirect.Program programInfo, ScheduleDirect.ProgramDetails details) { - DateTime startAt = GetDate(programInfo.airDateTime); - DateTime endAt = startAt.AddSeconds(programInfo.duration); - ProgramAudio audioType = ProgramAudio.Stereo; + var startAt = GetDate(programInfo.airDateTime); + var endAt = startAt.AddSeconds(programInfo.duration); + var audioType = ProgramAudio.Stereo; var programId = programInfo.programID ?? string.Empty; diff --git a/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs b/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs index 2b1ee84a8..e7a3d748d 100644 --- a/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs +++ b/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs @@ -281,7 +281,7 @@ namespace Jellyfin.Server.Implementations.LiveTv.Listings string path = await GetXml(info.Path, cancellationToken).ConfigureAwait(false); _logger.LogDebug("Opening XmlTvReader for {path}", path); var reader = new XmlTvReader(path, GetLanguage(info)); - IEnumerable<XmlTvChannel> results = reader.GetChannels(); + var results = reader.GetChannels(); // Should this method be async? return results.Select(c => new ChannelInfo diff --git a/Emby.Server.Implementations/LiveTv/LiveTvConfigurationFactory.cs b/Emby.Server.Implementations/LiveTv/LiveTvConfigurationFactory.cs index 205a767eb..f9b274acb 100644 --- a/Emby.Server.Implementations/LiveTv/LiveTvConfigurationFactory.cs +++ b/Emby.Server.Implementations/LiveTv/LiveTvConfigurationFactory.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Model.LiveTv; using System.Collections.Generic; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Model.LiveTv; namespace Emby.Server.Implementations.LiveTv { diff --git a/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs b/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs index 7397d4b60..d0cde0643 100644 --- a/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs +++ b/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs @@ -1,21 +1,19 @@ +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common; using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.LiveTv; using Microsoft.Extensions.Logging; -using System; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Extensions; -using System.Collections.Generic; namespace Emby.Server.Implementations.LiveTv { diff --git a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs index c360a6a82..11d7facbe 100644 --- a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs +++ b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs @@ -1,10 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using Emby.Server.Implementations.Library; using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Net; using MediaBrowser.Common.Progress; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Persistence; @@ -12,27 +23,15 @@ using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.LiveTv; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Model.Events; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Tasks; -using Emby.Server.Implementations.LiveTv.Listings; -using MediaBrowser.Controller.Channels; -using Emby.Server.Implementations.Library; -using MediaBrowser.Controller; -using MediaBrowser.Common.Net; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv { @@ -255,7 +254,7 @@ namespace Emby.Server.Implementations.LiveTv var channel = (LiveTvChannel)_libraryManager.GetItemById(id); bool isVideo = channel.ChannelType == ChannelType.TV; - ILiveTvService service = GetService(channel); + var service = GetService(channel); _logger.LogInformation("Opening channel stream from {0}, external channel Id: {1}", service.Name, channel.ExternalId); MediaSourceInfo info; @@ -541,8 +540,7 @@ namespace Emby.Server.Implementations.LiveTv var isNew = false; var forceUpdate = false; - LiveTvProgram item; - if (!allExistingPrograms.TryGetValue(id, out item)) + if (!allExistingPrograms.TryGetValue(id, out LiveTvProgram item)) { isNew = true; item = new LiveTvProgram @@ -905,7 +903,7 @@ namespace Emby.Server.Implementations.LiveTv var programList = _libraryManager.QueryItems(internalQuery).Items; var totalCount = programList.Length; - IOrderedEnumerable<LiveTvProgram> orderedPrograms = programList.Cast<LiveTvProgram>().OrderBy(i => i.StartDate.Date); + var orderedPrograms = programList.Cast<LiveTvProgram>().OrderBy(i => i.StartDate.Date); if (query.IsAiring ?? false) { @@ -921,10 +919,10 @@ namespace Emby.Server.Implementations.LiveTv } return new QueryResult<BaseItem> - { - Items = programs.ToArray(), - TotalRecordCount = totalCount - }; + { + Items = programs.ToArray(), + TotalRecordCount = totalCount + }; } public QueryResult<BaseItemDto> GetRecommendedPrograms(InternalItemsQuery query, DtoOptions options, CancellationToken cancellationToken) @@ -939,10 +937,10 @@ namespace Emby.Server.Implementations.LiveTv var internalResult = GetRecommendedProgramsInternal(query, options, cancellationToken); return new QueryResult<BaseItemDto> - { - Items = _dtoService.GetBaseItemDtos(internalResult.Items, options, query.User), - TotalRecordCount = internalResult.TotalRecordCount - }; + { + Items = _dtoService.GetBaseItemDtos(internalResult.Items, options, query.User), + TotalRecordCount = internalResult.TotalRecordCount + }; } private int GetRecommendationScore(LiveTvProgram program, User user, bool factorChannelWatchCount) @@ -1266,7 +1264,7 @@ namespace Emby.Server.Implementations.LiveTv } numComplete++; - double percent = numComplete / (double) allChannelsList.Count; + double percent = numComplete / (double)allChannelsList.Count; progress.Report(85 * percent + 15); } @@ -1311,7 +1309,7 @@ namespace Emby.Server.Implementations.LiveTv } numComplete++; - double percent = numComplete / (double) list.Count; + double percent = numComplete / (double)list.Count; progress.Report(100 * percent); } @@ -1953,8 +1951,7 @@ namespace Emby.Server.Implementations.LiveTv foreach (var programDto in currentProgramDtos) { - BaseItemDto channelDto; - if (currentChannelsDict.TryGetValue(programDto.ChannelId, out channelDto)) + if (currentChannelsDict.TryGetValue(programDto.ChannelId, out BaseItemDto channelDto)) { channelDto.CurrentProgram = programDto; } @@ -1967,7 +1964,7 @@ namespace Emby.Server.Implementations.LiveTv ILiveTvService service = null; ProgramInfo programInfo = null; - if(program != null) + if (program != null) { service = GetService(program); @@ -2307,7 +2304,7 @@ namespace Emby.Server.Implementations.LiveTv // ServerConfiguration.SaveConfiguration crashes during xml serialization for AddListingProvider info = _jsonSerializer.DeserializeFromString<ListingsProviderInfo>(_jsonSerializer.SerializeToString(info)); - IListingsProvider provider = _listingProviders.FirstOrDefault(i => string.Equals(info.Type, i.Type, StringComparison.OrdinalIgnoreCase)); + var provider = _listingProviders.FirstOrDefault(i => string.Equals(info.Type, i.Type, StringComparison.OrdinalIgnoreCase)); if (provider == null) { @@ -2320,7 +2317,7 @@ namespace Emby.Server.Implementations.LiveTv LiveTvOptions config = GetConfiguration(); - List<ListingsProviderInfo> list = config.ListingProviders.ToList(); + var list = config.ListingProviders.ToList(); int index = list.FindIndex(i => string.Equals(i.Id, info.Id, StringComparison.OrdinalIgnoreCase)); if (index == -1 || string.IsNullOrWhiteSpace(info.Id)) diff --git a/Emby.Server.Implementations/LiveTv/LiveTvMediaSourceProvider.cs b/Emby.Server.Implementations/LiveTv/LiveTvMediaSourceProvider.cs index d13f08b1b..cd1731de5 100644 --- a/Emby.Server.Implementations/LiveTv/LiveTvMediaSourceProvider.cs +++ b/Emby.Server.Implementations/LiveTv/LiveTvMediaSourceProvider.cs @@ -1,21 +1,18 @@ -using MediaBrowser.Controller; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Model.Dto; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Common.Configuration; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv { diff --git a/Emby.Server.Implementations/LiveTv/RefreshChannelsScheduledTask.cs b/Emby.Server.Implementations/LiveTv/RefreshChannelsScheduledTask.cs index 29196a068..542951de4 100644 --- a/Emby.Server.Implementations/LiveTv/RefreshChannelsScheduledTask.cs +++ b/Emby.Server.Implementations/LiveTv/RefreshChannelsScheduledTask.cs @@ -1,10 +1,9 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.LiveTv; -using MediaBrowser.Model.LiveTv; using System; using System.Collections.Generic; -using System.Linq; using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Model.LiveTv; using MediaBrowser.Model.Tasks; namespace Emby.Server.Implementations.LiveTv diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs index 78514c1d9..ee86f66e6 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs @@ -1,8 +1,3 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.LiveTv; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.LiveTv; -using Microsoft.Extensions.Logging; using System; using System.Collections.Concurrent; using System.Collections.Generic; @@ -10,13 +5,16 @@ using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.IO; +using MediaBrowser.Model.LiveTv; using MediaBrowser.Model.Serialization; -using MediaBrowser.Controller.Library; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.TunerHosts { diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs index 3ae47f3ab..e8e4bc723 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs @@ -1,27 +1,27 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.LiveTv; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.LiveTv; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Net; using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Net; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.System; -using MediaBrowser.Controller.Library; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun { @@ -118,8 +118,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun { if (!string.IsNullOrEmpty(cacheKey)) { - DiscoverResponse response; - if (_modelCache.TryGetValue(cacheKey, out response)) + if (_modelCache.TryGetValue(cacheKey, out DiscoverResponse response)) { return response; } @@ -260,9 +259,9 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun for (int i = 0; i < model.TunerCount; ++i) { var name = string.Format("Tuner {0}", i + 1); - var currentChannel = "none"; /// @todo Get current channel and map back to Station Id + var currentChannel = "none"; /// @todo Get current channel and map back to Station Id var isAvailable = await manager.CheckTunerAvailability(ipInfo, i, cancellationToken).ConfigureAwait(false); - LiveTvTunerStatus status = isAvailable ? LiveTvTunerStatus.Available : LiveTvTunerStatus.LiveTv; + var status = isAvailable ? LiveTvTunerStatus.Available : LiveTvTunerStatus.LiveTv; tuners.Add(new LiveTvTunerInfo { Name = name, diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs index 335fc4cb4..2205c0ecc 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs @@ -1,14 +1,13 @@ -using System; +using System; using System.Collections.Generic; -using System.Linq; +using System.Net; using System.Text; using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.LiveTv; using MediaBrowser.Model.Net; using Microsoft.Extensions.Logging; -using MediaBrowser.Controller.LiveTv; -using System.Net; namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun { @@ -133,8 +132,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun var receiveBuffer = new byte[8192]; var response = await socket.ReceiveAsync(receiveBuffer, 0, receiveBuffer.Length, cancellationToken).ConfigureAwait(false); - string returnVal; - ParseReturnMessage(response.Buffer, response.ReceivedBytes, out returnVal); + ParseReturnMessage(response.Buffer, response.ReceivedBytes, out string returnVal); return string.Equals(returnVal, "none", StringComparison.OrdinalIgnoreCase); } @@ -168,9 +166,8 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun var lockkeyMsg = CreateSetMessage(i, "lockkey", lockKeyString, null); await tcpClient.SendToAsync(lockkeyMsg, 0, lockkeyMsg.Length, ipEndPoint, cancellationToken).ConfigureAwait(false); var response = await tcpClient.ReceiveAsync(receiveBuffer, 0, receiveBuffer.Length, cancellationToken).ConfigureAwait(false); - string returnVal; // parse response to make sure it worked - if (!ParseReturnMessage(response.Buffer, response.ReceivedBytes, out returnVal)) + if (!ParseReturnMessage(response.Buffer, response.ReceivedBytes, out var returnVal)) continue; var commandList = commands.GetCommands(); @@ -223,8 +220,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun await tcpClient.SendToAsync(channelMsg, 0, channelMsg.Length, new IpEndPointInfo(_remoteIp, HdHomeRunPort), cancellationToken).ConfigureAwait(false); var response = await tcpClient.ReceiveAsync(receiveBuffer, 0, receiveBuffer.Length, cancellationToken).ConfigureAwait(false); // parse response to make sure it worked - string returnVal; - if (!ParseReturnMessage(response.Buffer, response.ReceivedBytes, out returnVal)) + if (!ParseReturnMessage(response.Buffer, response.ReceivedBytes, out string returnVal)) { return; } diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunUdpStream.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunUdpStream.cs index fd78dfa8e..2542ddd2a 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunUdpStream.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunUdpStream.cs @@ -1,5 +1,8 @@ using System; +using System.Collections.Generic; using System.IO; +using System.Net; +using System.Net.Sockets; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Common.Net; @@ -7,13 +10,9 @@ using MediaBrowser.Controller; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Dto; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.System; using MediaBrowser.Model.LiveTv; -using System.Collections.Generic; -using System.Net.Sockets; -using System.Net; +using MediaBrowser.Model.MediaInfo; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun { diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs index b55b02ddc..1f8ca276e 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs @@ -1,18 +1,15 @@ -using System; +using System; using System.Collections.Generic; using System.IO; +using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller; -using MediaBrowser.Controller.IO; -using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.Dto; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.System; using MediaBrowser.Model.LiveTv; -using System.Linq; -using MediaBrowser.Controller.Library; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.TunerHosts { diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/M3UTunerHost.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/M3UTunerHost.cs index ab8731c39..638796e2e 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/M3UTunerHost.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/M3UTunerHost.cs @@ -1,24 +1,24 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.LiveTv; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.LiveTv; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.MediaInfo; using System; using System.Collections.Generic; +using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.System; -using System.IO; -using MediaBrowser.Controller.Library; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.TunerHosts { @@ -135,9 +135,8 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts var protocol = _mediaSourceManager.GetPathProtocol(path); - Uri uri; var isRemote = true; - if (Uri.TryCreate(path, UriKind.Absolute, out uri)) + if (Uri.TryCreate(path, UriKind.Absolute, out var uri)) { isRemote = !_networkManager.IsInLocalNetwork(uri.Host); } diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs index f83f95802..c77559c75 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs @@ -6,14 +6,13 @@ using System.Linq; using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Controller; -using MediaBrowser.Controller.IO; using MediaBrowser.Controller.LiveTv; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.TunerHosts { @@ -118,12 +117,10 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts extInf = extInf.Trim(); - string remaining; - var attributes = ParseExtInf(extInf, out remaining); + var attributes = ParseExtInf(extInf, out string remaining); extInf = remaining; - string value; - if (attributes.TryGetValue("tvg-logo", out value)) + if (attributes.TryGetValue("tvg-logo", out string value)) { channel.ImageUrl = value; } @@ -131,11 +128,9 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts channel.Name = GetChannelName(extInf, attributes); channel.Number = GetChannelNumber(extInf, attributes, mediaUrl); - string tvgId; - attributes.TryGetValue("tvg-id", out tvgId); + attributes.TryGetValue("tvg-id", out string tvgId); - string channelId; - attributes.TryGetValue("channel-id", out channelId); + attributes.TryGetValue("channel-id", out string channelId); channel.TunerChannelId = string.IsNullOrWhiteSpace(tvgId) ? channelId : tvgId; @@ -173,8 +168,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts { var numberPart = nameInExtInf.Substring(0, numberIndex).Trim(new[] { ' ', '.' }); - double number; - if (double.TryParse(numberPart, NumberStyles.Any, CultureInfo.InvariantCulture, out number)) + if (double.TryParse(numberPart, NumberStyles.Any, CultureInfo.InvariantCulture, out var number)) { numberString = numberPart; } @@ -188,11 +182,9 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts if (!IsValidChannelNumber(numberString)) { - string value; - if (attributes.TryGetValue("tvg-id", out value)) + if (attributes.TryGetValue("tvg-id", out string value)) { - double doubleValue; - if (double.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out doubleValue)) + if (double.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var doubleValue)) { numberString = value; } @@ -206,8 +198,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts if (!IsValidChannelNumber(numberString)) { - string value; - if (attributes.TryGetValue("channel-id", out value)) + if (attributes.TryGetValue("channel-id", out string value)) { numberString = value; } @@ -260,8 +251,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts return false; } - double value; - if (!double.TryParse(numberString, NumberStyles.Any, CultureInfo.InvariantCulture, out value)) + if (!double.TryParse(numberString, NumberStyles.Any, CultureInfo.InvariantCulture, out var value)) { return false; } @@ -284,8 +274,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts { var numberPart = nameInExtInf.Substring(0, numberIndex).Trim(new[] { ' ', '.' }); - double number; - if (double.TryParse(numberPart, NumberStyles.Any, CultureInfo.InvariantCulture, out number)) + if (double.TryParse(numberPart, NumberStyles.Any, CultureInfo.InvariantCulture, out var number)) { //channel.Number = number.ToString(); nameInExtInf = nameInExtInf.Substring(numberIndex + 1).Trim(new[] { ' ', '-' }); @@ -293,8 +282,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts } } - string name; - attributes.TryGetValue("tvg-name", out name); + attributes.TryGetValue("tvg-name", out string name); if (string.IsNullOrWhiteSpace(name)) { @@ -303,7 +291,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts if (string.IsNullOrWhiteSpace(name)) { - attributes.TryGetValue("tvg-id", out name); + attributes.TryGetValue("tvg-id", string name); } if (string.IsNullOrWhiteSpace(name)) diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/SharedHttpStream.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/SharedHttpStream.cs index 9b10daba0..b39a9f679 100644 --- a/Emby.Server.Implementations/LiveTv/TunerHosts/SharedHttpStream.cs +++ b/Emby.Server.Implementations/LiveTv/TunerHosts/SharedHttpStream.cs @@ -1,21 +1,15 @@ -using System; -using System.IO; +using System; +using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; -using Emby.Server.Implementations.IO; -using MediaBrowser.Model.IO; using MediaBrowser.Common.Net; using MediaBrowser.Controller; -using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Dto; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.System; -using System.Globalization; -using MediaBrowser.Controller.IO; +using MediaBrowser.Model.IO; using MediaBrowser.Model.LiveTv; -using System.Collections.Generic; +using MediaBrowser.Model.MediaInfo; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.LiveTv.TunerHosts { diff --git a/Emby.Server.Implementations/Localization/Core/ar.json b/Emby.Server.Implementations/Localization/Core/ar.json index 857f66c64..ec2c3f237 100644 --- a/Emby.Server.Implementations/Localization/Core/ar.json +++ b/Emby.Server.Implementations/Localization/Core/ar.json @@ -1,100 +1,100 @@ { - "Albums": "الألبومات", - "AppDeviceValues": "التطبيق: {0}. الجهاز: {1}.", - "Application": "التطبيق", - "Artists": "الفنانون", - "AuthenticationSucceededWithUserName": "تم التأكد من {0} بنجاح", - "Books": "الكتب", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "القنوات", - "ChapterNameValue": "الباب {0}", - "Collections": "المجاميع", - "DeviceOfflineWithName": "تم قطع الاتصال بـ{0}", - "DeviceOnlineWithName": "{0} متصل", - "FailedLoginAttemptWithUserName": "عملية تسجيل الدخول فشلت من {0}", - "Favorites": "المفضلات", - "Folders": "المجلدات", - "Games": "الألعاب", - "Genres": "أنواع الأفلام", - "HeaderAlbumArtists": "فنانو الألبومات", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "استئناف المشاهدة", - "HeaderFavoriteAlbums": "الألبومات المفضلة", - "HeaderFavoriteArtists": "الفنانون المفضلون", - "HeaderFavoriteEpisodes": "الحلقات المفضلة", - "HeaderFavoriteShows": "المسلسلات المفضلة", - "HeaderFavoriteSongs": "الأغاني المفضلة", - "HeaderLiveTV": "التلفاز المباشر", - "HeaderNextUp": "التشغيل التالي", - "HeaderRecordingGroups": "مجموعات التسجيل", - "HomeVideos": "الفيديوهات المنزلية", - "Inherit": "توريث", - "ItemAddedWithName": "تم إضافة {0} للمكتبة", - "ItemRemovedWithName": "تم إزالة {0} من المكتبة", - "LabelIpAddressValue": "عنوان الآي بي: {0}", - "LabelRunningTimeValue": "وقت التشغيل: {0}", - "Latest": "الأحدث", - "MessageApplicationUpdated": "لقد تم تحديث خادم أمبي", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "تم تحديث إعدادات الخادم في قسم {0}", - "MessageServerConfigurationUpdated": "تم تحديث إعدادات الخادم", - "MixedContent": "محتوى مخلوط", - "Movies": "الأفلام", - "Music": "الموسيقى", - "MusicVideos": "الفيديوهات الموسيقية", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "الموسم {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "يوجد تحديث للتطبيق", - "NotificationOptionApplicationUpdateInstalled": "تم تحديث التطبيق", - "NotificationOptionAudioPlayback": "بدأ تشغيل المقطع الصوتي", - "NotificationOptionAudioPlaybackStopped": "تم إيقاف تشغيل المقطع الصوتي", - "NotificationOptionCameraImageUploaded": "تم رقع صورة الكاميرا", - "NotificationOptionGamePlayback": "تم تشغيل اللعبة", - "NotificationOptionGamePlaybackStopped": "تم إيقاف تشغيل اللعبة", - "NotificationOptionInstallationFailed": "عملية التنصيب فشلت", - "NotificationOptionNewLibraryContent": "تم إضافة محتوى جديد", - "NotificationOptionPluginError": "فشل في الملحق", - "NotificationOptionPluginInstalled": "تم تثبيت الملحق", - "NotificationOptionPluginUninstalled": "تمت إزالة الملحق", - "NotificationOptionPluginUpdateInstalled": "تم تحديث الملحق", - "NotificationOptionServerRestartRequired": "يجب إعادة تشغيل الخادم", - "NotificationOptionTaskFailed": "فشل في المهمة المجدولة", - "NotificationOptionUserLockedOut": "تم إقفال حساب المستخدم", - "NotificationOptionVideoPlayback": "بدأ تشغيل الفيديو", - "NotificationOptionVideoPlaybackStopped": "تم إيقاف تشغيل الفيديو", - "Photos": "الصور", - "Playlists": "قوائم التشغيل", - "Plugin": "الملحق", - "PluginInstalledWithName": "تم تثبيت {0}", - "PluginUninstalledWithName": "تمت إزالة {0}", - "PluginUpdatedWithName": "تم تحديث {0}", - "ProviderValue": "المزود: {0}", - "ScheduledTaskFailedWithName": "العملية {0} فشلت", - "ScheduledTaskStartedWithName": "تم بدء {0}", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "الأغاني", - "StartupEmbyServerIsLoading": "خادم أمبي قيد التحميل. الرجاء المحاوية بعد حين", - "SubtitleDownloadFailureForItem": "عملية إنزال الترجمة فشلت لـ{0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "تم إنزال الترجمات لـ {0}", - "Sync": "مزامنة", - "System": "النظام", - "TvShows": "TV Shows", - "User": "المستخدم", - "UserCreatedWithName": "تم إنشاء المستخدم {0}", - "UserDeletedWithName": "تم حذف المستخدم {0}", - "UserDownloadingItemWithValues": "{0} يقوم بإنزال {1}", - "UserLockedOutWithName": "المستخدم {0} تم منعه من الدخول", - "UserOfflineFromDevice": "تم قطع اتصال {0} من {1}", - "UserOnlineFromDevice": "{0} متصلة عبر {1}", - "UserPasswordChangedWithName": "تم تغيير كلمة السر للمستخدم {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "قام {0} ببدء تشغيل {1}", - "UserStoppedPlayingItemWithValues": "قام {0} بإيقاف تشغيل {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "خاص - {0}", - "VersionNumber": "الإصدار رقم {0}" + "Albums": "الألبومات", + "AppDeviceValues": "التطبيق: {0}. الجهاز: {1}.", + "Application": "التطبيق", + "Artists": "الفنانون", + "AuthenticationSucceededWithUserName": "تم التأكد من {0} بنجاح", + "Books": "الكتب", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "القنوات", + "ChapterNameValue": "الباب {0}", + "Collections": "المجاميع", + "DeviceOfflineWithName": "تم قطع الاتصال بـ{0}", + "DeviceOnlineWithName": "{0} متصل", + "FailedLoginAttemptWithUserName": "عملية تسجيل الدخول فشلت من {0}", + "Favorites": "المفضلات", + "Folders": "المجلدات", + "Games": "الألعاب", + "Genres": "أنواع الأفلام", + "HeaderAlbumArtists": "فنانو الألبومات", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "استئناف المشاهدة", + "HeaderFavoriteAlbums": "الألبومات المفضلة", + "HeaderFavoriteArtists": "الفنانون المفضلون", + "HeaderFavoriteEpisodes": "الحلقات المفضلة", + "HeaderFavoriteShows": "المسلسلات المفضلة", + "HeaderFavoriteSongs": "الأغاني المفضلة", + "HeaderLiveTV": "التلفاز المباشر", + "HeaderNextUp": "التشغيل التالي", + "HeaderRecordingGroups": "مجموعات التسجيل", + "HomeVideos": "الفيديوهات المنزلية", + "Inherit": "توريث", + "ItemAddedWithName": "تم إضافة {0} للمكتبة", + "ItemRemovedWithName": "تم إزالة {0} من المكتبة", + "LabelIpAddressValue": "عنوان الآي بي: {0}", + "LabelRunningTimeValue": "وقت التشغيل: {0}", + "Latest": "الأحدث", + "MessageApplicationUpdated": "لقد تم تحديث خادم أمبي", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "تم تحديث إعدادات الخادم في قسم {0}", + "MessageServerConfigurationUpdated": "تم تحديث إعدادات الخادم", + "MixedContent": "محتوى مخلوط", + "Movies": "الأفلام", + "Music": "الموسيقى", + "MusicVideos": "الفيديوهات الموسيقية", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "الموسم {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "يوجد تحديث للتطبيق", + "NotificationOptionApplicationUpdateInstalled": "تم تحديث التطبيق", + "NotificationOptionAudioPlayback": "بدأ تشغيل المقطع الصوتي", + "NotificationOptionAudioPlaybackStopped": "تم إيقاف تشغيل المقطع الصوتي", + "NotificationOptionCameraImageUploaded": "تم رقع صورة الكاميرا", + "NotificationOptionGamePlayback": "تم تشغيل اللعبة", + "NotificationOptionGamePlaybackStopped": "تم إيقاف تشغيل اللعبة", + "NotificationOptionInstallationFailed": "عملية التنصيب فشلت", + "NotificationOptionNewLibraryContent": "تم إضافة محتوى جديد", + "NotificationOptionPluginError": "فشل في الملحق", + "NotificationOptionPluginInstalled": "تم تثبيت الملحق", + "NotificationOptionPluginUninstalled": "تمت إزالة الملحق", + "NotificationOptionPluginUpdateInstalled": "تم تحديث الملحق", + "NotificationOptionServerRestartRequired": "يجب إعادة تشغيل الخادم", + "NotificationOptionTaskFailed": "فشل في المهمة المجدولة", + "NotificationOptionUserLockedOut": "تم إقفال حساب المستخدم", + "NotificationOptionVideoPlayback": "بدأ تشغيل الفيديو", + "NotificationOptionVideoPlaybackStopped": "تم إيقاف تشغيل الفيديو", + "Photos": "الصور", + "Playlists": "قوائم التشغيل", + "Plugin": "الملحق", + "PluginInstalledWithName": "تم تثبيت {0}", + "PluginUninstalledWithName": "تمت إزالة {0}", + "PluginUpdatedWithName": "تم تحديث {0}", + "ProviderValue": "المزود: {0}", + "ScheduledTaskFailedWithName": "العملية {0} فشلت", + "ScheduledTaskStartedWithName": "تم بدء {0}", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "الأغاني", + "StartupEmbyServerIsLoading": "خادم أمبي قيد التحميل. الرجاء المحاوية بعد حين", + "SubtitleDownloadFailureForItem": "عملية إنزال الترجمة فشلت لـ{0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "تم إنزال الترجمات لـ {0}", + "Sync": "مزامنة", + "System": "النظام", + "TvShows": "TV Shows", + "User": "المستخدم", + "UserCreatedWithName": "تم إنشاء المستخدم {0}", + "UserDeletedWithName": "تم حذف المستخدم {0}", + "UserDownloadingItemWithValues": "{0} يقوم بإنزال {1}", + "UserLockedOutWithName": "المستخدم {0} تم منعه من الدخول", + "UserOfflineFromDevice": "تم قطع اتصال {0} من {1}", + "UserOnlineFromDevice": "{0} متصلة عبر {1}", + "UserPasswordChangedWithName": "تم تغيير كلمة السر للمستخدم {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "قام {0} ببدء تشغيل {1}", + "UserStoppedPlayingItemWithValues": "قام {0} بإيقاف تشغيل {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "خاص - {0}", + "VersionNumber": "الإصدار رقم {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/bg-BG.json b/Emby.Server.Implementations/Localization/Core/bg-BG.json index b768e03c6..ba6c98555 100644 --- a/Emby.Server.Implementations/Localization/Core/bg-BG.json +++ b/Emby.Server.Implementations/Localization/Core/bg-BG.json @@ -1,100 +1,100 @@ { - "Albums": "Албуми", - "AppDeviceValues": "Програма: {0}, Устройство: {1}", - "Application": "Програма", - "Artists": "Изпълнители", - "AuthenticationSucceededWithUserName": "{0} се удостовери успешно", - "Books": "Книги", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Канали", - "ChapterNameValue": "Глава {0}", - "Collections": "Колекции", - "DeviceOfflineWithName": "{0} се разкачи", - "DeviceOnlineWithName": "{0} е свързан", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Любими", - "Folders": "Папки", - "Games": "Игри", - "Genres": "Жанрове", - "HeaderAlbumArtists": "Изпълнители на албуми", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Продължаване на гледането", - "HeaderFavoriteAlbums": "Любими албуми", - "HeaderFavoriteArtists": "Любими изпълнители", - "HeaderFavoriteEpisodes": "Любими епизоди", - "HeaderFavoriteShows": "Любими сериали", - "HeaderFavoriteSongs": "Любими песни", - "HeaderLiveTV": "Телевизия на живо", - "HeaderNextUp": "Следва", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Домашни клипове", - "Inherit": "Наследяване", - "ItemAddedWithName": "{0} е добавено към библиотеката", - "ItemRemovedWithName": "{0} е премахнато от библиотеката", - "LabelIpAddressValue": "ИП адрес: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Последни", - "MessageApplicationUpdated": "Сървърът е обновен", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Смесено съдържание", - "Movies": "Филми", - "Music": "Музика", - "MusicVideos": "Музикални клипове", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Сезон {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Налично е обновление на програмата", - "NotificationOptionApplicationUpdateInstalled": "Обновлението на програмата е инсталирано", - "NotificationOptionAudioPlayback": "Възпроизвеждането на звук започна", - "NotificationOptionAudioPlaybackStopped": "Възпроизвеждането на звук е спряно", - "NotificationOptionCameraImageUploaded": "Изображението от фотоапарата е качено", - "NotificationOptionGamePlayback": "Възпроизвеждането на играта започна", - "NotificationOptionGamePlaybackStopped": "Възпроизвеждането на играта е спряна", - "NotificationOptionInstallationFailed": "Неуспешно инсталиране", - "NotificationOptionNewLibraryContent": "Добавено е ново съдържание", - "NotificationOptionPluginError": "Грешка в приставка", - "NotificationOptionPluginInstalled": "Приставката е инсталирана", - "NotificationOptionPluginUninstalled": "Приставката е деинсталирана", - "NotificationOptionPluginUpdateInstalled": "Обновлението на приставката е инсталирано", - "NotificationOptionServerRestartRequired": "Нужно е повторно пускане на сървъра", - "NotificationOptionTaskFailed": "Грешка в планирана задача", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Възпроизвеждането на видео започна", - "NotificationOptionVideoPlaybackStopped": "Възпроизвеждането на видео е спряно", - "Photos": "Снимки", - "Playlists": "Списъци", - "Plugin": "Приставка", - "PluginInstalledWithName": "{0} е инсталирано", - "PluginUninstalledWithName": "{0} е деинсталирано", - "PluginUpdatedWithName": "{0} е обновено", - "ProviderValue": "Доставчик: {0}", - "ScheduledTaskFailedWithName": "{0} се провали", - "ScheduledTaskStartedWithName": "{0} започна", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Сериали", - "Songs": "Песни", - "StartupEmbyServerIsLoading": "Сървърът зарежда. Моля, опитайте отново след малко.", - "SubtitleDownloadFailureForItem": "Неуспешно изтегляне на субтитри за {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Изтеглени са субтитри за {0}", - "Sync": "Синхронизиране", - "System": "Система", - "TvShows": "Телевизионни сериали", - "User": "Потребител", - "UserCreatedWithName": "Потребителят {0} е създаден", - "UserDeletedWithName": "Потребителят {0} е изтрит", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} се разкачи от {1}", - "UserOnlineFromDevice": "{0} е на линия от {1}", - "UserPasswordChangedWithName": "Паролата на потребителя {0} е променена", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} пусна {1}", - "UserStoppedPlayingItemWithValues": "{0} спря {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Специални - {0}", - "VersionNumber": "Версия {0}" + "Albums": "Албуми", + "AppDeviceValues": "Програма: {0}, Устройство: {1}", + "Application": "Програма", + "Artists": "Изпълнители", + "AuthenticationSucceededWithUserName": "{0} се удостовери успешно", + "Books": "Книги", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Канали", + "ChapterNameValue": "Глава {0}", + "Collections": "Колекции", + "DeviceOfflineWithName": "{0} се разкачи", + "DeviceOnlineWithName": "{0} е свързан", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Любими", + "Folders": "Папки", + "Games": "Игри", + "Genres": "Жанрове", + "HeaderAlbumArtists": "Изпълнители на албуми", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Продължаване на гледането", + "HeaderFavoriteAlbums": "Любими албуми", + "HeaderFavoriteArtists": "Любими изпълнители", + "HeaderFavoriteEpisodes": "Любими епизоди", + "HeaderFavoriteShows": "Любими сериали", + "HeaderFavoriteSongs": "Любими песни", + "HeaderLiveTV": "Телевизия на живо", + "HeaderNextUp": "Следва", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Домашни клипове", + "Inherit": "Наследяване", + "ItemAddedWithName": "{0} е добавено към библиотеката", + "ItemRemovedWithName": "{0} е премахнато от библиотеката", + "LabelIpAddressValue": "ИП адрес: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Последни", + "MessageApplicationUpdated": "Сървърът е обновен", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Смесено съдържание", + "Movies": "Филми", + "Music": "Музика", + "MusicVideos": "Музикални клипове", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Сезон {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Налично е обновление на програмата", + "NotificationOptionApplicationUpdateInstalled": "Обновлението на програмата е инсталирано", + "NotificationOptionAudioPlayback": "Възпроизвеждането на звук започна", + "NotificationOptionAudioPlaybackStopped": "Възпроизвеждането на звук е спряно", + "NotificationOptionCameraImageUploaded": "Изображението от фотоапарата е качено", + "NotificationOptionGamePlayback": "Възпроизвеждането на играта започна", + "NotificationOptionGamePlaybackStopped": "Възпроизвеждането на играта е спряна", + "NotificationOptionInstallationFailed": "Неуспешно инсталиране", + "NotificationOptionNewLibraryContent": "Добавено е ново съдържание", + "NotificationOptionPluginError": "Грешка в приставка", + "NotificationOptionPluginInstalled": "Приставката е инсталирана", + "NotificationOptionPluginUninstalled": "Приставката е деинсталирана", + "NotificationOptionPluginUpdateInstalled": "Обновлението на приставката е инсталирано", + "NotificationOptionServerRestartRequired": "Нужно е повторно пускане на сървъра", + "NotificationOptionTaskFailed": "Грешка в планирана задача", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Възпроизвеждането на видео започна", + "NotificationOptionVideoPlaybackStopped": "Възпроизвеждането на видео е спряно", + "Photos": "Снимки", + "Playlists": "Списъци", + "Plugin": "Приставка", + "PluginInstalledWithName": "{0} е инсталирано", + "PluginUninstalledWithName": "{0} е деинсталирано", + "PluginUpdatedWithName": "{0} е обновено", + "ProviderValue": "Доставчик: {0}", + "ScheduledTaskFailedWithName": "{0} се провали", + "ScheduledTaskStartedWithName": "{0} започна", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Сериали", + "Songs": "Песни", + "StartupEmbyServerIsLoading": "Сървърът зарежда. Моля, опитайте отново след малко.", + "SubtitleDownloadFailureForItem": "Неуспешно изтегляне на субтитри за {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Изтеглени са субтитри за {0}", + "Sync": "Синхронизиране", + "System": "Система", + "TvShows": "Телевизионни сериали", + "User": "Потребител", + "UserCreatedWithName": "Потребителят {0} е създаден", + "UserDeletedWithName": "Потребителят {0} е изтрит", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} се разкачи от {1}", + "UserOnlineFromDevice": "{0} е на линия от {1}", + "UserPasswordChangedWithName": "Паролата на потребителя {0} е променена", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} пусна {1}", + "UserStoppedPlayingItemWithValues": "{0} спря {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Специални - {0}", + "VersionNumber": "Версия {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/ca.json b/Emby.Server.Implementations/Localization/Core/ca.json index 9a6a8e0c4..a818b78de 100644 --- a/Emby.Server.Implementations/Localization/Core/ca.json +++ b/Emby.Server.Implementations/Localization/Core/ca.json @@ -1,100 +1,100 @@ { - "Albums": "Àlbums", - "AppDeviceValues": "App: {0}, Dispositiu: {1}", - "Application": "Application", - "Artists": "Artistes", - "AuthenticationSucceededWithUserName": "{0} s'ha autenticat correctament", - "Books": "Llibres", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Canals", - "ChapterNameValue": "Episodi {0}", - "Collections": "Col·leccions", - "DeviceOfflineWithName": "{0} s'ha desconnectat", - "DeviceOnlineWithName": "{0} està connectat", - "FailedLoginAttemptWithUserName": "Intent de connexió fallit des de {0}", - "Favorites": "Preferits", - "Folders": "Directoris", - "Games": "Jocs", - "Genres": "Gèneres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continua Veient", - "HeaderFavoriteAlbums": "Àlbums Preferits", - "HeaderFavoriteArtists": "Artistes Preferits", - "HeaderFavoriteEpisodes": "Episodis Preferits", - "HeaderFavoriteShows": "Programes Preferits", - "HeaderFavoriteSongs": "Cançons Preferides", - "HeaderLiveTV": "TV en Directe", - "HeaderNextUp": "A continuació", - "HeaderRecordingGroups": "Grups d'Enregistrament", - "HomeVideos": "Vídeos domèstics", - "Inherit": "Heretat", - "ItemAddedWithName": "{0} afegit a la biblioteca", - "ItemRemovedWithName": "{0} eliminat de la biblioteca", - "LabelIpAddressValue": "Adreça IP: {0}", - "LabelRunningTimeValue": "Temps en marxa: {0}", - "Latest": "Darreres", - "MessageApplicationUpdated": "El Servidor d'Jellyfin ha estat actualitzat", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "La secció de configuració {0} ha estat actualitzada", - "MessageServerConfigurationUpdated": "S'ha actualitzat la configuració del servidor", - "MixedContent": "Contingut mesclat", - "Movies": "Pel·lícules", - "Music": "Música", - "MusicVideos": "Vídeos musicals", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Temporada {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Actualització d'aplicació disponible", - "NotificationOptionApplicationUpdateInstalled": "Actualització d'aplicació instal·lada", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Un component ha fallat", - "NotificationOptionPluginInstalled": "Complement instal·lat", - "NotificationOptionPluginUninstalled": "Complement desinstal·lat", - "NotificationOptionPluginUpdateInstalled": "Actualització de complement instal·lada", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Fotos", - "Playlists": "Llistes de reproducció", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} ha estat instal·lat", - "PluginUninstalledWithName": "{0} ha estat desinstal·lat", - "PluginUpdatedWithName": "{0} ha estat actualitzat", - "ProviderValue": "Proveïdor: {0}", - "ScheduledTaskFailedWithName": "{0} ha fallat", - "ScheduledTaskStartedWithName": "{0} iniciat", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Espectacles", - "Songs": "Cançons", - "StartupEmbyServerIsLoading": "El Servidor d'Jellyfin està carregant. Si et plau, prova de nou en breus.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtítols descarregats per a {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "Espectacles de TV", - "User": "User", - "UserCreatedWithName": "S'ha creat l'usuari {0}", - "UserDeletedWithName": "L'usuari {0} ha estat eliminat", - "UserDownloadingItemWithValues": "{0} està descarregant {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} s'ha desconnectat de {1}", - "UserOnlineFromDevice": "{0} està connectat des de {1}", - "UserPasswordChangedWithName": "La contrasenya ha estat canviada per a l'usuari {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} ha començat a reproduir {1}", - "UserStoppedPlayingItemWithValues": "{0} ha parat de reproduir {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Especial - {0}", - "VersionNumber": "Versió {0}" + "Albums": "Àlbums", + "AppDeviceValues": "App: {0}, Dispositiu: {1}", + "Application": "Application", + "Artists": "Artistes", + "AuthenticationSucceededWithUserName": "{0} s'ha autenticat correctament", + "Books": "Llibres", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Canals", + "ChapterNameValue": "Episodi {0}", + "Collections": "Col·leccions", + "DeviceOfflineWithName": "{0} s'ha desconnectat", + "DeviceOnlineWithName": "{0} està connectat", + "FailedLoginAttemptWithUserName": "Intent de connexió fallit des de {0}", + "Favorites": "Preferits", + "Folders": "Directoris", + "Games": "Jocs", + "Genres": "Gèneres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continua Veient", + "HeaderFavoriteAlbums": "Àlbums Preferits", + "HeaderFavoriteArtists": "Artistes Preferits", + "HeaderFavoriteEpisodes": "Episodis Preferits", + "HeaderFavoriteShows": "Programes Preferits", + "HeaderFavoriteSongs": "Cançons Preferides", + "HeaderLiveTV": "TV en Directe", + "HeaderNextUp": "A continuació", + "HeaderRecordingGroups": "Grups d'Enregistrament", + "HomeVideos": "Vídeos domèstics", + "Inherit": "Heretat", + "ItemAddedWithName": "{0} afegit a la biblioteca", + "ItemRemovedWithName": "{0} eliminat de la biblioteca", + "LabelIpAddressValue": "Adreça IP: {0}", + "LabelRunningTimeValue": "Temps en marxa: {0}", + "Latest": "Darreres", + "MessageApplicationUpdated": "El Servidor d'Jellyfin ha estat actualitzat", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "La secció de configuració {0} ha estat actualitzada", + "MessageServerConfigurationUpdated": "S'ha actualitzat la configuració del servidor", + "MixedContent": "Contingut mesclat", + "Movies": "Pel·lícules", + "Music": "Música", + "MusicVideos": "Vídeos musicals", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Temporada {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Actualització d'aplicació disponible", + "NotificationOptionApplicationUpdateInstalled": "Actualització d'aplicació instal·lada", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Un component ha fallat", + "NotificationOptionPluginInstalled": "Complement instal·lat", + "NotificationOptionPluginUninstalled": "Complement desinstal·lat", + "NotificationOptionPluginUpdateInstalled": "Actualització de complement instal·lada", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Fotos", + "Playlists": "Llistes de reproducció", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} ha estat instal·lat", + "PluginUninstalledWithName": "{0} ha estat desinstal·lat", + "PluginUpdatedWithName": "{0} ha estat actualitzat", + "ProviderValue": "Proveïdor: {0}", + "ScheduledTaskFailedWithName": "{0} ha fallat", + "ScheduledTaskStartedWithName": "{0} iniciat", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Espectacles", + "Songs": "Cançons", + "StartupEmbyServerIsLoading": "El Servidor d'Jellyfin està carregant. Si et plau, prova de nou en breus.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtítols descarregats per a {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "Espectacles de TV", + "User": "User", + "UserCreatedWithName": "S'ha creat l'usuari {0}", + "UserDeletedWithName": "L'usuari {0} ha estat eliminat", + "UserDownloadingItemWithValues": "{0} està descarregant {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} s'ha desconnectat de {1}", + "UserOnlineFromDevice": "{0} està connectat des de {1}", + "UserPasswordChangedWithName": "La contrasenya ha estat canviada per a l'usuari {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} ha començat a reproduir {1}", + "UserStoppedPlayingItemWithValues": "{0} ha parat de reproduir {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Especial - {0}", + "VersionNumber": "Versió {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/cs.json b/Emby.Server.Implementations/Localization/Core/cs.json index 51fb132a4..e066051a8 100644 --- a/Emby.Server.Implementations/Localization/Core/cs.json +++ b/Emby.Server.Implementations/Localization/Core/cs.json @@ -1,100 +1,100 @@ { - "Albums": "Alba", - "AppDeviceValues": "Aplikace: {0}, Zařízení: {1}", - "Application": "Aplikace", - "Artists": "Umělci", - "AuthenticationSucceededWithUserName": "{0} úspěšně ověřen", - "Books": "Knihy", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Kanály", - "ChapterNameValue": "Kapitola {0}", - "Collections": "Kolekce", - "DeviceOfflineWithName": "{0} se odpojil", - "DeviceOnlineWithName": "{0} je připojen", - "FailedLoginAttemptWithUserName": "Neúspěšný pokus o přihlášení z {0}", - "Favorites": "Oblíbené", - "Folders": "Složky", - "Games": "Hry", - "Genres": "Žánry", - "HeaderAlbumArtists": "Umělci alba", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Pokračovat ve sledování", - "HeaderFavoriteAlbums": "Oblíbená alba", - "HeaderFavoriteArtists": "Oblíbení umělci", - "HeaderFavoriteEpisodes": "Oblíbené epizody", - "HeaderFavoriteShows": "Oblíbené seriály", - "HeaderFavoriteSongs": "Oblíbené písně", - "HeaderLiveTV": "Živá TV", - "HeaderNextUp": "Nadcházející", - "HeaderRecordingGroups": "Skupiny nahrávek", - "HomeVideos": "Domáci videa", - "Inherit": "Zdědit", - "ItemAddedWithName": "{0} byl přidán do knihovny", - "ItemRemovedWithName": "{0} byl odstraněn z knihovny", - "LabelIpAddressValue": "IP adresa: {0}", - "LabelRunningTimeValue": "Délka média: {0}", - "Latest": "Nejnovější", - "MessageApplicationUpdated": "Jellyfin Server byl aktualizován", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Konfigurace sekce {0} na serveru byla aktualizována", - "MessageServerConfigurationUpdated": "Konfigurace serveru aktualizována", - "MixedContent": "Smíšený obsah", - "Movies": "Filmy", - "Music": "Hudba", - "MusicVideos": "Hudební klipy", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Sezóna {0}", - "NameSeasonUnknown": "Neznámá sezóna", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Dostupná aktualizace aplikace", - "NotificationOptionApplicationUpdateInstalled": "Aktualizace aplikace instalována", - "NotificationOptionAudioPlayback": "Přehrávání audia zahájeno", - "NotificationOptionAudioPlaybackStopped": "Přehrávání audia ukončeno", - "NotificationOptionCameraImageUploaded": "Kamerový záznam nahrán", - "NotificationOptionGamePlayback": "Spuštění hry zahájeno", - "NotificationOptionGamePlaybackStopped": "Hra ukončena", - "NotificationOptionInstallationFailed": "Chyba instalace", - "NotificationOptionNewLibraryContent": "Přidán nový obsah", - "NotificationOptionPluginError": "Chyba zásuvného modulu", - "NotificationOptionPluginInstalled": "Zásuvný modul instalován", - "NotificationOptionPluginUninstalled": "Zásuvný modul odstraněn", - "NotificationOptionPluginUpdateInstalled": "Aktualizace zásuvného modulu instalována", - "NotificationOptionServerRestartRequired": "Je vyžadován restart serveru", - "NotificationOptionTaskFailed": "Chyba naplánované úlohy", - "NotificationOptionUserLockedOut": "Uživatel uzamčen", - "NotificationOptionVideoPlayback": "Přehrávání videa zahájeno", - "NotificationOptionVideoPlaybackStopped": "Přehrávání videa ukončeno", - "Photos": "Fotky", - "Playlists": "Seznamy skladeb", - "Plugin": "Zásuvný modul", - "PluginInstalledWithName": "{0} byl nainstalován", - "PluginUninstalledWithName": "{0} byl odinstalován", - "PluginUpdatedWithName": "{0} byl aktualizován", - "ProviderValue": "Poskytl: {0}", - "ScheduledTaskFailedWithName": "{0} selhalo", - "ScheduledTaskStartedWithName": "{0} zahájeno", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Seriály", - "Songs": "Skladby", - "StartupEmbyServerIsLoading": "Jellyfin Server je spouštěn. Zkuste to prosím v brzké době znovu.", - "SubtitleDownloadFailureForItem": "Stahování titulků selhalo pro {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Staženy titulky pro {0}", - "Sync": "Synchronizace", - "System": "Systém", - "TvShows": "TV seriály", - "User": "Uživatel", - "UserCreatedWithName": "Uživatel {0} byl vytvořen", - "UserDeletedWithName": "Uživatel {0} byl smazán", - "UserDownloadingItemWithValues": "{0} stahuje {1}", - "UserLockedOutWithName": "Uživatel {0} byl odemčen", - "UserOfflineFromDevice": "{0} se odpojil od {1}", - "UserOnlineFromDevice": "{0} se připojil z {1}", - "UserPasswordChangedWithName": "Provedena změna hesla pro uživatele {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} spustil přehrávání {1}", - "UserStoppedPlayingItemWithValues": "{0} zastavil přehrávání {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Speciál - {0}", - "VersionNumber": "Verze {0}" + "Albums": "Alba", + "AppDeviceValues": "Aplikace: {0}, Zařízení: {1}", + "Application": "Aplikace", + "Artists": "Umělci", + "AuthenticationSucceededWithUserName": "{0} úspěšně ověřen", + "Books": "Knihy", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Kanály", + "ChapterNameValue": "Kapitola {0}", + "Collections": "Kolekce", + "DeviceOfflineWithName": "{0} se odpojil", + "DeviceOnlineWithName": "{0} je připojen", + "FailedLoginAttemptWithUserName": "Neúspěšný pokus o přihlášení z {0}", + "Favorites": "Oblíbené", + "Folders": "Složky", + "Games": "Hry", + "Genres": "Žánry", + "HeaderAlbumArtists": "Umělci alba", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Pokračovat ve sledování", + "HeaderFavoriteAlbums": "Oblíbená alba", + "HeaderFavoriteArtists": "Oblíbení umělci", + "HeaderFavoriteEpisodes": "Oblíbené epizody", + "HeaderFavoriteShows": "Oblíbené seriály", + "HeaderFavoriteSongs": "Oblíbené písně", + "HeaderLiveTV": "Živá TV", + "HeaderNextUp": "Nadcházející", + "HeaderRecordingGroups": "Skupiny nahrávek", + "HomeVideos": "Domáci videa", + "Inherit": "Zdědit", + "ItemAddedWithName": "{0} byl přidán do knihovny", + "ItemRemovedWithName": "{0} byl odstraněn z knihovny", + "LabelIpAddressValue": "IP adresa: {0}", + "LabelRunningTimeValue": "Délka média: {0}", + "Latest": "Nejnovější", + "MessageApplicationUpdated": "Jellyfin Server byl aktualizován", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Konfigurace sekce {0} na serveru byla aktualizována", + "MessageServerConfigurationUpdated": "Konfigurace serveru aktualizována", + "MixedContent": "Smíšený obsah", + "Movies": "Filmy", + "Music": "Hudba", + "MusicVideos": "Hudební klipy", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Sezóna {0}", + "NameSeasonUnknown": "Neznámá sezóna", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Dostupná aktualizace aplikace", + "NotificationOptionApplicationUpdateInstalled": "Aktualizace aplikace instalována", + "NotificationOptionAudioPlayback": "Přehrávání audia zahájeno", + "NotificationOptionAudioPlaybackStopped": "Přehrávání audia ukončeno", + "NotificationOptionCameraImageUploaded": "Kamerový záznam nahrán", + "NotificationOptionGamePlayback": "Spuštění hry zahájeno", + "NotificationOptionGamePlaybackStopped": "Hra ukončena", + "NotificationOptionInstallationFailed": "Chyba instalace", + "NotificationOptionNewLibraryContent": "Přidán nový obsah", + "NotificationOptionPluginError": "Chyba zásuvného modulu", + "NotificationOptionPluginInstalled": "Zásuvný modul instalován", + "NotificationOptionPluginUninstalled": "Zásuvný modul odstraněn", + "NotificationOptionPluginUpdateInstalled": "Aktualizace zásuvného modulu instalována", + "NotificationOptionServerRestartRequired": "Je vyžadován restart serveru", + "NotificationOptionTaskFailed": "Chyba naplánované úlohy", + "NotificationOptionUserLockedOut": "Uživatel uzamčen", + "NotificationOptionVideoPlayback": "Přehrávání videa zahájeno", + "NotificationOptionVideoPlaybackStopped": "Přehrávání videa ukončeno", + "Photos": "Fotky", + "Playlists": "Seznamy skladeb", + "Plugin": "Zásuvný modul", + "PluginInstalledWithName": "{0} byl nainstalován", + "PluginUninstalledWithName": "{0} byl odinstalován", + "PluginUpdatedWithName": "{0} byl aktualizován", + "ProviderValue": "Poskytl: {0}", + "ScheduledTaskFailedWithName": "{0} selhalo", + "ScheduledTaskStartedWithName": "{0} zahájeno", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Seriály", + "Songs": "Skladby", + "StartupEmbyServerIsLoading": "Jellyfin Server je spouštěn. Zkuste to prosím v brzké době znovu.", + "SubtitleDownloadFailureForItem": "Stahování titulků selhalo pro {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Staženy titulky pro {0}", + "Sync": "Synchronizace", + "System": "Systém", + "TvShows": "TV seriály", + "User": "Uživatel", + "UserCreatedWithName": "Uživatel {0} byl vytvořen", + "UserDeletedWithName": "Uživatel {0} byl smazán", + "UserDownloadingItemWithValues": "{0} stahuje {1}", + "UserLockedOutWithName": "Uživatel {0} byl odemčen", + "UserOfflineFromDevice": "{0} se odpojil od {1}", + "UserOnlineFromDevice": "{0} se připojil z {1}", + "UserPasswordChangedWithName": "Provedena změna hesla pro uživatele {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} spustil přehrávání {1}", + "UserStoppedPlayingItemWithValues": "{0} zastavil přehrávání {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Speciál - {0}", + "VersionNumber": "Verze {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/da.json b/Emby.Server.Implementations/Localization/Core/da.json index c7c2a796e..30581c389 100644 --- a/Emby.Server.Implementations/Localization/Core/da.json +++ b/Emby.Server.Implementations/Localization/Core/da.json @@ -1,100 +1,100 @@ { - "Albums": "Album", - "AppDeviceValues": "App: {0}, Enhed: {1}", - "Application": "Applikation", - "Artists": "Kunstner", - "AuthenticationSucceededWithUserName": "{0} bekræftet med succes", - "Books": "Bøger", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Kanaler", - "ChapterNameValue": "Kapitel {0}", - "Collections": "Samlinger", - "DeviceOfflineWithName": "{0} har afbrudt forbindelsen", - "DeviceOnlineWithName": "{0} er forbundet", - "FailedLoginAttemptWithUserName": "Fejlet loginforsøg fra {0}", - "Favorites": "Favoritter", - "Folders": "Mapper", - "Games": "Spil", - "Genres": "Genre", - "HeaderAlbumArtists": "Albumkunstnere", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Fortsæt Afspilning", - "HeaderFavoriteAlbums": "Favoritalbum", - "HeaderFavoriteArtists": "Favoritkunstnere", - "HeaderFavoriteEpisodes": "Favoritepisoder", - "HeaderFavoriteShows": "Favorit serier", - "HeaderFavoriteSongs": "Favoritsange", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Næste", - "HeaderRecordingGroups": "Optagegrupper", - "HomeVideos": "Hjemmevideoer", - "Inherit": "Arv", - "ItemAddedWithName": "{0} blev tilføjet til biblioteket", - "ItemRemovedWithName": "{0} blev fjernet fra biblioteket", - "LabelIpAddressValue": "IP-adresse: {0}", - "LabelRunningTimeValue": "Spilletid: {0}", - "Latest": "Seneste", - "MessageApplicationUpdated": "Jellyfin Server er blevet opdateret", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server konfigurationssektion {0} er blevet opdateret", - "MessageServerConfigurationUpdated": "Serverkonfiguration er blevet opdateret", - "MixedContent": "Blandet indhold", - "Movies": "Film", - "Music": "Musik", - "MusicVideos": "Musikvideoer", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Sæson {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Opdatering til applikation tilgængelig", - "NotificationOptionApplicationUpdateInstalled": "Opdatering til applikation installeret", - "NotificationOptionAudioPlayback": "Audioafspilning påbegyndt", - "NotificationOptionAudioPlaybackStopped": "Audioafspilning stoppet", - "NotificationOptionCameraImageUploaded": "Kamerabillede uploadet", - "NotificationOptionGamePlayback": "Afspilning af Spil påbegyndt", - "NotificationOptionGamePlaybackStopped": "Afspilning af Spil stoppet", - "NotificationOptionInstallationFailed": "Installationsfejl", - "NotificationOptionNewLibraryContent": "Nyt indhold tilføjet", - "NotificationOptionPluginError": "Pluginfejl", - "NotificationOptionPluginInstalled": "Plugin installeret", - "NotificationOptionPluginUninstalled": "Plugin afinstalleret", - "NotificationOptionPluginUpdateInstalled": "Opdatering til plugin installeret", - "NotificationOptionServerRestartRequired": "Genstart af server påkrævet", - "NotificationOptionTaskFailed": "Planlagt opgave fejlet", - "NotificationOptionUserLockedOut": "Bruger låst ude", - "NotificationOptionVideoPlayback": "Videoafspilning påbegyndt", - "NotificationOptionVideoPlaybackStopped": "Videoafspilning stoppet", - "Photos": "Fotos", - "Playlists": "Spillelister", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} blev installeret", - "PluginUninstalledWithName": "{0} blev afinstalleret", - "PluginUpdatedWithName": "{0} blev opdateret", - "ProviderValue": "Udbyder: {0}", - "ScheduledTaskFailedWithName": "{0} fejlet", - "ScheduledTaskStartedWithName": "{0} påbegyndt", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Sange", - "StartupEmbyServerIsLoading": "Jellyfin Server indlæser. Prøv venligst igen om kort tid.", - "SubtitleDownloadFailureForItem": "Fejlet i download af undertekster for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Undertekster downloadet for {0}", - "Sync": "Synk", - "System": "System", - "TvShows": "TV Shows", - "User": "Bruger", - "UserCreatedWithName": "Bruger {0} er blevet oprettet", - "UserDeletedWithName": "Brugeren {0} er blevet slettet", - "UserDownloadingItemWithValues": "{0} downloader {1}", - "UserLockedOutWithName": "Brugeren {0} er blevet låst ude", - "UserOfflineFromDevice": "{0} har afbrudt fra {1}", - "UserOnlineFromDevice": "{0} er online fra {1}", - "UserPasswordChangedWithName": "Adgangskode er ændret for bruger {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} har påbegyndt afspilning af {1}", - "UserStoppedPlayingItemWithValues": "{0} har afsluttet afspilning af {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Version {0}" + "Albums": "Album", + "AppDeviceValues": "App: {0}, Enhed: {1}", + "Application": "Applikation", + "Artists": "Kunstner", + "AuthenticationSucceededWithUserName": "{0} bekræftet med succes", + "Books": "Bøger", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Kanaler", + "ChapterNameValue": "Kapitel {0}", + "Collections": "Samlinger", + "DeviceOfflineWithName": "{0} har afbrudt forbindelsen", + "DeviceOnlineWithName": "{0} er forbundet", + "FailedLoginAttemptWithUserName": "Fejlet loginforsøg fra {0}", + "Favorites": "Favoritter", + "Folders": "Mapper", + "Games": "Spil", + "Genres": "Genre", + "HeaderAlbumArtists": "Albumkunstnere", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Fortsæt Afspilning", + "HeaderFavoriteAlbums": "Favoritalbum", + "HeaderFavoriteArtists": "Favoritkunstnere", + "HeaderFavoriteEpisodes": "Favoritepisoder", + "HeaderFavoriteShows": "Favorit serier", + "HeaderFavoriteSongs": "Favoritsange", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Næste", + "HeaderRecordingGroups": "Optagegrupper", + "HomeVideos": "Hjemmevideoer", + "Inherit": "Arv", + "ItemAddedWithName": "{0} blev tilføjet til biblioteket", + "ItemRemovedWithName": "{0} blev fjernet fra biblioteket", + "LabelIpAddressValue": "IP-adresse: {0}", + "LabelRunningTimeValue": "Spilletid: {0}", + "Latest": "Seneste", + "MessageApplicationUpdated": "Jellyfin Server er blevet opdateret", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server konfigurationssektion {0} er blevet opdateret", + "MessageServerConfigurationUpdated": "Serverkonfiguration er blevet opdateret", + "MixedContent": "Blandet indhold", + "Movies": "Film", + "Music": "Musik", + "MusicVideos": "Musikvideoer", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Sæson {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Opdatering til applikation tilgængelig", + "NotificationOptionApplicationUpdateInstalled": "Opdatering til applikation installeret", + "NotificationOptionAudioPlayback": "Audioafspilning påbegyndt", + "NotificationOptionAudioPlaybackStopped": "Audioafspilning stoppet", + "NotificationOptionCameraImageUploaded": "Kamerabillede uploadet", + "NotificationOptionGamePlayback": "Afspilning af Spil påbegyndt", + "NotificationOptionGamePlaybackStopped": "Afspilning af Spil stoppet", + "NotificationOptionInstallationFailed": "Installationsfejl", + "NotificationOptionNewLibraryContent": "Nyt indhold tilføjet", + "NotificationOptionPluginError": "Pluginfejl", + "NotificationOptionPluginInstalled": "Plugin installeret", + "NotificationOptionPluginUninstalled": "Plugin afinstalleret", + "NotificationOptionPluginUpdateInstalled": "Opdatering til plugin installeret", + "NotificationOptionServerRestartRequired": "Genstart af server påkrævet", + "NotificationOptionTaskFailed": "Planlagt opgave fejlet", + "NotificationOptionUserLockedOut": "Bruger låst ude", + "NotificationOptionVideoPlayback": "Videoafspilning påbegyndt", + "NotificationOptionVideoPlaybackStopped": "Videoafspilning stoppet", + "Photos": "Fotos", + "Playlists": "Spillelister", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} blev installeret", + "PluginUninstalledWithName": "{0} blev afinstalleret", + "PluginUpdatedWithName": "{0} blev opdateret", + "ProviderValue": "Udbyder: {0}", + "ScheduledTaskFailedWithName": "{0} fejlet", + "ScheduledTaskStartedWithName": "{0} påbegyndt", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Sange", + "StartupEmbyServerIsLoading": "Jellyfin Server indlæser. Prøv venligst igen om kort tid.", + "SubtitleDownloadFailureForItem": "Fejlet i download af undertekster for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Undertekster downloadet for {0}", + "Sync": "Synk", + "System": "System", + "TvShows": "TV Shows", + "User": "Bruger", + "UserCreatedWithName": "Bruger {0} er blevet oprettet", + "UserDeletedWithName": "Brugeren {0} er blevet slettet", + "UserDownloadingItemWithValues": "{0} downloader {1}", + "UserLockedOutWithName": "Brugeren {0} er blevet låst ude", + "UserOfflineFromDevice": "{0} har afbrudt fra {1}", + "UserOnlineFromDevice": "{0} er online fra {1}", + "UserPasswordChangedWithName": "Adgangskode er ændret for bruger {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} har påbegyndt afspilning af {1}", + "UserStoppedPlayingItemWithValues": "{0} har afsluttet afspilning af {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/de.json b/Emby.Server.Implementations/Localization/Core/de.json index c5873450c..98cb07663 100644 --- a/Emby.Server.Implementations/Localization/Core/de.json +++ b/Emby.Server.Implementations/Localization/Core/de.json @@ -1,100 +1,100 @@ { - "Albums": "Alben", - "AppDeviceValues": "App: {0}, Gerät: {1}", - "Application": "Anwendung", - "Artists": "Interpreten", - "AuthenticationSucceededWithUserName": "{0} erfolgreich authentifiziert", - "Books": "Bücher", - "CameraImageUploadedFrom": "Ein neues Bild wurde hochgeladen von {0}", - "Channels": "Kanäle", - "ChapterNameValue": "Kapitel {0}", - "Collections": "Sammlungen", - "DeviceOfflineWithName": "{0} wurde getrennt", - "DeviceOnlineWithName": "{0} ist verbunden", - "FailedLoginAttemptWithUserName": "Fehlgeschlagener Anmeldeversuch von {0}", - "Favorites": "Favoriten", - "Folders": "Verzeichnisse", - "Games": "Spiele", - "Genres": "Genres", - "HeaderAlbumArtists": "Album-Künstler", - "HeaderCameraUploads": "Kamera Uploads", - "HeaderContinueWatching": "Weiterschauen", - "HeaderFavoriteAlbums": "Lieblingsalben", - "HeaderFavoriteArtists": "Interpreten Favoriten", - "HeaderFavoriteEpisodes": "Lieblingsepisoden", - "HeaderFavoriteShows": "Lieblingsserien", - "HeaderFavoriteSongs": "Lieder Favoriten", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Als Nächstes", - "HeaderRecordingGroups": "Aufnahme-Gruppen", - "HomeVideos": "Heimvideos", - "Inherit": "Übernehmen", - "ItemAddedWithName": "{0} wurde der Bibliothek hinzugefügt", - "ItemRemovedWithName": "{0} wurde aus der Bibliothek entfernt", - "LabelIpAddressValue": "IP Adresse: {0}", - "LabelRunningTimeValue": "Laufzeit: {0}", - "Latest": "Neueste", - "MessageApplicationUpdated": "Jellyfin Server wurde auf den neusten Stand gebracht.", - "MessageApplicationUpdatedTo": "Jellyfin Server wurde auf Version {0} aktualisiert", - "MessageNamedServerConfigurationUpdatedWithValue": "Der Server Einstellungsbereich {0} wurde aktualisiert", - "MessageServerConfigurationUpdated": "Server Einstellungen wurden aktualisiert", - "MixedContent": "Gemischte Inhalte", - "Movies": "Filme", - "Music": "Musik", - "MusicVideos": "Musikvideos", - "NameInstallFailed": "{0} Installation fehlgeschlagen", - "NameSeasonNumber": "Staffel {0}", - "NameSeasonUnknown": "Staffel unbekannt", - "NewVersionIsAvailable": "Eine neue Version von Jellyfin Server steht zum Download bereit.", - "NotificationOptionApplicationUpdateAvailable": "Anwendungsaktualisierung verfügbar", - "NotificationOptionApplicationUpdateInstalled": "Anwendungsaktualisierung installiert", - "NotificationOptionAudioPlayback": "Audiowiedergabe gestartet", - "NotificationOptionAudioPlaybackStopped": "Audiowiedergabe gestoppt", - "NotificationOptionCameraImageUploaded": "Kamera Bild hochgeladen", - "NotificationOptionGamePlayback": "Spielwiedergabe gestartet", - "NotificationOptionGamePlaybackStopped": "Spielwiedergabe gestoppt", - "NotificationOptionInstallationFailed": "Installationsfehler", - "NotificationOptionNewLibraryContent": "Neuer Inhalt hinzugefügt", - "NotificationOptionPluginError": "Plugin Fehler", - "NotificationOptionPluginInstalled": "Plugin installiert", - "NotificationOptionPluginUninstalled": "Plugin deinstalliert", - "NotificationOptionPluginUpdateInstalled": "Pluginaktualisierung installiert", - "NotificationOptionServerRestartRequired": "Serverneustart notwendig", - "NotificationOptionTaskFailed": "Geplante Aufgaben fehlgeschlagen", - "NotificationOptionUserLockedOut": "Benutzer ausgeschlossen", - "NotificationOptionVideoPlayback": "Videowiedergabe gestartet", - "NotificationOptionVideoPlaybackStopped": "Videowiedergabe gestoppt", - "Photos": "Fotos", - "Playlists": "Wiedergabelisten", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} wurde installiert", - "PluginUninstalledWithName": "{0} wurde deinstalliert", - "PluginUpdatedWithName": "{0} wurde aktualisiert", - "ProviderValue": "Anbieter: {0}", - "ScheduledTaskFailedWithName": "{0} fehlgeschlagen", - "ScheduledTaskStartedWithName": "{0} gestartet", - "ServerNameNeedsToBeRestarted": "{0} muss neu gestartet werden", - "Shows": "Serien", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server startet, bitte versuche es gleich noch einmal.", - "SubtitleDownloadFailureForItem": "Download der Untertitel fehlgeschlagen für {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Untertitel heruntergeladen für {0}", - "Sync": "Synchronisation", - "System": "System", - "TvShows": "TV Sendungen", - "User": "Benutzer", - "UserCreatedWithName": "Benutzer {0} wurde erstellt", - "UserDeletedWithName": "Benutzer {0} wurde gelöscht", - "UserDownloadingItemWithValues": "{0} lädt {1} herunter", - "UserLockedOutWithName": "Benutzer {0} wurde ausgeschlossen", - "UserOfflineFromDevice": "{0} wurde getrennt von {1}", - "UserOnlineFromDevice": "{0} ist online von {1}", - "UserPasswordChangedWithName": "Das Passwort für Benutzer {0} wurde geändert", - "UserPolicyUpdatedWithName": "Benutzerrichtlinie wurde für {0} aktualisiert", - "UserStartedPlayingItemWithValues": "{0} hat die Wiedergabe von {1} gestartet", - "UserStoppedPlayingItemWithValues": "{0} hat die Wiedergabe von {1} beendet", - "ValueHasBeenAddedToLibrary": "{0} wurde ihrer Bibliothek hinzugefügt", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Version {0}" + "Albums": "Alben", + "AppDeviceValues": "App: {0}, Gerät: {1}", + "Application": "Anwendung", + "Artists": "Interpreten", + "AuthenticationSucceededWithUserName": "{0} erfolgreich authentifiziert", + "Books": "Bücher", + "CameraImageUploadedFrom": "Ein neues Bild wurde hochgeladen von {0}", + "Channels": "Kanäle", + "ChapterNameValue": "Kapitel {0}", + "Collections": "Sammlungen", + "DeviceOfflineWithName": "{0} wurde getrennt", + "DeviceOnlineWithName": "{0} ist verbunden", + "FailedLoginAttemptWithUserName": "Fehlgeschlagener Anmeldeversuch von {0}", + "Favorites": "Favoriten", + "Folders": "Verzeichnisse", + "Games": "Spiele", + "Genres": "Genres", + "HeaderAlbumArtists": "Album-Künstler", + "HeaderCameraUploads": "Kamera Uploads", + "HeaderContinueWatching": "Weiterschauen", + "HeaderFavoriteAlbums": "Lieblingsalben", + "HeaderFavoriteArtists": "Interpreten Favoriten", + "HeaderFavoriteEpisodes": "Lieblingsepisoden", + "HeaderFavoriteShows": "Lieblingsserien", + "HeaderFavoriteSongs": "Lieder Favoriten", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Als Nächstes", + "HeaderRecordingGroups": "Aufnahme-Gruppen", + "HomeVideos": "Heimvideos", + "Inherit": "Übernehmen", + "ItemAddedWithName": "{0} wurde der Bibliothek hinzugefügt", + "ItemRemovedWithName": "{0} wurde aus der Bibliothek entfernt", + "LabelIpAddressValue": "IP Adresse: {0}", + "LabelRunningTimeValue": "Laufzeit: {0}", + "Latest": "Neueste", + "MessageApplicationUpdated": "Jellyfin Server wurde auf den neusten Stand gebracht.", + "MessageApplicationUpdatedTo": "Jellyfin Server wurde auf Version {0} aktualisiert", + "MessageNamedServerConfigurationUpdatedWithValue": "Der Server Einstellungsbereich {0} wurde aktualisiert", + "MessageServerConfigurationUpdated": "Server Einstellungen wurden aktualisiert", + "MixedContent": "Gemischte Inhalte", + "Movies": "Filme", + "Music": "Musik", + "MusicVideos": "Musikvideos", + "NameInstallFailed": "{0} Installation fehlgeschlagen", + "NameSeasonNumber": "Staffel {0}", + "NameSeasonUnknown": "Staffel unbekannt", + "NewVersionIsAvailable": "Eine neue Version von Jellyfin Server steht zum Download bereit.", + "NotificationOptionApplicationUpdateAvailable": "Anwendungsaktualisierung verfügbar", + "NotificationOptionApplicationUpdateInstalled": "Anwendungsaktualisierung installiert", + "NotificationOptionAudioPlayback": "Audiowiedergabe gestartet", + "NotificationOptionAudioPlaybackStopped": "Audiowiedergabe gestoppt", + "NotificationOptionCameraImageUploaded": "Kamera Bild hochgeladen", + "NotificationOptionGamePlayback": "Spielwiedergabe gestartet", + "NotificationOptionGamePlaybackStopped": "Spielwiedergabe gestoppt", + "NotificationOptionInstallationFailed": "Installationsfehler", + "NotificationOptionNewLibraryContent": "Neuer Inhalt hinzugefügt", + "NotificationOptionPluginError": "Plugin Fehler", + "NotificationOptionPluginInstalled": "Plugin installiert", + "NotificationOptionPluginUninstalled": "Plugin deinstalliert", + "NotificationOptionPluginUpdateInstalled": "Pluginaktualisierung installiert", + "NotificationOptionServerRestartRequired": "Serverneustart notwendig", + "NotificationOptionTaskFailed": "Geplante Aufgaben fehlgeschlagen", + "NotificationOptionUserLockedOut": "Benutzer ausgeschlossen", + "NotificationOptionVideoPlayback": "Videowiedergabe gestartet", + "NotificationOptionVideoPlaybackStopped": "Videowiedergabe gestoppt", + "Photos": "Fotos", + "Playlists": "Wiedergabelisten", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} wurde installiert", + "PluginUninstalledWithName": "{0} wurde deinstalliert", + "PluginUpdatedWithName": "{0} wurde aktualisiert", + "ProviderValue": "Anbieter: {0}", + "ScheduledTaskFailedWithName": "{0} fehlgeschlagen", + "ScheduledTaskStartedWithName": "{0} gestartet", + "ServerNameNeedsToBeRestarted": "{0} muss neu gestartet werden", + "Shows": "Serien", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server startet, bitte versuche es gleich noch einmal.", + "SubtitleDownloadFailureForItem": "Download der Untertitel fehlgeschlagen für {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Untertitel heruntergeladen für {0}", + "Sync": "Synchronisation", + "System": "System", + "TvShows": "TV Sendungen", + "User": "Benutzer", + "UserCreatedWithName": "Benutzer {0} wurde erstellt", + "UserDeletedWithName": "Benutzer {0} wurde gelöscht", + "UserDownloadingItemWithValues": "{0} lädt {1} herunter", + "UserLockedOutWithName": "Benutzer {0} wurde ausgeschlossen", + "UserOfflineFromDevice": "{0} wurde getrennt von {1}", + "UserOnlineFromDevice": "{0} ist online von {1}", + "UserPasswordChangedWithName": "Das Passwort für Benutzer {0} wurde geändert", + "UserPolicyUpdatedWithName": "Benutzerrichtlinie wurde für {0} aktualisiert", + "UserStartedPlayingItemWithValues": "{0} hat die Wiedergabe von {1} gestartet", + "UserStoppedPlayingItemWithValues": "{0} hat die Wiedergabe von {1} beendet", + "ValueHasBeenAddedToLibrary": "{0} wurde ihrer Bibliothek hinzugefügt", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/el.json b/Emby.Server.Implementations/Localization/Core/el.json index 81903db8f..ba687a089 100644 --- a/Emby.Server.Implementations/Localization/Core/el.json +++ b/Emby.Server.Implementations/Localization/Core/el.json @@ -1,100 +1,100 @@ { - "Albums": "Άλμπουμ", - "AppDeviceValues": "Εφαρμογή: {0}, Συσκευή: {1}", - "Application": "Εφαρμογή", - "Artists": "Καλλιτέχνες", - "AuthenticationSucceededWithUserName": "{0} επιτυχείς σύνδεση", - "Books": "Βιβλία", - "CameraImageUploadedFrom": "Μια νέα εικόνα κάμερας έχει αποσταλεί από {0}", - "Channels": "Κανάλια", - "ChapterNameValue": "Κεφάλαιο {0}", - "Collections": "Συλλογές", - "DeviceOfflineWithName": "{0} αποσυνδέθηκε", - "DeviceOnlineWithName": "{0} συνδέθηκε", - "FailedLoginAttemptWithUserName": "Αποτυχημένη προσπάθεια σύνδεσης από {0}", - "Favorites": "Αγαπημένα", - "Folders": "Φάκελοι", - "Games": "Παιχνίδια", - "Genres": "Είδη", - "HeaderAlbumArtists": "Άλμπουμ Καλλιτεχνών", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Συνεχίστε να παρακολουθείτε", - "HeaderFavoriteAlbums": "Αγαπημένα Άλμπουμ", - "HeaderFavoriteArtists": "Αγαπημένοι Καλλιτέχνες", - "HeaderFavoriteEpisodes": "Αγαπημένα Επεισόδια", - "HeaderFavoriteShows": "Αγαπημένες Σειρές", - "HeaderFavoriteSongs": "Αγαπημένα Τραγούδια", - "HeaderLiveTV": "Ζωντανή Τηλεόραση", - "HeaderNextUp": "Επόμενο", - "HeaderRecordingGroups": "Γκρουπ Εγγραφών", - "HomeVideos": "Προσωπικά βίντεο", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} προστέθηκε στη βιβλιοθήκη", - "ItemRemovedWithName": "{0} διαγράφηκε από τη βιβλιοθήκη", - "LabelIpAddressValue": "Διεύθυνση IP: {0}", - "LabelRunningTimeValue": "Διάρκεια: {0}", - "Latest": "Πρόσφατα", - "MessageApplicationUpdated": "Ο Jellyfin Server έχει ενημερωθεί", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Η ενότητα {0} ρύθμισης παραμέτρων του server έχει ενημερωθεί", - "MessageServerConfigurationUpdated": "Η ρύθμιση παραμέτρων του server έχει ενημερωθεί", - "MixedContent": "Ανάμεικτο Περιεχόμενο", - "Movies": "Ταινίες", - "Music": "Μουσική", - "MusicVideos": "Μουσικά βίντεο", - "NameInstallFailed": "{0} η εγκατάσταση απέτυχε", - "NameSeasonNumber": "Κύκλος {0}", - "NameSeasonUnknown": "Άγνωστος Κύκλος", - "NewVersionIsAvailable": "Μια νέα έκδοση του Jellyfin Server είναι διαθέσιμη για λήψη.", - "NotificationOptionApplicationUpdateAvailable": "Διαθέσιμη ενημερωμένη έκδοση εφαρμογής", - "NotificationOptionApplicationUpdateInstalled": "Η ενημέρωση εφαρμογής εγκαταστάθηκε", - "NotificationOptionAudioPlayback": "Η αναπαραγωγή ήχου ξεκίνησε", - "NotificationOptionAudioPlaybackStopped": "Η αναπαραγωγή ήχου σταμάτησε", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Η αναπαραγωγή του παιχνιδιού ξεκίνησε", - "NotificationOptionGamePlaybackStopped": "Η αναπαραγωγή του παιχνιδιού σταμάτησε", - "NotificationOptionInstallationFailed": "Αποτυχία εγκατάστασης", - "NotificationOptionNewLibraryContent": "Προστέθηκε νέο περιεχόμενο", - "NotificationOptionPluginError": "Αποτυχία του plugin", - "NotificationOptionPluginInstalled": "Το plugin εγκαταστάθηκε", - "NotificationOptionPluginUninstalled": "Το plugin απεγκαταστάθηκε", - "NotificationOptionPluginUpdateInstalled": "Η αναβάθμιση του plugin εγκαταστάθηκε", - "NotificationOptionServerRestartRequired": "Απαιτείται επανεκκίνηση του server", - "NotificationOptionTaskFailed": "Αποτυχία προγραμματισμένης εργασίας", - "NotificationOptionUserLockedOut": "Ο χρήστης αποκλείστηκε", - "NotificationOptionVideoPlayback": "Η αναπαραγωγή βίντεο ξεκίνησε", - "NotificationOptionVideoPlaybackStopped": "Η αναπαραγωγή βίντεο σταμάτησε", - "Photos": "Φωτογραφίες", - "Playlists": "Λίστες αναπαραγωγής", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} εγκαταστήθηκε", - "PluginUninstalledWithName": "{0} έχει απεγκατασταθεί", - "PluginUpdatedWithName": "{0} έχει αναβαθμιστεί", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} αποτυχία", - "ScheduledTaskStartedWithName": "{0} ξεκίνησε", - "ServerNameNeedsToBeRestarted": "{0} χρειάζεται επανεκκίνηση", - "Shows": "Σειρές", - "Songs": "Τραγούδια", - "StartupEmbyServerIsLoading": "Ο Jellyfin Server φορτώνει. Παρακαλώ δοκιμάστε σε λίγο.", - "SubtitleDownloadFailureForItem": "Οι υπότιτλοι απέτυχαν να κατέβουν για {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Οι υπότιτλοι κατέβηκαν για {0}", - "Sync": "Συγχρονισμός", - "System": "Σύστημα", - "TvShows": "Τηλεοπτικές Σειρές", - "User": "Χρήστης", - "UserCreatedWithName": "Δημιουργήθηκε ο χρήστης {0}", - "UserDeletedWithName": "Ο χρήστης {0} έχει διαγραφεί", - "UserDownloadingItemWithValues": "{0} κατεβάζει {1}", - "UserLockedOutWithName": "Ο χρήστης {0} αποκλείστηκε", - "UserOfflineFromDevice": "{0} αποσυνδέθηκε από {1}", - "UserOnlineFromDevice": "{0} είναι online απο {1}", - "UserPasswordChangedWithName": "Ο κωδικός του χρήστη {0} έχει αλλάξει", - "UserPolicyUpdatedWithName": "Η πολιτική χρήστη έχει ενημερωθεί για {0}", - "UserStartedPlayingItemWithValues": "{0} παίζει {1} σε {2}", - "UserStoppedPlayingItemWithValues": "{0} τελείωσε να παίζει {1} σε {2}", - "ValueHasBeenAddedToLibrary": "{0} προστέθηκαν στη βιβλιοθήκη πολυμέσων σας", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Έκδοση {0}" + "Albums": "Άλμπουμ", + "AppDeviceValues": "Εφαρμογή: {0}, Συσκευή: {1}", + "Application": "Εφαρμογή", + "Artists": "Καλλιτέχνες", + "AuthenticationSucceededWithUserName": "{0} επιτυχείς σύνδεση", + "Books": "Βιβλία", + "CameraImageUploadedFrom": "Μια νέα εικόνα κάμερας έχει αποσταλεί από {0}", + "Channels": "Κανάλια", + "ChapterNameValue": "Κεφάλαιο {0}", + "Collections": "Συλλογές", + "DeviceOfflineWithName": "{0} αποσυνδέθηκε", + "DeviceOnlineWithName": "{0} συνδέθηκε", + "FailedLoginAttemptWithUserName": "Αποτυχημένη προσπάθεια σύνδεσης από {0}", + "Favorites": "Αγαπημένα", + "Folders": "Φάκελοι", + "Games": "Παιχνίδια", + "Genres": "Είδη", + "HeaderAlbumArtists": "Άλμπουμ Καλλιτεχνών", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Συνεχίστε να παρακολουθείτε", + "HeaderFavoriteAlbums": "Αγαπημένα Άλμπουμ", + "HeaderFavoriteArtists": "Αγαπημένοι Καλλιτέχνες", + "HeaderFavoriteEpisodes": "Αγαπημένα Επεισόδια", + "HeaderFavoriteShows": "Αγαπημένες Σειρές", + "HeaderFavoriteSongs": "Αγαπημένα Τραγούδια", + "HeaderLiveTV": "Ζωντανή Τηλεόραση", + "HeaderNextUp": "Επόμενο", + "HeaderRecordingGroups": "Γκρουπ Εγγραφών", + "HomeVideos": "Προσωπικά βίντεο", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} προστέθηκε στη βιβλιοθήκη", + "ItemRemovedWithName": "{0} διαγράφηκε από τη βιβλιοθήκη", + "LabelIpAddressValue": "Διεύθυνση IP: {0}", + "LabelRunningTimeValue": "Διάρκεια: {0}", + "Latest": "Πρόσφατα", + "MessageApplicationUpdated": "Ο Jellyfin Server έχει ενημερωθεί", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Η ενότητα {0} ρύθμισης παραμέτρων του server έχει ενημερωθεί", + "MessageServerConfigurationUpdated": "Η ρύθμιση παραμέτρων του server έχει ενημερωθεί", + "MixedContent": "Ανάμεικτο Περιεχόμενο", + "Movies": "Ταινίες", + "Music": "Μουσική", + "MusicVideos": "Μουσικά βίντεο", + "NameInstallFailed": "{0} η εγκατάσταση απέτυχε", + "NameSeasonNumber": "Κύκλος {0}", + "NameSeasonUnknown": "Άγνωστος Κύκλος", + "NewVersionIsAvailable": "Μια νέα έκδοση του Jellyfin Server είναι διαθέσιμη για λήψη.", + "NotificationOptionApplicationUpdateAvailable": "Διαθέσιμη ενημερωμένη έκδοση εφαρμογής", + "NotificationOptionApplicationUpdateInstalled": "Η ενημέρωση εφαρμογής εγκαταστάθηκε", + "NotificationOptionAudioPlayback": "Η αναπαραγωγή ήχου ξεκίνησε", + "NotificationOptionAudioPlaybackStopped": "Η αναπαραγωγή ήχου σταμάτησε", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Η αναπαραγωγή του παιχνιδιού ξεκίνησε", + "NotificationOptionGamePlaybackStopped": "Η αναπαραγωγή του παιχνιδιού σταμάτησε", + "NotificationOptionInstallationFailed": "Αποτυχία εγκατάστασης", + "NotificationOptionNewLibraryContent": "Προστέθηκε νέο περιεχόμενο", + "NotificationOptionPluginError": "Αποτυχία του plugin", + "NotificationOptionPluginInstalled": "Το plugin εγκαταστάθηκε", + "NotificationOptionPluginUninstalled": "Το plugin απεγκαταστάθηκε", + "NotificationOptionPluginUpdateInstalled": "Η αναβάθμιση του plugin εγκαταστάθηκε", + "NotificationOptionServerRestartRequired": "Απαιτείται επανεκκίνηση του server", + "NotificationOptionTaskFailed": "Αποτυχία προγραμματισμένης εργασίας", + "NotificationOptionUserLockedOut": "Ο χρήστης αποκλείστηκε", + "NotificationOptionVideoPlayback": "Η αναπαραγωγή βίντεο ξεκίνησε", + "NotificationOptionVideoPlaybackStopped": "Η αναπαραγωγή βίντεο σταμάτησε", + "Photos": "Φωτογραφίες", + "Playlists": "Λίστες αναπαραγωγής", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} εγκαταστήθηκε", + "PluginUninstalledWithName": "{0} έχει απεγκατασταθεί", + "PluginUpdatedWithName": "{0} έχει αναβαθμιστεί", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} αποτυχία", + "ScheduledTaskStartedWithName": "{0} ξεκίνησε", + "ServerNameNeedsToBeRestarted": "{0} χρειάζεται επανεκκίνηση", + "Shows": "Σειρές", + "Songs": "Τραγούδια", + "StartupEmbyServerIsLoading": "Ο Jellyfin Server φορτώνει. Παρακαλώ δοκιμάστε σε λίγο.", + "SubtitleDownloadFailureForItem": "Οι υπότιτλοι απέτυχαν να κατέβουν για {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Οι υπότιτλοι κατέβηκαν για {0}", + "Sync": "Συγχρονισμός", + "System": "Σύστημα", + "TvShows": "Τηλεοπτικές Σειρές", + "User": "Χρήστης", + "UserCreatedWithName": "Δημιουργήθηκε ο χρήστης {0}", + "UserDeletedWithName": "Ο χρήστης {0} έχει διαγραφεί", + "UserDownloadingItemWithValues": "{0} κατεβάζει {1}", + "UserLockedOutWithName": "Ο χρήστης {0} αποκλείστηκε", + "UserOfflineFromDevice": "{0} αποσυνδέθηκε από {1}", + "UserOnlineFromDevice": "{0} είναι online απο {1}", + "UserPasswordChangedWithName": "Ο κωδικός του χρήστη {0} έχει αλλάξει", + "UserPolicyUpdatedWithName": "Η πολιτική χρήστη έχει ενημερωθεί για {0}", + "UserStartedPlayingItemWithValues": "{0} παίζει {1} σε {2}", + "UserStoppedPlayingItemWithValues": "{0} τελείωσε να παίζει {1} σε {2}", + "ValueHasBeenAddedToLibrary": "{0} προστέθηκαν στη βιβλιοθήκη πολυμέσων σας", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Έκδοση {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/en-GB.json b/Emby.Server.Implementations/Localization/Core/en-GB.json index b16afea5b..20d397a1a 100644 --- a/Emby.Server.Implementations/Localization/Core/en-GB.json +++ b/Emby.Server.Implementations/Localization/Core/en-GB.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favourites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continue Watching", - "HeaderFavoriteAlbums": "Favourite Albums", - "HeaderFavoriteArtists": "Favourite Artists", - "HeaderFavoriteEpisodes": "Favourite Episodes", - "HeaderFavoriteShows": "Favourite Shows", - "HeaderFavoriteSongs": "Favourite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "IP address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} has started playing {1}", - "UserStoppedPlayingItemWithValues": "{0} has stopped playing {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favourites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continue Watching", + "HeaderFavoriteAlbums": "Favourite Albums", + "HeaderFavoriteArtists": "Favourite Artists", + "HeaderFavoriteEpisodes": "Favourite Episodes", + "HeaderFavoriteShows": "Favourite Shows", + "HeaderFavoriteSongs": "Favourite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "IP address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} has started playing {1}", + "UserStoppedPlayingItemWithValues": "{0} has stopped playing {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/en-US.json b/Emby.Server.Implementations/Localization/Core/en-US.json index b90e8b593..69c8bf03c 100644 --- a/Emby.Server.Implementations/Localization/Core/en-US.json +++ b/Emby.Server.Implementations/Localization/Core/en-US.json @@ -1,99 +1,99 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continue Watching", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continue Watching", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/es-AR.json b/Emby.Server.Implementations/Localization/Core/es-AR.json index ae74d6f7e..aaaf09788 100644 --- a/Emby.Server.Implementations/Localization/Core/es-AR.json +++ b/Emby.Server.Implementations/Localization/Core/es-AR.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continue Watching", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Series", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continue Watching", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Series", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/es-MX.json b/Emby.Server.Implementations/Localization/Core/es-MX.json index 4fa29a398..2ba9c8c7a 100644 --- a/Emby.Server.Implementations/Localization/Core/es-MX.json +++ b/Emby.Server.Implementations/Localization/Core/es-MX.json @@ -1,100 +1,100 @@ { - "Albums": "Álbumes", - "AppDeviceValues": "App: {0}, Dispositivo: {1}", - "Application": "Aplicación", - "Artists": "Artistas", - "AuthenticationSucceededWithUserName": "{0} autenticado con éxito", - "Books": "Libros", - "CameraImageUploadedFrom": "Una nueva imagen de cámara ha sido subida desde {0}", - "Channels": "Canales", - "ChapterNameValue": "Capítulo {0}", - "Collections": "Colecciones", - "DeviceOfflineWithName": "{0} se ha desconectado", - "DeviceOnlineWithName": "{0} está conectado", - "FailedLoginAttemptWithUserName": "Intento fallido de inicio de sesión de {0}", - "Favorites": "Favoritos", - "Folders": "Carpetas", - "Games": "Juegos", - "Genres": "Géneros", - "HeaderAlbumArtists": "Artistas del Álbum", - "HeaderCameraUploads": "Subidos desde Camara", - "HeaderContinueWatching": "Continuar Viendo", - "HeaderFavoriteAlbums": "Álbumes Favoritos", - "HeaderFavoriteArtists": "Artistas Favoritos", - "HeaderFavoriteEpisodes": "Episodios Preferidos", - "HeaderFavoriteShows": "Programas Preferidos", - "HeaderFavoriteSongs": "Canciones Favoritas", - "HeaderLiveTV": "TV en Vivo", - "HeaderNextUp": "A Continuación", - "HeaderRecordingGroups": "Grupos de Grabaciones", - "HomeVideos": "Videos caseros", - "Inherit": "Heredar", - "ItemAddedWithName": "{0} fue agregado a la biblioteca", - "ItemRemovedWithName": "{0} fue removido de la biblioteca", - "LabelIpAddressValue": "Dirección IP: {0}", - "LabelRunningTimeValue": "Duración: {0}", - "Latest": "Recientes", - "MessageApplicationUpdated": "El servidor Jellyfin ha sido actualizado", - "MessageApplicationUpdatedTo": "El servidor Jellyfin ha sido actualizado a {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Se ha actualizado la sección {0} de la configuración del servidor", - "MessageServerConfigurationUpdated": "Se ha actualizado la configuración del servidor", - "MixedContent": "Contenido mezclado", - "Movies": "Películas", - "Music": "Música", - "MusicVideos": "Videos musicales", - "NameInstallFailed": "{0} instalación fallida", - "NameSeasonNumber": "Temporada {0}", - "NameSeasonUnknown": "Temporada Desconocida", - "NewVersionIsAvailable": "Una nueva versión del Servidor Jellyfin está disponible para descargar.", - "NotificationOptionApplicationUpdateAvailable": "Actualización de aplicación disponible", - "NotificationOptionApplicationUpdateInstalled": "Actualización de aplicación instalada", - "NotificationOptionAudioPlayback": "Reproducción de audio iniciada", - "NotificationOptionAudioPlaybackStopped": "Reproducción de audio detenida", - "NotificationOptionCameraImageUploaded": "Imagen de la cámara subida", - "NotificationOptionGamePlayback": "Ejecución de juego iniciada", - "NotificationOptionGamePlaybackStopped": "Ejecución de juego detenida", - "NotificationOptionInstallationFailed": "Falla de instalación", - "NotificationOptionNewLibraryContent": "Nuevo contenido agregado", - "NotificationOptionPluginError": "Falla de complemento", - "NotificationOptionPluginInstalled": "Complemento instalado", - "NotificationOptionPluginUninstalled": "Complemento desinstalado", - "NotificationOptionPluginUpdateInstalled": "Actualización de complemento instalada", - "NotificationOptionServerRestartRequired": "Se necesita reiniciar el Servidor", - "NotificationOptionTaskFailed": "Falla de tarea programada", - "NotificationOptionUserLockedOut": "Usuario bloqueado", - "NotificationOptionVideoPlayback": "Reproducción de video iniciada", - "NotificationOptionVideoPlaybackStopped": "Reproducción de video detenida", - "Photos": "Fotos", - "Playlists": "Listas de reproducción", - "Plugin": "Complemento", - "PluginInstalledWithName": "{0} fue instalado", - "PluginUninstalledWithName": "{0} fue desinstalado", - "PluginUpdatedWithName": "{0} fue actualizado", - "ProviderValue": "Proveedor: {0}", - "ScheduledTaskFailedWithName": "{0} falló", - "ScheduledTaskStartedWithName": "{0} Iniciado", - "ServerNameNeedsToBeRestarted": "{0} debe ser reiniciado", - "Shows": "Programas", - "Songs": "Canciones", - "StartupEmbyServerIsLoading": "El servidor Jellyfin esta cargando. Por favor intente de nuevo dentro de poco.", - "SubtitleDownloadFailureForItem": "Falló la descarga de subtítulos para {0}", - "SubtitleDownloadFailureFromForItem": "Falló la descarga de subtitulos desde {0} para {1}", - "SubtitlesDownloadedForItem": "Subtítulos descargados para {0}", - "Sync": "Sincronizar", - "System": "Sistema", - "TvShows": "Programas de TV", - "User": "Usuario", - "UserCreatedWithName": "Se ha creado el usuario {0}", - "UserDeletedWithName": "Se ha eliminado el usuario {0}", - "UserDownloadingItemWithValues": "{0} esta descargando {1}", - "UserLockedOutWithName": "El usuario {0} ha sido bloqueado", - "UserOfflineFromDevice": "{0} se ha desconectado desde {1}", - "UserOnlineFromDevice": "{0} está en línea desde {1}", - "UserPasswordChangedWithName": "Se ha cambiado la contraseña para el usuario {0}", - "UserPolicyUpdatedWithName": "Las política de usuario ha sido actualizada por {0}", - "UserStartedPlayingItemWithValues": "{0} está reproduciéndose {1} en {2}", - "UserStoppedPlayingItemWithValues": "{0} ha terminado de reproducirse {1} en {2}", - "ValueHasBeenAddedToLibrary": "{0} se han añadido a su biblioteca de medios", - "ValueSpecialEpisodeName": "Especial - {0}", - "VersionNumber": "Versión {0}" + "Albums": "Álbumes", + "AppDeviceValues": "App: {0}, Dispositivo: {1}", + "Application": "Aplicación", + "Artists": "Artistas", + "AuthenticationSucceededWithUserName": "{0} autenticado con éxito", + "Books": "Libros", + "CameraImageUploadedFrom": "Una nueva imagen de cámara ha sido subida desde {0}", + "Channels": "Canales", + "ChapterNameValue": "Capítulo {0}", + "Collections": "Colecciones", + "DeviceOfflineWithName": "{0} se ha desconectado", + "DeviceOnlineWithName": "{0} está conectado", + "FailedLoginAttemptWithUserName": "Intento fallido de inicio de sesión de {0}", + "Favorites": "Favoritos", + "Folders": "Carpetas", + "Games": "Juegos", + "Genres": "Géneros", + "HeaderAlbumArtists": "Artistas del Álbum", + "HeaderCameraUploads": "Subidos desde Camara", + "HeaderContinueWatching": "Continuar Viendo", + "HeaderFavoriteAlbums": "Álbumes Favoritos", + "HeaderFavoriteArtists": "Artistas Favoritos", + "HeaderFavoriteEpisodes": "Episodios Preferidos", + "HeaderFavoriteShows": "Programas Preferidos", + "HeaderFavoriteSongs": "Canciones Favoritas", + "HeaderLiveTV": "TV en Vivo", + "HeaderNextUp": "A Continuación", + "HeaderRecordingGroups": "Grupos de Grabaciones", + "HomeVideos": "Videos caseros", + "Inherit": "Heredar", + "ItemAddedWithName": "{0} fue agregado a la biblioteca", + "ItemRemovedWithName": "{0} fue removido de la biblioteca", + "LabelIpAddressValue": "Dirección IP: {0}", + "LabelRunningTimeValue": "Duración: {0}", + "Latest": "Recientes", + "MessageApplicationUpdated": "El servidor Jellyfin ha sido actualizado", + "MessageApplicationUpdatedTo": "El servidor Jellyfin ha sido actualizado a {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Se ha actualizado la sección {0} de la configuración del servidor", + "MessageServerConfigurationUpdated": "Se ha actualizado la configuración del servidor", + "MixedContent": "Contenido mezclado", + "Movies": "Películas", + "Music": "Música", + "MusicVideos": "Videos musicales", + "NameInstallFailed": "{0} instalación fallida", + "NameSeasonNumber": "Temporada {0}", + "NameSeasonUnknown": "Temporada Desconocida", + "NewVersionIsAvailable": "Una nueva versión del Servidor Jellyfin está disponible para descargar.", + "NotificationOptionApplicationUpdateAvailable": "Actualización de aplicación disponible", + "NotificationOptionApplicationUpdateInstalled": "Actualización de aplicación instalada", + "NotificationOptionAudioPlayback": "Reproducción de audio iniciada", + "NotificationOptionAudioPlaybackStopped": "Reproducción de audio detenida", + "NotificationOptionCameraImageUploaded": "Imagen de la cámara subida", + "NotificationOptionGamePlayback": "Ejecución de juego iniciada", + "NotificationOptionGamePlaybackStopped": "Ejecución de juego detenida", + "NotificationOptionInstallationFailed": "Falla de instalación", + "NotificationOptionNewLibraryContent": "Nuevo contenido agregado", + "NotificationOptionPluginError": "Falla de complemento", + "NotificationOptionPluginInstalled": "Complemento instalado", + "NotificationOptionPluginUninstalled": "Complemento desinstalado", + "NotificationOptionPluginUpdateInstalled": "Actualización de complemento instalada", + "NotificationOptionServerRestartRequired": "Se necesita reiniciar el Servidor", + "NotificationOptionTaskFailed": "Falla de tarea programada", + "NotificationOptionUserLockedOut": "Usuario bloqueado", + "NotificationOptionVideoPlayback": "Reproducción de video iniciada", + "NotificationOptionVideoPlaybackStopped": "Reproducción de video detenida", + "Photos": "Fotos", + "Playlists": "Listas de reproducción", + "Plugin": "Complemento", + "PluginInstalledWithName": "{0} fue instalado", + "PluginUninstalledWithName": "{0} fue desinstalado", + "PluginUpdatedWithName": "{0} fue actualizado", + "ProviderValue": "Proveedor: {0}", + "ScheduledTaskFailedWithName": "{0} falló", + "ScheduledTaskStartedWithName": "{0} Iniciado", + "ServerNameNeedsToBeRestarted": "{0} debe ser reiniciado", + "Shows": "Programas", + "Songs": "Canciones", + "StartupEmbyServerIsLoading": "El servidor Jellyfin esta cargando. Por favor intente de nuevo dentro de poco.", + "SubtitleDownloadFailureForItem": "Falló la descarga de subtítulos para {0}", + "SubtitleDownloadFailureFromForItem": "Falló la descarga de subtitulos desde {0} para {1}", + "SubtitlesDownloadedForItem": "Subtítulos descargados para {0}", + "Sync": "Sincronizar", + "System": "Sistema", + "TvShows": "Programas de TV", + "User": "Usuario", + "UserCreatedWithName": "Se ha creado el usuario {0}", + "UserDeletedWithName": "Se ha eliminado el usuario {0}", + "UserDownloadingItemWithValues": "{0} esta descargando {1}", + "UserLockedOutWithName": "El usuario {0} ha sido bloqueado", + "UserOfflineFromDevice": "{0} se ha desconectado desde {1}", + "UserOnlineFromDevice": "{0} está en línea desde {1}", + "UserPasswordChangedWithName": "Se ha cambiado la contraseña para el usuario {0}", + "UserPolicyUpdatedWithName": "Las política de usuario ha sido actualizada por {0}", + "UserStartedPlayingItemWithValues": "{0} está reproduciéndose {1} en {2}", + "UserStoppedPlayingItemWithValues": "{0} ha terminado de reproducirse {1} en {2}", + "ValueHasBeenAddedToLibrary": "{0} se han añadido a su biblioteca de medios", + "ValueSpecialEpisodeName": "Especial - {0}", + "VersionNumber": "Versión {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/es.json b/Emby.Server.Implementations/Localization/Core/es.json index ad6a32a0e..38a282382 100644 --- a/Emby.Server.Implementations/Localization/Core/es.json +++ b/Emby.Server.Implementations/Localization/Core/es.json @@ -1,100 +1,100 @@ { - "Albums": "Álbumes", - "AppDeviceValues": "Aplicación: {0}, Dispositivo: {1}", - "Application": "Aplicación", - "Artists": "Artistas", - "AuthenticationSucceededWithUserName": "{0} autenticado correctamente", - "Books": "Libros", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Canales", - "ChapterNameValue": "Capítulo {0}", - "Collections": "Colecciones", - "DeviceOfflineWithName": "{0} se ha desconectado", - "DeviceOnlineWithName": "{0} está conectado", - "FailedLoginAttemptWithUserName": "Error al intentar iniciar sesión a partir de {0}", - "Favorites": "Favoritos", - "Folders": "Carpetas", - "Games": "Juegos", - "Genres": "Géneros", - "HeaderAlbumArtists": "Artistas del Álbum", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continuar viendo", - "HeaderFavoriteAlbums": "Álbumes favoritos", - "HeaderFavoriteArtists": "Artistas favoritos", - "HeaderFavoriteEpisodes": "Episodios favoritos", - "HeaderFavoriteShows": "Programas favoritos", - "HeaderFavoriteSongs": "Canciones favoritas", - "HeaderLiveTV": "TV en vivo", - "HeaderNextUp": "Siguiendo", - "HeaderRecordingGroups": "Grupos de grabación", - "HomeVideos": "Vídeos de inicio", - "Inherit": "Heredar", - "ItemAddedWithName": "{0} se ha añadido a la biblioteca", - "ItemRemovedWithName": "{0} se elimina de la biblioteca", - "LabelIpAddressValue": "Dirección IP: {0}", - "LabelRunningTimeValue": "Tiempo de funcionamiento: {0}", - "Latest": "Últimos", - "MessageApplicationUpdated": "Se ha actualizado el servidor Jellyfin", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "La sección de configuración del servidor {0} ha sido actualizado", - "MessageServerConfigurationUpdated": "Se ha actualizado la configuración del servidor", - "MixedContent": "Contenido mixto", - "Movies": "Peliculas", - "Music": "Música", - "MusicVideos": "Videos musicales", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Temporada {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Actualización de la aplicación disponible", - "NotificationOptionApplicationUpdateInstalled": "Actualización de la aplicación instalada", - "NotificationOptionAudioPlayback": "Se inició la reproducción de audio", - "NotificationOptionAudioPlaybackStopped": "Se detuvo la reproducción de audio", - "NotificationOptionCameraImageUploaded": "Imagen de la cámara cargada", - "NotificationOptionGamePlayback": "Se inició la reproducción del juego", - "NotificationOptionGamePlaybackStopped": "Se detuvo la reproducción del juego", - "NotificationOptionInstallationFailed": "Error de instalación", - "NotificationOptionNewLibraryContent": "Nuevo contenido añadido", - "NotificationOptionPluginError": "Error en plugin", - "NotificationOptionPluginInstalled": "Plugin instalado", - "NotificationOptionPluginUninstalled": "Plugin desinstalado", - "NotificationOptionPluginUpdateInstalled": "Actualización del complemento instalada", - "NotificationOptionServerRestartRequired": "Requiere reinicio del servidor", - "NotificationOptionTaskFailed": "Error de tarea programada", - "NotificationOptionUserLockedOut": "Usuario bloqueado", - "NotificationOptionVideoPlayback": "Se inició la reproducción de vídeo", - "NotificationOptionVideoPlaybackStopped": "Reproducción de vídeo detenida", - "Photos": "Fotos", - "Playlists": "Listas reproducción", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} se ha instalado", - "PluginUninstalledWithName": "{0} se ha desinstalado", - "PluginUpdatedWithName": "{0} se actualizó", - "ProviderValue": "Proveedor: {0}", - "ScheduledTaskFailedWithName": "{0} falló", - "ScheduledTaskStartedWithName": "{0} iniciada", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Series", - "Songs": "Canciones", - "StartupEmbyServerIsLoading": "Jellyfin Server se está cargando. Vuelve a intentarlo en breve.", - "SubtitleDownloadFailureForItem": "Error al descargar subtítulos para {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Descargar subtítulos para {0}", - "Sync": "Sincronizar", - "System": "Sistema", - "TvShows": "Series TV", - "User": "Usuario", - "UserCreatedWithName": "El usuario {0} ha sido creado", - "UserDeletedWithName": "El usuario {0} ha sido borrado", - "UserDownloadingItemWithValues": "{0} está descargando {1}", - "UserLockedOutWithName": "El usuario {0} ha sido bloqueado", - "UserOfflineFromDevice": "{0} se ha desconectado de {1}", - "UserOnlineFromDevice": "{0} está en línea desde {1}", - "UserPasswordChangedWithName": "Se ha cambiado la contraseña para el usuario {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} ha comenzado reproducir {1}", - "UserStoppedPlayingItemWithValues": "{0} ha parado de reproducir {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Especial - {0}", - "VersionNumber": "Versión {0}" + "Albums": "Álbumes", + "AppDeviceValues": "Aplicación: {0}, Dispositivo: {1}", + "Application": "Aplicación", + "Artists": "Artistas", + "AuthenticationSucceededWithUserName": "{0} autenticado correctamente", + "Books": "Libros", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Canales", + "ChapterNameValue": "Capítulo {0}", + "Collections": "Colecciones", + "DeviceOfflineWithName": "{0} se ha desconectado", + "DeviceOnlineWithName": "{0} está conectado", + "FailedLoginAttemptWithUserName": "Error al intentar iniciar sesión a partir de {0}", + "Favorites": "Favoritos", + "Folders": "Carpetas", + "Games": "Juegos", + "Genres": "Géneros", + "HeaderAlbumArtists": "Artistas del Álbum", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continuar viendo", + "HeaderFavoriteAlbums": "Álbumes favoritos", + "HeaderFavoriteArtists": "Artistas favoritos", + "HeaderFavoriteEpisodes": "Episodios favoritos", + "HeaderFavoriteShows": "Programas favoritos", + "HeaderFavoriteSongs": "Canciones favoritas", + "HeaderLiveTV": "TV en vivo", + "HeaderNextUp": "Siguiendo", + "HeaderRecordingGroups": "Grupos de grabación", + "HomeVideos": "Vídeos de inicio", + "Inherit": "Heredar", + "ItemAddedWithName": "{0} se ha añadido a la biblioteca", + "ItemRemovedWithName": "{0} se elimina de la biblioteca", + "LabelIpAddressValue": "Dirección IP: {0}", + "LabelRunningTimeValue": "Tiempo de funcionamiento: {0}", + "Latest": "Últimos", + "MessageApplicationUpdated": "Se ha actualizado el servidor Jellyfin", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "La sección de configuración del servidor {0} ha sido actualizado", + "MessageServerConfigurationUpdated": "Se ha actualizado la configuración del servidor", + "MixedContent": "Contenido mixto", + "Movies": "Peliculas", + "Music": "Música", + "MusicVideos": "Videos musicales", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Temporada {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Actualización de la aplicación disponible", + "NotificationOptionApplicationUpdateInstalled": "Actualización de la aplicación instalada", + "NotificationOptionAudioPlayback": "Se inició la reproducción de audio", + "NotificationOptionAudioPlaybackStopped": "Se detuvo la reproducción de audio", + "NotificationOptionCameraImageUploaded": "Imagen de la cámara cargada", + "NotificationOptionGamePlayback": "Se inició la reproducción del juego", + "NotificationOptionGamePlaybackStopped": "Se detuvo la reproducción del juego", + "NotificationOptionInstallationFailed": "Error de instalación", + "NotificationOptionNewLibraryContent": "Nuevo contenido añadido", + "NotificationOptionPluginError": "Error en plugin", + "NotificationOptionPluginInstalled": "Plugin instalado", + "NotificationOptionPluginUninstalled": "Plugin desinstalado", + "NotificationOptionPluginUpdateInstalled": "Actualización del complemento instalada", + "NotificationOptionServerRestartRequired": "Requiere reinicio del servidor", + "NotificationOptionTaskFailed": "Error de tarea programada", + "NotificationOptionUserLockedOut": "Usuario bloqueado", + "NotificationOptionVideoPlayback": "Se inició la reproducción de vídeo", + "NotificationOptionVideoPlaybackStopped": "Reproducción de vídeo detenida", + "Photos": "Fotos", + "Playlists": "Listas reproducción", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} se ha instalado", + "PluginUninstalledWithName": "{0} se ha desinstalado", + "PluginUpdatedWithName": "{0} se actualizó", + "ProviderValue": "Proveedor: {0}", + "ScheduledTaskFailedWithName": "{0} falló", + "ScheduledTaskStartedWithName": "{0} iniciada", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Series", + "Songs": "Canciones", + "StartupEmbyServerIsLoading": "Jellyfin Server se está cargando. Vuelve a intentarlo en breve.", + "SubtitleDownloadFailureForItem": "Error al descargar subtítulos para {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Descargar subtítulos para {0}", + "Sync": "Sincronizar", + "System": "Sistema", + "TvShows": "Series TV", + "User": "Usuario", + "UserCreatedWithName": "El usuario {0} ha sido creado", + "UserDeletedWithName": "El usuario {0} ha sido borrado", + "UserDownloadingItemWithValues": "{0} está descargando {1}", + "UserLockedOutWithName": "El usuario {0} ha sido bloqueado", + "UserOfflineFromDevice": "{0} se ha desconectado de {1}", + "UserOnlineFromDevice": "{0} está en línea desde {1}", + "UserPasswordChangedWithName": "Se ha cambiado la contraseña para el usuario {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} ha comenzado reproducir {1}", + "UserStoppedPlayingItemWithValues": "{0} ha parado de reproducir {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Especial - {0}", + "VersionNumber": "Versión {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/fa.json b/Emby.Server.Implementations/Localization/Core/fa.json index 08a5f185d..1d7bc5fe8 100644 --- a/Emby.Server.Implementations/Localization/Core/fa.json +++ b/Emby.Server.Implementations/Localization/Core/fa.json @@ -1,100 +1,100 @@ { - "Albums": "آلبوم ها", - "AppDeviceValues": "برنامه: {0} ، دستگاه: {1}", - "Application": "برنامه", - "Artists": "هنرمندان", - "AuthenticationSucceededWithUserName": "{0} با موفقیت تایید اعتبار شد", - "Books": "کتاب ها", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "کانال ها", - "ChapterNameValue": "فصل {0}", - "Collections": "کلکسیون ها", - "DeviceOfflineWithName": "ارتباط {0} قطع شد", - "DeviceOnlineWithName": "{0} متصل شده", - "FailedLoginAttemptWithUserName": "تلاش برای ورود از {0} ناموفق بود", - "Favorites": "مورد علاقه ها", - "Folders": "پوشه ها", - "Games": "بازی ها", - "Genres": "ژانرها", - "HeaderAlbumArtists": "هنرمندان آلبوم", - "HeaderCameraUploads": "آپلودهای دوربین", - "HeaderContinueWatching": "ادامه تماشا", - "HeaderFavoriteAlbums": "آلبوم های مورد علاقه", - "HeaderFavoriteArtists": "هنرمندان مورد علاقه", - "HeaderFavoriteEpisodes": "قسمت های مورد علاقه", - "HeaderFavoriteShows": "سریال های مورد علاقه", - "HeaderFavoriteSongs": "آهنگ های مورد علاقه", - "HeaderLiveTV": "پخش زنده تلویزیون", - "HeaderNextUp": "بعدی چیه", - "HeaderRecordingGroups": "گروه های ضبط", - "HomeVideos": "ویدیوهای خانگی", - "Inherit": "به ارث برده", - "ItemAddedWithName": "{0} به کتابخانه افزوده شد", - "ItemRemovedWithName": "{0} از کتابخانه حذف شد", - "LabelIpAddressValue": "آدرس آی پی: {0}", - "LabelRunningTimeValue": "زمان اجرا: {0}", - "Latest": "آخرین", - "MessageApplicationUpdated": "سرور Jellyfin بروزرسانی شد", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "پکربندی بخش {0} سرور بروزرسانی شد", - "MessageServerConfigurationUpdated": "پیکربندی سرور بروزرسانی شد", - "MixedContent": "محتوای درهم", - "Movies": "فیلم های سینمایی", - "Music": "موسیقی", - "MusicVideos": "موزیک ویدیوها", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "فصل {0}", - "NameSeasonUnknown": "فصل های ناشناخته", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "بروزرسانی برنامه موجود است", - "NotificationOptionApplicationUpdateInstalled": "بروزرسانی برنامه نصب شد", - "NotificationOptionAudioPlayback": "پخش صدا آغاز شد", - "NotificationOptionAudioPlaybackStopped": "پخش صدا متوقف شد", - "NotificationOptionCameraImageUploaded": "تصاویر دوربین آپلود شد", - "NotificationOptionGamePlayback": "پخش بازی آغاز شد", - "NotificationOptionGamePlaybackStopped": "پخش بازی متوقف شد", - "NotificationOptionInstallationFailed": "شکست نصب", - "NotificationOptionNewLibraryContent": "محتوای جدید افزوده شد", - "NotificationOptionPluginError": "خرابی افزونه", - "NotificationOptionPluginInstalled": "افزونه نصب شد", - "NotificationOptionPluginUninstalled": "افزونه حذف شد", - "NotificationOptionPluginUpdateInstalled": "بروزرسانی افزونه نصب شد", - "NotificationOptionServerRestartRequired": "شروع مجدد سرور نیاز است", - "NotificationOptionTaskFailed": "شکست وظیفه برنامه ریزی شده", - "NotificationOptionUserLockedOut": "کاربر از سیستم خارج شد", - "NotificationOptionVideoPlayback": "پخش ویدیو آغاز شد", - "NotificationOptionVideoPlaybackStopped": "پخش ویدیو متوقف شد", - "Photos": "عکس ها", - "Playlists": "لیست های پخش", - "Plugin": "افزونه", - "PluginInstalledWithName": "{0} نصب شد", - "PluginUninstalledWithName": "{0} حذف شد", - "PluginUpdatedWithName": "{0} آپدیت شد", - "ProviderValue": "ارائه دهنده: {0}", - "ScheduledTaskFailedWithName": "{0} ناموفق بود", - "ScheduledTaskStartedWithName": "{0} شروع شد", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "سریال ها", - "Songs": "آهنگ ها", - "StartupEmbyServerIsLoading": "سرور Jellyfin در حال بارگیری است. لطفا کمی بعد دوباره تلاش کنید.", - "SubtitleDownloadFailureForItem": "دانلود زیرنویس برای {0} ناموفق بود", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "زیرنویس {0} دانلود شد", - "Sync": "همگامسازی", - "System": "سیستم", - "TvShows": "سریال های تلویزیونی", - "User": "کاربر", - "UserCreatedWithName": "کاربر {0} ایجاد شد", - "UserDeletedWithName": "کاربر {0} حذف شد", - "UserDownloadingItemWithValues": "{0} در حال دانلود است {1}", - "UserLockedOutWithName": "کاربر {0} از سیستم خارج شد", - "UserOfflineFromDevice": "ارتباط {0} از {1} قطع شد", - "UserOnlineFromDevice": "{0}از {1} آنلاین میباشد", - "UserPasswordChangedWithName": "رمز برای کاربر {0} تغییر یافت", - "UserPolicyUpdatedWithName": "سیاست کاربری برای {0} بروزرسانی شد", - "UserStartedPlayingItemWithValues": "{0} شروع به پخش {1} کرد", - "UserStoppedPlayingItemWithValues": "{0} پخش {1} را متوقف کرد", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "ویژه- {0}", - "VersionNumber": "نسخه {0}" + "Albums": "آلبوم ها", + "AppDeviceValues": "برنامه: {0} ، دستگاه: {1}", + "Application": "برنامه", + "Artists": "هنرمندان", + "AuthenticationSucceededWithUserName": "{0} با موفقیت تایید اعتبار شد", + "Books": "کتاب ها", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "کانال ها", + "ChapterNameValue": "فصل {0}", + "Collections": "کلکسیون ها", + "DeviceOfflineWithName": "ارتباط {0} قطع شد", + "DeviceOnlineWithName": "{0} متصل شده", + "FailedLoginAttemptWithUserName": "تلاش برای ورود از {0} ناموفق بود", + "Favorites": "مورد علاقه ها", + "Folders": "پوشه ها", + "Games": "بازی ها", + "Genres": "ژانرها", + "HeaderAlbumArtists": "هنرمندان آلبوم", + "HeaderCameraUploads": "آپلودهای دوربین", + "HeaderContinueWatching": "ادامه تماشا", + "HeaderFavoriteAlbums": "آلبوم های مورد علاقه", + "HeaderFavoriteArtists": "هنرمندان مورد علاقه", + "HeaderFavoriteEpisodes": "قسمت های مورد علاقه", + "HeaderFavoriteShows": "سریال های مورد علاقه", + "HeaderFavoriteSongs": "آهنگ های مورد علاقه", + "HeaderLiveTV": "پخش زنده تلویزیون", + "HeaderNextUp": "بعدی چیه", + "HeaderRecordingGroups": "گروه های ضبط", + "HomeVideos": "ویدیوهای خانگی", + "Inherit": "به ارث برده", + "ItemAddedWithName": "{0} به کتابخانه افزوده شد", + "ItemRemovedWithName": "{0} از کتابخانه حذف شد", + "LabelIpAddressValue": "آدرس آی پی: {0}", + "LabelRunningTimeValue": "زمان اجرا: {0}", + "Latest": "آخرین", + "MessageApplicationUpdated": "سرور Jellyfin بروزرسانی شد", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "پکربندی بخش {0} سرور بروزرسانی شد", + "MessageServerConfigurationUpdated": "پیکربندی سرور بروزرسانی شد", + "MixedContent": "محتوای درهم", + "Movies": "فیلم های سینمایی", + "Music": "موسیقی", + "MusicVideos": "موزیک ویدیوها", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "فصل {0}", + "NameSeasonUnknown": "فصل های ناشناخته", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "بروزرسانی برنامه موجود است", + "NotificationOptionApplicationUpdateInstalled": "بروزرسانی برنامه نصب شد", + "NotificationOptionAudioPlayback": "پخش صدا آغاز شد", + "NotificationOptionAudioPlaybackStopped": "پخش صدا متوقف شد", + "NotificationOptionCameraImageUploaded": "تصاویر دوربین آپلود شد", + "NotificationOptionGamePlayback": "پخش بازی آغاز شد", + "NotificationOptionGamePlaybackStopped": "پخش بازی متوقف شد", + "NotificationOptionInstallationFailed": "شکست نصب", + "NotificationOptionNewLibraryContent": "محتوای جدید افزوده شد", + "NotificationOptionPluginError": "خرابی افزونه", + "NotificationOptionPluginInstalled": "افزونه نصب شد", + "NotificationOptionPluginUninstalled": "افزونه حذف شد", + "NotificationOptionPluginUpdateInstalled": "بروزرسانی افزونه نصب شد", + "NotificationOptionServerRestartRequired": "شروع مجدد سرور نیاز است", + "NotificationOptionTaskFailed": "شکست وظیفه برنامه ریزی شده", + "NotificationOptionUserLockedOut": "کاربر از سیستم خارج شد", + "NotificationOptionVideoPlayback": "پخش ویدیو آغاز شد", + "NotificationOptionVideoPlaybackStopped": "پخش ویدیو متوقف شد", + "Photos": "عکس ها", + "Playlists": "لیست های پخش", + "Plugin": "افزونه", + "PluginInstalledWithName": "{0} نصب شد", + "PluginUninstalledWithName": "{0} حذف شد", + "PluginUpdatedWithName": "{0} آپدیت شد", + "ProviderValue": "ارائه دهنده: {0}", + "ScheduledTaskFailedWithName": "{0} ناموفق بود", + "ScheduledTaskStartedWithName": "{0} شروع شد", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "سریال ها", + "Songs": "آهنگ ها", + "StartupEmbyServerIsLoading": "سرور Jellyfin در حال بارگیری است. لطفا کمی بعد دوباره تلاش کنید.", + "SubtitleDownloadFailureForItem": "دانلود زیرنویس برای {0} ناموفق بود", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "زیرنویس {0} دانلود شد", + "Sync": "همگامسازی", + "System": "سیستم", + "TvShows": "سریال های تلویزیونی", + "User": "کاربر", + "UserCreatedWithName": "کاربر {0} ایجاد شد", + "UserDeletedWithName": "کاربر {0} حذف شد", + "UserDownloadingItemWithValues": "{0} در حال دانلود است {1}", + "UserLockedOutWithName": "کاربر {0} از سیستم خارج شد", + "UserOfflineFromDevice": "ارتباط {0} از {1} قطع شد", + "UserOnlineFromDevice": "{0}از {1} آنلاین میباشد", + "UserPasswordChangedWithName": "رمز برای کاربر {0} تغییر یافت", + "UserPolicyUpdatedWithName": "سیاست کاربری برای {0} بروزرسانی شد", + "UserStartedPlayingItemWithValues": "{0} شروع به پخش {1} کرد", + "UserStoppedPlayingItemWithValues": "{0} پخش {1} را متوقف کرد", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "ویژه- {0}", + "VersionNumber": "نسخه {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/fr-CA.json b/Emby.Server.Implementations/Localization/Core/fr-CA.json index 737fde076..22cd4cf6d 100644 --- a/Emby.Server.Implementations/Localization/Core/fr-CA.json +++ b/Emby.Server.Implementations/Localization/Core/fr-CA.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continuer à regarder", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "À Suivre", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Series", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Spécial - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continuer à regarder", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "À Suivre", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Series", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Spécial - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/fr.json b/Emby.Server.Implementations/Localization/Core/fr.json index c374ec3ed..085e22cf7 100644 --- a/Emby.Server.Implementations/Localization/Core/fr.json +++ b/Emby.Server.Implementations/Localization/Core/fr.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "Application : {0}, Appareil : {1}", - "Application": "Application", - "Artists": "Artistes", - "AuthenticationSucceededWithUserName": "{0} s'est authentifié avec succès", - "Books": "Livres", - "CameraImageUploadedFrom": "Une image de caméra a été chargée depuis {0}", - "Channels": "Chaînes", - "ChapterNameValue": "Chapitre {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} s'est déconnecté", - "DeviceOnlineWithName": "{0} est connecté", - "FailedLoginAttemptWithUserName": "Échec d'une tentative de connexion de {0}", - "Favorites": "Favoris", - "Folders": "Dossiers", - "Games": "Jeux", - "Genres": "Genres", - "HeaderAlbumArtists": "Artistes de l'album", - "HeaderCameraUploads": "Photos transférées", - "HeaderContinueWatching": "Continuer à regarder", - "HeaderFavoriteAlbums": "Albums favoris", - "HeaderFavoriteArtists": "Artistes favoris", - "HeaderFavoriteEpisodes": "Épisodes favoris", - "HeaderFavoriteShows": "Séries favorites", - "HeaderFavoriteSongs": "Chansons favorites", - "HeaderLiveTV": "TV en direct", - "HeaderNextUp": "En Cours", - "HeaderRecordingGroups": "Groupes d'enregistrements", - "HomeVideos": "Vidéos personnelles", - "Inherit": "Hériter", - "ItemAddedWithName": "{0} a été ajouté à la médiathèque", - "ItemRemovedWithName": "{0} a été supprimé de la médiathèque", - "LabelIpAddressValue": "Adresse IP : {0}", - "LabelRunningTimeValue": "Durée : {0}", - "Latest": "Derniers", - "MessageApplicationUpdated": "Le serveur Jellyfin a été mis à jour", - "MessageApplicationUpdatedTo": "Jellyfin Serveur a été mis à jour en version {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "La configuration de la section {0} du serveur a été mise à jour", - "MessageServerConfigurationUpdated": "La configuration du serveur a été mise à jour.", - "MixedContent": "Contenu mixte", - "Movies": "Films", - "Music": "Musique", - "MusicVideos": "Vidéos musicales", - "NameInstallFailed": "{0} échec d'installation", - "NameSeasonNumber": "Saison {0}", - "NameSeasonUnknown": "Saison Inconnue", - "NewVersionIsAvailable": "Une nouvelle version d'Jellyfin Serveur est disponible au téléchargement.", - "NotificationOptionApplicationUpdateAvailable": "Mise à jour de l'application disponible", - "NotificationOptionApplicationUpdateInstalled": "Mise à jour de l'application installée", - "NotificationOptionAudioPlayback": "Lecture audio démarrée", - "NotificationOptionAudioPlaybackStopped": "Lecture audio arrêtée", - "NotificationOptionCameraImageUploaded": "L'image de l'appareil photo a été transférée", - "NotificationOptionGamePlayback": "Lecture de jeu démarrée", - "NotificationOptionGamePlaybackStopped": "Lecture de jeu arrêtée", - "NotificationOptionInstallationFailed": "Échec d'installation", - "NotificationOptionNewLibraryContent": "Nouveau contenu ajouté", - "NotificationOptionPluginError": "Erreur d'extension", - "NotificationOptionPluginInstalled": "Extension installée", - "NotificationOptionPluginUninstalled": "Extension désinstallée", - "NotificationOptionPluginUpdateInstalled": "Mise à jour d'extension installée", - "NotificationOptionServerRestartRequired": "Un redémarrage du serveur est requis", - "NotificationOptionTaskFailed": "Échec de tâche planifiée", - "NotificationOptionUserLockedOut": "Utilisateur verrouillé", - "NotificationOptionVideoPlayback": "Lecture vidéo démarrée", - "NotificationOptionVideoPlaybackStopped": "Lecture vidéo arrêtée", - "Photos": "Photos", - "Playlists": "Listes de lecture", - "Plugin": "Extension", - "PluginInstalledWithName": "{0} a été installé", - "PluginUninstalledWithName": "{0} a été désinstallé", - "PluginUpdatedWithName": "{0} a été mis à jour", - "ProviderValue": "Fournisseur : {0}", - "ScheduledTaskFailedWithName": "{0} a échoué", - "ScheduledTaskStartedWithName": "{0} a commencé", - "ServerNameNeedsToBeRestarted": "{0} doit être redémarré", - "Shows": "Émissions", - "Songs": "Chansons", - "StartupEmbyServerIsLoading": "Le serveur Jellyfin est en cours de chargement. Veuillez réessayer dans quelques instants.", - "SubtitleDownloadFailureForItem": "Le téléchargement des sous-titres pour {0} a échoué.", - "SubtitleDownloadFailureFromForItem": "Échec du téléchargement des sous-titres depuis {0} pour {1}", - "SubtitlesDownloadedForItem": "Les sous-titres de {0} ont été téléchargés", - "Sync": "Synchroniser", - "System": "Système", - "TvShows": "Séries Télé", - "User": "Utilisateur", - "UserCreatedWithName": "L'utilisateur {0} a été créé", - "UserDeletedWithName": "L'utilisateur {0} a été supprimé", - "UserDownloadingItemWithValues": "{0} est en train de télécharger {1}", - "UserLockedOutWithName": "L'utilisateur {0} a été verrouillé", - "UserOfflineFromDevice": "{0} s'est déconnecté depuis {1}", - "UserOnlineFromDevice": "{0} s'est connecté depuis {1}", - "UserPasswordChangedWithName": "Le mot de passe pour l'utilisateur {0} a été modifié", - "UserPolicyUpdatedWithName": "La politique de l'utilisateur a été mise à jour pour {0}", - "UserStartedPlayingItemWithValues": "{0} est entrain de lire {1} sur {2}", - "UserStoppedPlayingItemWithValues": "{0} vient d'arrêter la lecture de {1} sur {2}", - "ValueHasBeenAddedToLibrary": "{0} a été ajouté à votre librairie", - "ValueSpecialEpisodeName": "Spécial - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "Application : {0}, Appareil : {1}", + "Application": "Application", + "Artists": "Artistes", + "AuthenticationSucceededWithUserName": "{0} s'est authentifié avec succès", + "Books": "Livres", + "CameraImageUploadedFrom": "Une image de caméra a été chargée depuis {0}", + "Channels": "Chaînes", + "ChapterNameValue": "Chapitre {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} s'est déconnecté", + "DeviceOnlineWithName": "{0} est connecté", + "FailedLoginAttemptWithUserName": "Échec d'une tentative de connexion de {0}", + "Favorites": "Favoris", + "Folders": "Dossiers", + "Games": "Jeux", + "Genres": "Genres", + "HeaderAlbumArtists": "Artistes de l'album", + "HeaderCameraUploads": "Photos transférées", + "HeaderContinueWatching": "Continuer à regarder", + "HeaderFavoriteAlbums": "Albums favoris", + "HeaderFavoriteArtists": "Artistes favoris", + "HeaderFavoriteEpisodes": "Épisodes favoris", + "HeaderFavoriteShows": "Séries favorites", + "HeaderFavoriteSongs": "Chansons favorites", + "HeaderLiveTV": "TV en direct", + "HeaderNextUp": "En Cours", + "HeaderRecordingGroups": "Groupes d'enregistrements", + "HomeVideos": "Vidéos personnelles", + "Inherit": "Hériter", + "ItemAddedWithName": "{0} a été ajouté à la médiathèque", + "ItemRemovedWithName": "{0} a été supprimé de la médiathèque", + "LabelIpAddressValue": "Adresse IP : {0}", + "LabelRunningTimeValue": "Durée : {0}", + "Latest": "Derniers", + "MessageApplicationUpdated": "Le serveur Jellyfin a été mis à jour", + "MessageApplicationUpdatedTo": "Jellyfin Serveur a été mis à jour en version {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "La configuration de la section {0} du serveur a été mise à jour", + "MessageServerConfigurationUpdated": "La configuration du serveur a été mise à jour.", + "MixedContent": "Contenu mixte", + "Movies": "Films", + "Music": "Musique", + "MusicVideos": "Vidéos musicales", + "NameInstallFailed": "{0} échec d'installation", + "NameSeasonNumber": "Saison {0}", + "NameSeasonUnknown": "Saison Inconnue", + "NewVersionIsAvailable": "Une nouvelle version d'Jellyfin Serveur est disponible au téléchargement.", + "NotificationOptionApplicationUpdateAvailable": "Mise à jour de l'application disponible", + "NotificationOptionApplicationUpdateInstalled": "Mise à jour de l'application installée", + "NotificationOptionAudioPlayback": "Lecture audio démarrée", + "NotificationOptionAudioPlaybackStopped": "Lecture audio arrêtée", + "NotificationOptionCameraImageUploaded": "L'image de l'appareil photo a été transférée", + "NotificationOptionGamePlayback": "Lecture de jeu démarrée", + "NotificationOptionGamePlaybackStopped": "Lecture de jeu arrêtée", + "NotificationOptionInstallationFailed": "Échec d'installation", + "NotificationOptionNewLibraryContent": "Nouveau contenu ajouté", + "NotificationOptionPluginError": "Erreur d'extension", + "NotificationOptionPluginInstalled": "Extension installée", + "NotificationOptionPluginUninstalled": "Extension désinstallée", + "NotificationOptionPluginUpdateInstalled": "Mise à jour d'extension installée", + "NotificationOptionServerRestartRequired": "Un redémarrage du serveur est requis", + "NotificationOptionTaskFailed": "Échec de tâche planifiée", + "NotificationOptionUserLockedOut": "Utilisateur verrouillé", + "NotificationOptionVideoPlayback": "Lecture vidéo démarrée", + "NotificationOptionVideoPlaybackStopped": "Lecture vidéo arrêtée", + "Photos": "Photos", + "Playlists": "Listes de lecture", + "Plugin": "Extension", + "PluginInstalledWithName": "{0} a été installé", + "PluginUninstalledWithName": "{0} a été désinstallé", + "PluginUpdatedWithName": "{0} a été mis à jour", + "ProviderValue": "Fournisseur : {0}", + "ScheduledTaskFailedWithName": "{0} a échoué", + "ScheduledTaskStartedWithName": "{0} a commencé", + "ServerNameNeedsToBeRestarted": "{0} doit être redémarré", + "Shows": "Émissions", + "Songs": "Chansons", + "StartupEmbyServerIsLoading": "Le serveur Jellyfin est en cours de chargement. Veuillez réessayer dans quelques instants.", + "SubtitleDownloadFailureForItem": "Le téléchargement des sous-titres pour {0} a échoué.", + "SubtitleDownloadFailureFromForItem": "Échec du téléchargement des sous-titres depuis {0} pour {1}", + "SubtitlesDownloadedForItem": "Les sous-titres de {0} ont été téléchargés", + "Sync": "Synchroniser", + "System": "Système", + "TvShows": "Séries Télé", + "User": "Utilisateur", + "UserCreatedWithName": "L'utilisateur {0} a été créé", + "UserDeletedWithName": "L'utilisateur {0} a été supprimé", + "UserDownloadingItemWithValues": "{0} est en train de télécharger {1}", + "UserLockedOutWithName": "L'utilisateur {0} a été verrouillé", + "UserOfflineFromDevice": "{0} s'est déconnecté depuis {1}", + "UserOnlineFromDevice": "{0} s'est connecté depuis {1}", + "UserPasswordChangedWithName": "Le mot de passe pour l'utilisateur {0} a été modifié", + "UserPolicyUpdatedWithName": "La politique de l'utilisateur a été mise à jour pour {0}", + "UserStartedPlayingItemWithValues": "{0} est entrain de lire {1} sur {2}", + "UserStoppedPlayingItemWithValues": "{0} vient d'arrêter la lecture de {1} sur {2}", + "ValueHasBeenAddedToLibrary": "{0} a été ajouté à votre librairie", + "ValueSpecialEpisodeName": "Spécial - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/gsw.json b/Emby.Server.Implementations/Localization/Core/gsw.json index 4d53418b9..537fe35d5 100644 --- a/Emby.Server.Implementations/Localization/Core/gsw.json +++ b/Emby.Server.Implementations/Localization/Core/gsw.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Büecher", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Spiel", - "Genres": "Genres", - "HeaderAlbumArtists": "Albuminterprete", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Wiiterluege", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Besti Interpret", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderFavoriteSongs": "Besti Lieder", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Ufnahmegruppe", - "HomeVideos": "Heimfilmli", - "Inherit": "Hinzuefüege", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Letschte", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Gmischte Inhalt", - "Movies": "Movies", - "Music": "Musig", - "MusicVideos": "Musigfilm", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Fotis", - "Playlists": "Abspielliste", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Spezial - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Büecher", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Spiel", + "Genres": "Genres", + "HeaderAlbumArtists": "Albuminterprete", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Wiiterluege", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Besti Interpret", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderFavoriteSongs": "Besti Lieder", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Ufnahmegruppe", + "HomeVideos": "Heimfilmli", + "Inherit": "Hinzuefüege", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Letschte", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Gmischte Inhalt", + "Movies": "Movies", + "Music": "Musig", + "MusicVideos": "Musigfilm", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Fotis", + "Playlists": "Abspielliste", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Spezial - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/he.json b/Emby.Server.Implementations/Localization/Core/he.json index 67abf1d18..6fff9d0ab 100644 --- a/Emby.Server.Implementations/Localization/Core/he.json +++ b/Emby.Server.Implementations/Localization/Core/he.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "ספרים", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "משחקים", - "Genres": "ז'אנרים", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "המשך בצפייה", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "קבוצות הקלטה", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "אחרון", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "תוכן מעורב", - "Movies": "סרטים", - "Music": "מוזיקה", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "תמונות", - "Playlists": "רשימות ניגון", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "סנכרן", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "מיוחד- {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "ספרים", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "משחקים", + "Genres": "ז'אנרים", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "המשך בצפייה", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "קבוצות הקלטה", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "אחרון", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "תוכן מעורב", + "Movies": "סרטים", + "Music": "מוזיקה", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "תמונות", + "Playlists": "רשימות ניגון", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "סנכרן", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "מיוחד- {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/hr.json b/Emby.Server.Implementations/Localization/Core/hr.json index e0add87bf..3232a4ff7 100644 --- a/Emby.Server.Implementations/Localization/Core/hr.json +++ b/Emby.Server.Implementations/Localization/Core/hr.json @@ -1,100 +1,100 @@ { - "Albums": "Albumi", - "AppDeviceValues": "Aplikacija: {0}, Uređaj: {1}", - "Application": "Aplikacija", - "Artists": "Izvođači", - "AuthenticationSucceededWithUserName": "{0} uspješno ovjerena", - "Books": "Knjige", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Kanali", - "ChapterNameValue": "Poglavlje {0}", - "Collections": "Kolekcije", - "DeviceOfflineWithName": "{0} se odspojilo", - "DeviceOnlineWithName": "{0} je spojeno", - "FailedLoginAttemptWithUserName": "Neuspjeli pokušaj prijave za {0}", - "Favorites": "Omiljeni", - "Folders": "Mape", - "Games": "Igre", - "Genres": "Žanrovi", - "HeaderAlbumArtists": "Izvođači albuma", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continue Watching", - "HeaderFavoriteAlbums": "Omiljeni albumi", - "HeaderFavoriteArtists": "Omiljeni izvođači", - "HeaderFavoriteEpisodes": "Omiljene epizode", - "HeaderFavoriteShows": "Omiljene emisije", - "HeaderFavoriteSongs": "Omiljene pjesme", - "HeaderLiveTV": "TV uživo", - "HeaderNextUp": "Sljedeće je", - "HeaderRecordingGroups": "Grupa snimka", - "HomeVideos": "Kućni videi", - "Inherit": "Naslijedi", - "ItemAddedWithName": "{0} je dodano u biblioteku", - "ItemRemovedWithName": "{0} je uklonjen iz biblioteke", - "LabelIpAddressValue": "Ip adresa: {0}", - "LabelRunningTimeValue": "Vrijeme rada: {0}", - "Latest": "Najnovije", - "MessageApplicationUpdated": "Jellyfin Server je ažuriran", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Odjeljak postavka servera {0} je ažuriran", - "MessageServerConfigurationUpdated": "Postavke servera su ažurirane", - "MixedContent": "Miješani sadržaj", - "Movies": "Filmovi", - "Music": "Glazba", - "MusicVideos": "Glazbeni spotovi", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Sezona {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Dostupno ažuriranje aplikacije", - "NotificationOptionApplicationUpdateInstalled": "Instalirano ažuriranje aplikacije", - "NotificationOptionAudioPlayback": "Reprodukcija glazbe započeta", - "NotificationOptionAudioPlaybackStopped": "Reprodukcija audiozapisa je zaustavljena", - "NotificationOptionCameraImageUploaded": "Slike kamere preuzete", - "NotificationOptionGamePlayback": "Igrica pokrenuta", - "NotificationOptionGamePlaybackStopped": "Reprodukcija igre je zaustavljena", - "NotificationOptionInstallationFailed": "Instalacija nije izvršena", - "NotificationOptionNewLibraryContent": "Novi sadržaj je dodan", - "NotificationOptionPluginError": "Dodatak otkazao", - "NotificationOptionPluginInstalled": "Dodatak instaliran", - "NotificationOptionPluginUninstalled": "Dodatak uklonjen", - "NotificationOptionPluginUpdateInstalled": "Instalirano ažuriranje za dodatak", - "NotificationOptionServerRestartRequired": "Potrebno ponovo pokretanje servera", - "NotificationOptionTaskFailed": "Zakazan zadatak nije izvršen", - "NotificationOptionUserLockedOut": "Korisnik zaključan", - "NotificationOptionVideoPlayback": "Reprodukcija videa započeta", - "NotificationOptionVideoPlaybackStopped": "Reprodukcija videozapisa je zaustavljena", - "Photos": "Slike", - "Playlists": "Popisi", - "Plugin": "Dodatak", - "PluginInstalledWithName": "{0} je instalirano", - "PluginUninstalledWithName": "{0} je deinstalirano", - "PluginUpdatedWithName": "{0} je ažurirano", - "ProviderValue": "Pružitelj: {0}", - "ScheduledTaskFailedWithName": "{0} neuspjelo", - "ScheduledTaskStartedWithName": "{0} pokrenuto", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Pjesme", - "StartupEmbyServerIsLoading": "Jellyfin Server se učitava. Pokušajte ponovo kasnije.", - "SubtitleDownloadFailureForItem": "Titlovi prijevoda nisu preuzeti za {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Titlovi prijevoda preuzeti za {0}", - "Sync": "Sink.", - "System": "Sistem", - "TvShows": "TV Shows", - "User": "Korisnik", - "UserCreatedWithName": "Korisnik {0} je stvoren", - "UserDeletedWithName": "Korisnik {0} je obrisan", - "UserDownloadingItemWithValues": "{0} se preuzima {1}", - "UserLockedOutWithName": "Korisnik {0} je zaključan", - "UserOfflineFromDevice": "{0} se odspojilo od {1}", - "UserOnlineFromDevice": "{0} je online od {1}", - "UserPasswordChangedWithName": "Lozinka je promijenjena za korisnika {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} je pokrenuo {1}", - "UserStoppedPlayingItemWithValues": "{0} je zaustavio {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Specijal - {0}", - "VersionNumber": "Verzija {0}" + "Albums": "Albumi", + "AppDeviceValues": "Aplikacija: {0}, Uređaj: {1}", + "Application": "Aplikacija", + "Artists": "Izvođači", + "AuthenticationSucceededWithUserName": "{0} uspješno ovjerena", + "Books": "Knjige", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Kanali", + "ChapterNameValue": "Poglavlje {0}", + "Collections": "Kolekcije", + "DeviceOfflineWithName": "{0} se odspojilo", + "DeviceOnlineWithName": "{0} je spojeno", + "FailedLoginAttemptWithUserName": "Neuspjeli pokušaj prijave za {0}", + "Favorites": "Omiljeni", + "Folders": "Mape", + "Games": "Igre", + "Genres": "Žanrovi", + "HeaderAlbumArtists": "Izvođači albuma", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continue Watching", + "HeaderFavoriteAlbums": "Omiljeni albumi", + "HeaderFavoriteArtists": "Omiljeni izvođači", + "HeaderFavoriteEpisodes": "Omiljene epizode", + "HeaderFavoriteShows": "Omiljene emisije", + "HeaderFavoriteSongs": "Omiljene pjesme", + "HeaderLiveTV": "TV uživo", + "HeaderNextUp": "Sljedeće je", + "HeaderRecordingGroups": "Grupa snimka", + "HomeVideos": "Kućni videi", + "Inherit": "Naslijedi", + "ItemAddedWithName": "{0} je dodano u biblioteku", + "ItemRemovedWithName": "{0} je uklonjen iz biblioteke", + "LabelIpAddressValue": "Ip adresa: {0}", + "LabelRunningTimeValue": "Vrijeme rada: {0}", + "Latest": "Najnovije", + "MessageApplicationUpdated": "Jellyfin Server je ažuriran", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Odjeljak postavka servera {0} je ažuriran", + "MessageServerConfigurationUpdated": "Postavke servera su ažurirane", + "MixedContent": "Miješani sadržaj", + "Movies": "Filmovi", + "Music": "Glazba", + "MusicVideos": "Glazbeni spotovi", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Sezona {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Dostupno ažuriranje aplikacije", + "NotificationOptionApplicationUpdateInstalled": "Instalirano ažuriranje aplikacije", + "NotificationOptionAudioPlayback": "Reprodukcija glazbe započeta", + "NotificationOptionAudioPlaybackStopped": "Reprodukcija audiozapisa je zaustavljena", + "NotificationOptionCameraImageUploaded": "Slike kamere preuzete", + "NotificationOptionGamePlayback": "Igrica pokrenuta", + "NotificationOptionGamePlaybackStopped": "Reprodukcija igre je zaustavljena", + "NotificationOptionInstallationFailed": "Instalacija nije izvršena", + "NotificationOptionNewLibraryContent": "Novi sadržaj je dodan", + "NotificationOptionPluginError": "Dodatak otkazao", + "NotificationOptionPluginInstalled": "Dodatak instaliran", + "NotificationOptionPluginUninstalled": "Dodatak uklonjen", + "NotificationOptionPluginUpdateInstalled": "Instalirano ažuriranje za dodatak", + "NotificationOptionServerRestartRequired": "Potrebno ponovo pokretanje servera", + "NotificationOptionTaskFailed": "Zakazan zadatak nije izvršen", + "NotificationOptionUserLockedOut": "Korisnik zaključan", + "NotificationOptionVideoPlayback": "Reprodukcija videa započeta", + "NotificationOptionVideoPlaybackStopped": "Reprodukcija videozapisa je zaustavljena", + "Photos": "Slike", + "Playlists": "Popisi", + "Plugin": "Dodatak", + "PluginInstalledWithName": "{0} je instalirano", + "PluginUninstalledWithName": "{0} je deinstalirano", + "PluginUpdatedWithName": "{0} je ažurirano", + "ProviderValue": "Pružitelj: {0}", + "ScheduledTaskFailedWithName": "{0} neuspjelo", + "ScheduledTaskStartedWithName": "{0} pokrenuto", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Pjesme", + "StartupEmbyServerIsLoading": "Jellyfin Server se učitava. Pokušajte ponovo kasnije.", + "SubtitleDownloadFailureForItem": "Titlovi prijevoda nisu preuzeti za {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Titlovi prijevoda preuzeti za {0}", + "Sync": "Sink.", + "System": "Sistem", + "TvShows": "TV Shows", + "User": "Korisnik", + "UserCreatedWithName": "Korisnik {0} je stvoren", + "UserDeletedWithName": "Korisnik {0} je obrisan", + "UserDownloadingItemWithValues": "{0} se preuzima {1}", + "UserLockedOutWithName": "Korisnik {0} je zaključan", + "UserOfflineFromDevice": "{0} se odspojilo od {1}", + "UserOnlineFromDevice": "{0} je online od {1}", + "UserPasswordChangedWithName": "Lozinka je promijenjena za korisnika {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} je pokrenuo {1}", + "UserStoppedPlayingItemWithValues": "{0} je zaustavio {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Specijal - {0}", + "VersionNumber": "Verzija {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/hu.json b/Emby.Server.Implementations/Localization/Core/hu.json index ad3164588..3a0119faf 100644 --- a/Emby.Server.Implementations/Localization/Core/hu.json +++ b/Emby.Server.Implementations/Localization/Core/hu.json @@ -1,100 +1,100 @@ { - "Albums": "Albumok", - "AppDeviceValues": "Program: {0}, Eszköz: {1}", - "Application": "Program", - "Artists": "Előadók", - "AuthenticationSucceededWithUserName": "{0} sikeresen azonosítva", - "Books": "Könyvek", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Csatornák", - "ChapterNameValue": "Jelenet {0}", - "Collections": "Gyűjtemények", - "DeviceOfflineWithName": "{0} kijelentkezett", - "DeviceOnlineWithName": "{0} belépett", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Kedvencek", - "Folders": "Könyvtárak", - "Games": "Játékok", - "Genres": "Műfajok", - "HeaderAlbumArtists": "Album Előadók", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Vetítés(ek) folytatása", - "HeaderFavoriteAlbums": "Kedvenc Albumok", - "HeaderFavoriteArtists": "Kedvenc Művészek", - "HeaderFavoriteEpisodes": "Kedvenc Epizódok", - "HeaderFavoriteShows": "Kedvenc Műsorok", - "HeaderFavoriteSongs": "Kedvenc Dalok", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Következik", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Házi videók", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip cím: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Legújabb", - "MessageApplicationUpdated": "Jellyfin Szerver frissítve", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Szerver konfigurációs rész {0} frissítve", - "MessageServerConfigurationUpdated": "Szerver konfiguráció frissítve", - "MixedContent": "Vegyes tartalom", - "Movies": "Filmek", - "Music": "Zene", - "MusicVideos": "Zenei Videók", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Program frissítés elérhető", - "NotificationOptionApplicationUpdateInstalled": "Program frissítés telepítve", - "NotificationOptionAudioPlayback": "Audió lejátszás elkezdve", - "NotificationOptionAudioPlaybackStopped": "Audió lejátszás befejezve", - "NotificationOptionCameraImageUploaded": "Kamera kép feltöltve", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Telepítési hiba", - "NotificationOptionNewLibraryContent": "Új tartalom hozzáadva", - "NotificationOptionPluginError": "Bővítmény hiba", - "NotificationOptionPluginInstalled": "Bővítmény telepítve", - "NotificationOptionPluginUninstalled": "Bővítmény eltávolítva", - "NotificationOptionPluginUpdateInstalled": "Bővítmény frissítés telepítve", - "NotificationOptionServerRestartRequired": "Szerver újraindítás szükséges", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "Felhasználó tiltva", - "NotificationOptionVideoPlayback": "Videó lejátszás elkezdve", - "NotificationOptionVideoPlaybackStopped": "Videó lejátszás befejezve", - "Photos": "Fényképek", - "Playlists": "Lejátszási listák", - "Plugin": "Bővítmény", - "PluginInstalledWithName": "{0} telepítve", - "PluginUninstalledWithName": "{0} eltávolítva", - "PluginUpdatedWithName": "{0} frissítve", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Műsorok", - "Songs": "Dalok", - "StartupEmbyServerIsLoading": "Jellyfin Szerver betöltődik. Kérjük, próbáld meg újra később.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Szinkronizál", - "System": "Rendszer", - "TvShows": "TV Műsorok", - "User": "Felhasználó", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} letölti {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} kijelentkezett innen {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} elkezdte játszani a következőt {1}", - "UserStoppedPlayingItemWithValues": "{0} befejezte a következőt {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Verzió {0}" + "Albums": "Albumok", + "AppDeviceValues": "Program: {0}, Eszköz: {1}", + "Application": "Program", + "Artists": "Előadók", + "AuthenticationSucceededWithUserName": "{0} sikeresen azonosítva", + "Books": "Könyvek", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Csatornák", + "ChapterNameValue": "Jelenet {0}", + "Collections": "Gyűjtemények", + "DeviceOfflineWithName": "{0} kijelentkezett", + "DeviceOnlineWithName": "{0} belépett", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Kedvencek", + "Folders": "Könyvtárak", + "Games": "Játékok", + "Genres": "Műfajok", + "HeaderAlbumArtists": "Album Előadók", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Vetítés(ek) folytatása", + "HeaderFavoriteAlbums": "Kedvenc Albumok", + "HeaderFavoriteArtists": "Kedvenc Művészek", + "HeaderFavoriteEpisodes": "Kedvenc Epizódok", + "HeaderFavoriteShows": "Kedvenc Műsorok", + "HeaderFavoriteSongs": "Kedvenc Dalok", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Következik", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Házi videók", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip cím: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Legújabb", + "MessageApplicationUpdated": "Jellyfin Szerver frissítve", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Szerver konfigurációs rész {0} frissítve", + "MessageServerConfigurationUpdated": "Szerver konfiguráció frissítve", + "MixedContent": "Vegyes tartalom", + "Movies": "Filmek", + "Music": "Zene", + "MusicVideos": "Zenei Videók", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Program frissítés elérhető", + "NotificationOptionApplicationUpdateInstalled": "Program frissítés telepítve", + "NotificationOptionAudioPlayback": "Audió lejátszás elkezdve", + "NotificationOptionAudioPlaybackStopped": "Audió lejátszás befejezve", + "NotificationOptionCameraImageUploaded": "Kamera kép feltöltve", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Telepítési hiba", + "NotificationOptionNewLibraryContent": "Új tartalom hozzáadva", + "NotificationOptionPluginError": "Bővítmény hiba", + "NotificationOptionPluginInstalled": "Bővítmény telepítve", + "NotificationOptionPluginUninstalled": "Bővítmény eltávolítva", + "NotificationOptionPluginUpdateInstalled": "Bővítmény frissítés telepítve", + "NotificationOptionServerRestartRequired": "Szerver újraindítás szükséges", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "Felhasználó tiltva", + "NotificationOptionVideoPlayback": "Videó lejátszás elkezdve", + "NotificationOptionVideoPlaybackStopped": "Videó lejátszás befejezve", + "Photos": "Fényképek", + "Playlists": "Lejátszási listák", + "Plugin": "Bővítmény", + "PluginInstalledWithName": "{0} telepítve", + "PluginUninstalledWithName": "{0} eltávolítva", + "PluginUpdatedWithName": "{0} frissítve", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Műsorok", + "Songs": "Dalok", + "StartupEmbyServerIsLoading": "Jellyfin Szerver betöltődik. Kérjük, próbáld meg újra később.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Szinkronizál", + "System": "Rendszer", + "TvShows": "TV Műsorok", + "User": "Felhasználó", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} letölti {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} kijelentkezett innen {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} elkezdte játszani a következőt {1}", + "UserStoppedPlayingItemWithValues": "{0} befejezte a következőt {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Verzió {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/it.json b/Emby.Server.Implementations/Localization/Core/it.json index ed980ac7a..58b7bb61a 100644 --- a/Emby.Server.Implementations/Localization/Core/it.json +++ b/Emby.Server.Implementations/Localization/Core/it.json @@ -1,100 +1,100 @@ { - "Albums": "Album", - "AppDeviceValues": "App: {0}, Dispositivo: {1}", - "Application": "Applicazione", - "Artists": "Artisti", - "AuthenticationSucceededWithUserName": "{0} autenticato con successo", - "Books": "Libri", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Canali", - "ChapterNameValue": "Capitolo {0}", - "Collections": "Collezioni", - "DeviceOfflineWithName": "{0} è stato disconnesso", - "DeviceOnlineWithName": "{0} è connesso", - "FailedLoginAttemptWithUserName": "Tentativo di accesso fallito da {0}", - "Favorites": "Preferiti", - "Folders": "Cartelle", - "Games": "Giochi", - "Genres": "Generi", - "HeaderAlbumArtists": "Artisti Album", - "HeaderCameraUploads": "Caricamenti Fotocamera", - "HeaderContinueWatching": "Continua a guardare", - "HeaderFavoriteAlbums": "Album preferiti", - "HeaderFavoriteArtists": "Artisti preferiti", - "HeaderFavoriteEpisodes": "Episodi Preferiti", - "HeaderFavoriteShows": "Show preferiti", - "HeaderFavoriteSongs": "Brani Preferiti", - "HeaderLiveTV": "Diretta TV", - "HeaderNextUp": "Prossimo", - "HeaderRecordingGroups": "Gruppi di Registrazione", - "HomeVideos": "Video personali", - "Inherit": "Eredita", - "ItemAddedWithName": "{0} è stato aggiunto alla libreria", - "ItemRemovedWithName": "{0} è stato rimosso dalla libreria", - "LabelIpAddressValue": "Indirizzo IP: {0}", - "LabelRunningTimeValue": "Durata: {0}", - "Latest": "Più recenti", - "MessageApplicationUpdated": "Il Server Jellyfin è stato aggiornato", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "La sezione {0} della configurazione server è stata aggiornata", - "MessageServerConfigurationUpdated": "La configurazione del server è stata aggiornata", - "MixedContent": "Contenuto misto", - "Movies": "Film", - "Music": "Musica", - "MusicVideos": "Video musicali", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Stagione {0}", - "NameSeasonUnknown": "Stagione sconosciuto", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Aggiornamento dell'applicazione disponibile", - "NotificationOptionApplicationUpdateInstalled": "Aggiornamento dell'applicazione installato", - "NotificationOptionAudioPlayback": "La riproduzione audio è iniziata", - "NotificationOptionAudioPlaybackStopped": "La riproduzione audio è stata interrotta", - "NotificationOptionCameraImageUploaded": "Immagine fotocamera caricata", - "NotificationOptionGamePlayback": "Il gioco è stato avviato", - "NotificationOptionGamePlaybackStopped": "Il gioco è stato fermato", - "NotificationOptionInstallationFailed": "Installazione fallita", - "NotificationOptionNewLibraryContent": "Nuovo contenuto aggiunto", - "NotificationOptionPluginError": "Errore del Plug-in", - "NotificationOptionPluginInstalled": "Plug-in installato", - "NotificationOptionPluginUninstalled": "Plug-in disinstallato", - "NotificationOptionPluginUpdateInstalled": "Aggiornamento del plug-in installato", - "NotificationOptionServerRestartRequired": "Riavvio del server necessario", - "NotificationOptionTaskFailed": "Operazione pianificata fallita", - "NotificationOptionUserLockedOut": "Utente bloccato", - "NotificationOptionVideoPlayback": "La riproduzione video è iniziata", - "NotificationOptionVideoPlaybackStopped": "La riproduzione video è stata interrotta", - "Photos": "Foto", - "Playlists": "Playlist", - "Plugin": "Plug-in", - "PluginInstalledWithName": "{0} è stato Installato", - "PluginUninstalledWithName": "{0} è stato disinstallato", - "PluginUpdatedWithName": "{0} è stato aggiornato", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} fallito", - "ScheduledTaskStartedWithName": "{0} avviati", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Programmi", - "Songs": "Canzoni", - "StartupEmbyServerIsLoading": "Jellyfin server si sta avviando. Per favore riprova più tardi.", - "SubtitleDownloadFailureForItem": "Impossibile scaricare i sottotitoli per {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Sottotitoli scaricati per {0}", - "Sync": "Sincronizza", - "System": "Sistema", - "TvShows": "Serie TV", - "User": "Utente", - "UserCreatedWithName": "L'utente {0} è stato creato", - "UserDeletedWithName": "L'utente {0} è stato rimosso", - "UserDownloadingItemWithValues": "{0} sta scaricando {1}", - "UserLockedOutWithName": "L'utente {0} è stato bloccato", - "UserOfflineFromDevice": "{0} è stato disconnesso da {1}", - "UserOnlineFromDevice": "{0} è online da {1}", - "UserPasswordChangedWithName": "La password è stata cambiata per l'utente {0}", - "UserPolicyUpdatedWithName": "La politica dell'utente è stata aggiornata per {0}", - "UserStartedPlayingItemWithValues": "{0} ha avviato la riproduzione di {1}", - "UserStoppedPlayingItemWithValues": "{0} ha interrotto la riproduzione di {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Speciale - {0}", - "VersionNumber": "Versione {0}" + "Albums": "Album", + "AppDeviceValues": "App: {0}, Dispositivo: {1}", + "Application": "Applicazione", + "Artists": "Artisti", + "AuthenticationSucceededWithUserName": "{0} autenticato con successo", + "Books": "Libri", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Canali", + "ChapterNameValue": "Capitolo {0}", + "Collections": "Collezioni", + "DeviceOfflineWithName": "{0} è stato disconnesso", + "DeviceOnlineWithName": "{0} è connesso", + "FailedLoginAttemptWithUserName": "Tentativo di accesso fallito da {0}", + "Favorites": "Preferiti", + "Folders": "Cartelle", + "Games": "Giochi", + "Genres": "Generi", + "HeaderAlbumArtists": "Artisti Album", + "HeaderCameraUploads": "Caricamenti Fotocamera", + "HeaderContinueWatching": "Continua a guardare", + "HeaderFavoriteAlbums": "Album preferiti", + "HeaderFavoriteArtists": "Artisti preferiti", + "HeaderFavoriteEpisodes": "Episodi Preferiti", + "HeaderFavoriteShows": "Show preferiti", + "HeaderFavoriteSongs": "Brani Preferiti", + "HeaderLiveTV": "Diretta TV", + "HeaderNextUp": "Prossimo", + "HeaderRecordingGroups": "Gruppi di Registrazione", + "HomeVideos": "Video personali", + "Inherit": "Eredita", + "ItemAddedWithName": "{0} è stato aggiunto alla libreria", + "ItemRemovedWithName": "{0} è stato rimosso dalla libreria", + "LabelIpAddressValue": "Indirizzo IP: {0}", + "LabelRunningTimeValue": "Durata: {0}", + "Latest": "Più recenti", + "MessageApplicationUpdated": "Il Server Jellyfin è stato aggiornato", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "La sezione {0} della configurazione server è stata aggiornata", + "MessageServerConfigurationUpdated": "La configurazione del server è stata aggiornata", + "MixedContent": "Contenuto misto", + "Movies": "Film", + "Music": "Musica", + "MusicVideos": "Video musicali", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Stagione {0}", + "NameSeasonUnknown": "Stagione sconosciuto", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Aggiornamento dell'applicazione disponibile", + "NotificationOptionApplicationUpdateInstalled": "Aggiornamento dell'applicazione installato", + "NotificationOptionAudioPlayback": "La riproduzione audio è iniziata", + "NotificationOptionAudioPlaybackStopped": "La riproduzione audio è stata interrotta", + "NotificationOptionCameraImageUploaded": "Immagine fotocamera caricata", + "NotificationOptionGamePlayback": "Il gioco è stato avviato", + "NotificationOptionGamePlaybackStopped": "Il gioco è stato fermato", + "NotificationOptionInstallationFailed": "Installazione fallita", + "NotificationOptionNewLibraryContent": "Nuovo contenuto aggiunto", + "NotificationOptionPluginError": "Errore del Plug-in", + "NotificationOptionPluginInstalled": "Plug-in installato", + "NotificationOptionPluginUninstalled": "Plug-in disinstallato", + "NotificationOptionPluginUpdateInstalled": "Aggiornamento del plug-in installato", + "NotificationOptionServerRestartRequired": "Riavvio del server necessario", + "NotificationOptionTaskFailed": "Operazione pianificata fallita", + "NotificationOptionUserLockedOut": "Utente bloccato", + "NotificationOptionVideoPlayback": "La riproduzione video è iniziata", + "NotificationOptionVideoPlaybackStopped": "La riproduzione video è stata interrotta", + "Photos": "Foto", + "Playlists": "Playlist", + "Plugin": "Plug-in", + "PluginInstalledWithName": "{0} è stato Installato", + "PluginUninstalledWithName": "{0} è stato disinstallato", + "PluginUpdatedWithName": "{0} è stato aggiornato", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} fallito", + "ScheduledTaskStartedWithName": "{0} avviati", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Programmi", + "Songs": "Canzoni", + "StartupEmbyServerIsLoading": "Jellyfin server si sta avviando. Per favore riprova più tardi.", + "SubtitleDownloadFailureForItem": "Impossibile scaricare i sottotitoli per {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Sottotitoli scaricati per {0}", + "Sync": "Sincronizza", + "System": "Sistema", + "TvShows": "Serie TV", + "User": "Utente", + "UserCreatedWithName": "L'utente {0} è stato creato", + "UserDeletedWithName": "L'utente {0} è stato rimosso", + "UserDownloadingItemWithValues": "{0} sta scaricando {1}", + "UserLockedOutWithName": "L'utente {0} è stato bloccato", + "UserOfflineFromDevice": "{0} è stato disconnesso da {1}", + "UserOnlineFromDevice": "{0} è online da {1}", + "UserPasswordChangedWithName": "La password è stata cambiata per l'utente {0}", + "UserPolicyUpdatedWithName": "La politica dell'utente è stata aggiornata per {0}", + "UserStartedPlayingItemWithValues": "{0} ha avviato la riproduzione di {1}", + "UserStoppedPlayingItemWithValues": "{0} ha interrotto la riproduzione di {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Speciale - {0}", + "VersionNumber": "Versione {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/kk.json b/Emby.Server.Implementations/Localization/Core/kk.json index 970a5d460..45b8617f1 100644 --- a/Emby.Server.Implementations/Localization/Core/kk.json +++ b/Emby.Server.Implementations/Localization/Core/kk.json @@ -1,100 +1,100 @@ { - "Albums": "Альбомдар", - "AppDeviceValues": "Қолданба: {0}, Құрылғы: {1}", - "Application": "Қолданба", - "Artists": "Орындаушылар", - "AuthenticationSucceededWithUserName": "{0} түпнұсқалығын расталуы сәтті", - "Books": "Кітаптар", - "CameraImageUploadedFrom": "Жаңа сурет {0} камерасынан жүктеп алынды", - "Channels": "Арналар", - "ChapterNameValue": "{0}-сахна", - "Collections": "Жиынтықтар", - "DeviceOfflineWithName": "{0} ажыратылған", - "DeviceOnlineWithName": "{0} қосылған", - "FailedLoginAttemptWithUserName": "{0} тарапынан кіру әрекеті сәтсіз", - "Favorites": "Таңдаулылар", - "Folders": "Қалталар", - "Games": "Ойындар", - "Genres": "Жанрлар", - "HeaderAlbumArtists": "Альбом орындаушылары", - "HeaderCameraUploads": "Камерадан жүктелгендер", - "HeaderContinueWatching": "Қарауды жалғастыру", - "HeaderFavoriteAlbums": "Таңдаулы альбомдар", - "HeaderFavoriteArtists": "Таңдаулы орындаушылар", - "HeaderFavoriteEpisodes": "Таңдаулы бөлімдер", - "HeaderFavoriteShows": "Таңдаулы көрсетімдер", - "HeaderFavoriteSongs": "Таңдаулы әуендер", - "HeaderLiveTV": "Эфир", - "HeaderNextUp": "Кезекті", - "HeaderRecordingGroups": "Жазба топтары", - "HomeVideos": "Үйлік бейнелер", - "Inherit": "Мұраға иелену", - "ItemAddedWithName": "{0} тасығышханаға үстелінді", - "ItemRemovedWithName": "{0} тасығышханадан аласталды", - "LabelIpAddressValue": "IP-мекенжайы: {0}", - "LabelRunningTimeValue": "Іске қосылу уақыты: {0}", - "Latest": "Ең кейінгі", - "MessageApplicationUpdated": "Jellyfin Server жаңартылды.", - "MessageApplicationUpdatedTo": "Jellyfin Server {0} үшін жаңартылды", - "MessageNamedServerConfigurationUpdatedWithValue": "Сервер теңшелімі ({0} бөлімі) жаңартылды", - "MessageServerConfigurationUpdated": "Сервер теңшелімі жаңартылды", - "MixedContent": "Аралас мазмұн", - "Movies": "Фильмдер", - "Music": "Музыка", - "MusicVideos": "Музыкалық бейнелер", - "NameInstallFailed": "{0} орнатылуы сәтсіз", - "NameSeasonNumber": "{0}-маусым", - "NameSeasonUnknown": "Белгісіз маусым", - "NewVersionIsAvailable": "Жаңа Jellyfin Server нұсқасы жүктеп алуға қолжетімді.", - "NotificationOptionApplicationUpdateAvailable": "Қолданба жаңартуы қолжетімді", - "NotificationOptionApplicationUpdateInstalled": "Қолданба жаңартуы орнатылды", - "NotificationOptionAudioPlayback": "Дыбыс ойнатуы басталды", - "NotificationOptionAudioPlaybackStopped": "Дыбыс ойнатуы тоқтатылды", - "NotificationOptionCameraImageUploaded": "Камерадан фотосурет кері қотарылған", - "NotificationOptionGamePlayback": "Ойын ойнатуы басталды", - "NotificationOptionGamePlaybackStopped": "Ойын ойнатуы тоқтатылды", - "NotificationOptionInstallationFailed": "Орнату сәтсіздігі", - "NotificationOptionNewLibraryContent": "Жаңа мазмұн үстелген", - "NotificationOptionPluginError": "Плагин сәтсіздігі", - "NotificationOptionPluginInstalled": "Плагин орнатылды", - "NotificationOptionPluginUninstalled": "Плагин орнатуы болдырылмады", - "NotificationOptionPluginUpdateInstalled": "Плагин жаңартуы орнатылды", - "NotificationOptionServerRestartRequired": "Серверді қайта іске қосу қажет", - "NotificationOptionTaskFailed": "Жоспарлаған тапсырма сәтсіздігі", - "NotificationOptionUserLockedOut": "Пайдаланушы құрсаулы", - "NotificationOptionVideoPlayback": "Бейне ойнатуы басталды", - "NotificationOptionVideoPlaybackStopped": "Бейне ойнатуы тоқтатылды", - "Photos": "Фотосуреттер", - "Playlists": "Ойнату тізімдері", - "Plugin": "Плагин", - "PluginInstalledWithName": "{0} орнатылды", - "PluginUninstalledWithName": "{0} жойылды", - "PluginUpdatedWithName": "{0} жаңартылды", - "ProviderValue": "Жеткізуші: {0}", - "ScheduledTaskFailedWithName": "{0} сәтсіз", - "ScheduledTaskStartedWithName": "{0} іске қосылды", - "ServerNameNeedsToBeRestarted": "{0} қайта іске қосу қажет", - "Shows": "Көрсетімдер", - "Songs": "Әуендер", - "StartupEmbyServerIsLoading": "Jellyfin Server жүктелуде. Әрекетті көп ұзамай қайталаңыз.", - "SubtitleDownloadFailureForItem": "Субтитрлер {0} үшін жүктеліп алынуы сәтсіз", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "{0} үшін субтитрлер жүктеліп алынды", - "Sync": "Үндестіру", - "System": "Жүйе", - "TvShows": "ТД-көрсетімдер", - "User": "Пайдаланушы", - "UserCreatedWithName": "Пайдаланушы {0} жасалған", - "UserDeletedWithName": "Пайдаланушы {0} жойылған", - "UserDownloadingItemWithValues": "{0} мынаны жүктеп алуда: {1}", - "UserLockedOutWithName": "Пайдаланушы {0} құрсаулы", - "UserOfflineFromDevice": "{0} - {1} тарапынан ажыратылған", - "UserOnlineFromDevice": "{0} - {1} арқылы қосылған", - "UserPasswordChangedWithName": "Пайдаланушы {0} үшін құпия сөз өзгертілді", - "UserPolicyUpdatedWithName": "Пайдаланушы {0} үшін саясаттары жаңартылды", - "UserStartedPlayingItemWithValues": "{0} - {1} ойнатуын {2} бастады", - "UserStoppedPlayingItemWithValues": "{0} - {1} ойнатуын {2} тоқтатты", - "ValueHasBeenAddedToLibrary": "{0} (тасығышханаға үстелінді)", - "ValueSpecialEpisodeName": "Арнайы - {0}", - "VersionNumber": "Нұсқасы: {0}" + "Albums": "Альбомдар", + "AppDeviceValues": "Қолданба: {0}, Құрылғы: {1}", + "Application": "Қолданба", + "Artists": "Орындаушылар", + "AuthenticationSucceededWithUserName": "{0} түпнұсқалығын расталуы сәтті", + "Books": "Кітаптар", + "CameraImageUploadedFrom": "Жаңа сурет {0} камерасынан жүктеп алынды", + "Channels": "Арналар", + "ChapterNameValue": "{0}-сахна", + "Collections": "Жиынтықтар", + "DeviceOfflineWithName": "{0} ажыратылған", + "DeviceOnlineWithName": "{0} қосылған", + "FailedLoginAttemptWithUserName": "{0} тарапынан кіру әрекеті сәтсіз", + "Favorites": "Таңдаулылар", + "Folders": "Қалталар", + "Games": "Ойындар", + "Genres": "Жанрлар", + "HeaderAlbumArtists": "Альбом орындаушылары", + "HeaderCameraUploads": "Камерадан жүктелгендер", + "HeaderContinueWatching": "Қарауды жалғастыру", + "HeaderFavoriteAlbums": "Таңдаулы альбомдар", + "HeaderFavoriteArtists": "Таңдаулы орындаушылар", + "HeaderFavoriteEpisodes": "Таңдаулы бөлімдер", + "HeaderFavoriteShows": "Таңдаулы көрсетімдер", + "HeaderFavoriteSongs": "Таңдаулы әуендер", + "HeaderLiveTV": "Эфир", + "HeaderNextUp": "Кезекті", + "HeaderRecordingGroups": "Жазба топтары", + "HomeVideos": "Үйлік бейнелер", + "Inherit": "Мұраға иелену", + "ItemAddedWithName": "{0} тасығышханаға үстелінді", + "ItemRemovedWithName": "{0} тасығышханадан аласталды", + "LabelIpAddressValue": "IP-мекенжайы: {0}", + "LabelRunningTimeValue": "Іске қосылу уақыты: {0}", + "Latest": "Ең кейінгі", + "MessageApplicationUpdated": "Jellyfin Server жаңартылды.", + "MessageApplicationUpdatedTo": "Jellyfin Server {0} үшін жаңартылды", + "MessageNamedServerConfigurationUpdatedWithValue": "Сервер теңшелімі ({0} бөлімі) жаңартылды", + "MessageServerConfigurationUpdated": "Сервер теңшелімі жаңартылды", + "MixedContent": "Аралас мазмұн", + "Movies": "Фильмдер", + "Music": "Музыка", + "MusicVideos": "Музыкалық бейнелер", + "NameInstallFailed": "{0} орнатылуы сәтсіз", + "NameSeasonNumber": "{0}-маусым", + "NameSeasonUnknown": "Белгісіз маусым", + "NewVersionIsAvailable": "Жаңа Jellyfin Server нұсқасы жүктеп алуға қолжетімді.", + "NotificationOptionApplicationUpdateAvailable": "Қолданба жаңартуы қолжетімді", + "NotificationOptionApplicationUpdateInstalled": "Қолданба жаңартуы орнатылды", + "NotificationOptionAudioPlayback": "Дыбыс ойнатуы басталды", + "NotificationOptionAudioPlaybackStopped": "Дыбыс ойнатуы тоқтатылды", + "NotificationOptionCameraImageUploaded": "Камерадан фотосурет кері қотарылған", + "NotificationOptionGamePlayback": "Ойын ойнатуы басталды", + "NotificationOptionGamePlaybackStopped": "Ойын ойнатуы тоқтатылды", + "NotificationOptionInstallationFailed": "Орнату сәтсіздігі", + "NotificationOptionNewLibraryContent": "Жаңа мазмұн үстелген", + "NotificationOptionPluginError": "Плагин сәтсіздігі", + "NotificationOptionPluginInstalled": "Плагин орнатылды", + "NotificationOptionPluginUninstalled": "Плагин орнатуы болдырылмады", + "NotificationOptionPluginUpdateInstalled": "Плагин жаңартуы орнатылды", + "NotificationOptionServerRestartRequired": "Серверді қайта іске қосу қажет", + "NotificationOptionTaskFailed": "Жоспарлаған тапсырма сәтсіздігі", + "NotificationOptionUserLockedOut": "Пайдаланушы құрсаулы", + "NotificationOptionVideoPlayback": "Бейне ойнатуы басталды", + "NotificationOptionVideoPlaybackStopped": "Бейне ойнатуы тоқтатылды", + "Photos": "Фотосуреттер", + "Playlists": "Ойнату тізімдері", + "Plugin": "Плагин", + "PluginInstalledWithName": "{0} орнатылды", + "PluginUninstalledWithName": "{0} жойылды", + "PluginUpdatedWithName": "{0} жаңартылды", + "ProviderValue": "Жеткізуші: {0}", + "ScheduledTaskFailedWithName": "{0} сәтсіз", + "ScheduledTaskStartedWithName": "{0} іске қосылды", + "ServerNameNeedsToBeRestarted": "{0} қайта іске қосу қажет", + "Shows": "Көрсетімдер", + "Songs": "Әуендер", + "StartupEmbyServerIsLoading": "Jellyfin Server жүктелуде. Әрекетті көп ұзамай қайталаңыз.", + "SubtitleDownloadFailureForItem": "Субтитрлер {0} үшін жүктеліп алынуы сәтсіз", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "{0} үшін субтитрлер жүктеліп алынды", + "Sync": "Үндестіру", + "System": "Жүйе", + "TvShows": "ТД-көрсетімдер", + "User": "Пайдаланушы", + "UserCreatedWithName": "Пайдаланушы {0} жасалған", + "UserDeletedWithName": "Пайдаланушы {0} жойылған", + "UserDownloadingItemWithValues": "{0} мынаны жүктеп алуда: {1}", + "UserLockedOutWithName": "Пайдаланушы {0} құрсаулы", + "UserOfflineFromDevice": "{0} - {1} тарапынан ажыратылған", + "UserOnlineFromDevice": "{0} - {1} арқылы қосылған", + "UserPasswordChangedWithName": "Пайдаланушы {0} үшін құпия сөз өзгертілді", + "UserPolicyUpdatedWithName": "Пайдаланушы {0} үшін саясаттары жаңартылды", + "UserStartedPlayingItemWithValues": "{0} - {1} ойнатуын {2} бастады", + "UserStoppedPlayingItemWithValues": "{0} - {1} ойнатуын {2} тоқтатты", + "ValueHasBeenAddedToLibrary": "{0} (тасығышханаға үстелінді)", + "ValueSpecialEpisodeName": "Арнайы - {0}", + "VersionNumber": "Нұсқасы: {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/ko.json b/Emby.Server.Implementations/Localization/Core/ko.json index ec7785619..04fc52d6e 100644 --- a/Emby.Server.Implementations/Localization/Core/ko.json +++ b/Emby.Server.Implementations/Localization/Core/ko.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "앨범 아티스트", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "계속 시청하기", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "즐겨찾는 쇼", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin 서버를 불러오고 있습니다. 잠시후 다시시도 해주세요.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "앨범 아티스트", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "계속 시청하기", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "즐겨찾는 쇼", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin 서버를 불러오고 있습니다. 잠시후 다시시도 해주세요.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/lt-LT.json b/Emby.Server.Implementations/Localization/Core/lt-LT.json index bd362c493..653565db6 100644 --- a/Emby.Server.Implementations/Localization/Core/lt-LT.json +++ b/Emby.Server.Implementations/Localization/Core/lt-LT.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Žanrai", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Žiūrėti toliau", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Filmai", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sinchronizuoti", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Ypatinga - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Žanrai", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Žiūrėti toliau", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Filmai", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sinchronizuoti", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Ypatinga - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/ms.json b/Emby.Server.Implementations/Localization/Core/ms.json index ae74d6f7e..aaaf09788 100644 --- a/Emby.Server.Implementations/Localization/Core/ms.json +++ b/Emby.Server.Implementations/Localization/Core/ms.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continue Watching", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Series", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continue Watching", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Series", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/nb.json b/Emby.Server.Implementations/Localization/Core/nb.json index 779b508c4..ed63aa29c 100644 --- a/Emby.Server.Implementations/Localization/Core/nb.json +++ b/Emby.Server.Implementations/Localization/Core/nb.json @@ -1,100 +1,100 @@ { - "Albums": "Album", - "AppDeviceValues": "App:{0}, Enhet {1}", - "Application": "Applikasjon", - "Artists": "Artister", - "AuthenticationSucceededWithUserName": "{0} vellykkede autentisert", - "Books": "Bøker", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Kanaler", - "ChapterNameValue": "Kapittel {0}", - "Collections": "Samlinger", - "DeviceOfflineWithName": "{0} har koblet fra", - "DeviceOnlineWithName": "{0} er tilkoblet", - "FailedLoginAttemptWithUserName": "Mislykket påloggingsforsøk fra {0}", - "Favorites": "Favoritter", - "Folders": "Mapper", - "Games": "Spill", - "Genres": "Sjanger", - "HeaderAlbumArtists": "Albumartist", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Forsett og see på", - "HeaderFavoriteAlbums": "Favoritt albumer", - "HeaderFavoriteArtists": "Favorittartister", - "HeaderFavoriteEpisodes": "Favoritt episode", - "HeaderFavoriteShows": "Favorittserier", - "HeaderFavoriteSongs": "Favorittsanger", - "HeaderLiveTV": "Direkte TV", - "HeaderNextUp": "Neste", - "HeaderRecordingGroups": "Opptak Grupper", - "HomeVideos": "Hjemmelaget filmer", - "Inherit": "Arve", - "ItemAddedWithName": "{0} ble lagt til i biblioteket", - "ItemRemovedWithName": "{0} ble fjernet fra biblioteket", - "LabelIpAddressValue": "IP adresse: {0}", - "LabelRunningTimeValue": "Løpetid {0}", - "Latest": "Siste", - "MessageApplicationUpdated": "Jellyfin server har blitt oppdatert", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server konfigurasjon seksjon {0} har blitt oppdatert", - "MessageServerConfigurationUpdated": "Server konfigurasjon er oppdatert", - "MixedContent": "Blandet innhold", - "Movies": "Filmer", - "Music": "Musikk", - "MusicVideos": "Musikkvideoer", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Sesong {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Applikasjon oppdatering tilgjengelig", - "NotificationOptionApplicationUpdateInstalled": "Applikasjon oppdatering installert.", - "NotificationOptionAudioPlayback": "Lyd tilbakespilling startet", - "NotificationOptionAudioPlaybackStopped": "Lyd avspilling stoppet", - "NotificationOptionCameraImageUploaded": "Kamera bilde lastet opp", - "NotificationOptionGamePlayback": "Spill avspillingen startet", - "NotificationOptionGamePlaybackStopped": "Filmer", - "NotificationOptionInstallationFailed": "Installasjon feil", - "NotificationOptionNewLibraryContent": "Ny innhold er lagt til", - "NotificationOptionPluginError": "Plugin feil", - "NotificationOptionPluginInstalled": "Plugin installert", - "NotificationOptionPluginUninstalled": "Plugin avinstallert", - "NotificationOptionPluginUpdateInstalled": "Plugin oppdatering installert", - "NotificationOptionServerRestartRequired": "Server omstart er nødvendig", - "NotificationOptionTaskFailed": "Feil under utføring av planlagt oppgaver", - "NotificationOptionUserLockedOut": "Bruker er utestengt", - "NotificationOptionVideoPlayback": "Video tilbakespilling startet", - "NotificationOptionVideoPlaybackStopped": "Video avspilling stoppet", - "Photos": "BIlder", - "Playlists": "Spilleliste", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} ble installert", - "PluginUninstalledWithName": "{0} ble avinstallert", - "PluginUpdatedWithName": "{0} ble oppdatert", - "ProviderValue": "Leverandører: {0}", - "ScheduledTaskFailedWithName": "{0} Mislykkes", - "ScheduledTaskStartedWithName": "{0} Startet", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Programmer", - "Songs": "Sanger", - "StartupEmbyServerIsLoading": "Jellyfin server laster. Prøv igjen snart.", - "SubtitleDownloadFailureForItem": "En feil oppstå under nedlasting av undertekster for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Undertekster lastet ned for {0}", - "Sync": "Synk", - "System": "System", - "TvShows": "TV Shows", - "User": "Bruker", - "UserCreatedWithName": "Bruker {0} er opprettet", - "UserDeletedWithName": "Bruker {0} har blitt slettet", - "UserDownloadingItemWithValues": "{0} laster ned {1}", - "UserLockedOutWithName": "Bruker {0} er blitt utestengt", - "UserOfflineFromDevice": "{0} har koblet fra {1}", - "UserOnlineFromDevice": "{0} er tilkoblet fra {1}", - "UserPasswordChangedWithName": "Passordet for {0} er oppdatert", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} har startet avspilling {1}", - "UserStoppedPlayingItemWithValues": "{0} har stoppet avspilling {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Spesial - {0}", - "VersionNumber": "Versjon {0}" + "Albums": "Album", + "AppDeviceValues": "App:{0}, Enhet {1}", + "Application": "Applikasjon", + "Artists": "Artister", + "AuthenticationSucceededWithUserName": "{0} vellykkede autentisert", + "Books": "Bøker", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Kanaler", + "ChapterNameValue": "Kapittel {0}", + "Collections": "Samlinger", + "DeviceOfflineWithName": "{0} har koblet fra", + "DeviceOnlineWithName": "{0} er tilkoblet", + "FailedLoginAttemptWithUserName": "Mislykket påloggingsforsøk fra {0}", + "Favorites": "Favoritter", + "Folders": "Mapper", + "Games": "Spill", + "Genres": "Sjanger", + "HeaderAlbumArtists": "Albumartist", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Forsett og see på", + "HeaderFavoriteAlbums": "Favoritt albumer", + "HeaderFavoriteArtists": "Favorittartister", + "HeaderFavoriteEpisodes": "Favoritt episode", + "HeaderFavoriteShows": "Favorittserier", + "HeaderFavoriteSongs": "Favorittsanger", + "HeaderLiveTV": "Direkte TV", + "HeaderNextUp": "Neste", + "HeaderRecordingGroups": "Opptak Grupper", + "HomeVideos": "Hjemmelaget filmer", + "Inherit": "Arve", + "ItemAddedWithName": "{0} ble lagt til i biblioteket", + "ItemRemovedWithName": "{0} ble fjernet fra biblioteket", + "LabelIpAddressValue": "IP adresse: {0}", + "LabelRunningTimeValue": "Løpetid {0}", + "Latest": "Siste", + "MessageApplicationUpdated": "Jellyfin server har blitt oppdatert", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server konfigurasjon seksjon {0} har blitt oppdatert", + "MessageServerConfigurationUpdated": "Server konfigurasjon er oppdatert", + "MixedContent": "Blandet innhold", + "Movies": "Filmer", + "Music": "Musikk", + "MusicVideos": "Musikkvideoer", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Sesong {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Applikasjon oppdatering tilgjengelig", + "NotificationOptionApplicationUpdateInstalled": "Applikasjon oppdatering installert.", + "NotificationOptionAudioPlayback": "Lyd tilbakespilling startet", + "NotificationOptionAudioPlaybackStopped": "Lyd avspilling stoppet", + "NotificationOptionCameraImageUploaded": "Kamera bilde lastet opp", + "NotificationOptionGamePlayback": "Spill avspillingen startet", + "NotificationOptionGamePlaybackStopped": "Filmer", + "NotificationOptionInstallationFailed": "Installasjon feil", + "NotificationOptionNewLibraryContent": "Ny innhold er lagt til", + "NotificationOptionPluginError": "Plugin feil", + "NotificationOptionPluginInstalled": "Plugin installert", + "NotificationOptionPluginUninstalled": "Plugin avinstallert", + "NotificationOptionPluginUpdateInstalled": "Plugin oppdatering installert", + "NotificationOptionServerRestartRequired": "Server omstart er nødvendig", + "NotificationOptionTaskFailed": "Feil under utføring av planlagt oppgaver", + "NotificationOptionUserLockedOut": "Bruker er utestengt", + "NotificationOptionVideoPlayback": "Video tilbakespilling startet", + "NotificationOptionVideoPlaybackStopped": "Video avspilling stoppet", + "Photos": "BIlder", + "Playlists": "Spilleliste", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} ble installert", + "PluginUninstalledWithName": "{0} ble avinstallert", + "PluginUpdatedWithName": "{0} ble oppdatert", + "ProviderValue": "Leverandører: {0}", + "ScheduledTaskFailedWithName": "{0} Mislykkes", + "ScheduledTaskStartedWithName": "{0} Startet", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Programmer", + "Songs": "Sanger", + "StartupEmbyServerIsLoading": "Jellyfin server laster. Prøv igjen snart.", + "SubtitleDownloadFailureForItem": "En feil oppstå under nedlasting av undertekster for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Undertekster lastet ned for {0}", + "Sync": "Synk", + "System": "System", + "TvShows": "TV Shows", + "User": "Bruker", + "UserCreatedWithName": "Bruker {0} er opprettet", + "UserDeletedWithName": "Bruker {0} har blitt slettet", + "UserDownloadingItemWithValues": "{0} laster ned {1}", + "UserLockedOutWithName": "Bruker {0} er blitt utestengt", + "UserOfflineFromDevice": "{0} har koblet fra {1}", + "UserOnlineFromDevice": "{0} er tilkoblet fra {1}", + "UserPasswordChangedWithName": "Passordet for {0} er oppdatert", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} har startet avspilling {1}", + "UserStoppedPlayingItemWithValues": "{0} har stoppet avspilling {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Spesial - {0}", + "VersionNumber": "Versjon {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/nl.json b/Emby.Server.Implementations/Localization/Core/nl.json index 67529ccd9..7b8c8765e 100644 --- a/Emby.Server.Implementations/Localization/Core/nl.json +++ b/Emby.Server.Implementations/Localization/Core/nl.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Apparaat: {1}", - "Application": "Toepassing", - "Artists": "Artiesten", - "AuthenticationSucceededWithUserName": "{0} is succesvol geverifieerd", - "Books": "Boeken", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Kanalen", - "ChapterNameValue": "Hoofdstuk {0}", - "Collections": "Collecties", - "DeviceOfflineWithName": "{0} is losgekoppeld", - "DeviceOnlineWithName": "{0} is verbonden", - "FailedLoginAttemptWithUserName": "Mislukte aanmeld poging van {0}", - "Favorites": "Favorieten", - "Folders": "Mappen", - "Games": "Spellen", - "Genres": "Genres", - "HeaderAlbumArtists": "Album artiesten", - "HeaderCameraUploads": "Camera uploads", - "HeaderContinueWatching": "Kijken hervatten", - "HeaderFavoriteAlbums": "Favoriete albums", - "HeaderFavoriteArtists": "Favoriete artiesten", - "HeaderFavoriteEpisodes": "Favoriete afleveringen", - "HeaderFavoriteShows": "Favoriete shows", - "HeaderFavoriteSongs": "Favoriete titels", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Volgende", - "HeaderRecordingGroups": "Opnamegroepen", - "HomeVideos": "Thuis video's", - "Inherit": "Overerven", - "ItemAddedWithName": "{0} is toegevoegd aan de bibliotheek", - "ItemRemovedWithName": "{0} is verwijderd uit de bibliotheek", - "LabelIpAddressValue": "IP adres: {0}", - "LabelRunningTimeValue": "Looptijd: {0}", - "Latest": "Nieuwste", - "MessageApplicationUpdated": "Jellyfin Server is bijgewerkt", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Sectie {0} van de server configuratie is bijgewerkt", - "MessageServerConfigurationUpdated": "Server configuratie is bijgewerkt", - "MixedContent": "Gemengde inhoud", - "Movies": "Films", - "Music": "Muziek", - "MusicVideos": "Muziekvideo's", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Seizoen {0}", - "NameSeasonUnknown": "Seizoen onbekend", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Programma-update beschikbaar", - "NotificationOptionApplicationUpdateInstalled": "Programma-update geïnstalleerd", - "NotificationOptionAudioPlayback": "Geluid gestart", - "NotificationOptionAudioPlaybackStopped": "Geluid gestopt", - "NotificationOptionCameraImageUploaded": "Camera afbeelding geüpload", - "NotificationOptionGamePlayback": "Spel gestart", - "NotificationOptionGamePlaybackStopped": "Spel gestopt", - "NotificationOptionInstallationFailed": "Installatie mislukt", - "NotificationOptionNewLibraryContent": "Nieuwe content toegevoegd", - "NotificationOptionPluginError": "Plug-in fout", - "NotificationOptionPluginInstalled": "Plug-in geïnstalleerd", - "NotificationOptionPluginUninstalled": "Plug-in verwijderd", - "NotificationOptionPluginUpdateInstalled": "Plug-in-update geïnstalleerd", - "NotificationOptionServerRestartRequired": "Server herstart nodig", - "NotificationOptionTaskFailed": "Geplande taak mislukt", - "NotificationOptionUserLockedOut": "Gebruikersaccount vergrendeld", - "NotificationOptionVideoPlayback": "Video gestart", - "NotificationOptionVideoPlaybackStopped": "Video gestopt", - "Photos": "Foto's", - "Playlists": "Afspeellijsten", - "Plugin": "Plug-in", - "PluginInstalledWithName": "{0} is geïnstalleerd", - "PluginUninstalledWithName": "{0} is verwijderd", - "PluginUpdatedWithName": "{0} is bijgewerkt", - "ProviderValue": "Aanbieder: {0}", - "ScheduledTaskFailedWithName": "{0} is mislukt", - "ScheduledTaskStartedWithName": "{0} is gestart", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Series", - "Songs": "Titels", - "StartupEmbyServerIsLoading": "Jellyfin Server is aan het laden, probeer het later opnieuw.", - "SubtitleDownloadFailureForItem": "Downloaden van ondertiteling voor {0} is mislukt", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Ondertiteling voor {0} is gedownload", - "Sync": "Synchronisatie", - "System": "Systeem", - "TvShows": "TV-series", - "User": "Gebruiker", - "UserCreatedWithName": "Gebruiker {0} is aangemaakt", - "UserDeletedWithName": "Gebruiker {0} is verwijderd", - "UserDownloadingItemWithValues": "{0} download {1}", - "UserLockedOutWithName": "Gebruikersaccount {0} is vergrendeld", - "UserOfflineFromDevice": "Verbinding van {0} met {1} is verbroken", - "UserOnlineFromDevice": "{0} heeft verbinding met {1}", - "UserPasswordChangedWithName": "Wachtwoord voor {0} is gewijzigd", - "UserPolicyUpdatedWithName": "Gebruikersbeleid gewijzigd voor {0}", - "UserStartedPlayingItemWithValues": "{0} heeft afspelen van {1} gestart", - "UserStoppedPlayingItemWithValues": "{0} heeft afspelen van {1} gestopt", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Speciaal - {0}", - "VersionNumber": "Versie {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Apparaat: {1}", + "Application": "Toepassing", + "Artists": "Artiesten", + "AuthenticationSucceededWithUserName": "{0} is succesvol geverifieerd", + "Books": "Boeken", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Kanalen", + "ChapterNameValue": "Hoofdstuk {0}", + "Collections": "Collecties", + "DeviceOfflineWithName": "{0} is losgekoppeld", + "DeviceOnlineWithName": "{0} is verbonden", + "FailedLoginAttemptWithUserName": "Mislukte aanmeld poging van {0}", + "Favorites": "Favorieten", + "Folders": "Mappen", + "Games": "Spellen", + "Genres": "Genres", + "HeaderAlbumArtists": "Album artiesten", + "HeaderCameraUploads": "Camera uploads", + "HeaderContinueWatching": "Kijken hervatten", + "HeaderFavoriteAlbums": "Favoriete albums", + "HeaderFavoriteArtists": "Favoriete artiesten", + "HeaderFavoriteEpisodes": "Favoriete afleveringen", + "HeaderFavoriteShows": "Favoriete shows", + "HeaderFavoriteSongs": "Favoriete titels", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Volgende", + "HeaderRecordingGroups": "Opnamegroepen", + "HomeVideos": "Thuis video's", + "Inherit": "Overerven", + "ItemAddedWithName": "{0} is toegevoegd aan de bibliotheek", + "ItemRemovedWithName": "{0} is verwijderd uit de bibliotheek", + "LabelIpAddressValue": "IP adres: {0}", + "LabelRunningTimeValue": "Looptijd: {0}", + "Latest": "Nieuwste", + "MessageApplicationUpdated": "Jellyfin Server is bijgewerkt", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Sectie {0} van de server configuratie is bijgewerkt", + "MessageServerConfigurationUpdated": "Server configuratie is bijgewerkt", + "MixedContent": "Gemengde inhoud", + "Movies": "Films", + "Music": "Muziek", + "MusicVideos": "Muziekvideo's", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Seizoen {0}", + "NameSeasonUnknown": "Seizoen onbekend", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Programma-update beschikbaar", + "NotificationOptionApplicationUpdateInstalled": "Programma-update geïnstalleerd", + "NotificationOptionAudioPlayback": "Geluid gestart", + "NotificationOptionAudioPlaybackStopped": "Geluid gestopt", + "NotificationOptionCameraImageUploaded": "Camera afbeelding geüpload", + "NotificationOptionGamePlayback": "Spel gestart", + "NotificationOptionGamePlaybackStopped": "Spel gestopt", + "NotificationOptionInstallationFailed": "Installatie mislukt", + "NotificationOptionNewLibraryContent": "Nieuwe content toegevoegd", + "NotificationOptionPluginError": "Plug-in fout", + "NotificationOptionPluginInstalled": "Plug-in geïnstalleerd", + "NotificationOptionPluginUninstalled": "Plug-in verwijderd", + "NotificationOptionPluginUpdateInstalled": "Plug-in-update geïnstalleerd", + "NotificationOptionServerRestartRequired": "Server herstart nodig", + "NotificationOptionTaskFailed": "Geplande taak mislukt", + "NotificationOptionUserLockedOut": "Gebruikersaccount vergrendeld", + "NotificationOptionVideoPlayback": "Video gestart", + "NotificationOptionVideoPlaybackStopped": "Video gestopt", + "Photos": "Foto's", + "Playlists": "Afspeellijsten", + "Plugin": "Plug-in", + "PluginInstalledWithName": "{0} is geïnstalleerd", + "PluginUninstalledWithName": "{0} is verwijderd", + "PluginUpdatedWithName": "{0} is bijgewerkt", + "ProviderValue": "Aanbieder: {0}", + "ScheduledTaskFailedWithName": "{0} is mislukt", + "ScheduledTaskStartedWithName": "{0} is gestart", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Series", + "Songs": "Titels", + "StartupEmbyServerIsLoading": "Jellyfin Server is aan het laden, probeer het later opnieuw.", + "SubtitleDownloadFailureForItem": "Downloaden van ondertiteling voor {0} is mislukt", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Ondertiteling voor {0} is gedownload", + "Sync": "Synchronisatie", + "System": "Systeem", + "TvShows": "TV-series", + "User": "Gebruiker", + "UserCreatedWithName": "Gebruiker {0} is aangemaakt", + "UserDeletedWithName": "Gebruiker {0} is verwijderd", + "UserDownloadingItemWithValues": "{0} download {1}", + "UserLockedOutWithName": "Gebruikersaccount {0} is vergrendeld", + "UserOfflineFromDevice": "Verbinding van {0} met {1} is verbroken", + "UserOnlineFromDevice": "{0} heeft verbinding met {1}", + "UserPasswordChangedWithName": "Wachtwoord voor {0} is gewijzigd", + "UserPolicyUpdatedWithName": "Gebruikersbeleid gewijzigd voor {0}", + "UserStartedPlayingItemWithValues": "{0} heeft afspelen van {1} gestart", + "UserStoppedPlayingItemWithValues": "{0} heeft afspelen van {1} gestopt", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Speciaal - {0}", + "VersionNumber": "Versie {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/pl.json b/Emby.Server.Implementations/Localization/Core/pl.json index 82ee1becd..5aefa740b 100644 --- a/Emby.Server.Implementations/Localization/Core/pl.json +++ b/Emby.Server.Implementations/Localization/Core/pl.json @@ -1,100 +1,100 @@ { - "Albums": "Albumy", - "AppDeviceValues": "Aplikacja: {0}, Urządzenie: {1}", - "Application": "Aplikacja", - "Artists": "Wykonawcy", - "AuthenticationSucceededWithUserName": "{0} został pomyślnie uwierzytelniony", - "Books": "Książki", - "CameraImageUploadedFrom": "Nowy obraz został przekazany z {0}", - "Channels": "Kanały", - "ChapterNameValue": "Rozdział {0}", - "Collections": "Kolekcje", - "DeviceOfflineWithName": "{0} został rozłączony", - "DeviceOnlineWithName": "{0} połączył się", - "FailedLoginAttemptWithUserName": "Próba logowania przez {0} zakończona niepowodzeniem", - "Favorites": "Ulubione", - "Folders": "Foldery", - "Games": "Gry", - "Genres": "Gatunki", - "HeaderAlbumArtists": "Wykonawcy albumów", - "HeaderCameraUploads": "Przekazane obrazy", - "HeaderContinueWatching": "Kontynuuj odtwarzanie", - "HeaderFavoriteAlbums": "Albumy ulubione", - "HeaderFavoriteArtists": "Wykonawcy ulubieni", - "HeaderFavoriteEpisodes": "Odcinki ulubione", - "HeaderFavoriteShows": "Seriale ulubione", - "HeaderFavoriteSongs": "Utwory ulubione", - "HeaderLiveTV": "Telewizja", - "HeaderNextUp": "Do obejrzenia", - "HeaderRecordingGroups": "Grupy nagrań", - "HomeVideos": "Nagrania prywatne", - "Inherit": "Dziedzicz", - "ItemAddedWithName": "{0} zostało dodane do biblioteki", - "ItemRemovedWithName": "{0} zostało usunięte z biblioteki", - "LabelIpAddressValue": "Adres IP: {0}", - "LabelRunningTimeValue": "Czas trwania: {0}", - "Latest": "Ostatnio dodane", - "MessageApplicationUpdated": "Serwer Jellyfin został zaktualizowany", - "MessageApplicationUpdatedTo": "Serwer Jellyfin został zaktualizowany do wersji {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Sekcja {0} konfiguracji serwera została zaktualizowana", - "MessageServerConfigurationUpdated": "Konfiguracja serwera została zaktualizowana", - "MixedContent": "Zawartość mieszana", - "Movies": "Filmy", - "Music": "Muzyka", - "MusicVideos": "Teledyski", - "NameInstallFailed": "Instalacja {0} nieudana.", - "NameSeasonNumber": "Sezon {0}", - "NameSeasonUnknown": "Sezon nieznany", - "NewVersionIsAvailable": "Nowa wersja serwera Jellyfin jest dostępna do pobrania.", - "NotificationOptionApplicationUpdateAvailable": "Dostępna aktualizacja aplikacji", - "NotificationOptionApplicationUpdateInstalled": "Zainstalowano aktualizację aplikacji", - "NotificationOptionAudioPlayback": "Rozpoczęto odtwarzanie muzyki", - "NotificationOptionAudioPlaybackStopped": "Odtwarzane dźwięku zatrzymane", - "NotificationOptionCameraImageUploaded": "Przekazano obraz z urządzenia mobilnego", - "NotificationOptionGamePlayback": "Odtwarzanie gry rozpoczęte", - "NotificationOptionGamePlaybackStopped": "Odtwarzanie gry zatrzymane", - "NotificationOptionInstallationFailed": "Niepowodzenie instalacji", - "NotificationOptionNewLibraryContent": "Dodano nową zawartość", - "NotificationOptionPluginError": "Awaria wtyczki", - "NotificationOptionPluginInstalled": "Zainstalowano wtyczkę", - "NotificationOptionPluginUninstalled": "Odinstalowano wtyczkę", - "NotificationOptionPluginUpdateInstalled": "Zainstalowano aktualizację wtyczki", - "NotificationOptionServerRestartRequired": "Wymagane ponowne uruchomienie serwera", - "NotificationOptionTaskFailed": "Awaria zaplanowanego zadania", - "NotificationOptionUserLockedOut": "Użytkownik zablokowany", - "NotificationOptionVideoPlayback": "Rozpoczęto odtwarzanie wideo", - "NotificationOptionVideoPlaybackStopped": "Odtwarzanie wideo zatrzymane", - "Photos": "Zdjęcia", - "Playlists": "Listy odtwarzania", - "Plugin": "Wtyczka", - "PluginInstalledWithName": "{0} zostało zainstalowane", - "PluginUninstalledWithName": "{0} odinstalowane", - "PluginUpdatedWithName": "{0} zaktualizowane", - "ProviderValue": "Dostawca: {0}", - "ScheduledTaskFailedWithName": "Nieudane {0}", - "ScheduledTaskStartedWithName": "Rozpoczęto {0}", - "ServerNameNeedsToBeRestarted": "{0} wymaga ponownego uruchomienia", - "Shows": "Seriale", - "Songs": "Utwory", - "StartupEmbyServerIsLoading": "Twa wczytywanie serwera Jellyfin. Spróbuj ponownie za chwilę.", - "SubtitleDownloadFailureForItem": "Pobieranie napisów dla {0} zakończone niepowodzeniem", - "SubtitleDownloadFailureFromForItem": "Nieudane pobieranie napisów z {0} dla {1}", - "SubtitlesDownloadedForItem": "Pobrano napisy dla {0}", - "Sync": "Synchronizacja", - "System": "System", - "TvShows": "Seriale", - "User": "Użytkownik", - "UserCreatedWithName": "Użytkownik {0} został utworzony", - "UserDeletedWithName": "Użytkownik {0} został usunięty", - "UserDownloadingItemWithValues": "{0} pobiera {1}", - "UserLockedOutWithName": "Użytkownik {0} został zablokowany", - "UserOfflineFromDevice": "{0} z {1} został rozłączony", - "UserOnlineFromDevice": "{0} połączył się z {1}", - "UserPasswordChangedWithName": "Hasło użytkownika {0} zostało zmienione", - "UserPolicyUpdatedWithName": "Zmieniono zasady użytkowania dla {0}", - "UserStartedPlayingItemWithValues": "{0} odtwarza {1} na {2}", - "UserStoppedPlayingItemWithValues": "{0} zakończył odtwarzanie {1} na {2}", - "ValueHasBeenAddedToLibrary": "{0} został dodany to biblioteki mediów", - "ValueSpecialEpisodeName": "Specjalne - {0}", - "VersionNumber": "Wersja {0}" + "Albums": "Albumy", + "AppDeviceValues": "Aplikacja: {0}, Urządzenie: {1}", + "Application": "Aplikacja", + "Artists": "Wykonawcy", + "AuthenticationSucceededWithUserName": "{0} został pomyślnie uwierzytelniony", + "Books": "Książki", + "CameraImageUploadedFrom": "Nowy obraz został przekazany z {0}", + "Channels": "Kanały", + "ChapterNameValue": "Rozdział {0}", + "Collections": "Kolekcje", + "DeviceOfflineWithName": "{0} został rozłączony", + "DeviceOnlineWithName": "{0} połączył się", + "FailedLoginAttemptWithUserName": "Próba logowania przez {0} zakończona niepowodzeniem", + "Favorites": "Ulubione", + "Folders": "Foldery", + "Games": "Gry", + "Genres": "Gatunki", + "HeaderAlbumArtists": "Wykonawcy albumów", + "HeaderCameraUploads": "Przekazane obrazy", + "HeaderContinueWatching": "Kontynuuj odtwarzanie", + "HeaderFavoriteAlbums": "Albumy ulubione", + "HeaderFavoriteArtists": "Wykonawcy ulubieni", + "HeaderFavoriteEpisodes": "Odcinki ulubione", + "HeaderFavoriteShows": "Seriale ulubione", + "HeaderFavoriteSongs": "Utwory ulubione", + "HeaderLiveTV": "Telewizja", + "HeaderNextUp": "Do obejrzenia", + "HeaderRecordingGroups": "Grupy nagrań", + "HomeVideos": "Nagrania prywatne", + "Inherit": "Dziedzicz", + "ItemAddedWithName": "{0} zostało dodane do biblioteki", + "ItemRemovedWithName": "{0} zostało usunięte z biblioteki", + "LabelIpAddressValue": "Adres IP: {0}", + "LabelRunningTimeValue": "Czas trwania: {0}", + "Latest": "Ostatnio dodane", + "MessageApplicationUpdated": "Serwer Jellyfin został zaktualizowany", + "MessageApplicationUpdatedTo": "Serwer Jellyfin został zaktualizowany do wersji {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Sekcja {0} konfiguracji serwera została zaktualizowana", + "MessageServerConfigurationUpdated": "Konfiguracja serwera została zaktualizowana", + "MixedContent": "Zawartość mieszana", + "Movies": "Filmy", + "Music": "Muzyka", + "MusicVideos": "Teledyski", + "NameInstallFailed": "Instalacja {0} nieudana.", + "NameSeasonNumber": "Sezon {0}", + "NameSeasonUnknown": "Sezon nieznany", + "NewVersionIsAvailable": "Nowa wersja serwera Jellyfin jest dostępna do pobrania.", + "NotificationOptionApplicationUpdateAvailable": "Dostępna aktualizacja aplikacji", + "NotificationOptionApplicationUpdateInstalled": "Zainstalowano aktualizację aplikacji", + "NotificationOptionAudioPlayback": "Rozpoczęto odtwarzanie muzyki", + "NotificationOptionAudioPlaybackStopped": "Odtwarzane dźwięku zatrzymane", + "NotificationOptionCameraImageUploaded": "Przekazano obraz z urządzenia mobilnego", + "NotificationOptionGamePlayback": "Odtwarzanie gry rozpoczęte", + "NotificationOptionGamePlaybackStopped": "Odtwarzanie gry zatrzymane", + "NotificationOptionInstallationFailed": "Niepowodzenie instalacji", + "NotificationOptionNewLibraryContent": "Dodano nową zawartość", + "NotificationOptionPluginError": "Awaria wtyczki", + "NotificationOptionPluginInstalled": "Zainstalowano wtyczkę", + "NotificationOptionPluginUninstalled": "Odinstalowano wtyczkę", + "NotificationOptionPluginUpdateInstalled": "Zainstalowano aktualizację wtyczki", + "NotificationOptionServerRestartRequired": "Wymagane ponowne uruchomienie serwera", + "NotificationOptionTaskFailed": "Awaria zaplanowanego zadania", + "NotificationOptionUserLockedOut": "Użytkownik zablokowany", + "NotificationOptionVideoPlayback": "Rozpoczęto odtwarzanie wideo", + "NotificationOptionVideoPlaybackStopped": "Odtwarzanie wideo zatrzymane", + "Photos": "Zdjęcia", + "Playlists": "Listy odtwarzania", + "Plugin": "Wtyczka", + "PluginInstalledWithName": "{0} zostało zainstalowane", + "PluginUninstalledWithName": "{0} odinstalowane", + "PluginUpdatedWithName": "{0} zaktualizowane", + "ProviderValue": "Dostawca: {0}", + "ScheduledTaskFailedWithName": "Nieudane {0}", + "ScheduledTaskStartedWithName": "Rozpoczęto {0}", + "ServerNameNeedsToBeRestarted": "{0} wymaga ponownego uruchomienia", + "Shows": "Seriale", + "Songs": "Utwory", + "StartupEmbyServerIsLoading": "Twa wczytywanie serwera Jellyfin. Spróbuj ponownie za chwilę.", + "SubtitleDownloadFailureForItem": "Pobieranie napisów dla {0} zakończone niepowodzeniem", + "SubtitleDownloadFailureFromForItem": "Nieudane pobieranie napisów z {0} dla {1}", + "SubtitlesDownloadedForItem": "Pobrano napisy dla {0}", + "Sync": "Synchronizacja", + "System": "System", + "TvShows": "Seriale", + "User": "Użytkownik", + "UserCreatedWithName": "Użytkownik {0} został utworzony", + "UserDeletedWithName": "Użytkownik {0} został usunięty", + "UserDownloadingItemWithValues": "{0} pobiera {1}", + "UserLockedOutWithName": "Użytkownik {0} został zablokowany", + "UserOfflineFromDevice": "{0} z {1} został rozłączony", + "UserOnlineFromDevice": "{0} połączył się z {1}", + "UserPasswordChangedWithName": "Hasło użytkownika {0} zostało zmienione", + "UserPolicyUpdatedWithName": "Zmieniono zasady użytkowania dla {0}", + "UserStartedPlayingItemWithValues": "{0} odtwarza {1} na {2}", + "UserStoppedPlayingItemWithValues": "{0} zakończył odtwarzanie {1} na {2}", + "ValueHasBeenAddedToLibrary": "{0} został dodany to biblioteki mediów", + "ValueSpecialEpisodeName": "Specjalne - {0}", + "VersionNumber": "Wersja {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/pt-BR.json b/Emby.Server.Implementations/Localization/Core/pt-BR.json index 84c29174b..9ae25d3ac 100644 --- a/Emby.Server.Implementations/Localization/Core/pt-BR.json +++ b/Emby.Server.Implementations/Localization/Core/pt-BR.json @@ -1,100 +1,100 @@ { - "Albums": "Álbuns", - "AppDeviceValues": "App: {0}, Dispositivo: {1}", - "Application": "Aplicativo", - "Artists": "Artistas", - "AuthenticationSucceededWithUserName": "{0} autenticado com sucesso", - "Books": "Livros", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Canais", - "ChapterNameValue": "Capítulo {0}", - "Collections": "Coletâneas", - "DeviceOfflineWithName": "{0} se desconectou", - "DeviceOnlineWithName": "{0} está conectado", - "FailedLoginAttemptWithUserName": "Falha na tentativa de login de {0}", - "Favorites": "Favoritos", - "Folders": "Pastas", - "Games": "Jogos", - "Genres": "Gêneros", - "HeaderAlbumArtists": "Artistas do Álbum", - "HeaderCameraUploads": "Uploads da Câmera", - "HeaderContinueWatching": "Continuar Assistindo", - "HeaderFavoriteAlbums": "Álbuns Favoritos", - "HeaderFavoriteArtists": "Artistas Favoritos", - "HeaderFavoriteEpisodes": "Episódios Favoritos", - "HeaderFavoriteShows": "Séries Favoritas", - "HeaderFavoriteSongs": "Músicas Favoritas", - "HeaderLiveTV": "TV ao Vivo", - "HeaderNextUp": "Próximos", - "HeaderRecordingGroups": "Grupos de Gravação", - "HomeVideos": "Vídeos caseiros", - "Inherit": "Herdar", - "ItemAddedWithName": "{0} foi adicionado à biblioteca", - "ItemRemovedWithName": "{0} foi removido da biblioteca", - "LabelIpAddressValue": "Endereço ip: {0}", - "LabelRunningTimeValue": "Tempo de execução: {0}", - "Latest": "Recente", - "MessageApplicationUpdated": "O servidor Jellyfin foi atualizado", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "A seção {0} da configuração do servidor foi atualizada", - "MessageServerConfigurationUpdated": "A configuração do servidor foi atualizada", - "MixedContent": "Conteúdo misto", - "Movies": "Filmes", - "Music": "Música", - "MusicVideos": "Vídeos musicais", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Temporada {0}", - "NameSeasonUnknown": "Temporada Desconhecida", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Atualização de aplicativo disponível", - "NotificationOptionApplicationUpdateInstalled": "Atualização de aplicativo instalada", - "NotificationOptionAudioPlayback": "Reprodução de áudio iniciada", - "NotificationOptionAudioPlaybackStopped": "Reprodução de áudio parada", - "NotificationOptionCameraImageUploaded": "Imagem de câmera enviada", - "NotificationOptionGamePlayback": "Reprodução de jogo iniciada", - "NotificationOptionGamePlaybackStopped": "Reprodução de jogo parada", - "NotificationOptionInstallationFailed": "Falha na instalação", - "NotificationOptionNewLibraryContent": "Novo conteúdo adicionado", - "NotificationOptionPluginError": "Falha de plugin", - "NotificationOptionPluginInstalled": "Plugin instalado", - "NotificationOptionPluginUninstalled": "Plugin desinstalado", - "NotificationOptionPluginUpdateInstalled": "Atualização de plugin instalada", - "NotificationOptionServerRestartRequired": "Necessário reiniciar servidor", - "NotificationOptionTaskFailed": "Falha na tarefa agendada", - "NotificationOptionUserLockedOut": "Usuário bloqueado", - "NotificationOptionVideoPlayback": "Reprodução de vídeo iniciada", - "NotificationOptionVideoPlaybackStopped": "Reprodução de vídeo parada", - "Photos": "Fotos", - "Playlists": "Listas de Reprodução", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} foi instalado", - "PluginUninstalledWithName": "{0} foi desinstalado", - "PluginUpdatedWithName": "{0} foi atualizado", - "ProviderValue": "Provedor: {0}", - "ScheduledTaskFailedWithName": "{0} falhou", - "ScheduledTaskStartedWithName": "{0} iniciada", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Séries", - "Songs": "Músicas", - "StartupEmbyServerIsLoading": "O Servidor Jellyfin está carregando. Por favor tente novamente em breve.", - "SubtitleDownloadFailureForItem": "Download de legendas falhou para {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Legendas baixadas para {0}", - "Sync": "Sincronizar", - "System": "Sistema", - "TvShows": "Séries de TV", - "User": "Usuário", - "UserCreatedWithName": "O usuário {0} foi criado", - "UserDeletedWithName": "O usuário {0} foi excluído", - "UserDownloadingItemWithValues": "{0} está baixando {1}", - "UserLockedOutWithName": "Usuário {0} foi bloqueado", - "UserOfflineFromDevice": "{0} se desconectou de {1}", - "UserOnlineFromDevice": "{0} está ativo em {1}", - "UserPasswordChangedWithName": "A senha foi alterada para o usuário {0}", - "UserPolicyUpdatedWithName": "A política de usuário foi atualizada para {0}", - "UserStartedPlayingItemWithValues": "{0} iniciou a reprodução de {1}", - "UserStoppedPlayingItemWithValues": "{0} parou de reproduzir {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Especial - {0}", - "VersionNumber": "Versão {0}" + "Albums": "Álbuns", + "AppDeviceValues": "App: {0}, Dispositivo: {1}", + "Application": "Aplicativo", + "Artists": "Artistas", + "AuthenticationSucceededWithUserName": "{0} autenticado com sucesso", + "Books": "Livros", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Canais", + "ChapterNameValue": "Capítulo {0}", + "Collections": "Coletâneas", + "DeviceOfflineWithName": "{0} se desconectou", + "DeviceOnlineWithName": "{0} está conectado", + "FailedLoginAttemptWithUserName": "Falha na tentativa de login de {0}", + "Favorites": "Favoritos", + "Folders": "Pastas", + "Games": "Jogos", + "Genres": "Gêneros", + "HeaderAlbumArtists": "Artistas do Álbum", + "HeaderCameraUploads": "Uploads da Câmera", + "HeaderContinueWatching": "Continuar Assistindo", + "HeaderFavoriteAlbums": "Álbuns Favoritos", + "HeaderFavoriteArtists": "Artistas Favoritos", + "HeaderFavoriteEpisodes": "Episódios Favoritos", + "HeaderFavoriteShows": "Séries Favoritas", + "HeaderFavoriteSongs": "Músicas Favoritas", + "HeaderLiveTV": "TV ao Vivo", + "HeaderNextUp": "Próximos", + "HeaderRecordingGroups": "Grupos de Gravação", + "HomeVideos": "Vídeos caseiros", + "Inherit": "Herdar", + "ItemAddedWithName": "{0} foi adicionado à biblioteca", + "ItemRemovedWithName": "{0} foi removido da biblioteca", + "LabelIpAddressValue": "Endereço ip: {0}", + "LabelRunningTimeValue": "Tempo de execução: {0}", + "Latest": "Recente", + "MessageApplicationUpdated": "O servidor Jellyfin foi atualizado", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "A seção {0} da configuração do servidor foi atualizada", + "MessageServerConfigurationUpdated": "A configuração do servidor foi atualizada", + "MixedContent": "Conteúdo misto", + "Movies": "Filmes", + "Music": "Música", + "MusicVideos": "Vídeos musicais", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Temporada {0}", + "NameSeasonUnknown": "Temporada Desconhecida", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Atualização de aplicativo disponível", + "NotificationOptionApplicationUpdateInstalled": "Atualização de aplicativo instalada", + "NotificationOptionAudioPlayback": "Reprodução de áudio iniciada", + "NotificationOptionAudioPlaybackStopped": "Reprodução de áudio parada", + "NotificationOptionCameraImageUploaded": "Imagem de câmera enviada", + "NotificationOptionGamePlayback": "Reprodução de jogo iniciada", + "NotificationOptionGamePlaybackStopped": "Reprodução de jogo parada", + "NotificationOptionInstallationFailed": "Falha na instalação", + "NotificationOptionNewLibraryContent": "Novo conteúdo adicionado", + "NotificationOptionPluginError": "Falha de plugin", + "NotificationOptionPluginInstalled": "Plugin instalado", + "NotificationOptionPluginUninstalled": "Plugin desinstalado", + "NotificationOptionPluginUpdateInstalled": "Atualização de plugin instalada", + "NotificationOptionServerRestartRequired": "Necessário reiniciar servidor", + "NotificationOptionTaskFailed": "Falha na tarefa agendada", + "NotificationOptionUserLockedOut": "Usuário bloqueado", + "NotificationOptionVideoPlayback": "Reprodução de vídeo iniciada", + "NotificationOptionVideoPlaybackStopped": "Reprodução de vídeo parada", + "Photos": "Fotos", + "Playlists": "Listas de Reprodução", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} foi instalado", + "PluginUninstalledWithName": "{0} foi desinstalado", + "PluginUpdatedWithName": "{0} foi atualizado", + "ProviderValue": "Provedor: {0}", + "ScheduledTaskFailedWithName": "{0} falhou", + "ScheduledTaskStartedWithName": "{0} iniciada", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Séries", + "Songs": "Músicas", + "StartupEmbyServerIsLoading": "O Servidor Jellyfin está carregando. Por favor tente novamente em breve.", + "SubtitleDownloadFailureForItem": "Download de legendas falhou para {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Legendas baixadas para {0}", + "Sync": "Sincronizar", + "System": "Sistema", + "TvShows": "Séries de TV", + "User": "Usuário", + "UserCreatedWithName": "O usuário {0} foi criado", + "UserDeletedWithName": "O usuário {0} foi excluído", + "UserDownloadingItemWithValues": "{0} está baixando {1}", + "UserLockedOutWithName": "Usuário {0} foi bloqueado", + "UserOfflineFromDevice": "{0} se desconectou de {1}", + "UserOnlineFromDevice": "{0} está ativo em {1}", + "UserPasswordChangedWithName": "A senha foi alterada para o usuário {0}", + "UserPolicyUpdatedWithName": "A política de usuário foi atualizada para {0}", + "UserStartedPlayingItemWithValues": "{0} iniciou a reprodução de {1}", + "UserStoppedPlayingItemWithValues": "{0} parou de reproduzir {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Especial - {0}", + "VersionNumber": "Versão {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/pt-PT.json b/Emby.Server.Implementations/Localization/Core/pt-PT.json index 0d3acc9c1..59c25f0e3 100644 --- a/Emby.Server.Implementations/Localization/Core/pt-PT.json +++ b/Emby.Server.Implementations/Localization/Core/pt-PT.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Aplicação", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continuar a ver", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Séries Favoritas", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Especial - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Aplicação", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continuar a ver", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Séries Favoritas", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Especial - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/ru.json b/Emby.Server.Implementations/Localization/Core/ru.json index 97216f276..338141294 100644 --- a/Emby.Server.Implementations/Localization/Core/ru.json +++ b/Emby.Server.Implementations/Localization/Core/ru.json @@ -1,100 +1,100 @@ { - "Albums": "Альбомы", - "AppDeviceValues": "Прил.: {0}, Устр.: {1}", - "Application": "Приложение", - "Artists": "Исполнители", - "AuthenticationSucceededWithUserName": "{0} - авторизация успешна", - "Books": "Литература", - "CameraImageUploadedFrom": "Новое фото было выложено с {0}", - "Channels": "Каналы", - "ChapterNameValue": "Сцена {0}", - "Collections": "Коллекции", - "DeviceOfflineWithName": "{0} - подкл. разъ-но", - "DeviceOnlineWithName": "{0} - подкл. уст-но", - "FailedLoginAttemptWithUserName": "{0} - попытка входа неудачна", - "Favorites": "Избранное", - "Folders": "Папки", - "Games": "Игры", - "Genres": "Жанры", - "HeaderAlbumArtists": "Исп-ли альбома", - "HeaderCameraUploads": "Камеры", - "HeaderContinueWatching": "Продолжение просмотра", - "HeaderFavoriteAlbums": "Избранные альбомы", - "HeaderFavoriteArtists": "Избранные исполнители", - "HeaderFavoriteEpisodes": "Избранные эпизоды", - "HeaderFavoriteShows": "Избранные передачи", - "HeaderFavoriteSongs": "Избранные композиции", - "HeaderLiveTV": "Эфир", - "HeaderNextUp": "Очередное", - "HeaderRecordingGroups": "Группы записей", - "HomeVideos": "Дом. видео", - "Inherit": "Наследуемое", - "ItemAddedWithName": "{0} - добавлено в медиатеку", - "ItemRemovedWithName": "{0} - изъято из медиатеки", - "LabelIpAddressValue": "IP-адрес: {0}", - "LabelRunningTimeValue": "Время выполнения: {0}", - "Latest": "Новейшее", - "MessageApplicationUpdated": "Jellyfin Server был обновлён", - "MessageApplicationUpdatedTo": "Jellyfin Server был обновлён до {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Конфиг-ия сервера (раздел {0}) была обновлена", - "MessageServerConfigurationUpdated": "Конфиг-ия сервера была обновлена", - "MixedContent": "Смешанное содержание", - "Movies": "Кино", - "Music": "Музыка", - "MusicVideos": "Муз. видео", - "NameInstallFailed": "Установка {0} неудачна", - "NameSeasonNumber": "Сезон {0}", - "NameSeasonUnknown": "Сезон неопознан", - "NewVersionIsAvailable": "Имеется новая версия Jellyfin Server", - "NotificationOptionApplicationUpdateAvailable": "Имеется обновление приложения", - "NotificationOptionApplicationUpdateInstalled": "Обновление приложения установлено", - "NotificationOptionAudioPlayback": "Воспр-ие аудио зап-но", - "NotificationOptionAudioPlaybackStopped": "Восп-ие аудио ост-но", - "NotificationOptionCameraImageUploaded": "Произведена выкладка отснятого с камеры", - "NotificationOptionGamePlayback": "Воспр-ие игры зап-но", - "NotificationOptionGamePlaybackStopped": "Восп-ие игры ост-но", - "NotificationOptionInstallationFailed": "Сбой установки", - "NotificationOptionNewLibraryContent": "Новое содержание добавлено", - "NotificationOptionPluginError": "Сбой плагина", - "NotificationOptionPluginInstalled": "Плагин установлен", - "NotificationOptionPluginUninstalled": "Плагин удалён", - "NotificationOptionPluginUpdateInstalled": "Обновление плагина установлено", - "NotificationOptionServerRestartRequired": "Требуется перезапуск сервера", - "NotificationOptionTaskFailed": "Сбой назначенной задачи", - "NotificationOptionUserLockedOut": "Пользователь заблокирован", - "NotificationOptionVideoPlayback": "Воспр-ие видео зап-но", - "NotificationOptionVideoPlaybackStopped": "Восп-ие видео ост-но", - "Photos": "Фото", - "Playlists": "Плей-листы", - "Plugin": "Плагин", - "PluginInstalledWithName": "{0} - было установлено", - "PluginUninstalledWithName": "{0} - было удалено", - "PluginUpdatedWithName": "{0} - было обновлено", - "ProviderValue": "Поставщик: {0}", - "ScheduledTaskFailedWithName": "{0} - неудачна", - "ScheduledTaskStartedWithName": "{0} - запущена", - "ServerNameNeedsToBeRestarted": "Необходим перезапуск {0}", - "Shows": "Передачи", - "Songs": "Композиции", - "StartupEmbyServerIsLoading": "Jellyfin Server загружается. Повторите попытку в ближайшее время.", - "SubtitleDownloadFailureForItem": "Субтитры к {0} не удалось загрузить", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Субтитры к {0} загружены", - "Sync": "Синхро", - "System": "Система", - "TvShows": "ТВ", - "User": "Польз-ль", - "UserCreatedWithName": "Пользователь {0} был создан", - "UserDeletedWithName": "Пользователь {0} был удалён", - "UserDownloadingItemWithValues": "{0} загружает {1}", - "UserLockedOutWithName": "Пользователь {0} был заблокирован", - "UserOfflineFromDevice": "{0} - подкл. с {1} разъ-но", - "UserOnlineFromDevice": "{0} - подкл. с {1} уст-но", - "UserPasswordChangedWithName": "Пароль польз-ля {0} был изменён", - "UserPolicyUpdatedWithName": "Польз-ие политики {0} были обновлены", - "UserStartedPlayingItemWithValues": "{0} - воспр. «{1}» на {2}", - "UserStoppedPlayingItemWithValues": "{0} - воспр. «{1}» ост-но на {2}", - "ValueHasBeenAddedToLibrary": "{0} (добавлено в медиатеку)", - "ValueSpecialEpisodeName": "Спецэпизод - {0}", - "VersionNumber": "Версия {0}" + "Albums": "Альбомы", + "AppDeviceValues": "Прил.: {0}, Устр.: {1}", + "Application": "Приложение", + "Artists": "Исполнители", + "AuthenticationSucceededWithUserName": "{0} - авторизация успешна", + "Books": "Литература", + "CameraImageUploadedFrom": "Новое фото было выложено с {0}", + "Channels": "Каналы", + "ChapterNameValue": "Сцена {0}", + "Collections": "Коллекции", + "DeviceOfflineWithName": "{0} - подкл. разъ-но", + "DeviceOnlineWithName": "{0} - подкл. уст-но", + "FailedLoginAttemptWithUserName": "{0} - попытка входа неудачна", + "Favorites": "Избранное", + "Folders": "Папки", + "Games": "Игры", + "Genres": "Жанры", + "HeaderAlbumArtists": "Исп-ли альбома", + "HeaderCameraUploads": "Камеры", + "HeaderContinueWatching": "Продолжение просмотра", + "HeaderFavoriteAlbums": "Избранные альбомы", + "HeaderFavoriteArtists": "Избранные исполнители", + "HeaderFavoriteEpisodes": "Избранные эпизоды", + "HeaderFavoriteShows": "Избранные передачи", + "HeaderFavoriteSongs": "Избранные композиции", + "HeaderLiveTV": "Эфир", + "HeaderNextUp": "Очередное", + "HeaderRecordingGroups": "Группы записей", + "HomeVideos": "Дом. видео", + "Inherit": "Наследуемое", + "ItemAddedWithName": "{0} - добавлено в медиатеку", + "ItemRemovedWithName": "{0} - изъято из медиатеки", + "LabelIpAddressValue": "IP-адрес: {0}", + "LabelRunningTimeValue": "Время выполнения: {0}", + "Latest": "Новейшее", + "MessageApplicationUpdated": "Jellyfin Server был обновлён", + "MessageApplicationUpdatedTo": "Jellyfin Server был обновлён до {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Конфиг-ия сервера (раздел {0}) была обновлена", + "MessageServerConfigurationUpdated": "Конфиг-ия сервера была обновлена", + "MixedContent": "Смешанное содержание", + "Movies": "Кино", + "Music": "Музыка", + "MusicVideos": "Муз. видео", + "NameInstallFailed": "Установка {0} неудачна", + "NameSeasonNumber": "Сезон {0}", + "NameSeasonUnknown": "Сезон неопознан", + "NewVersionIsAvailable": "Имеется новая версия Jellyfin Server", + "NotificationOptionApplicationUpdateAvailable": "Имеется обновление приложения", + "NotificationOptionApplicationUpdateInstalled": "Обновление приложения установлено", + "NotificationOptionAudioPlayback": "Воспр-ие аудио зап-но", + "NotificationOptionAudioPlaybackStopped": "Восп-ие аудио ост-но", + "NotificationOptionCameraImageUploaded": "Произведена выкладка отснятого с камеры", + "NotificationOptionGamePlayback": "Воспр-ие игры зап-но", + "NotificationOptionGamePlaybackStopped": "Восп-ие игры ост-но", + "NotificationOptionInstallationFailed": "Сбой установки", + "NotificationOptionNewLibraryContent": "Новое содержание добавлено", + "NotificationOptionPluginError": "Сбой плагина", + "NotificationOptionPluginInstalled": "Плагин установлен", + "NotificationOptionPluginUninstalled": "Плагин удалён", + "NotificationOptionPluginUpdateInstalled": "Обновление плагина установлено", + "NotificationOptionServerRestartRequired": "Требуется перезапуск сервера", + "NotificationOptionTaskFailed": "Сбой назначенной задачи", + "NotificationOptionUserLockedOut": "Пользователь заблокирован", + "NotificationOptionVideoPlayback": "Воспр-ие видео зап-но", + "NotificationOptionVideoPlaybackStopped": "Восп-ие видео ост-но", + "Photos": "Фото", + "Playlists": "Плей-листы", + "Plugin": "Плагин", + "PluginInstalledWithName": "{0} - было установлено", + "PluginUninstalledWithName": "{0} - было удалено", + "PluginUpdatedWithName": "{0} - было обновлено", + "ProviderValue": "Поставщик: {0}", + "ScheduledTaskFailedWithName": "{0} - неудачна", + "ScheduledTaskStartedWithName": "{0} - запущена", + "ServerNameNeedsToBeRestarted": "Необходим перезапуск {0}", + "Shows": "Передачи", + "Songs": "Композиции", + "StartupEmbyServerIsLoading": "Jellyfin Server загружается. Повторите попытку в ближайшее время.", + "SubtitleDownloadFailureForItem": "Субтитры к {0} не удалось загрузить", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Субтитры к {0} загружены", + "Sync": "Синхро", + "System": "Система", + "TvShows": "ТВ", + "User": "Польз-ль", + "UserCreatedWithName": "Пользователь {0} был создан", + "UserDeletedWithName": "Пользователь {0} был удалён", + "UserDownloadingItemWithValues": "{0} загружает {1}", + "UserLockedOutWithName": "Пользователь {0} был заблокирован", + "UserOfflineFromDevice": "{0} - подкл. с {1} разъ-но", + "UserOnlineFromDevice": "{0} - подкл. с {1} уст-но", + "UserPasswordChangedWithName": "Пароль польз-ля {0} был изменён", + "UserPolicyUpdatedWithName": "Польз-ие политики {0} были обновлены", + "UserStartedPlayingItemWithValues": "{0} - воспр. «{1}» на {2}", + "UserStoppedPlayingItemWithValues": "{0} - воспр. «{1}» ост-но на {2}", + "ValueHasBeenAddedToLibrary": "{0} (добавлено в медиатеку)", + "ValueSpecialEpisodeName": "Спецэпизод - {0}", + "VersionNumber": "Версия {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/sk.json b/Emby.Server.Implementations/Localization/Core/sk.json index ddf690a55..ed0c68952 100644 --- a/Emby.Server.Implementations/Localization/Core/sk.json +++ b/Emby.Server.Implementations/Localization/Core/sk.json @@ -1,100 +1,100 @@ { - "Albums": "Albumy", - "AppDeviceValues": "Aplikácia: {0}, Zariadenie: {1}", - "Application": "Aplikácia", - "Artists": "Umelci", - "AuthenticationSucceededWithUserName": "{0} úspešne overený", - "Books": "Knihy", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Kanály", - "ChapterNameValue": "Kapitola {0}", - "Collections": "Zbierky", - "DeviceOfflineWithName": "{0} je odpojený", - "DeviceOnlineWithName": "{0} je pripojený", - "FailedLoginAttemptWithUserName": "Neúspešný pokus o prihlásenie z {0}", - "Favorites": "Obľúbené", - "Folders": "Priečinky", - "Games": "Hry", - "Genres": "Žánre", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Pokračujte v pozeraní", - "HeaderFavoriteAlbums": "Obľúbené albumy", - "HeaderFavoriteArtists": "Obľúbení umelci", - "HeaderFavoriteEpisodes": "Obľúbené epizódy", - "HeaderFavoriteShows": "Obľúbené seriály", - "HeaderFavoriteSongs": "Obľúbené pesničky", - "HeaderLiveTV": "Živá TV", - "HeaderNextUp": "Nasleduje", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Domáce videá", - "Inherit": "Zdediť", - "ItemAddedWithName": "{0} bol pridaný do knižnice", - "ItemRemovedWithName": "{0} bol odstránený z knižnice", - "LabelIpAddressValue": "IP adresa: {0}", - "LabelRunningTimeValue": "Dĺžka: {0}", - "Latest": "Najnovšie", - "MessageApplicationUpdated": "Jellyfin Server bol aktualizovaný", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Sekcia {0} konfigurácie servera bola aktualizovaná", - "MessageServerConfigurationUpdated": "Konfigurácia servera aktualizovaná", - "MixedContent": "Zmiešaný obsah", - "Movies": "Filmy", - "Music": "Hudba", - "MusicVideos": "Hudobné videá", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Sezóna {0}", - "NameSeasonUnknown": "Neznáma sezóna", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Je dostupná aktualizácia aplikácie", - "NotificationOptionApplicationUpdateInstalled": "Aktualizácia aplikácie nainštalovaná", - "NotificationOptionAudioPlayback": "Spustené prehrávanie audia", - "NotificationOptionAudioPlaybackStopped": "Zastavené prehrávanie audia", - "NotificationOptionCameraImageUploaded": "Nahraný obrázok z fotoaparátu", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Hra ukončená", - "NotificationOptionInstallationFailed": "Chyba inštalácie", - "NotificationOptionNewLibraryContent": "Pridaný nový obsah", - "NotificationOptionPluginError": "Chyba rozšírenia", - "NotificationOptionPluginInstalled": "Rozšírenie nainštalované", - "NotificationOptionPluginUninstalled": "Rozšírenie odinštalované", - "NotificationOptionPluginUpdateInstalled": "Aktualizácia rozšírenia nainštalovaná", - "NotificationOptionServerRestartRequired": "Vyžaduje sa reštart servera", - "NotificationOptionTaskFailed": "Naplánovaná úloha zlyhala", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Spustené prehrávanie videa", - "NotificationOptionVideoPlaybackStopped": "Zastavené prehrávanie videa", - "Photos": "Fotky", - "Playlists": "Zoznamy skladieb", - "Plugin": "Rozšírenie", - "PluginInstalledWithName": "{0} bol nainštalovaný", - "PluginUninstalledWithName": "{0} bol odinštalovaný", - "PluginUpdatedWithName": "{0} bol aktualizovaný", - "ProviderValue": "Poskytovateľ: {0}", - "ScheduledTaskFailedWithName": "{0} zlyhalo", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Series", - "Songs": "Skladby", - "StartupEmbyServerIsLoading": "Jellyfin Server sa spúšťa. Skúste to prosím o chvíľu znova.", - "SubtitleDownloadFailureForItem": "Sťahovanie titulkov pre {0} zlyhalo", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Titulky pre {0} stiahnuté", - "Sync": "Sync", - "System": "Systém", - "TvShows": "TV Shows", - "User": "Používateľ", - "UserCreatedWithName": "Používateľ {0} bol vytvorený", - "UserDeletedWithName": "Používateľ {0} bol vymazaný", - "UserDownloadingItemWithValues": "{0} sťahuje {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} sa odpojil od {1}", - "UserOnlineFromDevice": "{0} je online z {1}", - "UserPasswordChangedWithName": "Heslo používateľa {0} zmenené", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} spustil prehrávanie {1}", - "UserStoppedPlayingItemWithValues": "{0} zastavil prehrávanie {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Špeciál - {0}", - "VersionNumber": "Verzia {0}" + "Albums": "Albumy", + "AppDeviceValues": "Aplikácia: {0}, Zariadenie: {1}", + "Application": "Aplikácia", + "Artists": "Umelci", + "AuthenticationSucceededWithUserName": "{0} úspešne overený", + "Books": "Knihy", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Kanály", + "ChapterNameValue": "Kapitola {0}", + "Collections": "Zbierky", + "DeviceOfflineWithName": "{0} je odpojený", + "DeviceOnlineWithName": "{0} je pripojený", + "FailedLoginAttemptWithUserName": "Neúspešný pokus o prihlásenie z {0}", + "Favorites": "Obľúbené", + "Folders": "Priečinky", + "Games": "Hry", + "Genres": "Žánre", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Pokračujte v pozeraní", + "HeaderFavoriteAlbums": "Obľúbené albumy", + "HeaderFavoriteArtists": "Obľúbení umelci", + "HeaderFavoriteEpisodes": "Obľúbené epizódy", + "HeaderFavoriteShows": "Obľúbené seriály", + "HeaderFavoriteSongs": "Obľúbené pesničky", + "HeaderLiveTV": "Živá TV", + "HeaderNextUp": "Nasleduje", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Domáce videá", + "Inherit": "Zdediť", + "ItemAddedWithName": "{0} bol pridaný do knižnice", + "ItemRemovedWithName": "{0} bol odstránený z knižnice", + "LabelIpAddressValue": "IP adresa: {0}", + "LabelRunningTimeValue": "Dĺžka: {0}", + "Latest": "Najnovšie", + "MessageApplicationUpdated": "Jellyfin Server bol aktualizovaný", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Sekcia {0} konfigurácie servera bola aktualizovaná", + "MessageServerConfigurationUpdated": "Konfigurácia servera aktualizovaná", + "MixedContent": "Zmiešaný obsah", + "Movies": "Filmy", + "Music": "Hudba", + "MusicVideos": "Hudobné videá", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Sezóna {0}", + "NameSeasonUnknown": "Neznáma sezóna", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Je dostupná aktualizácia aplikácie", + "NotificationOptionApplicationUpdateInstalled": "Aktualizácia aplikácie nainštalovaná", + "NotificationOptionAudioPlayback": "Spustené prehrávanie audia", + "NotificationOptionAudioPlaybackStopped": "Zastavené prehrávanie audia", + "NotificationOptionCameraImageUploaded": "Nahraný obrázok z fotoaparátu", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Hra ukončená", + "NotificationOptionInstallationFailed": "Chyba inštalácie", + "NotificationOptionNewLibraryContent": "Pridaný nový obsah", + "NotificationOptionPluginError": "Chyba rozšírenia", + "NotificationOptionPluginInstalled": "Rozšírenie nainštalované", + "NotificationOptionPluginUninstalled": "Rozšírenie odinštalované", + "NotificationOptionPluginUpdateInstalled": "Aktualizácia rozšírenia nainštalovaná", + "NotificationOptionServerRestartRequired": "Vyžaduje sa reštart servera", + "NotificationOptionTaskFailed": "Naplánovaná úloha zlyhala", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Spustené prehrávanie videa", + "NotificationOptionVideoPlaybackStopped": "Zastavené prehrávanie videa", + "Photos": "Fotky", + "Playlists": "Zoznamy skladieb", + "Plugin": "Rozšírenie", + "PluginInstalledWithName": "{0} bol nainštalovaný", + "PluginUninstalledWithName": "{0} bol odinštalovaný", + "PluginUpdatedWithName": "{0} bol aktualizovaný", + "ProviderValue": "Poskytovateľ: {0}", + "ScheduledTaskFailedWithName": "{0} zlyhalo", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Series", + "Songs": "Skladby", + "StartupEmbyServerIsLoading": "Jellyfin Server sa spúšťa. Skúste to prosím o chvíľu znova.", + "SubtitleDownloadFailureForItem": "Sťahovanie titulkov pre {0} zlyhalo", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Titulky pre {0} stiahnuté", + "Sync": "Sync", + "System": "Systém", + "TvShows": "TV Shows", + "User": "Používateľ", + "UserCreatedWithName": "Používateľ {0} bol vytvorený", + "UserDeletedWithName": "Používateľ {0} bol vymazaný", + "UserDownloadingItemWithValues": "{0} sťahuje {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} sa odpojil od {1}", + "UserOnlineFromDevice": "{0} je online z {1}", + "UserPasswordChangedWithName": "Heslo používateľa {0} zmenené", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} spustil prehrávanie {1}", + "UserStoppedPlayingItemWithValues": "{0} zastavil prehrávanie {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Špeciál - {0}", + "VersionNumber": "Verzia {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/sl-SI.json b/Emby.Server.Implementations/Localization/Core/sl-SI.json index cd2076c64..8fe279836 100644 --- a/Emby.Server.Implementations/Localization/Core/sl-SI.json +++ b/Emby.Server.Implementations/Localization/Core/sl-SI.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continue Watching", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Serije", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continue Watching", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Serije", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/sv.json b/Emby.Server.Implementations/Localization/Core/sv.json index f5f52f658..517d648bb 100644 --- a/Emby.Server.Implementations/Localization/Core/sv.json +++ b/Emby.Server.Implementations/Localization/Core/sv.json @@ -1,100 +1,100 @@ { - "Albums": "Album", - "AppDeviceValues": "App: {0}, Enhet: {1}", - "Application": "App", - "Artists": "Artister", - "AuthenticationSucceededWithUserName": "{0} har autentiserats", - "Books": "Böcker", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Kanaler", - "ChapterNameValue": "Kapitel {0}", - "Collections": "Samlingar", - "DeviceOfflineWithName": "{0} har tappat anslutningen", - "DeviceOnlineWithName": "{0} är ansluten", - "FailedLoginAttemptWithUserName": "Misslyckat inloggningsförsök från {0}", - "Favorites": "Favoriter", - "Folders": "Mappar", - "Games": "Spel", - "Genres": "Genrer", - "HeaderAlbumArtists": "Albumartister", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Fortsätt kolla på", - "HeaderFavoriteAlbums": "Favoritalbum", - "HeaderFavoriteArtists": "Favoritartister", - "HeaderFavoriteEpisodes": "Favoritavsnitt", - "HeaderFavoriteShows": "Favoritserier", - "HeaderFavoriteSongs": "Favoritlåtar", - "HeaderLiveTV": "Live-TV", - "HeaderNextUp": "Nästa på tur", - "HeaderRecordingGroups": "Inspelningsgrupper", - "HomeVideos": "Hemvideor", - "Inherit": "Ärv", - "ItemAddedWithName": "{0} lades till i biblioteket", - "ItemRemovedWithName": "{0} togs bort från biblioteket", - "LabelIpAddressValue": "IP-adress: {0}", - "LabelRunningTimeValue": "Speltid: {0}", - "Latest": "Senaste", - "MessageApplicationUpdated": "Jellyfin Server har uppdaterats", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Serverinställningarna {0} har uppdaterats", - "MessageServerConfigurationUpdated": "Server konfigurationen har uppdaterats", - "MixedContent": "Blandat innehåll", - "Movies": "Filmer", - "Music": "Musik", - "MusicVideos": "Musikvideos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Säsong {0}", - "NameSeasonUnknown": "Okänd säsong", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Ny programversion tillgänglig", - "NotificationOptionApplicationUpdateInstalled": "Programuppdatering installerad", - "NotificationOptionAudioPlayback": "Ljuduppspelning har påbörjats", - "NotificationOptionAudioPlaybackStopped": "Ljuduppspelning stoppad", - "NotificationOptionCameraImageUploaded": "Kamerabild har laddats upp", - "NotificationOptionGamePlayback": "Spel har startats", - "NotificationOptionGamePlaybackStopped": "Spel stoppat", - "NotificationOptionInstallationFailed": "Fel vid installation", - "NotificationOptionNewLibraryContent": "Nytt innehåll har lagts till", - "NotificationOptionPluginError": "Fel uppstod med tillägget", - "NotificationOptionPluginInstalled": "Tillägg har installerats", - "NotificationOptionPluginUninstalled": "Tillägg har avinstallerats", - "NotificationOptionPluginUpdateInstalled": "Tillägg har uppdaterats", - "NotificationOptionServerRestartRequired": "Servern måste startas om", - "NotificationOptionTaskFailed": "Schemalagd aktivitet har misslyckats", - "NotificationOptionUserLockedOut": "Användare har låsts ut", - "NotificationOptionVideoPlayback": "Videouppspelning har påbörjats", - "NotificationOptionVideoPlaybackStopped": "Videouppspelning stoppad", - "Photos": "Bilder", - "Playlists": "Spellistor", - "Plugin": "Tillägg", - "PluginInstalledWithName": "{0} installerades", - "PluginUninstalledWithName": "{0} avinstallerades", - "PluginUpdatedWithName": "{0} uppdaterades", - "ProviderValue": "Källa: {0}", - "ScheduledTaskFailedWithName": "{0} misslyckades", - "ScheduledTaskStartedWithName": "{0} startad", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Serier", - "Songs": "Låtar", - "StartupEmbyServerIsLoading": "Jellyfin server arbetar. Pröva igen inom kort.", - "SubtitleDownloadFailureForItem": "Nerladdning av undertexter för {0} misslyckades", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Undertexter har laddats ner till {0}", - "Sync": "Synk", - "System": "System", - "TvShows": "TV-serier", - "User": "Användare", - "UserCreatedWithName": "Användaren {0} har skapats", - "UserDeletedWithName": "Användaren {0} har tagits bort", - "UserDownloadingItemWithValues": "{0} laddar ner {1}", - "UserLockedOutWithName": "Användare {0} har låsts ute", - "UserOfflineFromDevice": "{0} har avbrutit anslutningen från {1}", - "UserOnlineFromDevice": "{0} är uppkopplad från {1}", - "UserPasswordChangedWithName": "Lösenordet för {0} har ändrats", - "UserPolicyUpdatedWithName": "Användarpolicyn har uppdaterats för {0}", - "UserStartedPlayingItemWithValues": "{0} har börjat spela upp {1}", - "UserStoppedPlayingItemWithValues": "{0} har avslutat uppspelningen av {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Specialavsnitt - {0}", - "VersionNumber": "Version {0}" + "Albums": "Album", + "AppDeviceValues": "App: {0}, Enhet: {1}", + "Application": "App", + "Artists": "Artister", + "AuthenticationSucceededWithUserName": "{0} har autentiserats", + "Books": "Böcker", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Kanaler", + "ChapterNameValue": "Kapitel {0}", + "Collections": "Samlingar", + "DeviceOfflineWithName": "{0} har tappat anslutningen", + "DeviceOnlineWithName": "{0} är ansluten", + "FailedLoginAttemptWithUserName": "Misslyckat inloggningsförsök från {0}", + "Favorites": "Favoriter", + "Folders": "Mappar", + "Games": "Spel", + "Genres": "Genrer", + "HeaderAlbumArtists": "Albumartister", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Fortsätt kolla på", + "HeaderFavoriteAlbums": "Favoritalbum", + "HeaderFavoriteArtists": "Favoritartister", + "HeaderFavoriteEpisodes": "Favoritavsnitt", + "HeaderFavoriteShows": "Favoritserier", + "HeaderFavoriteSongs": "Favoritlåtar", + "HeaderLiveTV": "Live-TV", + "HeaderNextUp": "Nästa på tur", + "HeaderRecordingGroups": "Inspelningsgrupper", + "HomeVideos": "Hemvideor", + "Inherit": "Ärv", + "ItemAddedWithName": "{0} lades till i biblioteket", + "ItemRemovedWithName": "{0} togs bort från biblioteket", + "LabelIpAddressValue": "IP-adress: {0}", + "LabelRunningTimeValue": "Speltid: {0}", + "Latest": "Senaste", + "MessageApplicationUpdated": "Jellyfin Server har uppdaterats", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Serverinställningarna {0} har uppdaterats", + "MessageServerConfigurationUpdated": "Server konfigurationen har uppdaterats", + "MixedContent": "Blandat innehåll", + "Movies": "Filmer", + "Music": "Musik", + "MusicVideos": "Musikvideos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Säsong {0}", + "NameSeasonUnknown": "Okänd säsong", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Ny programversion tillgänglig", + "NotificationOptionApplicationUpdateInstalled": "Programuppdatering installerad", + "NotificationOptionAudioPlayback": "Ljuduppspelning har påbörjats", + "NotificationOptionAudioPlaybackStopped": "Ljuduppspelning stoppad", + "NotificationOptionCameraImageUploaded": "Kamerabild har laddats upp", + "NotificationOptionGamePlayback": "Spel har startats", + "NotificationOptionGamePlaybackStopped": "Spel stoppat", + "NotificationOptionInstallationFailed": "Fel vid installation", + "NotificationOptionNewLibraryContent": "Nytt innehåll har lagts till", + "NotificationOptionPluginError": "Fel uppstod med tillägget", + "NotificationOptionPluginInstalled": "Tillägg har installerats", + "NotificationOptionPluginUninstalled": "Tillägg har avinstallerats", + "NotificationOptionPluginUpdateInstalled": "Tillägg har uppdaterats", + "NotificationOptionServerRestartRequired": "Servern måste startas om", + "NotificationOptionTaskFailed": "Schemalagd aktivitet har misslyckats", + "NotificationOptionUserLockedOut": "Användare har låsts ut", + "NotificationOptionVideoPlayback": "Videouppspelning har påbörjats", + "NotificationOptionVideoPlaybackStopped": "Videouppspelning stoppad", + "Photos": "Bilder", + "Playlists": "Spellistor", + "Plugin": "Tillägg", + "PluginInstalledWithName": "{0} installerades", + "PluginUninstalledWithName": "{0} avinstallerades", + "PluginUpdatedWithName": "{0} uppdaterades", + "ProviderValue": "Källa: {0}", + "ScheduledTaskFailedWithName": "{0} misslyckades", + "ScheduledTaskStartedWithName": "{0} startad", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Serier", + "Songs": "Låtar", + "StartupEmbyServerIsLoading": "Jellyfin server arbetar. Pröva igen inom kort.", + "SubtitleDownloadFailureForItem": "Nerladdning av undertexter för {0} misslyckades", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Undertexter har laddats ner till {0}", + "Sync": "Synk", + "System": "System", + "TvShows": "TV-serier", + "User": "Användare", + "UserCreatedWithName": "Användaren {0} har skapats", + "UserDeletedWithName": "Användaren {0} har tagits bort", + "UserDownloadingItemWithValues": "{0} laddar ner {1}", + "UserLockedOutWithName": "Användare {0} har låsts ute", + "UserOfflineFromDevice": "{0} har avbrutit anslutningen från {1}", + "UserOnlineFromDevice": "{0} är uppkopplad från {1}", + "UserPasswordChangedWithName": "Lösenordet för {0} har ändrats", + "UserPolicyUpdatedWithName": "Användarpolicyn har uppdaterats för {0}", + "UserStartedPlayingItemWithValues": "{0} har börjat spela upp {1}", + "UserStoppedPlayingItemWithValues": "{0} har avslutat uppspelningen av {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Specialavsnitt - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/tr.json b/Emby.Server.Implementations/Localization/Core/tr.json index b04d61c65..9e86e2125 100644 --- a/Emby.Server.Implementations/Localization/Core/tr.json +++ b/Emby.Server.Implementations/Localization/Core/tr.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continue Watching", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favori Showlar", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "Version {0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continue Watching", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favori Showlar", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "Version {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/zh-CN.json b/Emby.Server.Implementations/Localization/Core/zh-CN.json index fcf260e28..6d877ec17 100644 --- a/Emby.Server.Implementations/Localization/Core/zh-CN.json +++ b/Emby.Server.Implementations/Localization/Core/zh-CN.json @@ -1,100 +1,100 @@ { - "Albums": "专辑", - "AppDeviceValues": "应用: {0}, 设备: {1}", - "Application": "应用程序", - "Artists": "艺术家", - "AuthenticationSucceededWithUserName": "{0} 成功验证", - "Books": "书籍", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "频道", - "ChapterNameValue": "章节 {0}", - "Collections": "合集", - "DeviceOfflineWithName": "{0} 已断开", - "DeviceOnlineWithName": "{0} 已连接", - "FailedLoginAttemptWithUserName": "来自 {0} 的失败登入", - "Favorites": "最爱", - "Folders": "文件夹", - "Games": "游戏", - "Genres": "风格", - "HeaderAlbumArtists": "专辑作家", - "HeaderCameraUploads": "相机上传", - "HeaderContinueWatching": "继续观看", - "HeaderFavoriteAlbums": "最爱的专辑", - "HeaderFavoriteArtists": "最爱作家", - "HeaderFavoriteEpisodes": "最爱的集", - "HeaderFavoriteShows": "最爱的节目", - "HeaderFavoriteSongs": "最爱的歌曲", - "HeaderLiveTV": "电视直播", - "HeaderNextUp": "接下来", - "HeaderRecordingGroups": "录制组", - "HomeVideos": "家庭视频", - "Inherit": "继承", - "ItemAddedWithName": "{0} 已添加到媒体库", - "ItemRemovedWithName": "{0} 已从媒体库中移除", - "LabelIpAddressValue": "Ip 地址:{0}", - "LabelRunningTimeValue": "运行时间:{0}", - "Latest": "最新", - "MessageApplicationUpdated": "Jellyfin 服务器已更新", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "服务器配置 {0} 部分已更新", - "MessageServerConfigurationUpdated": "服务器配置已更新", - "MixedContent": "混合内容", - "Movies": "电影", - "Music": "音乐", - "MusicVideos": "音乐视频", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "季 {0}", - "NameSeasonUnknown": "未知季", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "有可用的应用程序更新", - "NotificationOptionApplicationUpdateInstalled": "应用程序更新已安装", - "NotificationOptionAudioPlayback": "音频开始播放", - "NotificationOptionAudioPlaybackStopped": "音频播放已停止", - "NotificationOptionCameraImageUploaded": "相机图片已上传", - "NotificationOptionGamePlayback": "游戏开始", - "NotificationOptionGamePlaybackStopped": "游戏停止", - "NotificationOptionInstallationFailed": "安装失败", - "NotificationOptionNewLibraryContent": "已添加新内容", - "NotificationOptionPluginError": "插件失败", - "NotificationOptionPluginInstalled": "插件已安装", - "NotificationOptionPluginUninstalled": "插件已卸载", - "NotificationOptionPluginUpdateInstalled": "插件更新已安装", - "NotificationOptionServerRestartRequired": "服务器需要重启", - "NotificationOptionTaskFailed": "计划任务失败", - "NotificationOptionUserLockedOut": "用户已锁定", - "NotificationOptionVideoPlayback": "视频开始播放", - "NotificationOptionVideoPlaybackStopped": "视频播放已停止", - "Photos": "照片", - "Playlists": "播放列表", - "Plugin": "插件", - "PluginInstalledWithName": "{0} 已安装", - "PluginUninstalledWithName": "{0} 已卸载", - "PluginUpdatedWithName": "{0} 已更新", - "ProviderValue": "提供商:{0}", - "ScheduledTaskFailedWithName": "{0} 已失败", - "ScheduledTaskStartedWithName": "{0} 已开始", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "节目", - "Songs": "歌曲", - "StartupEmbyServerIsLoading": "Jellyfin 服务器加载中。请稍后再试。", - "SubtitleDownloadFailureForItem": "为 {0} 下载字幕失败", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "已为 {0} 下载了字幕", - "Sync": "同步", - "System": "系统", - "TvShows": "电视节目", - "User": "用户", - "UserCreatedWithName": "用户 {0} 已创建", - "UserDeletedWithName": "用户 {0} 已删除", - "UserDownloadingItemWithValues": "{0} 正在下载 {1}", - "UserLockedOutWithName": "用户 {0} 已被锁定", - "UserOfflineFromDevice": "{0} 已从 {1} 断开", - "UserOnlineFromDevice": "{0} 在线,来自 {1}", - "UserPasswordChangedWithName": "已为用户 {0} 更改密码", - "UserPolicyUpdatedWithName": "用户协议已经被更新为 {0}", - "UserStartedPlayingItemWithValues": "{0} 已开始播放 {1}", - "UserStoppedPlayingItemWithValues": "{0} 已停止播放 {1}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "特典 - {0}", - "VersionNumber": "版本 {0}" + "Albums": "专辑", + "AppDeviceValues": "应用: {0}, 设备: {1}", + "Application": "应用程序", + "Artists": "艺术家", + "AuthenticationSucceededWithUserName": "{0} 成功验证", + "Books": "书籍", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "频道", + "ChapterNameValue": "章节 {0}", + "Collections": "合集", + "DeviceOfflineWithName": "{0} 已断开", + "DeviceOnlineWithName": "{0} 已连接", + "FailedLoginAttemptWithUserName": "来自 {0} 的失败登入", + "Favorites": "最爱", + "Folders": "文件夹", + "Games": "游戏", + "Genres": "风格", + "HeaderAlbumArtists": "专辑作家", + "HeaderCameraUploads": "相机上传", + "HeaderContinueWatching": "继续观看", + "HeaderFavoriteAlbums": "最爱的专辑", + "HeaderFavoriteArtists": "最爱作家", + "HeaderFavoriteEpisodes": "最爱的集", + "HeaderFavoriteShows": "最爱的节目", + "HeaderFavoriteSongs": "最爱的歌曲", + "HeaderLiveTV": "电视直播", + "HeaderNextUp": "接下来", + "HeaderRecordingGroups": "录制组", + "HomeVideos": "家庭视频", + "Inherit": "继承", + "ItemAddedWithName": "{0} 已添加到媒体库", + "ItemRemovedWithName": "{0} 已从媒体库中移除", + "LabelIpAddressValue": "Ip 地址:{0}", + "LabelRunningTimeValue": "运行时间:{0}", + "Latest": "最新", + "MessageApplicationUpdated": "Jellyfin 服务器已更新", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "服务器配置 {0} 部分已更新", + "MessageServerConfigurationUpdated": "服务器配置已更新", + "MixedContent": "混合内容", + "Movies": "电影", + "Music": "音乐", + "MusicVideos": "音乐视频", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "季 {0}", + "NameSeasonUnknown": "未知季", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "有可用的应用程序更新", + "NotificationOptionApplicationUpdateInstalled": "应用程序更新已安装", + "NotificationOptionAudioPlayback": "音频开始播放", + "NotificationOptionAudioPlaybackStopped": "音频播放已停止", + "NotificationOptionCameraImageUploaded": "相机图片已上传", + "NotificationOptionGamePlayback": "游戏开始", + "NotificationOptionGamePlaybackStopped": "游戏停止", + "NotificationOptionInstallationFailed": "安装失败", + "NotificationOptionNewLibraryContent": "已添加新内容", + "NotificationOptionPluginError": "插件失败", + "NotificationOptionPluginInstalled": "插件已安装", + "NotificationOptionPluginUninstalled": "插件已卸载", + "NotificationOptionPluginUpdateInstalled": "插件更新已安装", + "NotificationOptionServerRestartRequired": "服务器需要重启", + "NotificationOptionTaskFailed": "计划任务失败", + "NotificationOptionUserLockedOut": "用户已锁定", + "NotificationOptionVideoPlayback": "视频开始播放", + "NotificationOptionVideoPlaybackStopped": "视频播放已停止", + "Photos": "照片", + "Playlists": "播放列表", + "Plugin": "插件", + "PluginInstalledWithName": "{0} 已安装", + "PluginUninstalledWithName": "{0} 已卸载", + "PluginUpdatedWithName": "{0} 已更新", + "ProviderValue": "提供商:{0}", + "ScheduledTaskFailedWithName": "{0} 已失败", + "ScheduledTaskStartedWithName": "{0} 已开始", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "节目", + "Songs": "歌曲", + "StartupEmbyServerIsLoading": "Jellyfin 服务器加载中。请稍后再试。", + "SubtitleDownloadFailureForItem": "为 {0} 下载字幕失败", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "已为 {0} 下载了字幕", + "Sync": "同步", + "System": "系统", + "TvShows": "电视节目", + "User": "用户", + "UserCreatedWithName": "用户 {0} 已创建", + "UserDeletedWithName": "用户 {0} 已删除", + "UserDownloadingItemWithValues": "{0} 正在下载 {1}", + "UserLockedOutWithName": "用户 {0} 已被锁定", + "UserOfflineFromDevice": "{0} 已从 {1} 断开", + "UserOnlineFromDevice": "{0} 在线,来自 {1}", + "UserPasswordChangedWithName": "已为用户 {0} 更改密码", + "UserPolicyUpdatedWithName": "用户协议已经被更新为 {0}", + "UserStartedPlayingItemWithValues": "{0} 已开始播放 {1}", + "UserStoppedPlayingItemWithValues": "{0} 已停止播放 {1}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "特典 - {0}", + "VersionNumber": "版本 {0}" } diff --git a/Emby.Server.Implementations/Localization/Core/zh-HK.json b/Emby.Server.Implementations/Localization/Core/zh-HK.json index dc6332b03..cad5700fd 100644 --- a/Emby.Server.Implementations/Localization/Core/zh-HK.json +++ b/Emby.Server.Implementations/Localization/Core/zh-HK.json @@ -1,100 +1,100 @@ { - "Albums": "Albums", - "AppDeviceValues": "App: {0}, Device: {1}", - "Application": "Application", - "Artists": "Artists", - "AuthenticationSucceededWithUserName": "{0} successfully authenticated", - "Books": "Books", - "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", - "Channels": "Channels", - "ChapterNameValue": "Chapter {0}", - "Collections": "Collections", - "DeviceOfflineWithName": "{0} has disconnected", - "DeviceOnlineWithName": "{0} is connected", - "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", - "Favorites": "Favorites", - "Folders": "Folders", - "Games": "Games", - "Genres": "Genres", - "HeaderAlbumArtists": "Album Artists", - "HeaderCameraUploads": "Camera Uploads", - "HeaderContinueWatching": "Continue Watching", - "HeaderFavoriteAlbums": "Favorite Albums", - "HeaderFavoriteArtists": "Favorite Artists", - "HeaderFavoriteEpisodes": "Favorite Episodes", - "HeaderFavoriteShows": "Favorite Shows", - "HeaderFavoriteSongs": "Favorite Songs", - "HeaderLiveTV": "Live TV", - "HeaderNextUp": "Next Up", - "HeaderRecordingGroups": "Recording Groups", - "HomeVideos": "Home videos", - "Inherit": "Inherit", - "ItemAddedWithName": "{0} was added to the library", - "ItemRemovedWithName": "{0} was removed from the library", - "LabelIpAddressValue": "Ip address: {0}", - "LabelRunningTimeValue": "Running time: {0}", - "Latest": "Latest", - "MessageApplicationUpdated": "Jellyfin Server has been updated", - "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", - "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", - "MessageServerConfigurationUpdated": "Server configuration has been updated", - "MixedContent": "Mixed content", - "Movies": "Movies", - "Music": "Music", - "MusicVideos": "Music videos", - "NameInstallFailed": "{0} installation failed", - "NameSeasonNumber": "Season {0}", - "NameSeasonUnknown": "Season Unknown", - "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", - "NotificationOptionApplicationUpdateAvailable": "Application update available", - "NotificationOptionApplicationUpdateInstalled": "Application update installed", - "NotificationOptionAudioPlayback": "Audio playback started", - "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", - "NotificationOptionCameraImageUploaded": "Camera image uploaded", - "NotificationOptionGamePlayback": "Game playback started", - "NotificationOptionGamePlaybackStopped": "Game playback stopped", - "NotificationOptionInstallationFailed": "Installation failure", - "NotificationOptionNewLibraryContent": "New content added", - "NotificationOptionPluginError": "Plugin failure", - "NotificationOptionPluginInstalled": "Plugin installed", - "NotificationOptionPluginUninstalled": "Plugin uninstalled", - "NotificationOptionPluginUpdateInstalled": "Plugin update installed", - "NotificationOptionServerRestartRequired": "Server restart required", - "NotificationOptionTaskFailed": "Scheduled task failure", - "NotificationOptionUserLockedOut": "User locked out", - "NotificationOptionVideoPlayback": "Video playback started", - "NotificationOptionVideoPlaybackStopped": "Video playback stopped", - "Photos": "Photos", - "Playlists": "Playlists", - "Plugin": "Plugin", - "PluginInstalledWithName": "{0} was installed", - "PluginUninstalledWithName": "{0} was uninstalled", - "PluginUpdatedWithName": "{0} was updated", - "ProviderValue": "Provider: {0}", - "ScheduledTaskFailedWithName": "{0} failed", - "ScheduledTaskStartedWithName": "{0} started", - "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", - "Shows": "Shows", - "Songs": "Songs", - "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", - "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", - "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", - "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", - "Sync": "Sync", - "System": "System", - "TvShows": "TV Shows", - "User": "User", - "UserCreatedWithName": "User {0} has been created", - "UserDeletedWithName": "User {0} has been deleted", - "UserDownloadingItemWithValues": "{0} is downloading {1}", - "UserLockedOutWithName": "User {0} has been locked out", - "UserOfflineFromDevice": "{0} has disconnected from {1}", - "UserOnlineFromDevice": "{0} is online from {1}", - "UserPasswordChangedWithName": "Password has been changed for user {0}", - "UserPolicyUpdatedWithName": "User policy has been updated for {0}", - "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", - "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", - "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", - "ValueSpecialEpisodeName": "Special - {0}", - "VersionNumber": "版本{0}" + "Albums": "Albums", + "AppDeviceValues": "App: {0}, Device: {1}", + "Application": "Application", + "Artists": "Artists", + "AuthenticationSucceededWithUserName": "{0} successfully authenticated", + "Books": "Books", + "CameraImageUploadedFrom": "A new camera image has been uploaded from {0}", + "Channels": "Channels", + "ChapterNameValue": "Chapter {0}", + "Collections": "Collections", + "DeviceOfflineWithName": "{0} has disconnected", + "DeviceOnlineWithName": "{0} is connected", + "FailedLoginAttemptWithUserName": "Failed login attempt from {0}", + "Favorites": "Favorites", + "Folders": "Folders", + "Games": "Games", + "Genres": "Genres", + "HeaderAlbumArtists": "Album Artists", + "HeaderCameraUploads": "Camera Uploads", + "HeaderContinueWatching": "Continue Watching", + "HeaderFavoriteAlbums": "Favorite Albums", + "HeaderFavoriteArtists": "Favorite Artists", + "HeaderFavoriteEpisodes": "Favorite Episodes", + "HeaderFavoriteShows": "Favorite Shows", + "HeaderFavoriteSongs": "Favorite Songs", + "HeaderLiveTV": "Live TV", + "HeaderNextUp": "Next Up", + "HeaderRecordingGroups": "Recording Groups", + "HomeVideos": "Home videos", + "Inherit": "Inherit", + "ItemAddedWithName": "{0} was added to the library", + "ItemRemovedWithName": "{0} was removed from the library", + "LabelIpAddressValue": "Ip address: {0}", + "LabelRunningTimeValue": "Running time: {0}", + "Latest": "Latest", + "MessageApplicationUpdated": "Jellyfin Server has been updated", + "MessageApplicationUpdatedTo": "Jellyfin Server has been updated to {0}", + "MessageNamedServerConfigurationUpdatedWithValue": "Server configuration section {0} has been updated", + "MessageServerConfigurationUpdated": "Server configuration has been updated", + "MixedContent": "Mixed content", + "Movies": "Movies", + "Music": "Music", + "MusicVideos": "Music videos", + "NameInstallFailed": "{0} installation failed", + "NameSeasonNumber": "Season {0}", + "NameSeasonUnknown": "Season Unknown", + "NewVersionIsAvailable": "A new version of Jellyfin Server is available for download.", + "NotificationOptionApplicationUpdateAvailable": "Application update available", + "NotificationOptionApplicationUpdateInstalled": "Application update installed", + "NotificationOptionAudioPlayback": "Audio playback started", + "NotificationOptionAudioPlaybackStopped": "Audio playback stopped", + "NotificationOptionCameraImageUploaded": "Camera image uploaded", + "NotificationOptionGamePlayback": "Game playback started", + "NotificationOptionGamePlaybackStopped": "Game playback stopped", + "NotificationOptionInstallationFailed": "Installation failure", + "NotificationOptionNewLibraryContent": "New content added", + "NotificationOptionPluginError": "Plugin failure", + "NotificationOptionPluginInstalled": "Plugin installed", + "NotificationOptionPluginUninstalled": "Plugin uninstalled", + "NotificationOptionPluginUpdateInstalled": "Plugin update installed", + "NotificationOptionServerRestartRequired": "Server restart required", + "NotificationOptionTaskFailed": "Scheduled task failure", + "NotificationOptionUserLockedOut": "User locked out", + "NotificationOptionVideoPlayback": "Video playback started", + "NotificationOptionVideoPlaybackStopped": "Video playback stopped", + "Photos": "Photos", + "Playlists": "Playlists", + "Plugin": "Plugin", + "PluginInstalledWithName": "{0} was installed", + "PluginUninstalledWithName": "{0} was uninstalled", + "PluginUpdatedWithName": "{0} was updated", + "ProviderValue": "Provider: {0}", + "ScheduledTaskFailedWithName": "{0} failed", + "ScheduledTaskStartedWithName": "{0} started", + "ServerNameNeedsToBeRestarted": "{0} needs to be restarted", + "Shows": "Shows", + "Songs": "Songs", + "StartupEmbyServerIsLoading": "Jellyfin Server is loading. Please try again shortly.", + "SubtitleDownloadFailureForItem": "Subtitles failed to download for {0}", + "SubtitleDownloadFailureFromForItem": "Subtitles failed to download from {0} for {1}", + "SubtitlesDownloadedForItem": "Subtitles downloaded for {0}", + "Sync": "Sync", + "System": "System", + "TvShows": "TV Shows", + "User": "User", + "UserCreatedWithName": "User {0} has been created", + "UserDeletedWithName": "User {0} has been deleted", + "UserDownloadingItemWithValues": "{0} is downloading {1}", + "UserLockedOutWithName": "User {0} has been locked out", + "UserOfflineFromDevice": "{0} has disconnected from {1}", + "UserOnlineFromDevice": "{0} is online from {1}", + "UserPasswordChangedWithName": "Password has been changed for user {0}", + "UserPolicyUpdatedWithName": "User policy has been updated for {0}", + "UserStartedPlayingItemWithValues": "{0} is playing {1} on {2}", + "UserStoppedPlayingItemWithValues": "{0} has finished playing {1} on {2}", + "ValueHasBeenAddedToLibrary": "{0} has been added to your media library", + "ValueSpecialEpisodeName": "Special - {0}", + "VersionNumber": "版本{0}" } diff --git a/Emby.Server.Implementations/Localization/LocalizationManager.cs b/Emby.Server.Implementations/Localization/LocalizationManager.cs index a2c47cd79..5d3c39af4 100644 --- a/Emby.Server.Implementations/Localization/LocalizationManager.cs +++ b/Emby.Server.Implementations/Localization/LocalizationManager.cs @@ -1,17 +1,17 @@ -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Globalization; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Reflection; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Localization { @@ -138,7 +138,7 @@ namespace Emby.Server.Implementations.Localization new ParentalRating("FSK-18", 9) }); - LoadRatings("ru", new [] { + LoadRatings("ru", new[] { new ParentalRating("RU-0+", 1), new ParentalRating("RU-6+", 3), @@ -298,9 +298,7 @@ namespace Emby.Server.Implementations.Localization /// <param name="countryCode">The country code.</param> private Dictionary<string, ParentalRating> GetRatings(string countryCode) { - Dictionary<string, ParentalRating> value; - - _allParentalRatings.TryGetValue(countryCode, out value); + _allParentalRatings.TryGetValue(countryCode, out var value); return value; } @@ -320,9 +318,7 @@ namespace Emby.Server.Implementations.Localization if (parts.Length == 2) { - int value; - - if (int.TryParse(parts[1], NumberStyles.Integer, UsCulture, out value)) + if (int.TryParse(parts[1], NumberStyles.Integer, UsCulture, out var value)) { return new ParentalRating { Name = parts[0], Value = value }; } @@ -364,9 +360,7 @@ namespace Emby.Server.Implementations.Localization var ratingsDictionary = GetParentalRatingsDictionary(); - ParentalRating value; - - if (ratingsDictionary.TryGetValue(rating, out value)) + if (ratingsDictionary.TryGetValue(rating, out ParentalRating value)) { return value.Value; } @@ -427,9 +421,7 @@ namespace Emby.Server.Implementations.Localization var dictionary = GetLocalizationDictionary(culture); - string value; - - if (dictionary.TryGetValue(phrase, out value)) + if (dictionary.TryGetValue(phrase, out var value)) { return value; } diff --git a/Emby.Server.Implementations/Localization/Ratings/br.txt b/Emby.Server.Implementations/Localization/Ratings/br.txt index 62f00fb87..e5edaf62c 100644 --- a/Emby.Server.Implementations/Localization/Ratings/br.txt +++ b/Emby.Server.Implementations/Localization/Ratings/br.txt @@ -3,4 +3,4 @@ BR-10,5 BR-12,7 BR-14,8 BR-16,8 -BR-18,9
\ No newline at end of file +BR-18,9 diff --git a/Emby.Server.Implementations/Localization/Ratings/ca.txt b/Emby.Server.Implementations/Localization/Ratings/ca.txt index 5a110648c..5aef0580f 100644 --- a/Emby.Server.Implementations/Localization/Ratings/ca.txt +++ b/Emby.Server.Implementations/Localization/Ratings/ca.txt @@ -1,6 +1,6 @@ -CA-G,1 +CA-G,1 CA-PG,5 CA-14A,7 CA-A,8 CA-18A,9 -CA-R,10
\ No newline at end of file +CA-R,10 diff --git a/Emby.Server.Implementations/Localization/Ratings/co.txt b/Emby.Server.Implementations/Localization/Ratings/co.txt index a694a0be6..9684fa052 100644 --- a/Emby.Server.Implementations/Localization/Ratings/co.txt +++ b/Emby.Server.Implementations/Localization/Ratings/co.txt @@ -5,4 +5,4 @@ CO-15,8 CO-18,10 CO-X,100 CO-BANNED,15 -CO-E,15
\ No newline at end of file +CO-E,15 diff --git a/Emby.Server.Implementations/Localization/Ratings/dk.txt b/Emby.Server.Implementations/Localization/Ratings/dk.txt index b9a085e01..5364ae1f2 100644 --- a/Emby.Server.Implementations/Localization/Ratings/dk.txt +++ b/Emby.Server.Implementations/Localization/Ratings/dk.txt @@ -1,4 +1,4 @@ DA-A,1 DA-7,5 DA-11,6 -DA-15,8
\ No newline at end of file +DA-15,8 diff --git a/Emby.Server.Implementations/Localization/Ratings/es.txt b/Emby.Server.Implementations/Localization/Ratings/es.txt index 32a1e6438..887d91ba6 100644 --- a/Emby.Server.Implementations/Localization/Ratings/es.txt +++ b/Emby.Server.Implementations/Localization/Ratings/es.txt @@ -3,4 +3,4 @@ ES-APTA,1 ES-7,3 ES-12,6 ES-16,8 -ES-18,11
\ No newline at end of file +ES-18,11 diff --git a/Emby.Server.Implementations/Localization/Ratings/fr.txt b/Emby.Server.Implementations/Localization/Ratings/fr.txt index 2bb205b0d..f586a3fa9 100644 --- a/Emby.Server.Implementations/Localization/Ratings/fr.txt +++ b/Emby.Server.Implementations/Localization/Ratings/fr.txt @@ -2,4 +2,4 @@ FR-U,1 FR-10,5 FR-12,7 FR-16,9 -FR-18,10
\ No newline at end of file +FR-18,10 diff --git a/Emby.Server.Implementations/Localization/Ratings/ie.txt b/Emby.Server.Implementations/Localization/Ratings/ie.txt index 283f07767..e42be5cd4 100644 --- a/Emby.Server.Implementations/Localization/Ratings/ie.txt +++ b/Emby.Server.Implementations/Localization/Ratings/ie.txt @@ -3,4 +3,4 @@ IE-PG,5 IE-12A,7 IE-15A,8 IE-16,9 -IE-18,10
\ No newline at end of file +IE-18,10 diff --git a/Emby.Server.Implementations/Localization/Ratings/jp.txt b/Emby.Server.Implementations/Localization/Ratings/jp.txt index 2e1da30d8..a8fc2d143 100644 --- a/Emby.Server.Implementations/Localization/Ratings/jp.txt +++ b/Emby.Server.Implementations/Localization/Ratings/jp.txt @@ -1,4 +1,4 @@ JP-G,1 JP-PG12,7 JP-15+,8 -JP-18+,10
\ No newline at end of file +JP-18+,10 diff --git a/Emby.Server.Implementations/Localization/Ratings/kz.txt b/Emby.Server.Implementations/Localization/Ratings/kz.txt index b31e12d96..4441c5650 100644 --- a/Emby.Server.Implementations/Localization/Ratings/kz.txt +++ b/Emby.Server.Implementations/Localization/Ratings/kz.txt @@ -3,4 +3,4 @@ KZ-БА,6 KZ-Б14,7 KZ-Е16,8 KZ-Е18,10 -KZ-НА,15
\ No newline at end of file +KZ-НА,15 diff --git a/Emby.Server.Implementations/Localization/Ratings/mx.txt b/Emby.Server.Implementations/Localization/Ratings/mx.txt index 93b609c3d..785a8ba22 100644 --- a/Emby.Server.Implementations/Localization/Ratings/mx.txt +++ b/Emby.Server.Implementations/Localization/Ratings/mx.txt @@ -3,4 +3,4 @@ MX-A,5 MX-B,7 MX-B-15,8 MX-C,9 -MX-D,10
\ No newline at end of file +MX-D,10 diff --git a/Emby.Server.Implementations/Localization/Ratings/nl.txt b/Emby.Server.Implementations/Localization/Ratings/nl.txt index f69cc2bcc..8c005092e 100644 --- a/Emby.Server.Implementations/Localization/Ratings/nl.txt +++ b/Emby.Server.Implementations/Localization/Ratings/nl.txt @@ -3,4 +3,4 @@ NL-MG6,2 NL-6,3 NL-9,5 NL-12,6 -NL-16,8
\ No newline at end of file +NL-16,8 diff --git a/Emby.Server.Implementations/Localization/Ratings/nz.txt b/Emby.Server.Implementations/Localization/Ratings/nz.txt index 46e4067ba..bba99b764 100644 --- a/Emby.Server.Implementations/Localization/Ratings/nz.txt +++ b/Emby.Server.Implementations/Localization/Ratings/nz.txt @@ -8,4 +8,4 @@ NZ-RP16,9 NZ-R16,9 NZ-R18,10 NZ-R,10 -NZ-MA,10
\ No newline at end of file +NZ-MA,10 diff --git a/Emby.Server.Implementations/Localization/Ratings/ro.txt b/Emby.Server.Implementations/Localization/Ratings/ro.txt index 3fdaed9cc..4089b282f 100644 --- a/Emby.Server.Implementations/Localization/Ratings/ro.txt +++ b/Emby.Server.Implementations/Localization/Ratings/ro.txt @@ -1 +1 @@ -RO-AG,1
\ No newline at end of file +RO-AG,1 diff --git a/Emby.Server.Implementations/Localization/Ratings/uk.txt b/Emby.Server.Implementations/Localization/Ratings/uk.txt index 20440921f..6c8005b3f 100644 --- a/Emby.Server.Implementations/Localization/Ratings/uk.txt +++ b/Emby.Server.Implementations/Localization/Ratings/uk.txt @@ -4,4 +4,4 @@ UK-12,7 UK-12A,7 UK-15,9 UK-18,10 -UK-R18,15
\ No newline at end of file +UK-R18,15 diff --git a/Emby.Server.Implementations/Localization/Ratings/us.txt b/Emby.Server.Implementations/Localization/Ratings/us.txt index eebd828c7..34c897fe3 100644 --- a/Emby.Server.Implementations/Localization/Ratings/us.txt +++ b/Emby.Server.Implementations/Localization/Ratings/us.txt @@ -20,4 +20,4 @@ RP,15 UR,15 NR,15 X,15 -XXX,100
\ No newline at end of file +XXX,100 diff --git a/Emby.Server.Implementations/Localization/TextLocalizer.cs b/Emby.Server.Implementations/Localization/TextLocalizer.cs index 09445d428..96591e5e6 100644 --- a/Emby.Server.Implementations/Localization/TextLocalizer.cs +++ b/Emby.Server.Implementations/Localization/TextLocalizer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Globalization; using System.Linq; using System.Text; diff --git a/Emby.Server.Implementations/Localization/countries.json b/Emby.Server.Implementations/Localization/countries.json index 2639aa274..581e9f835 100644 --- a/Emby.Server.Implementations/Localization/countries.json +++ b/Emby.Server.Implementations/Localization/countries.json @@ -1,830 +1,830 @@ [ - { - "DisplayName": "Afghanistan", - "Name": "AF", - "ThreeLetterISORegionName": "AFG", - "TwoLetterISORegionName": "AF" - }, - { - "DisplayName": "Albania", - "Name": "AL", - "ThreeLetterISORegionName": "ALB", - "TwoLetterISORegionName": "AL" - }, - { - "DisplayName": "Algeria", - "Name": "DZ", - "ThreeLetterISORegionName": "DZA", - "TwoLetterISORegionName": "DZ" - }, - { - "DisplayName": "Argentina", - "Name": "AR", - "ThreeLetterISORegionName": "ARG", - "TwoLetterISORegionName": "AR" - }, - { - "DisplayName": "Armenia", - "Name": "AM", - "ThreeLetterISORegionName": "ARM", - "TwoLetterISORegionName": "AM" - }, - { - "DisplayName": "Australia", - "Name": "AU", - "ThreeLetterISORegionName": "AUS", - "TwoLetterISORegionName": "AU" - }, - { - "DisplayName": "Austria", - "Name": "AT", - "ThreeLetterISORegionName": "AUT", - "TwoLetterISORegionName": "AT" - }, - { - "DisplayName": "Azerbaijan", - "Name": "AZ", - "ThreeLetterISORegionName": "AZE", - "TwoLetterISORegionName": "AZ" - }, - { - "DisplayName": "Bahrain", - "Name": "BH", - "ThreeLetterISORegionName": "BHR", - "TwoLetterISORegionName": "BH" - }, - { - "DisplayName": "Bangladesh", - "Name": "BD", - "ThreeLetterISORegionName": "BGD", - "TwoLetterISORegionName": "BD" - }, - { - "DisplayName": "Belarus", - "Name": "BY", - "ThreeLetterISORegionName": "BLR", - "TwoLetterISORegionName": "BY" - }, - { - "DisplayName": "Belgium", - "Name": "BE", - "ThreeLetterISORegionName": "BEL", - "TwoLetterISORegionName": "BE" - }, - { - "DisplayName": "Belize", - "Name": "BZ", - "ThreeLetterISORegionName": "BLZ", - "TwoLetterISORegionName": "BZ" - }, - { - "DisplayName": "Bolivarian Republic of Venezuela", - "Name": "VE", - "ThreeLetterISORegionName": "VEN", - "TwoLetterISORegionName": "VE" - }, - { - "DisplayName": "Bolivia", - "Name": "BO", - "ThreeLetterISORegionName": "BOL", - "TwoLetterISORegionName": "BO" - }, - { - "DisplayName": "Bosnia and Herzegovina", - "Name": "BA", - "ThreeLetterISORegionName": "BIH", - "TwoLetterISORegionName": "BA" - }, - { - "DisplayName": "Botswana", - "Name": "BW", - "ThreeLetterISORegionName": "BWA", - "TwoLetterISORegionName": "BW" - }, - { - "DisplayName": "Brazil", - "Name": "BR", - "ThreeLetterISORegionName": "BRA", - "TwoLetterISORegionName": "BR" - }, - { - "DisplayName": "Brunei Darussalam", - "Name": "BN", - "ThreeLetterISORegionName": "BRN", - "TwoLetterISORegionName": "BN" - }, - { - "DisplayName": "Bulgaria", - "Name": "BG", - "ThreeLetterISORegionName": "BGR", - "TwoLetterISORegionName": "BG" - }, - { - "DisplayName": "Cambodia", - "Name": "KH", - "ThreeLetterISORegionName": "KHM", - "TwoLetterISORegionName": "KH" - }, - { - "DisplayName": "Cameroon", - "Name": "CM", - "ThreeLetterISORegionName": "CMR", - "TwoLetterISORegionName": "CM" - }, - { - "DisplayName": "Canada", - "Name": "CA", - "ThreeLetterISORegionName": "CAN", - "TwoLetterISORegionName": "CA" - }, - { - "DisplayName": "Caribbean", - "Name": "029", - "ThreeLetterISORegionName": "029", - "TwoLetterISORegionName": "029" - }, - { - "DisplayName": "Chile", - "Name": "CL", - "ThreeLetterISORegionName": "CHL", - "TwoLetterISORegionName": "CL" - }, - { - "DisplayName": "Colombia", - "Name": "CO", - "ThreeLetterISORegionName": "COL", - "TwoLetterISORegionName": "CO" - }, - { - "DisplayName": "Congo [DRC]", - "Name": "CD", - "ThreeLetterISORegionName": "COD", - "TwoLetterISORegionName": "CD" - }, - { - "DisplayName": "Costa Rica", - "Name": "CR", - "ThreeLetterISORegionName": "CRI", - "TwoLetterISORegionName": "CR" - }, - { - "DisplayName": "Croatia", - "Name": "HR", - "ThreeLetterISORegionName": "HRV", - "TwoLetterISORegionName": "HR" - }, - { - "DisplayName": "Czech Republic", - "Name": "CZ", - "ThreeLetterISORegionName": "CZE", - "TwoLetterISORegionName": "CZ" - }, - { - "DisplayName": "Denmark", - "Name": "DK", - "ThreeLetterISORegionName": "DNK", - "TwoLetterISORegionName": "DK" - }, - { - "DisplayName": "Dominican Republic", - "Name": "DO", - "ThreeLetterISORegionName": "DOM", - "TwoLetterISORegionName": "DO" - }, - { - "DisplayName": "Ecuador", - "Name": "EC", - "ThreeLetterISORegionName": "ECU", - "TwoLetterISORegionName": "EC" - }, - { - "DisplayName": "Egypt", - "Name": "EG", - "ThreeLetterISORegionName": "EGY", - "TwoLetterISORegionName": "EG" - }, - { - "DisplayName": "El Salvador", - "Name": "SV", - "ThreeLetterISORegionName": "SLV", - "TwoLetterISORegionName": "SV" - }, - { - "DisplayName": "Eritrea", - "Name": "ER", - "ThreeLetterISORegionName": "ERI", - "TwoLetterISORegionName": "ER" - }, - { - "DisplayName": "Estonia", - "Name": "EE", - "ThreeLetterISORegionName": "EST", - "TwoLetterISORegionName": "EE" - }, - { - "DisplayName": "Ethiopia", - "Name": "ET", - "ThreeLetterISORegionName": "ETH", - "TwoLetterISORegionName": "ET" - }, - { - "DisplayName": "Faroe Islands", - "Name": "FO", - "ThreeLetterISORegionName": "FRO", - "TwoLetterISORegionName": "FO" - }, - { - "DisplayName": "Finland", - "Name": "FI", - "ThreeLetterISORegionName": "FIN", - "TwoLetterISORegionName": "FI" - }, - { - "DisplayName": "France", - "Name": "FR", - "ThreeLetterISORegionName": "FRA", - "TwoLetterISORegionName": "FR" - }, - { - "DisplayName": "Georgia", - "Name": "GE", - "ThreeLetterISORegionName": "GEO", - "TwoLetterISORegionName": "GE" - }, - { - "DisplayName": "Germany", - "Name": "DE", - "ThreeLetterISORegionName": "DEU", - "TwoLetterISORegionName": "DE" - }, - { - "DisplayName": "Greece", - "Name": "GR", - "ThreeLetterISORegionName": "GRC", - "TwoLetterISORegionName": "GR" - }, - { - "DisplayName": "Greenland", - "Name": "GL", - "ThreeLetterISORegionName": "GRL", - "TwoLetterISORegionName": "GL" - }, - { - "DisplayName": "Guatemala", - "Name": "GT", - "ThreeLetterISORegionName": "GTM", - "TwoLetterISORegionName": "GT" - }, - { - "DisplayName": "Haiti", - "Name": "HT", - "ThreeLetterISORegionName": "HTI", - "TwoLetterISORegionName": "HT" - }, - { - "DisplayName": "Honduras", - "Name": "HN", - "ThreeLetterISORegionName": "HND", - "TwoLetterISORegionName": "HN" - }, - { - "DisplayName": "Hong Kong S.A.R.", - "Name": "HK", - "ThreeLetterISORegionName": "HKG", - "TwoLetterISORegionName": "HK" - }, - { - "DisplayName": "Hungary", - "Name": "HU", - "ThreeLetterISORegionName": "HUN", - "TwoLetterISORegionName": "HU" - }, - { - "DisplayName": "Iceland", - "Name": "IS", - "ThreeLetterISORegionName": "ISL", - "TwoLetterISORegionName": "IS" - }, - { - "DisplayName": "India", - "Name": "IN", - "ThreeLetterISORegionName": "IND", - "TwoLetterISORegionName": "IN" - }, - { - "DisplayName": "Indonesia", - "Name": "ID", - "ThreeLetterISORegionName": "IDN", - "TwoLetterISORegionName": "ID" - }, - { - "DisplayName": "Iran", - "Name": "IR", - "ThreeLetterISORegionName": "IRN", - "TwoLetterISORegionName": "IR" - }, - { - "DisplayName": "Iraq", - "Name": "IQ", - "ThreeLetterISORegionName": "IRQ", - "TwoLetterISORegionName": "IQ" - }, - { - "DisplayName": "Ireland", - "Name": "IE", - "ThreeLetterISORegionName": "IRL", - "TwoLetterISORegionName": "IE" - }, - { - "DisplayName": "Islamic Republic of Pakistan", - "Name": "PK", - "ThreeLetterISORegionName": "PAK", - "TwoLetterISORegionName": "PK" - }, - { - "DisplayName": "Israel", - "Name": "IL", - "ThreeLetterISORegionName": "ISR", - "TwoLetterISORegionName": "IL" - }, - { - "DisplayName": "Italy", - "Name": "IT", - "ThreeLetterISORegionName": "ITA", - "TwoLetterISORegionName": "IT" - }, - { - "DisplayName": "Ivory Coast", - "Name": "CI", - "ThreeLetterISORegionName": "CIV", - "TwoLetterISORegionName": "CI" - }, - { - "DisplayName": "Jamaica", - "Name": "JM", - "ThreeLetterISORegionName": "JAM", - "TwoLetterISORegionName": "JM" - }, - { - "DisplayName": "Japan", - "Name": "JP", - "ThreeLetterISORegionName": "JPN", - "TwoLetterISORegionName": "JP" - }, - { - "DisplayName": "Jordan", - "Name": "JO", - "ThreeLetterISORegionName": "JOR", - "TwoLetterISORegionName": "JO" - }, - { - "DisplayName": "Kazakhstan", - "Name": "KZ", - "ThreeLetterISORegionName": "KAZ", - "TwoLetterISORegionName": "KZ" - }, - { - "DisplayName": "Kenya", - "Name": "KE", - "ThreeLetterISORegionName": "KEN", - "TwoLetterISORegionName": "KE" - }, - { - "DisplayName": "Korea", - "Name": "KR", - "ThreeLetterISORegionName": "KOR", - "TwoLetterISORegionName": "KR" - }, - { - "DisplayName": "Kuwait", - "Name": "KW", - "ThreeLetterISORegionName": "KWT", - "TwoLetterISORegionName": "KW" - }, - { - "DisplayName": "Kyrgyzstan", - "Name": "KG", - "ThreeLetterISORegionName": "KGZ", - "TwoLetterISORegionName": "KG" - }, - { - "DisplayName": "Lao P.D.R.", - "Name": "LA", - "ThreeLetterISORegionName": "LAO", - "TwoLetterISORegionName": "LA" - }, - { - "DisplayName": "Latin America", - "Name": "419", - "ThreeLetterISORegionName": "419", - "TwoLetterISORegionName": "419" - }, - { - "DisplayName": "Latvia", - "Name": "LV", - "ThreeLetterISORegionName": "LVA", - "TwoLetterISORegionName": "LV" - }, - { - "DisplayName": "Lebanon", - "Name": "LB", - "ThreeLetterISORegionName": "LBN", - "TwoLetterISORegionName": "LB" - }, - { - "DisplayName": "Libya", - "Name": "LY", - "ThreeLetterISORegionName": "LBY", - "TwoLetterISORegionName": "LY" - }, - { - "DisplayName": "Liechtenstein", - "Name": "LI", - "ThreeLetterISORegionName": "LIE", - "TwoLetterISORegionName": "LI" - }, - { - "DisplayName": "Lithuania", - "Name": "LT", - "ThreeLetterISORegionName": "LTU", - "TwoLetterISORegionName": "LT" - }, - { - "DisplayName": "Luxembourg", - "Name": "LU", - "ThreeLetterISORegionName": "LUX", - "TwoLetterISORegionName": "LU" - }, - { - "DisplayName": "Macao S.A.R.", - "Name": "MO", - "ThreeLetterISORegionName": "MAC", - "TwoLetterISORegionName": "MO" - }, - { - "DisplayName": "Macedonia (FYROM)", - "Name": "MK", - "ThreeLetterISORegionName": "MKD", - "TwoLetterISORegionName": "MK" - }, - { - "DisplayName": "Malaysia", - "Name": "MY", - "ThreeLetterISORegionName": "MYS", - "TwoLetterISORegionName": "MY" - }, - { - "DisplayName": "Maldives", - "Name": "MV", - "ThreeLetterISORegionName": "MDV", - "TwoLetterISORegionName": "MV" - }, - { - "DisplayName": "Mali", - "Name": "ML", - "ThreeLetterISORegionName": "MLI", - "TwoLetterISORegionName": "ML" - }, - { - "DisplayName": "Malta", - "Name": "MT", - "ThreeLetterISORegionName": "MLT", - "TwoLetterISORegionName": "MT" - }, - { - "DisplayName": "Mexico", - "Name": "MX", - "ThreeLetterISORegionName": "MEX", - "TwoLetterISORegionName": "MX" - }, - { - "DisplayName": "Mongolia", - "Name": "MN", - "ThreeLetterISORegionName": "MNG", - "TwoLetterISORegionName": "MN" - }, - { - "DisplayName": "Montenegro", - "Name": "ME", - "ThreeLetterISORegionName": "MNE", - "TwoLetterISORegionName": "ME" - }, - { - "DisplayName": "Morocco", - "Name": "MA", - "ThreeLetterISORegionName": "MAR", - "TwoLetterISORegionName": "MA" - }, - { - "DisplayName": "Nepal", - "Name": "NP", - "ThreeLetterISORegionName": "NPL", - "TwoLetterISORegionName": "NP" - }, - { - "DisplayName": "Netherlands", - "Name": "NL", - "ThreeLetterISORegionName": "NLD", - "TwoLetterISORegionName": "NL" - }, - { - "DisplayName": "New Zealand", - "Name": "NZ", - "ThreeLetterISORegionName": "NZL", - "TwoLetterISORegionName": "NZ" - }, - { - "DisplayName": "Nicaragua", - "Name": "NI", - "ThreeLetterISORegionName": "NIC", - "TwoLetterISORegionName": "NI" - }, - { - "DisplayName": "Nigeria", - "Name": "NG", - "ThreeLetterISORegionName": "NGA", - "TwoLetterISORegionName": "NG" - }, - { - "DisplayName": "Norway", - "Name": "NO", - "ThreeLetterISORegionName": "NOR", - "TwoLetterISORegionName": "NO" - }, - { - "DisplayName": "Oman", - "Name": "OM", - "ThreeLetterISORegionName": "OMN", - "TwoLetterISORegionName": "OM" - }, - { - "DisplayName": "Panama", - "Name": "PA", - "ThreeLetterISORegionName": "PAN", - "TwoLetterISORegionName": "PA" - }, - { - "DisplayName": "Paraguay", - "Name": "PY", - "ThreeLetterISORegionName": "PRY", - "TwoLetterISORegionName": "PY" - }, - { - "DisplayName": "People's Republic of China", - "Name": "CN", - "ThreeLetterISORegionName": "CHN", - "TwoLetterISORegionName": "CN" - }, - { - "DisplayName": "Peru", - "Name": "PE", - "ThreeLetterISORegionName": "PER", - "TwoLetterISORegionName": "PE" - }, - { - "DisplayName": "Philippines", - "Name": "PH", - "ThreeLetterISORegionName": "PHL", - "TwoLetterISORegionName": "PH" - }, - { - "DisplayName": "Poland", - "Name": "PL", - "ThreeLetterISORegionName": "POL", - "TwoLetterISORegionName": "PL" - }, - { - "DisplayName": "Portugal", - "Name": "PT", - "ThreeLetterISORegionName": "PRT", - "TwoLetterISORegionName": "PT" - }, - { - "DisplayName": "Principality of Monaco", - "Name": "MC", - "ThreeLetterISORegionName": "MCO", - "TwoLetterISORegionName": "MC" - }, - { - "DisplayName": "Puerto Rico", - "Name": "PR", - "ThreeLetterISORegionName": "PRI", - "TwoLetterISORegionName": "PR" - }, - { - "DisplayName": "Qatar", - "Name": "QA", - "ThreeLetterISORegionName": "QAT", - "TwoLetterISORegionName": "QA" - }, - { - "DisplayName": "Republica Moldova", - "Name": "MD", - "ThreeLetterISORegionName": "MDA", - "TwoLetterISORegionName": "MD" - }, - { - "DisplayName": "Réunion", - "Name": "RE", - "ThreeLetterISORegionName": "REU", - "TwoLetterISORegionName": "RE" - }, - { - "DisplayName": "Romania", - "Name": "RO", - "ThreeLetterISORegionName": "ROU", - "TwoLetterISORegionName": "RO" - }, - { - "DisplayName": "Russia", - "Name": "RU", - "ThreeLetterISORegionName": "RUS", - "TwoLetterISORegionName": "RU" - }, - { - "DisplayName": "Rwanda", - "Name": "RW", - "ThreeLetterISORegionName": "RWA", - "TwoLetterISORegionName": "RW" - }, - { - "DisplayName": "Saudi Arabia", - "Name": "SA", - "ThreeLetterISORegionName": "SAU", - "TwoLetterISORegionName": "SA" - }, - { - "DisplayName": "Senegal", - "Name": "SN", - "ThreeLetterISORegionName": "SEN", - "TwoLetterISORegionName": "SN" - }, - { - "DisplayName": "Serbia", - "Name": "RS", - "ThreeLetterISORegionName": "SRB", - "TwoLetterISORegionName": "RS" - }, - { - "DisplayName": "Serbia and Montenegro (Former)", - "Name": "CS", - "ThreeLetterISORegionName": "SCG", - "TwoLetterISORegionName": "CS" - }, - { - "DisplayName": "Singapore", - "Name": "SG", - "ThreeLetterISORegionName": "SGP", - "TwoLetterISORegionName": "SG" - }, - { - "DisplayName": "Slovakia", - "Name": "SK", - "ThreeLetterISORegionName": "SVK", - "TwoLetterISORegionName": "SK" - }, - { - "DisplayName": "Slovenia", - "Name": "SI", - "ThreeLetterISORegionName": "SVN", - "TwoLetterISORegionName": "SI" - }, - { - "DisplayName": "Soomaaliya", - "Name": "SO", - "ThreeLetterISORegionName": "SOM", - "TwoLetterISORegionName": "SO" - }, - { - "DisplayName": "South Africa", - "Name": "ZA", - "ThreeLetterISORegionName": "ZAF", - "TwoLetterISORegionName": "ZA" - }, - { - "DisplayName": "Spain", - "Name": "ES", - "ThreeLetterISORegionName": "ESP", - "TwoLetterISORegionName": "ES" - }, - { - "DisplayName": "Sri Lanka", - "Name": "LK", - "ThreeLetterISORegionName": "LKA", - "TwoLetterISORegionName": "LK" - }, - { - "DisplayName": "Sweden", - "Name": "SE", - "ThreeLetterISORegionName": "SWE", - "TwoLetterISORegionName": "SE" - }, - { - "DisplayName": "Switzerland", - "Name": "CH", - "ThreeLetterISORegionName": "CHE", - "TwoLetterISORegionName": "CH" - }, - { - "DisplayName": "Syria", - "Name": "SY", - "ThreeLetterISORegionName": "SYR", - "TwoLetterISORegionName": "SY" - }, - { - "DisplayName": "Taiwan", - "Name": "TW", - "ThreeLetterISORegionName": "TWN", - "TwoLetterISORegionName": "TW" - }, - { - "DisplayName": "Tajikistan", - "Name": "TJ", - "ThreeLetterISORegionName": "TAJ", - "TwoLetterISORegionName": "TJ" - }, - { - "DisplayName": "Thailand", - "Name": "TH", - "ThreeLetterISORegionName": "THA", - "TwoLetterISORegionName": "TH" - }, - { - "DisplayName": "Trinidad and Tobago", - "Name": "TT", - "ThreeLetterISORegionName": "TTO", - "TwoLetterISORegionName": "TT" - }, - { - "DisplayName": "Tunisia", - "Name": "TN", - "ThreeLetterISORegionName": "TUN", - "TwoLetterISORegionName": "TN" - }, - { - "DisplayName": "Turkey", - "Name": "TR", - "ThreeLetterISORegionName": "TUR", - "TwoLetterISORegionName": "TR" - }, - { - "DisplayName": "Turkmenistan", - "Name": "TM", - "ThreeLetterISORegionName": "TKM", - "TwoLetterISORegionName": "TM" - }, - { - "DisplayName": "U.A.E.", - "Name": "AE", - "ThreeLetterISORegionName": "ARE", - "TwoLetterISORegionName": "AE" - }, - { - "DisplayName": "Ukraine", - "Name": "UA", - "ThreeLetterISORegionName": "UKR", - "TwoLetterISORegionName": "UA" - }, - { - "DisplayName": "United Kingdom", - "Name": "GB", - "ThreeLetterISORegionName": "GBR", - "TwoLetterISORegionName": "GB" - }, - { - "DisplayName": "United States", - "Name": "US", - "ThreeLetterISORegionName": "USA", - "TwoLetterISORegionName": "US" - }, - { - "DisplayName": "Uruguay", - "Name": "UY", - "ThreeLetterISORegionName": "URY", - "TwoLetterISORegionName": "UY" - }, - { - "DisplayName": "Uzbekistan", - "Name": "UZ", - "ThreeLetterISORegionName": "UZB", - "TwoLetterISORegionName": "UZ" - }, - { - "DisplayName": "Vietnam", - "Name": "VN", - "ThreeLetterISORegionName": "VNM", - "TwoLetterISORegionName": "VN" - }, - { - "DisplayName": "Yemen", - "Name": "YE", - "ThreeLetterISORegionName": "YEM", - "TwoLetterISORegionName": "YE" - }, - { - "DisplayName": "Zimbabwe", - "Name": "ZW", - "ThreeLetterISORegionName": "ZWE", - "TwoLetterISORegionName": "ZW" - } + { + "DisplayName": "Afghanistan", + "Name": "AF", + "ThreeLetterISORegionName": "AFG", + "TwoLetterISORegionName": "AF" + }, + { + "DisplayName": "Albania", + "Name": "AL", + "ThreeLetterISORegionName": "ALB", + "TwoLetterISORegionName": "AL" + }, + { + "DisplayName": "Algeria", + "Name": "DZ", + "ThreeLetterISORegionName": "DZA", + "TwoLetterISORegionName": "DZ" + }, + { + "DisplayName": "Argentina", + "Name": "AR", + "ThreeLetterISORegionName": "ARG", + "TwoLetterISORegionName": "AR" + }, + { + "DisplayName": "Armenia", + "Name": "AM", + "ThreeLetterISORegionName": "ARM", + "TwoLetterISORegionName": "AM" + }, + { + "DisplayName": "Australia", + "Name": "AU", + "ThreeLetterISORegionName": "AUS", + "TwoLetterISORegionName": "AU" + }, + { + "DisplayName": "Austria", + "Name": "AT", + "ThreeLetterISORegionName": "AUT", + "TwoLetterISORegionName": "AT" + }, + { + "DisplayName": "Azerbaijan", + "Name": "AZ", + "ThreeLetterISORegionName": "AZE", + "TwoLetterISORegionName": "AZ" + }, + { + "DisplayName": "Bahrain", + "Name": "BH", + "ThreeLetterISORegionName": "BHR", + "TwoLetterISORegionName": "BH" + }, + { + "DisplayName": "Bangladesh", + "Name": "BD", + "ThreeLetterISORegionName": "BGD", + "TwoLetterISORegionName": "BD" + }, + { + "DisplayName": "Belarus", + "Name": "BY", + "ThreeLetterISORegionName": "BLR", + "TwoLetterISORegionName": "BY" + }, + { + "DisplayName": "Belgium", + "Name": "BE", + "ThreeLetterISORegionName": "BEL", + "TwoLetterISORegionName": "BE" + }, + { + "DisplayName": "Belize", + "Name": "BZ", + "ThreeLetterISORegionName": "BLZ", + "TwoLetterISORegionName": "BZ" + }, + { + "DisplayName": "Bolivarian Republic of Venezuela", + "Name": "VE", + "ThreeLetterISORegionName": "VEN", + "TwoLetterISORegionName": "VE" + }, + { + "DisplayName": "Bolivia", + "Name": "BO", + "ThreeLetterISORegionName": "BOL", + "TwoLetterISORegionName": "BO" + }, + { + "DisplayName": "Bosnia and Herzegovina", + "Name": "BA", + "ThreeLetterISORegionName": "BIH", + "TwoLetterISORegionName": "BA" + }, + { + "DisplayName": "Botswana", + "Name": "BW", + "ThreeLetterISORegionName": "BWA", + "TwoLetterISORegionName": "BW" + }, + { + "DisplayName": "Brazil", + "Name": "BR", + "ThreeLetterISORegionName": "BRA", + "TwoLetterISORegionName": "BR" + }, + { + "DisplayName": "Brunei Darussalam", + "Name": "BN", + "ThreeLetterISORegionName": "BRN", + "TwoLetterISORegionName": "BN" + }, + { + "DisplayName": "Bulgaria", + "Name": "BG", + "ThreeLetterISORegionName": "BGR", + "TwoLetterISORegionName": "BG" + }, + { + "DisplayName": "Cambodia", + "Name": "KH", + "ThreeLetterISORegionName": "KHM", + "TwoLetterISORegionName": "KH" + }, + { + "DisplayName": "Cameroon", + "Name": "CM", + "ThreeLetterISORegionName": "CMR", + "TwoLetterISORegionName": "CM" + }, + { + "DisplayName": "Canada", + "Name": "CA", + "ThreeLetterISORegionName": "CAN", + "TwoLetterISORegionName": "CA" + }, + { + "DisplayName": "Caribbean", + "Name": "029", + "ThreeLetterISORegionName": "029", + "TwoLetterISORegionName": "029" + }, + { + "DisplayName": "Chile", + "Name": "CL", + "ThreeLetterISORegionName": "CHL", + "TwoLetterISORegionName": "CL" + }, + { + "DisplayName": "Colombia", + "Name": "CO", + "ThreeLetterISORegionName": "COL", + "TwoLetterISORegionName": "CO" + }, + { + "DisplayName": "Congo [DRC]", + "Name": "CD", + "ThreeLetterISORegionName": "COD", + "TwoLetterISORegionName": "CD" + }, + { + "DisplayName": "Costa Rica", + "Name": "CR", + "ThreeLetterISORegionName": "CRI", + "TwoLetterISORegionName": "CR" + }, + { + "DisplayName": "Croatia", + "Name": "HR", + "ThreeLetterISORegionName": "HRV", + "TwoLetterISORegionName": "HR" + }, + { + "DisplayName": "Czech Republic", + "Name": "CZ", + "ThreeLetterISORegionName": "CZE", + "TwoLetterISORegionName": "CZ" + }, + { + "DisplayName": "Denmark", + "Name": "DK", + "ThreeLetterISORegionName": "DNK", + "TwoLetterISORegionName": "DK" + }, + { + "DisplayName": "Dominican Republic", + "Name": "DO", + "ThreeLetterISORegionName": "DOM", + "TwoLetterISORegionName": "DO" + }, + { + "DisplayName": "Ecuador", + "Name": "EC", + "ThreeLetterISORegionName": "ECU", + "TwoLetterISORegionName": "EC" + }, + { + "DisplayName": "Egypt", + "Name": "EG", + "ThreeLetterISORegionName": "EGY", + "TwoLetterISORegionName": "EG" + }, + { + "DisplayName": "El Salvador", + "Name": "SV", + "ThreeLetterISORegionName": "SLV", + "TwoLetterISORegionName": "SV" + }, + { + "DisplayName": "Eritrea", + "Name": "ER", + "ThreeLetterISORegionName": "ERI", + "TwoLetterISORegionName": "ER" + }, + { + "DisplayName": "Estonia", + "Name": "EE", + "ThreeLetterISORegionName": "EST", + "TwoLetterISORegionName": "EE" + }, + { + "DisplayName": "Ethiopia", + "Name": "ET", + "ThreeLetterISORegionName": "ETH", + "TwoLetterISORegionName": "ET" + }, + { + "DisplayName": "Faroe Islands", + "Name": "FO", + "ThreeLetterISORegionName": "FRO", + "TwoLetterISORegionName": "FO" + }, + { + "DisplayName": "Finland", + "Name": "FI", + "ThreeLetterISORegionName": "FIN", + "TwoLetterISORegionName": "FI" + }, + { + "DisplayName": "France", + "Name": "FR", + "ThreeLetterISORegionName": "FRA", + "TwoLetterISORegionName": "FR" + }, + { + "DisplayName": "Georgia", + "Name": "GE", + "ThreeLetterISORegionName": "GEO", + "TwoLetterISORegionName": "GE" + }, + { + "DisplayName": "Germany", + "Name": "DE", + "ThreeLetterISORegionName": "DEU", + "TwoLetterISORegionName": "DE" + }, + { + "DisplayName": "Greece", + "Name": "GR", + "ThreeLetterISORegionName": "GRC", + "TwoLetterISORegionName": "GR" + }, + { + "DisplayName": "Greenland", + "Name": "GL", + "ThreeLetterISORegionName": "GRL", + "TwoLetterISORegionName": "GL" + }, + { + "DisplayName": "Guatemala", + "Name": "GT", + "ThreeLetterISORegionName": "GTM", + "TwoLetterISORegionName": "GT" + }, + { + "DisplayName": "Haiti", + "Name": "HT", + "ThreeLetterISORegionName": "HTI", + "TwoLetterISORegionName": "HT" + }, + { + "DisplayName": "Honduras", + "Name": "HN", + "ThreeLetterISORegionName": "HND", + "TwoLetterISORegionName": "HN" + }, + { + "DisplayName": "Hong Kong S.A.R.", + "Name": "HK", + "ThreeLetterISORegionName": "HKG", + "TwoLetterISORegionName": "HK" + }, + { + "DisplayName": "Hungary", + "Name": "HU", + "ThreeLetterISORegionName": "HUN", + "TwoLetterISORegionName": "HU" + }, + { + "DisplayName": "Iceland", + "Name": "IS", + "ThreeLetterISORegionName": "ISL", + "TwoLetterISORegionName": "IS" + }, + { + "DisplayName": "India", + "Name": "IN", + "ThreeLetterISORegionName": "IND", + "TwoLetterISORegionName": "IN" + }, + { + "DisplayName": "Indonesia", + "Name": "ID", + "ThreeLetterISORegionName": "IDN", + "TwoLetterISORegionName": "ID" + }, + { + "DisplayName": "Iran", + "Name": "IR", + "ThreeLetterISORegionName": "IRN", + "TwoLetterISORegionName": "IR" + }, + { + "DisplayName": "Iraq", + "Name": "IQ", + "ThreeLetterISORegionName": "IRQ", + "TwoLetterISORegionName": "IQ" + }, + { + "DisplayName": "Ireland", + "Name": "IE", + "ThreeLetterISORegionName": "IRL", + "TwoLetterISORegionName": "IE" + }, + { + "DisplayName": "Islamic Republic of Pakistan", + "Name": "PK", + "ThreeLetterISORegionName": "PAK", + "TwoLetterISORegionName": "PK" + }, + { + "DisplayName": "Israel", + "Name": "IL", + "ThreeLetterISORegionName": "ISR", + "TwoLetterISORegionName": "IL" + }, + { + "DisplayName": "Italy", + "Name": "IT", + "ThreeLetterISORegionName": "ITA", + "TwoLetterISORegionName": "IT" + }, + { + "DisplayName": "Ivory Coast", + "Name": "CI", + "ThreeLetterISORegionName": "CIV", + "TwoLetterISORegionName": "CI" + }, + { + "DisplayName": "Jamaica", + "Name": "JM", + "ThreeLetterISORegionName": "JAM", + "TwoLetterISORegionName": "JM" + }, + { + "DisplayName": "Japan", + "Name": "JP", + "ThreeLetterISORegionName": "JPN", + "TwoLetterISORegionName": "JP" + }, + { + "DisplayName": "Jordan", + "Name": "JO", + "ThreeLetterISORegionName": "JOR", + "TwoLetterISORegionName": "JO" + }, + { + "DisplayName": "Kazakhstan", + "Name": "KZ", + "ThreeLetterISORegionName": "KAZ", + "TwoLetterISORegionName": "KZ" + }, + { + "DisplayName": "Kenya", + "Name": "KE", + "ThreeLetterISORegionName": "KEN", + "TwoLetterISORegionName": "KE" + }, + { + "DisplayName": "Korea", + "Name": "KR", + "ThreeLetterISORegionName": "KOR", + "TwoLetterISORegionName": "KR" + }, + { + "DisplayName": "Kuwait", + "Name": "KW", + "ThreeLetterISORegionName": "KWT", + "TwoLetterISORegionName": "KW" + }, + { + "DisplayName": "Kyrgyzstan", + "Name": "KG", + "ThreeLetterISORegionName": "KGZ", + "TwoLetterISORegionName": "KG" + }, + { + "DisplayName": "Lao P.D.R.", + "Name": "LA", + "ThreeLetterISORegionName": "LAO", + "TwoLetterISORegionName": "LA" + }, + { + "DisplayName": "Latin America", + "Name": "419", + "ThreeLetterISORegionName": "419", + "TwoLetterISORegionName": "419" + }, + { + "DisplayName": "Latvia", + "Name": "LV", + "ThreeLetterISORegionName": "LVA", + "TwoLetterISORegionName": "LV" + }, + { + "DisplayName": "Lebanon", + "Name": "LB", + "ThreeLetterISORegionName": "LBN", + "TwoLetterISORegionName": "LB" + }, + { + "DisplayName": "Libya", + "Name": "LY", + "ThreeLetterISORegionName": "LBY", + "TwoLetterISORegionName": "LY" + }, + { + "DisplayName": "Liechtenstein", + "Name": "LI", + "ThreeLetterISORegionName": "LIE", + "TwoLetterISORegionName": "LI" + }, + { + "DisplayName": "Lithuania", + "Name": "LT", + "ThreeLetterISORegionName": "LTU", + "TwoLetterISORegionName": "LT" + }, + { + "DisplayName": "Luxembourg", + "Name": "LU", + "ThreeLetterISORegionName": "LUX", + "TwoLetterISORegionName": "LU" + }, + { + "DisplayName": "Macao S.A.R.", + "Name": "MO", + "ThreeLetterISORegionName": "MAC", + "TwoLetterISORegionName": "MO" + }, + { + "DisplayName": "Macedonia (FYROM)", + "Name": "MK", + "ThreeLetterISORegionName": "MKD", + "TwoLetterISORegionName": "MK" + }, + { + "DisplayName": "Malaysia", + "Name": "MY", + "ThreeLetterISORegionName": "MYS", + "TwoLetterISORegionName": "MY" + }, + { + "DisplayName": "Maldives", + "Name": "MV", + "ThreeLetterISORegionName": "MDV", + "TwoLetterISORegionName": "MV" + }, + { + "DisplayName": "Mali", + "Name": "ML", + "ThreeLetterISORegionName": "MLI", + "TwoLetterISORegionName": "ML" + }, + { + "DisplayName": "Malta", + "Name": "MT", + "ThreeLetterISORegionName": "MLT", + "TwoLetterISORegionName": "MT" + }, + { + "DisplayName": "Mexico", + "Name": "MX", + "ThreeLetterISORegionName": "MEX", + "TwoLetterISORegionName": "MX" + }, + { + "DisplayName": "Mongolia", + "Name": "MN", + "ThreeLetterISORegionName": "MNG", + "TwoLetterISORegionName": "MN" + }, + { + "DisplayName": "Montenegro", + "Name": "ME", + "ThreeLetterISORegionName": "MNE", + "TwoLetterISORegionName": "ME" + }, + { + "DisplayName": "Morocco", + "Name": "MA", + "ThreeLetterISORegionName": "MAR", + "TwoLetterISORegionName": "MA" + }, + { + "DisplayName": "Nepal", + "Name": "NP", + "ThreeLetterISORegionName": "NPL", + "TwoLetterISORegionName": "NP" + }, + { + "DisplayName": "Netherlands", + "Name": "NL", + "ThreeLetterISORegionName": "NLD", + "TwoLetterISORegionName": "NL" + }, + { + "DisplayName": "New Zealand", + "Name": "NZ", + "ThreeLetterISORegionName": "NZL", + "TwoLetterISORegionName": "NZ" + }, + { + "DisplayName": "Nicaragua", + "Name": "NI", + "ThreeLetterISORegionName": "NIC", + "TwoLetterISORegionName": "NI" + }, + { + "DisplayName": "Nigeria", + "Name": "NG", + "ThreeLetterISORegionName": "NGA", + "TwoLetterISORegionName": "NG" + }, + { + "DisplayName": "Norway", + "Name": "NO", + "ThreeLetterISORegionName": "NOR", + "TwoLetterISORegionName": "NO" + }, + { + "DisplayName": "Oman", + "Name": "OM", + "ThreeLetterISORegionName": "OMN", + "TwoLetterISORegionName": "OM" + }, + { + "DisplayName": "Panama", + "Name": "PA", + "ThreeLetterISORegionName": "PAN", + "TwoLetterISORegionName": "PA" + }, + { + "DisplayName": "Paraguay", + "Name": "PY", + "ThreeLetterISORegionName": "PRY", + "TwoLetterISORegionName": "PY" + }, + { + "DisplayName": "People's Republic of China", + "Name": "CN", + "ThreeLetterISORegionName": "CHN", + "TwoLetterISORegionName": "CN" + }, + { + "DisplayName": "Peru", + "Name": "PE", + "ThreeLetterISORegionName": "PER", + "TwoLetterISORegionName": "PE" + }, + { + "DisplayName": "Philippines", + "Name": "PH", + "ThreeLetterISORegionName": "PHL", + "TwoLetterISORegionName": "PH" + }, + { + "DisplayName": "Poland", + "Name": "PL", + "ThreeLetterISORegionName": "POL", + "TwoLetterISORegionName": "PL" + }, + { + "DisplayName": "Portugal", + "Name": "PT", + "ThreeLetterISORegionName": "PRT", + "TwoLetterISORegionName": "PT" + }, + { + "DisplayName": "Principality of Monaco", + "Name": "MC", + "ThreeLetterISORegionName": "MCO", + "TwoLetterISORegionName": "MC" + }, + { + "DisplayName": "Puerto Rico", + "Name": "PR", + "ThreeLetterISORegionName": "PRI", + "TwoLetterISORegionName": "PR" + }, + { + "DisplayName": "Qatar", + "Name": "QA", + "ThreeLetterISORegionName": "QAT", + "TwoLetterISORegionName": "QA" + }, + { + "DisplayName": "Republica Moldova", + "Name": "MD", + "ThreeLetterISORegionName": "MDA", + "TwoLetterISORegionName": "MD" + }, + { + "DisplayName": "Réunion", + "Name": "RE", + "ThreeLetterISORegionName": "REU", + "TwoLetterISORegionName": "RE" + }, + { + "DisplayName": "Romania", + "Name": "RO", + "ThreeLetterISORegionName": "ROU", + "TwoLetterISORegionName": "RO" + }, + { + "DisplayName": "Russia", + "Name": "RU", + "ThreeLetterISORegionName": "RUS", + "TwoLetterISORegionName": "RU" + }, + { + "DisplayName": "Rwanda", + "Name": "RW", + "ThreeLetterISORegionName": "RWA", + "TwoLetterISORegionName": "RW" + }, + { + "DisplayName": "Saudi Arabia", + "Name": "SA", + "ThreeLetterISORegionName": "SAU", + "TwoLetterISORegionName": "SA" + }, + { + "DisplayName": "Senegal", + "Name": "SN", + "ThreeLetterISORegionName": "SEN", + "TwoLetterISORegionName": "SN" + }, + { + "DisplayName": "Serbia", + "Name": "RS", + "ThreeLetterISORegionName": "SRB", + "TwoLetterISORegionName": "RS" + }, + { + "DisplayName": "Serbia and Montenegro (Former)", + "Name": "CS", + "ThreeLetterISORegionName": "SCG", + "TwoLetterISORegionName": "CS" + }, + { + "DisplayName": "Singapore", + "Name": "SG", + "ThreeLetterISORegionName": "SGP", + "TwoLetterISORegionName": "SG" + }, + { + "DisplayName": "Slovakia", + "Name": "SK", + "ThreeLetterISORegionName": "SVK", + "TwoLetterISORegionName": "SK" + }, + { + "DisplayName": "Slovenia", + "Name": "SI", + "ThreeLetterISORegionName": "SVN", + "TwoLetterISORegionName": "SI" + }, + { + "DisplayName": "Soomaaliya", + "Name": "SO", + "ThreeLetterISORegionName": "SOM", + "TwoLetterISORegionName": "SO" + }, + { + "DisplayName": "South Africa", + "Name": "ZA", + "ThreeLetterISORegionName": "ZAF", + "TwoLetterISORegionName": "ZA" + }, + { + "DisplayName": "Spain", + "Name": "ES", + "ThreeLetterISORegionName": "ESP", + "TwoLetterISORegionName": "ES" + }, + { + "DisplayName": "Sri Lanka", + "Name": "LK", + "ThreeLetterISORegionName": "LKA", + "TwoLetterISORegionName": "LK" + }, + { + "DisplayName": "Sweden", + "Name": "SE", + "ThreeLetterISORegionName": "SWE", + "TwoLetterISORegionName": "SE" + }, + { + "DisplayName": "Switzerland", + "Name": "CH", + "ThreeLetterISORegionName": "CHE", + "TwoLetterISORegionName": "CH" + }, + { + "DisplayName": "Syria", + "Name": "SY", + "ThreeLetterISORegionName": "SYR", + "TwoLetterISORegionName": "SY" + }, + { + "DisplayName": "Taiwan", + "Name": "TW", + "ThreeLetterISORegionName": "TWN", + "TwoLetterISORegionName": "TW" + }, + { + "DisplayName": "Tajikistan", + "Name": "TJ", + "ThreeLetterISORegionName": "TAJ", + "TwoLetterISORegionName": "TJ" + }, + { + "DisplayName": "Thailand", + "Name": "TH", + "ThreeLetterISORegionName": "THA", + "TwoLetterISORegionName": "TH" + }, + { + "DisplayName": "Trinidad and Tobago", + "Name": "TT", + "ThreeLetterISORegionName": "TTO", + "TwoLetterISORegionName": "TT" + }, + { + "DisplayName": "Tunisia", + "Name": "TN", + "ThreeLetterISORegionName": "TUN", + "TwoLetterISORegionName": "TN" + }, + { + "DisplayName": "Turkey", + "Name": "TR", + "ThreeLetterISORegionName": "TUR", + "TwoLetterISORegionName": "TR" + }, + { + "DisplayName": "Turkmenistan", + "Name": "TM", + "ThreeLetterISORegionName": "TKM", + "TwoLetterISORegionName": "TM" + }, + { + "DisplayName": "U.A.E.", + "Name": "AE", + "ThreeLetterISORegionName": "ARE", + "TwoLetterISORegionName": "AE" + }, + { + "DisplayName": "Ukraine", + "Name": "UA", + "ThreeLetterISORegionName": "UKR", + "TwoLetterISORegionName": "UA" + }, + { + "DisplayName": "United Kingdom", + "Name": "GB", + "ThreeLetterISORegionName": "GBR", + "TwoLetterISORegionName": "GB" + }, + { + "DisplayName": "United States", + "Name": "US", + "ThreeLetterISORegionName": "USA", + "TwoLetterISORegionName": "US" + }, + { + "DisplayName": "Uruguay", + "Name": "UY", + "ThreeLetterISORegionName": "URY", + "TwoLetterISORegionName": "UY" + }, + { + "DisplayName": "Uzbekistan", + "Name": "UZ", + "ThreeLetterISORegionName": "UZB", + "TwoLetterISORegionName": "UZ" + }, + { + "DisplayName": "Vietnam", + "Name": "VN", + "ThreeLetterISORegionName": "VNM", + "TwoLetterISORegionName": "VN" + }, + { + "DisplayName": "Yemen", + "Name": "YE", + "ThreeLetterISORegionName": "YEM", + "TwoLetterISORegionName": "YE" + }, + { + "DisplayName": "Zimbabwe", + "Name": "ZW", + "ThreeLetterISORegionName": "ZWE", + "TwoLetterISORegionName": "ZW" + } ] diff --git a/Emby.Server.Implementations/Localization/iso6392.txt b/Emby.Server.Implementations/Localization/iso6392.txt index a7e7cfc20..f2cea78b6 100644 --- a/Emby.Server.Implementations/Localization/iso6392.txt +++ b/Emby.Server.Implementations/Localization/iso6392.txt @@ -1,4 +1,4 @@ -aar||aa|Afar|afar +aar||aa|Afar|afar abk||ab|Abkhazian|abkhaze ace|||Achinese|aceh ach|||Acoli|acoli @@ -485,4 +485,4 @@ znd|||Zande languages|zandé, langues zul||zu|Zulu|zoulou zun|||Zuni|zuni zxx|||No linguistic content; Not applicable|pas de contenu linguistique; non applicable -zza|||Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki|zaza; dimili; dimli; kirdki; kirmanjki; zazaki
\ No newline at end of file +zza|||Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki|zaza; dimili; dimli; kirdki; kirmanjki; zazaki diff --git a/Emby.Server.Implementations/MediaEncoder/EncodingManager.cs b/Emby.Server.Implementations/MediaEncoder/EncodingManager.cs index 2db7b01db..316c2c2a3 100644 --- a/Emby.Server.Implementations/MediaEncoder/EncodingManager.cs +++ b/Emby.Server.Implementations/MediaEncoder/EncodingManager.cs @@ -1,11 +1,3 @@ -using MediaBrowser.Controller.Chapters; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.MediaInfo; using System; using System.Collections.Generic; using System.Globalization; @@ -13,11 +5,15 @@ using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; +using MediaBrowser.Controller.Chapters; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.MediaInfo; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.MediaEncoder { diff --git a/Emby.Server.Implementations/Net/DisposableManagedObjectBase.cs b/Emby.Server.Implementations/Net/DisposableManagedObjectBase.cs index 9d880b0c9..304b44565 100644 --- a/Emby.Server.Implementations/Net/DisposableManagedObjectBase.cs +++ b/Emby.Server.Implementations/Net/DisposableManagedObjectBase.cs @@ -19,10 +19,10 @@ namespace Emby.Server.Implementations.Net //TODO Remove and reimplement using the IsDisposed property directly. /// <summary> - /// Throws an <see cref="System.ObjectDisposedException"/> if the <see cref="IsDisposed"/> property is true. + /// Throws an <see cref="ObjectDisposedException"/> if the <see cref="IsDisposed"/> property is true. /// </summary> /// <seealso cref="IsDisposed"/> - /// <exception cref="System.ObjectDisposedException">Thrown if the <see cref="IsDisposed"/> property is true.</exception> + /// <exception cref="ObjectDisposedException">Thrown if the <see cref="IsDisposed"/> property is true.</exception> /// <seealso cref="Dispose()"/> protected virtual void ThrowIfDisposed() { diff --git a/Emby.Server.Implementations/Net/IWebSocket.cs b/Emby.Server.Implementations/Net/IWebSocket.cs index f79199a07..4671de07c 100644 --- a/Emby.Server.Implementations/Net/IWebSocket.cs +++ b/Emby.Server.Implementations/Net/IWebSocket.cs @@ -1,7 +1,7 @@ -using System; +using System; +using System.Net.WebSockets; using System.Threading; using System.Threading.Tasks; -using System.Net.WebSockets; namespace Emby.Server.Implementations.Net { diff --git a/Emby.Server.Implementations/Net/SocketFactory.cs b/Emby.Server.Implementations/Net/SocketFactory.cs index 51d08bd6f..2e22fbbb8 100644 --- a/Emby.Server.Implementations/Net/SocketFactory.cs +++ b/Emby.Server.Implementations/Net/SocketFactory.cs @@ -1,10 +1,10 @@ -using System; +using System; using System.IO; using System.Net; using System.Net.Sockets; using Emby.Server.Implementations.Networking; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Net; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Net { diff --git a/Emby.Server.Implementations/Net/UdpSocket.cs b/Emby.Server.Implementations/Net/UdpSocket.cs index 39f25e024..d48855486 100644 --- a/Emby.Server.Implementations/Net/UdpSocket.cs +++ b/Emby.Server.Implementations/Net/UdpSocket.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Net; using System.Net.Sockets; using System.Threading; @@ -133,8 +133,8 @@ namespace Emby.Server.Implementations.Net { ThrowIfDisposed(); - IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0); - EndPoint remoteEndPoint = (EndPoint)sender; + var sender = new IPEndPoint(IPAddress.Any, 0); + var remoteEndPoint = (EndPoint)sender; var receivedBytes = _Socket.EndReceiveFrom(result, ref remoteEndPoint); diff --git a/Emby.Server.Implementations/Net/WebSocketConnectEventArgs.cs b/Emby.Server.Implementations/Net/WebSocketConnectEventArgs.cs index 7b7f12d50..3ab8e854a 100644 --- a/Emby.Server.Implementations/Net/WebSocketConnectEventArgs.cs +++ b/Emby.Server.Implementations/Net/WebSocketConnectEventArgs.cs @@ -1,6 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Text; +using System; using MediaBrowser.Model.Services; namespace Emby.Server.Implementations.Net diff --git a/Emby.Server.Implementations/Networking/IPNetwork/BigIntegerExt.cs b/Emby.Server.Implementations/Networking/IPNetwork/BigIntegerExt.cs index 4da9c08d0..447cbf403 100644 --- a/Emby.Server.Implementations/Networking/IPNetwork/BigIntegerExt.cs +++ b/Emby.Server.Implementations/Networking/IPNetwork/BigIntegerExt.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace System.Net { @@ -7,7 +7,7 @@ namespace System.Net using System.Text; /// <summary> - /// Extension methods to convert <see cref="System.Numerics.BigInteger"/> + /// Extension methods to convert <see cref="BigInteger"/> /// instances to hexadecimal, octal, and binary strings. /// </summary> public static class BigIntegerExtensions @@ -17,7 +17,7 @@ namespace System.Net /// </summary> /// <param name="bigint">A <see cref="BigInteger"/>.</param> /// <returns> - /// A <see cref="System.String"/> containing a binary + /// A <see cref="string"/> containing a binary /// representation of the supplied <see cref="BigInteger"/>. /// </returns> public static string ToBinaryString(this BigInteger bigint) @@ -54,7 +54,7 @@ namespace System.Net /// </summary> /// <param name="bigint">A <see cref="BigInteger"/>.</param> /// <returns> - /// A <see cref="System.String"/> containing a hexadecimal + /// A <see cref="string"/> containing a hexadecimal /// representation of the supplied <see cref="BigInteger"/>. /// </returns> public static string ToHexadecimalString(this BigInteger bigint) @@ -67,7 +67,7 @@ namespace System.Net /// </summary> /// <param name="bigint">A <see cref="BigInteger"/>.</param> /// <returns> - /// A <see cref="System.String"/> containing an octal + /// A <see cref="string"/> containing an octal /// representation of the supplied <see cref="BigInteger"/>. /// </returns> public static string ToOctalString(this BigInteger bigint) @@ -165,4 +165,4 @@ namespace System.Net } } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/Networking/IPNetwork/IPAddressCollection.cs b/Emby.Server.Implementations/Networking/IPNetwork/IPAddressCollection.cs index 7fe6a8d3d..c5853135c 100644 --- a/Emby.Server.Implementations/Networking/IPNetwork/IPAddressCollection.cs +++ b/Emby.Server.Implementations/Networking/IPNetwork/IPAddressCollection.cs @@ -1,4 +1,4 @@ -using System.Collections; +using System.Collections; using System.Collections.Generic; using System.Numerics; @@ -30,7 +30,7 @@ namespace System.Net throw new ArgumentOutOfRangeException(nameof(i)); } byte width = this._ipnetwork.AddressFamily == Sockets.AddressFamily.InterNetwork ? (byte)32 : (byte)128; - IPNetworkCollection ipn = this._ipnetwork.Subnet(width); + var ipn = this._ipnetwork.Subnet(width); return ipn[i].Network; } } @@ -89,4 +89,4 @@ namespace System.Net #endregion } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/Networking/IPNetwork/IPNetwork.cs b/Emby.Server.Implementations/Networking/IPNetwork/IPNetwork.cs index 9a0020de7..16f39daf7 100644 --- a/Emby.Server.Implementations/Networking/IPNetwork/IPNetwork.cs +++ b/Emby.Server.Implementations/Networking/IPNetwork/IPNetwork.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.IO; using System.Net.Sockets; using System.Numerics; @@ -33,7 +33,7 @@ namespace System.Net { get { - BigInteger uintNetwork = this._ipaddress & this._netmask; + var uintNetwork = this._ipaddress & this._netmask; return uintNetwork; } } @@ -61,7 +61,7 @@ namespace System.Net { int width = this._family == Sockets.AddressFamily.InterNetwork ? 4 : 16; - BigInteger uintBroadcast = this._network + this._netmask.PositiveReverse(width); + var uintBroadcast = this._network + this._netmask.PositiveReverse(width); return uintBroadcast; } } @@ -88,7 +88,7 @@ namespace System.Net { get { - BigInteger fisrt = this._family == Sockets.AddressFamily.InterNetworkV6 + var fisrt = this._family == Sockets.AddressFamily.InterNetworkV6 ? this._network : (this.Usable <= 0) ? this._network : this._network + 1; return IPNetwork.ToIPAddress(fisrt, this._family); @@ -102,7 +102,7 @@ namespace System.Net { get { - BigInteger last = this._family == Sockets.AddressFamily.InterNetworkV6 + var last = this._family == Sockets.AddressFamily.InterNetworkV6 ? this._broadcast : (this.Usable <= 0) ? this._network : this._broadcast - 1; return IPNetwork.ToIPAddress(last, this._family); @@ -122,8 +122,8 @@ namespace System.Net return this.Total; } byte[] mask = new byte[] { 0xff, 0xff, 0xff, 0xff, 0x00 }; - BigInteger bmask = new BigInteger(mask); - BigInteger usableIps = (_cidr > 30) ? 0 : ((bmask >> _cidr) - 1); + var bmask = new BigInteger(mask); + var usableIps = (_cidr > 30) ? 0 : ((bmask >> _cidr) - 1); return usableIps; } } @@ -137,7 +137,7 @@ namespace System.Net { int max = this._family == Sockets.AddressFamily.InterNetwork ? 32 : 128; - BigInteger count = BigInteger.Pow(2, (max - _cidr)); + var count = BigInteger.Pow(2, (max - _cidr)); return count; } } @@ -523,9 +523,8 @@ namespace System.Net return; } - BigInteger uintIpAddress = IPNetwork.ToBigInteger(ipaddress); - byte? cidr2 = null; - bool parsed = IPNetwork.TryToCidr(netmask, out cidr2); + var uintIpAddress = IPNetwork.ToBigInteger(ipaddress); + bool parsed = IPNetwork.TryToCidr(netmask, out var cidr2); if (parsed == false) { if (tryParse == false) @@ -537,7 +536,7 @@ namespace System.Net } byte cidr = (byte)cidr2; - IPNetwork ipnet = new IPNetwork(uintIpAddress, ipaddress.AddressFamily, cidr); + var ipnet = new IPNetwork(uintIpAddress, ipaddress.AddressFamily, cidr); ipnetwork = ipnet; return; @@ -615,8 +614,7 @@ namespace System.Net /// <returns></returns> public static BigInteger ToBigInteger(IPAddress ipaddress) { - BigInteger? uintIpAddress = null; - IPNetwork.InternalToBigInteger(false, ipaddress, out uintIpAddress); + IPNetwork.InternalToBigInteger(false, ipaddress, out var uintIpAddress); return (BigInteger)uintIpAddress; } @@ -630,8 +628,7 @@ namespace System.Net /// <returns></returns> public static bool TryToBigInteger(IPAddress ipaddress, out BigInteger? uintIpAddress) { - BigInteger? uintIpAddress2 = null; - IPNetwork.InternalToBigInteger(true, ipaddress, out uintIpAddress2); + IPNetwork.InternalToBigInteger(true, ipaddress, out var uintIpAddress2); bool parsed = (uintIpAddress2 != null); uintIpAddress = uintIpAddress2; return parsed; @@ -681,9 +678,7 @@ namespace System.Net /// <returns></returns> public static BigInteger ToUint(byte cidr, AddressFamily family) { - - BigInteger? uintNetmask = null; - IPNetwork.InternalToBigInteger(false, cidr, family, out uintNetmask); + IPNetwork.InternalToBigInteger(false, cidr, family, out var uintNetmask); return (BigInteger)uintNetmask; } @@ -695,9 +690,7 @@ namespace System.Net /// <returns></returns> public static bool TryToUint(byte cidr, AddressFamily family, out BigInteger? uintNetmask) { - - BigInteger? uintNetmask2 = null; - IPNetwork.InternalToBigInteger(true, cidr, family, out uintNetmask2); + IPNetwork.InternalToBigInteger(true, cidr, family, out var uintNetmask2); bool parsed = (uintNetmask2 != null); uintNetmask = uintNetmask2; return parsed; @@ -754,7 +747,7 @@ namespace System.Net return; } - BigInteger mask = new BigInteger(new byte[] { + var mask = new BigInteger(new byte[] { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, @@ -762,7 +755,7 @@ namespace System.Net 0x00 }); - BigInteger masked = cidr == 0 ? 0 : mask << (128 - cidr); + var masked = cidr == 0 ? 0 : mask << (128 - cidr); byte[] m = masked.ToByteArray(); byte[] bmask = new byte[17]; int copy = m.Length > 16 ? 16 : m.Length; @@ -812,8 +805,7 @@ namespace System.Net /// <returns></returns> public static byte ToCidr(IPAddress netmask) { - byte? cidr = null; - IPNetwork.InternalToCidr(false, netmask, out cidr); + IPNetwork.InternalToCidr(false, netmask, out var cidr); return (byte)cidr; } @@ -827,8 +819,7 @@ namespace System.Net /// <returns></returns> public static bool TryToCidr(IPAddress netmask, out byte? cidr) { - byte? cidr2 = null; - IPNetwork.InternalToCidr(true, netmask, out cidr2); + IPNetwork.InternalToCidr(true, netmask, out var cidr2); bool parsed = (cidr2 != null); cidr = cidr2; return parsed; @@ -846,8 +837,8 @@ namespace System.Net cidr = null; return; } - BigInteger? uintNetmask2 = null; - bool parsed = IPNetwork.TryToBigInteger(netmask, out uintNetmask2); + + bool parsed = IPNetwork.TryToBigInteger(netmask, out var uintNetmask2); /// 20180217 lduchosal /// impossible to reach code. @@ -858,10 +849,9 @@ namespace System.Net /// cidr = null; /// return; /// } - BigInteger uintNetmask = (BigInteger)uintNetmask2; + var uintNetmask = (BigInteger)uintNetmask2; - byte? cidr2 = null; - IPNetwork.InternalToCidr(tryParse, uintNetmask, netmask.AddressFamily, out cidr2); + IPNetwork.InternalToCidr(tryParse, uintNetmask, netmask.AddressFamily, out var cidr2); cidr = cidr2; return; @@ -951,8 +941,8 @@ namespace System.Net return; } - BigInteger mask = IPNetwork.ToUint(cidr, family); - IPAddress netmask2 = IPNetwork.ToIPAddress(mask, family); + var mask = IPNetwork.ToUint(cidr, family); + var netmask2 = IPNetwork.ToIPAddress(mask, family); netmask = netmask2; return; @@ -990,7 +980,7 @@ namespace System.Net /// <returns></returns> public static uint BitsSet(IPAddress netmask) { - BigInteger uintNetmask = IPNetwork.ToBigInteger(netmask); + var uintNetmask = IPNetwork.ToBigInteger(netmask); uint bits = IPNetwork.BitsSet(uintNetmask, netmask.AddressFamily); return bits; } @@ -1013,7 +1003,7 @@ namespace System.Net { throw new ArgumentNullException(nameof(netmask)); } - BigInteger uintNetmask = IPNetwork.ToBigInteger(netmask); + var uintNetmask = IPNetwork.ToBigInteger(netmask); bool valid = IPNetwork.InternalValidNetmask(uintNetmask, netmask.AddressFamily); return valid; } @@ -1042,7 +1032,7 @@ namespace System.Net 0x00 }); - BigInteger neg = ((~netmask) & (mask)); + var neg = ((~netmask) & (mask)); bool isNetmask = ((neg + 1) & neg) == 0; return isNetmask; @@ -1068,7 +1058,7 @@ namespace System.Net Array.Reverse(bytes2); byte[] sized = Resize(bytes2, family); - IPAddress ip = new IPAddress(sized); + var ip = new IPAddress(sized); return ip; } @@ -1122,9 +1112,9 @@ namespace System.Net return false; } - BigInteger uintNetwork = _network; - BigInteger uintBroadcast = _broadcast; - BigInteger uintAddress = IPNetwork.ToBigInteger(ipaddress); + var uintNetwork = _network; + var uintBroadcast = _broadcast; + var uintAddress = IPNetwork.ToBigInteger(ipaddress); bool contains = (uintAddress >= uintNetwork && uintAddress <= uintBroadcast); @@ -1146,11 +1136,11 @@ namespace System.Net throw new ArgumentNullException(nameof(network2)); } - BigInteger uintNetwork = _network; - BigInteger uintBroadcast = _broadcast; + var uintNetwork = _network; + var uintBroadcast = _broadcast; - BigInteger uintFirst = network2._network; - BigInteger uintLast = network2._broadcast; + var uintFirst = network2._network; + var uintLast = network2._broadcast; bool contains = (uintFirst >= uintNetwork && uintLast <= uintBroadcast); @@ -1175,11 +1165,11 @@ namespace System.Net throw new ArgumentNullException(nameof(network2)); } - BigInteger uintNetwork = _network; - BigInteger uintBroadcast = _broadcast; + var uintNetwork = _network; + var uintBroadcast = _broadcast; - BigInteger uintFirst = network2._network; - BigInteger uintLast = network2._broadcast; + var uintFirst = network2._network; + var uintLast = network2._broadcast; bool overlap = (uintFirst >= uintNetwork && uintFirst <= uintBroadcast) @@ -1428,8 +1418,8 @@ namespace System.Net return; } - IPNetwork first = (network1._network < network2._network) ? network1 : network2; - IPNetwork last = (network1._network > network2._network) ? network1 : network2; + var first = (network1._network < network2._network) ? network1 : network2; + var last = (network1._network > network2._network) ? network1 : network2; /// Starting from here : /// network1 and network2 have the same cidr, @@ -1449,10 +1439,10 @@ namespace System.Net return; } - BigInteger uintSupernet = first._network; + var uintSupernet = first._network; byte cidrSupernet = (byte)(first._cidr - 1); - IPNetwork networkSupernet = new IPNetwork(uintSupernet, first._family, cidrSupernet); + var networkSupernet = new IPNetwork(uintSupernet, first._family, cidrSupernet); if (networkSupernet._network != first._network) { if (trySupernet == false) @@ -1491,8 +1481,7 @@ namespace System.Net /// <returns></returns> public static IPNetwork[] Supernet(IPNetwork[] ipnetworks) { - IPNetwork[] supernet; - InternalSupernet(false, ipnetworks, out supernet); + InternalSupernet(false, ipnetworks, out var supernet); return supernet; } @@ -1535,9 +1524,9 @@ namespace System.Net return true; } - List<IPNetwork> supernetted = new List<IPNetwork>(); - List<IPNetwork> ipns = IPNetwork.Array2List(ipnetworks); - Stack<IPNetwork> current = IPNetwork.List2Stack(ipns); + var supernetted = new List<IPNetwork>(); + var ipns = IPNetwork.Array2List(ipnetworks); + var current = IPNetwork.List2Stack(ipns); int previousCount = 0; int currentCount = current.Count; @@ -1547,8 +1536,8 @@ namespace System.Net supernetted.Clear(); while (current.Count > 1) { - IPNetwork ipn1 = current.Pop(); - IPNetwork ipn2 = current.Peek(); + var ipn1 = current.Pop(); + var ipn2 = current.Peek(); IPNetwork outNetwork = null; bool success = ipn1.TrySupernet(ipn2, out outNetwork); @@ -1578,7 +1567,7 @@ namespace System.Net private static Stack<IPNetwork> List2Stack(List<IPNetwork> list) { - Stack<IPNetwork> stack = new Stack<IPNetwork>(); + var stack = new Stack<IPNetwork>(); list.ForEach(new Action<IPNetwork>( delegate (IPNetwork ipn) { @@ -1590,7 +1579,7 @@ namespace System.Net private static List<IPNetwork> Array2List(IPNetwork[] array) { - List<IPNetwork> ipns = new List<IPNetwork>(); + var ipns = new List<IPNetwork>(); ipns.AddRange(array); IPNetwork.RemoveNull(ipns); ipns.Sort(new Comparison<IPNetwork>( @@ -1642,14 +1631,12 @@ namespace System.Net throw new ArgumentNullException(nameof(end)); } - IPAddress startIP; - if (!IPAddress.TryParse(start, out startIP)) + if (!IPAddress.TryParse(start, out var startIP)) { throw new ArgumentException("start"); } - IPAddress endIP; - if (!IPAddress.TryParse(end, out endIP)) + if (!IPAddress.TryParse(end, out var endIP)) { throw new ArgumentException("end"); } @@ -1659,10 +1646,10 @@ namespace System.Net throw new NotSupportedException("MixedAddressFamily"); } - IPNetwork ipnetwork = new IPNetwork(0, startIP.AddressFamily, 0); + var ipnetwork = new IPNetwork(0, startIP.AddressFamily, 0); for (byte cidr = 32; cidr >= 0; cidr--) { - IPNetwork wideSubnet = IPNetwork.Parse(start, cidr); + var wideSubnet = IPNetwork.Parse(start, cidr); if (wideSubnet.Contains(endIP)) { ipnetwork = wideSubnet; @@ -1707,8 +1694,9 @@ namespace System.Net } - IPNetwork[] nnin = Array.FindAll<IPNetwork>(ipnetworks, new Predicate<IPNetwork>( - delegate (IPNetwork ipnet) { + IPNetwork[] nnin = Array.FindAll(ipnetworks, new Predicate<IPNetwork>( + delegate (IPNetwork ipnet) + { return ipnet != null; } )); @@ -1725,19 +1713,19 @@ namespace System.Net if (nnin.Length == 1) { - IPNetwork ipn0 = nnin[0]; + var ipn0 = nnin[0]; ipnetwork = ipn0; return; } - Array.Sort<IPNetwork>(nnin); - IPNetwork nnin0 = nnin[0]; - BigInteger uintNnin0 = nnin0._ipaddress; + Array.Sort(nnin); + var nnin0 = nnin[0]; + var uintNnin0 = nnin0._ipaddress; - IPNetwork nninX = nnin[nnin.Length - 1]; - IPAddress ipaddressX = nninX.Broadcast; + var nninX = nnin[nnin.Length - 1]; + var ipaddressX = nninX.Broadcast; - AddressFamily family = ipnetworks[0]._family; + var family = ipnetworks[0]._family; foreach (var ipnx in ipnetworks) { if (ipnx._family != family) @@ -1746,10 +1734,10 @@ namespace System.Net } } - IPNetwork ipn = new IPNetwork(0, family, 0); + var ipn = new IPNetwork(0, family, 0); for (byte cidr = nnin0._cidr; cidr >= 0; cidr--) { - IPNetwork wideSubnet = new IPNetwork(uintNnin0, family, cidr); + var wideSubnet = new IPNetwork(uintNnin0, family, cidr); if (wideSubnet.Contains(ipaddressX)) { ipn = wideSubnet; @@ -1772,7 +1760,7 @@ namespace System.Net public string Print() { - StringWriter sw = new StringWriter(); + var sw = new StringWriter(); sw.WriteLine("IPNetwork : {0}", ToString()); sw.WriteLine("Network : {0}", Network); @@ -1818,7 +1806,7 @@ namespace System.Net cidr = 64; return true; } - BigInteger uintIPAddress = IPNetwork.ToBigInteger(ipaddress); + var uintIPAddress = IPNetwork.ToBigInteger(ipaddress); uintIPAddress = uintIPAddress >> 29; if (uintIPAddress <= 3) { diff --git a/Emby.Server.Implementations/Networking/IPNetwork/IPNetworkCollection.cs b/Emby.Server.Implementations/Networking/IPNetwork/IPNetworkCollection.cs index 48d404124..7d3106624 100644 --- a/Emby.Server.Implementations/Networking/IPNetwork/IPNetworkCollection.cs +++ b/Emby.Server.Implementations/Networking/IPNetwork/IPNetworkCollection.cs @@ -1,4 +1,4 @@ -using System.Collections; +using System.Collections; using System.Collections.Generic; using System.Numerics; @@ -47,7 +47,7 @@ namespace System.Net { get { - BigInteger count = BigInteger.Pow(2, this._cidrSubnet - this._cidr); + var count = BigInteger.Pow(2, this._cidrSubnet - this._cidr); return count; } } @@ -61,11 +61,11 @@ namespace System.Net throw new ArgumentOutOfRangeException(nameof(i)); } - BigInteger last = this._ipnetwork.AddressFamily == Sockets.AddressFamily.InterNetworkV6 + var last = this._ipnetwork.AddressFamily == Sockets.AddressFamily.InterNetworkV6 ? this._lastUsable : this._broadcast; - BigInteger increment = (last - this._network) / this.Count; - BigInteger uintNetwork = this._network + ((increment + 1) * i); - IPNetwork ipn = new IPNetwork(uintNetwork, this._ipnetwork.AddressFamily, this._cidrSubnet); + var increment = (last - this._network) / this.Count; + var uintNetwork = this._network + ((increment + 1) * i); + var ipn = new IPNetwork(uintNetwork, this._ipnetwork.AddressFamily, this._cidrSubnet); return ipn; } } @@ -125,4 +125,4 @@ namespace System.Net #endregion } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/Networking/NetworkManager.cs b/Emby.Server.Implementations/Networking/NetworkManager.cs index dbf89d7e1..b486c0ef7 100644 --- a/Emby.Server.Implementations/Networking/NetworkManager.cs +++ b/Emby.Server.Implementations/Networking/NetworkManager.cs @@ -9,10 +9,9 @@ using System.Threading.Tasks; using MediaBrowser.Common.Net; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Net; using MediaBrowser.Model.System; -using System.Numerics; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Networking { @@ -204,20 +203,18 @@ namespace Emby.Server.Implementations.Networking private Dictionary<string, List<string>> _subnetLookup = new Dictionary<string, List<string>>(StringComparer.Ordinal); private List<string> GetSubnets(string endpointFirstPart) { - List<string> subnets; - lock (_subnetLookup) { - if (_subnetLookup.TryGetValue(endpointFirstPart, out subnets)) + if (_subnetLookup.TryGetValue(endpointFirstPart, out var subnets)) { return subnets; } subnets = new List<string>(); - foreach (NetworkInterface adapter in NetworkInterface.GetAllNetworkInterfaces()) + foreach (var adapter in NetworkInterface.GetAllNetworkInterfaces()) { - foreach (UnicastIPAddressInformation unicastIPAddressInformation in adapter.GetIPProperties().UnicastAddresses) + foreach (var unicastIPAddressInformation in adapter.GetIPProperties().UnicastAddresses) { if (unicastIPAddressInformation.Address.AddressFamily == AddressFamily.InterNetwork && endpointFirstPart == unicastIPAddressInformation.Address.ToString().Split('.')[0]) { @@ -299,8 +296,7 @@ namespace Emby.Server.Implementations.Networking throw new ArgumentNullException(nameof(endpoint)); } - IPAddress address; - if (IPAddress.TryParse(endpoint, out address)) + if (IPAddress.TryParse(endpoint, out var address)) { var addressString = address.ToString(); @@ -349,8 +345,7 @@ namespace Emby.Server.Implementations.Networking } else if (resolveHost) { - Uri uri; - if (Uri.TryCreate(endpoint, UriKind.RelativeOrAbsolute, out uri)) + if (Uri.TryCreate(endpoint, UriKind.RelativeOrAbsolute, out var uri)) { try { @@ -462,7 +457,7 @@ namespace Emby.Server.Implementations.Networking public int GetRandomUnusedUdpPort() { - IPEndPoint localEndPoint = new IPEndPoint(IPAddress.Any, 0); + var localEndPoint = new IPEndPoint(IPAddress.Any, 0); using (var udpClient = new UdpClient(localEndPoint)) { var port = ((IPEndPoint)(udpClient.Client.LocalEndPoint)).Port; @@ -523,8 +518,8 @@ namespace Emby.Server.Implementations.Networking /// <param name="endpointstring">The endpointstring.</param> /// <param name="defaultport">The defaultport.</param> /// <returns>IPEndPoint.</returns> - /// <exception cref="System.ArgumentException">Endpoint descriptor may not be empty.</exception> - /// <exception cref="System.FormatException"></exception> + /// <exception cref="ArgumentException">Endpoint descriptor may not be empty.</exception> + /// <exception cref="FormatException"></exception> private static async Task<IPEndPoint> Parse(string endpointstring, int defaultport) { if (string.IsNullOrEmpty(endpointstring) @@ -586,12 +581,10 @@ namespace Emby.Server.Implementations.Networking /// </summary> /// <param name="p">The p.</param> /// <returns>System.Int32.</returns> - /// <exception cref="System.FormatException"></exception> + /// <exception cref="FormatException"></exception> private static int GetPort(string p) { - int port; - - if (!int.TryParse(p, out port) + if (!int.TryParse(p, out var port) || port < IPEndPoint.MinPort || port > IPEndPoint.MaxPort) { @@ -606,7 +599,7 @@ namespace Emby.Server.Implementations.Networking /// </summary> /// <param name="p">The p.</param> /// <returns>IPAddress.</returns> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentException"></exception> private static async Task<IPAddress> GetIPfromHost(string p) { var hosts = await Dns.GetHostAddressesAsync(p).ConfigureAwait(false); @@ -619,8 +612,7 @@ namespace Emby.Server.Implementations.Networking public IpAddressInfo ParseIpAddress(string ipAddress) { - IpAddressInfo info; - if (TryParseIpAddress(ipAddress, out info)) + if (TryParseIpAddress(ipAddress, out var info)) { return info; } @@ -630,8 +622,7 @@ namespace Emby.Server.Implementations.Networking public bool TryParseIpAddress(string ipAddress, out IpAddressInfo ipAddressInfo) { - IPAddress address; - if (IPAddress.TryParse(ipAddress, out address)) + if (IPAddress.TryParse(ipAddress, out var address)) { ipAddressInfo = ToIpAddressInfo(address); return true; diff --git a/Emby.Server.Implementations/Playlists/ManualPlaylistsFolder.cs b/Emby.Server.Implementations/Playlists/ManualPlaylistsFolder.cs index f2bc4c07d..f4decc856 100644 --- a/Emby.Server.Implementations/Playlists/ManualPlaylistsFolder.cs +++ b/Emby.Server.Implementations/Playlists/ManualPlaylistsFolder.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Linq; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Playlists; diff --git a/Emby.Server.Implementations/Playlists/PlaylistImageProvider.cs b/Emby.Server.Implementations/Playlists/PlaylistImageProvider.cs index e69b4a34e..223153164 100644 --- a/Emby.Server.Implementations/Playlists/PlaylistImageProvider.cs +++ b/Emby.Server.Implementations/Playlists/PlaylistImageProvider.cs @@ -1,23 +1,20 @@ -using System; +using System; +using System.Collections.Generic; +using System.Linq; +using Emby.Server.Implementations.Images; using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Drawing; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Playlists; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using Emby.Server.Implementations.Images; - -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Library; using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Querying; namespace Emby.Server.Implementations.Playlists diff --git a/Emby.Server.Implementations/Playlists/PlaylistManager.cs b/Emby.Server.Implementations/Playlists/PlaylistManager.cs index 38fbac030..c39897b53 100644 --- a/Emby.Server.Implementations/Playlists/PlaylistManager.cs +++ b/Emby.Server.Implementations/Playlists/PlaylistManager.cs @@ -1,11 +1,3 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Playlists; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Playlists; using System; using System.Collections.Generic; using System.IO; @@ -13,12 +5,17 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Playlists; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; -using PlaylistsNET; +using MediaBrowser.Model.Playlists; +using Microsoft.Extensions.Logging; using PlaylistsNET.Content; using PlaylistsNET.Models; -using PlaylistsNET.Utils; namespace Emby.Server.Implementations.Playlists { @@ -472,12 +469,12 @@ namespace Emby.Server.Implementations.Playlists folderPath = folderPath + Path.DirectorySeparatorChar; } - Uri folderUri = new Uri(folderPath); - Uri fileAbsoluteUri = new Uri(fileAbsolutePath); + var folderUri = new Uri(folderPath); + var fileAbsoluteUri = new Uri(fileAbsolutePath); if (folderUri.Scheme != fileAbsoluteUri.Scheme) { return fileAbsolutePath; } // path can't be made relative. - Uri relativeUri = folderUri.MakeRelativeUri(fileAbsoluteUri); + var relativeUri = folderUri.MakeRelativeUri(fileAbsoluteUri); string relativePath = Uri.UnescapeDataString(relativeUri.ToString()); if (fileAbsoluteUri.Scheme.Equals("file", StringComparison.CurrentCultureIgnoreCase)) diff --git a/Emby.Server.Implementations/Reflection/AssemblyInfo.cs b/Emby.Server.Implementations/Reflection/AssemblyInfo.cs index c3ce97d40..9d16fe43f 100644 --- a/Emby.Server.Implementations/Reflection/AssemblyInfo.cs +++ b/Emby.Server.Implementations/Reflection/AssemblyInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Reflection; using MediaBrowser.Model.Reflection; diff --git a/Emby.Server.Implementations/ResourceFileManager.cs b/Emby.Server.Implementations/ResourceFileManager.cs index 04cf0632c..f54e3205a 100644 --- a/Emby.Server.Implementations/ResourceFileManager.cs +++ b/Emby.Server.Implementations/ResourceFileManager.cs @@ -1,23 +1,11 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Plugins; -using MediaBrowser.Model.Extensions; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Serialization; using System; -using System.Collections.Generic; using System.IO; -using System.Linq; using System.Threading.Tasks; -using MediaBrowser.Common.Plugins; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.IO; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Plugins; -using MediaBrowser.Model.Reflection; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations { diff --git a/Emby.Server.Implementations/ScheduledTasks/ChapterImagesTask.cs b/Emby.Server.Implementations/ScheduledTasks/ChapterImagesTask.cs index 904e93c56..0ae7ae96c 100644 --- a/Emby.Server.Implementations/ScheduledTasks/ChapterImagesTask.cs +++ b/Emby.Server.Implementations/ScheduledTasks/ChapterImagesTask.cs @@ -1,22 +1,20 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Controller.Persistence; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Controller.Persistence; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Tasks; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Providers; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.ScheduledTasks { diff --git a/Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs b/Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs index afcee02e5..98685cebe 100644 --- a/Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs +++ b/Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs @@ -1,9 +1,8 @@ -using System; +using System; using System.Globalization; using System.Threading; -using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.ScheduledTasks { diff --git a/Emby.Server.Implementations/ScheduledTasks/IntervalTrigger.cs b/Emby.Server.Implementations/ScheduledTasks/IntervalTrigger.cs index 5f6a0dfe6..3a34da3af 100644 --- a/Emby.Server.Implementations/ScheduledTasks/IntervalTrigger.cs +++ b/Emby.Server.Implementations/ScheduledTasks/IntervalTrigger.cs @@ -1,9 +1,8 @@ -using System; +using System; using System.Linq; using System.Threading; -using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.ScheduledTasks { diff --git a/Emby.Server.Implementations/ScheduledTasks/PeopleValidationTask.cs b/Emby.Server.Implementations/ScheduledTasks/PeopleValidationTask.cs index 366ad889c..68031170f 100644 --- a/Emby.Server.Implementations/ScheduledTasks/PeopleValidationTask.cs +++ b/Emby.Server.Implementations/ScheduledTasks/PeopleValidationTask.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Controller.Library; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.Tasks; namespace Emby.Server.Implementations.ScheduledTasks diff --git a/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs b/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs index bd49277ad..f6fa64d13 100644 --- a/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs +++ b/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Library; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using Emby.Server.Implementations.Library; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.Tasks; namespace Emby.Server.Implementations.ScheduledTasks diff --git a/Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs b/Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs index ec54ce71a..44f6e2d7b 100644 --- a/Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs +++ b/Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs @@ -9,10 +9,10 @@ using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Progress; using MediaBrowser.Model.Events; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.System; using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.ScheduledTasks { @@ -63,7 +63,7 @@ namespace Emby.Server.Implementations.ScheduledTasks /// <param name="taskManager">The task manager.</param> /// <param name="jsonSerializer">The json serializer.</param> /// <param name="logger">The logger.</param> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// scheduledTask /// or /// applicationPaths @@ -256,7 +256,7 @@ namespace Emby.Server.Implementations.ScheduledTasks /// Gets the triggers that define when the task will run /// </summary> /// <value>The triggers.</value> - /// <exception cref="System.ArgumentNullException">value</exception> + /// <exception cref="ArgumentNullException">value</exception> public TaskTriggerInfo[] Triggers { get @@ -365,7 +365,7 @@ namespace Emby.Server.Implementations.ScheduledTasks /// </summary> /// <param name="options">Task options.</param> /// <returns>Task.</returns> - /// <exception cref="System.InvalidOperationException">Cannot execute a Task that is already running</exception> + /// <exception cref="InvalidOperationException">Cannot execute a Task that is already running</exception> public async Task Execute(TaskOptions options) { var task = Task.Run(async () => await ExecuteInternal(options).ConfigureAwait(false)); @@ -461,7 +461,7 @@ namespace Emby.Server.Implementations.ScheduledTasks /// <summary> /// Stops the task if it is currently executing /// </summary> - /// <exception cref="System.InvalidOperationException">Cannot cancel a Task unless it is in the Running state.</exception> + /// <exception cref="InvalidOperationException">Cannot cancel a Task unless it is in the Running state.</exception> public void Cancel() { if (State != TaskState.Running) @@ -705,8 +705,8 @@ namespace Emby.Server.Implementations.ScheduledTasks /// </summary> /// <param name="info">The info.</param> /// <returns>BaseTaskTrigger.</returns> - /// <exception cref="System.ArgumentNullException"></exception> - /// <exception cref="System.ArgumentException">Invalid trigger type: + info.Type</exception> + /// <exception cref="ArgumentNullException"></exception> + /// <exception cref="ArgumentException">Invalid trigger type: + info.Type</exception> private ITaskTrigger GetTrigger(TaskTriggerInfo info) { var options = new TaskOptions @@ -718,7 +718,7 @@ namespace Emby.Server.Implementations.ScheduledTasks { if (!info.TimeOfDayTicks.HasValue) { - throw new ArgumentException("Info did not contain a TimeOfDayTicks.",nameof(info)); + throw new ArgumentException("Info did not contain a TimeOfDayTicks.", nameof(info)); } return new DailyTrigger diff --git a/Emby.Server.Implementations/ScheduledTasks/StartupTrigger.cs b/Emby.Server.Implementations/ScheduledTasks/StartupTrigger.cs index 35366a044..08ff4f55f 100644 --- a/Emby.Server.Implementations/ScheduledTasks/StartupTrigger.cs +++ b/Emby.Server.Implementations/ScheduledTasks/StartupTrigger.cs @@ -1,8 +1,7 @@ -using System; +using System; using System.Threading.Tasks; -using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.ScheduledTasks { diff --git a/Emby.Server.Implementations/ScheduledTasks/SystemEventTrigger.cs b/Emby.Server.Implementations/ScheduledTasks/SystemEventTrigger.cs index def142f88..7a88fc2b0 100644 --- a/Emby.Server.Implementations/ScheduledTasks/SystemEventTrigger.cs +++ b/Emby.Server.Implementations/ScheduledTasks/SystemEventTrigger.cs @@ -1,9 +1,8 @@ -using System; +using System; using System.Threading.Tasks; -using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.System; using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.ScheduledTasks { diff --git a/Emby.Server.Implementations/ScheduledTasks/TaskManager.cs b/Emby.Server.Implementations/ScheduledTasks/TaskManager.cs index 361c31acb..09c348e24 100644 --- a/Emby.Server.Implementations/ScheduledTasks/TaskManager.cs +++ b/Emby.Server.Implementations/ScheduledTasks/TaskManager.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.IO; @@ -7,10 +7,10 @@ using System.Threading.Tasks; using MediaBrowser.Common.Configuration; using MediaBrowser.Model.Events; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.System; using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.ScheduledTasks { @@ -61,7 +61,7 @@ namespace Emby.Server.Implementations.ScheduledTasks /// <param name="applicationPaths">The application paths.</param> /// <param name="jsonSerializer">The json serializer.</param> /// <param name="logger">The logger.</param> - /// <exception cref="System.ArgumentException">kernel</exception> + /// <exception cref="ArgumentException">kernel</exception> public TaskManager(IApplicationPaths applicationPaths, IJsonSerializer jsonSerializer, ILogger logger, IFileSystem fileSystem, ISystemEvents systemEvents) { ApplicationPaths = applicationPaths; @@ -94,7 +94,7 @@ namespace Emby.Server.Implementations.ScheduledTasks try { - lines = _fileSystem.ReadAllLines(path).ToList() ; + lines = _fileSystem.ReadAllLines(path).ToList(); } catch { @@ -364,8 +364,7 @@ namespace Emby.Server.Implementations.ScheduledTasks { var list = new List<Tuple<Type, TaskOptions>>(); - Tuple<Type, TaskOptions> item; - while (_taskQueue.TryDequeue(out item)) + while (_taskQueue.TryDequeue(out var item)) { if (list.All(i => i.Item1 != item.Item1)) { diff --git a/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs b/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs index 0716f8d30..2590f455c 100644 --- a/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs +++ b/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; @@ -6,8 +6,8 @@ using System.Threading; using System.Threading.Tasks; using MediaBrowser.Common.Configuration; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.ScheduledTasks.Tasks { diff --git a/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteLogFileTask.cs b/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteLogFileTask.cs index fea18d9f0..a57fe4945 100644 --- a/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteLogFileTask.cs +++ b/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteLogFileTask.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Threading; @@ -65,7 +65,7 @@ namespace Emby.Server.Implementations.ScheduledTasks.Tasks foreach (var file in filesToDelete) { - double percent = index / (double) filesToDelete.Count; + double percent = index / (double)filesToDelete.Count; progress.Report(100 * percent); diff --git a/Emby.Server.Implementations/ScheduledTasks/WeeklyTrigger.cs b/Emby.Server.Implementations/ScheduledTasks/WeeklyTrigger.cs index e694e0855..2a6a7b13c 100644 --- a/Emby.Server.Implementations/ScheduledTasks/WeeklyTrigger.cs +++ b/Emby.Server.Implementations/ScheduledTasks/WeeklyTrigger.cs @@ -1,8 +1,7 @@ -using System; +using System; using System.Threading; -using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.ScheduledTasks { diff --git a/Emby.Server.Implementations/Security/AuthenticationRepository.cs b/Emby.Server.Implementations/Security/AuthenticationRepository.cs index 2a6406f25..e0f174f9d 100644 --- a/Emby.Server.Implementations/Security/AuthenticationRepository.cs +++ b/Emby.Server.Implementations/Security/AuthenticationRepository.cs @@ -3,16 +3,13 @@ using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; -using System.Threading; using Emby.Server.Implementations.Data; -using MediaBrowser.Controller; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Security; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.Devices; using MediaBrowser.Model.Querying; +using Microsoft.Extensions.Logging; using SQLitePCL.pretty; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Model.Devices; namespace Emby.Server.Implementations.Security { diff --git a/Emby.Server.Implementations/Security/EncryptionManager.cs b/Emby.Server.Implementations/Security/EncryptionManager.cs index b99e00a67..fa8872ccc 100644 --- a/Emby.Server.Implementations/Security/EncryptionManager.cs +++ b/Emby.Server.Implementations/Security/EncryptionManager.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Controller.Security; using System; using System.Text; +using MediaBrowser.Controller.Security; namespace Emby.Server.Implementations.Security { @@ -11,7 +11,7 @@ namespace Emby.Server.Implementations.Security /// </summary> /// <param name="value">The value.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException">value</exception> + /// <exception cref="ArgumentNullException">value</exception> public string EncryptString(string value) { if (value == null) @@ -27,7 +27,7 @@ namespace Emby.Server.Implementations.Security /// </summary> /// <param name="value">The value.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException">value</exception> + /// <exception cref="ArgumentNullException">value</exception> public string DecryptString(string value) { if (value == null) diff --git a/Emby.Server.Implementations/Serialization/JsonSerializer.cs b/Emby.Server.Implementations/Serialization/JsonSerializer.cs index d4b6b2f43..60bf2d5a9 100644 --- a/Emby.Server.Implementations/Serialization/JsonSerializer.cs +++ b/Emby.Server.Implementations/Serialization/JsonSerializer.cs @@ -1,9 +1,9 @@ using System; using System.IO; +using System.Threading.Tasks; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; -using System.Threading.Tasks; +using Microsoft.Extensions.Logging; namespace Emby.Common.Implementations.Serialization { @@ -27,7 +27,7 @@ namespace Emby.Common.Implementations.Serialization /// </summary> /// <param name="obj">The obj.</param> /// <param name="stream">The stream.</param> - /// <exception cref="System.ArgumentNullException">obj</exception> + /// <exception cref="ArgumentNullException">obj</exception> public void SerializeToStream(object obj, Stream stream) { if (obj == null) @@ -48,7 +48,7 @@ namespace Emby.Common.Implementations.Serialization /// </summary> /// <param name="obj">The obj.</param> /// <param name="file">The file.</param> - /// <exception cref="System.ArgumentNullException">obj</exception> + /// <exception cref="ArgumentNullException">obj</exception> public void SerializeToFile(object obj, string file) { if (obj == null) @@ -61,7 +61,7 @@ namespace Emby.Common.Implementations.Serialization throw new ArgumentNullException(nameof(file)); } - using (Stream stream = _fileSystem.GetFileStream(file, FileOpenMode.Create, FileAccessMode.Write, FileShareMode.Read)) + using (var stream = _fileSystem.GetFileStream(file, FileOpenMode.Create, FileAccessMode.Write, FileShareMode.Read)) { SerializeToStream(obj, stream); } @@ -79,7 +79,7 @@ namespace Emby.Common.Implementations.Serialization /// <param name="type">The type.</param> /// <param name="file">The file.</param> /// <returns>System.Object.</returns> - /// <exception cref="System.ArgumentNullException">type</exception> + /// <exception cref="ArgumentNullException">type</exception> public object DeserializeFromFile(Type type, string file) { if (type == null) @@ -92,7 +92,7 @@ namespace Emby.Common.Implementations.Serialization throw new ArgumentNullException(nameof(file)); } - using (Stream stream = OpenFile(file)) + using (var stream = OpenFile(file)) { return DeserializeFromStream(stream, type); } @@ -104,7 +104,7 @@ namespace Emby.Common.Implementations.Serialization /// <typeparam name="T"></typeparam> /// <param name="file">The file.</param> /// <returns>``0.</returns> - /// <exception cref="System.ArgumentNullException">file</exception> + /// <exception cref="ArgumentNullException">file</exception> public T DeserializeFromFile<T>(string file) where T : class { @@ -113,7 +113,7 @@ namespace Emby.Common.Implementations.Serialization throw new ArgumentNullException(nameof(file)); } - using (Stream stream = OpenFile(file)) + using (var stream = OpenFile(file)) { return DeserializeFromStream<T>(stream); } @@ -125,7 +125,7 @@ namespace Emby.Common.Implementations.Serialization /// <typeparam name="T"></typeparam> /// <param name="stream">The stream.</param> /// <returns>``0.</returns> - /// <exception cref="System.ArgumentNullException">stream</exception> + /// <exception cref="ArgumentNullException">stream</exception> public T DeserializeFromStream<T>(Stream stream) { if (stream == null) @@ -153,7 +153,7 @@ namespace Emby.Common.Implementations.Serialization /// <typeparam name="T"></typeparam> /// <param name="text">The text.</param> /// <returns>``0.</returns> - /// <exception cref="System.ArgumentNullException">text</exception> + /// <exception cref="ArgumentNullException">text</exception> public T DeserializeFromString<T>(string text) { if (string.IsNullOrEmpty(text)) @@ -170,7 +170,7 @@ namespace Emby.Common.Implementations.Serialization /// <param name="stream">The stream.</param> /// <param name="type">The type.</param> /// <returns>System.Object.</returns> - /// <exception cref="System.ArgumentNullException">stream</exception> + /// <exception cref="ArgumentNullException">stream</exception> public object DeserializeFromStream(Stream stream, Type type) { if (stream == null) @@ -236,7 +236,7 @@ namespace Emby.Common.Implementations.Serialization /// <param name="json">The json.</param> /// <param name="type">The type.</param> /// <returns>System.Object.</returns> - /// <exception cref="System.ArgumentNullException">json</exception> + /// <exception cref="ArgumentNullException">json</exception> public object DeserializeFromString(string json, Type type) { if (string.IsNullOrEmpty(json)) @@ -257,7 +257,7 @@ namespace Emby.Common.Implementations.Serialization /// </summary> /// <param name="obj">The obj.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException">obj</exception> + /// <exception cref="ArgumentNullException">obj</exception> public string SerializeToString(object obj) { if (obj == null) diff --git a/Emby.Server.Implementations/Serialization/XmlSerializer.cs b/Emby.Server.Implementations/Serialization/XmlSerializer.cs index dfc324919..22d6712ec 100644 --- a/Emby.Server.Implementations/Serialization/XmlSerializer.cs +++ b/Emby.Server.Implementations/Serialization/XmlSerializer.cs @@ -1,11 +1,11 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Xml; using System.Xml.Serialization; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Serialization { @@ -33,8 +33,7 @@ namespace Emby.Server.Implementations.Serialization var key = type.FullName; lock (_serializers) { - XmlSerializer serializer; - if (!_serializers.TryGetValue(key, out serializer)) + if (!_serializers.TryGetValue(key, out var serializer)) { serializer = new XmlSerializer(type); _serializers[key] = serializer; diff --git a/Emby.Server.Implementations/ServerApplicationPaths.cs b/Emby.Server.Implementations/ServerApplicationPaths.cs index 933b67291..edea10a07 100644 --- a/Emby.Server.Implementations/ServerApplicationPaths.cs +++ b/Emby.Server.Implementations/ServerApplicationPaths.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using Emby.Server.Implementations.AppBase; using MediaBrowser.Controller; diff --git a/Emby.Server.Implementations/Services/RequestHelper.cs b/Emby.Server.Implementations/Services/RequestHelper.cs index 7d2fbc3e0..24e9cbfa4 100644 --- a/Emby.Server.Implementations/Services/RequestHelper.cs +++ b/Emby.Server.Implementations/Services/RequestHelper.cs @@ -1,7 +1,7 @@ using System; using System.IO; -using Emby.Server.Implementations.HttpServer; using System.Threading.Tasks; +using Emby.Server.Implementations.HttpServer; namespace Emby.Server.Implementations.Services { diff --git a/Emby.Server.Implementations/Services/ServiceController.cs b/Emby.Server.Implementations/Services/ServiceController.cs index 46af83128..5796956d8 100644 --- a/Emby.Server.Implementations/Services/ServiceController.cs +++ b/Emby.Server.Implementations/Services/ServiceController.cs @@ -3,7 +3,6 @@ using System.Collections.Generic; using System.Reflection; using System.Threading.Tasks; using Emby.Server.Implementations.HttpServer; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Services; namespace Emby.Server.Implementations.Services @@ -73,7 +72,7 @@ namespace Emby.Server.Implementations.Services public void RegisterRestPaths(HttpListenerHost appHost, Type requestType, Type serviceType) { var attrs = appHost.GetRouteAttributes(requestType); - foreach (RouteAttribute attr in attrs) + foreach (var attr in attrs) { var restPath = new RestPath(appHost.CreateInstance, appHost.GetParseFn, requestType, serviceType, attr.Path, attr.Verbs, attr.IsHidden, attr.Summary, attr.Description); @@ -90,8 +89,7 @@ namespace Emby.Server.Implementations.Services if (restPath.Path.IndexOfAny(InvalidRouteChars) != -1) throw new ArgumentException(string.Format("Route '{0}' on '{1}' contains invalid chars. ", restPath.Path, restPath.RequestType.GetMethodName())); - List<RestPath> pathsAtFirstMatch; - if (!RestPathMap.TryGetValue(restPath.FirstMatchHashKey, out pathsAtFirstMatch)) + if (!RestPathMap.TryGetValue(restPath.FirstMatchHashKey, out List<RestPath> pathsAtFirstMatch)) { pathsAtFirstMatch = new List<RestPath>(); RestPathMap[restPath.FirstMatchHashKey] = pathsAtFirstMatch; diff --git a/Emby.Server.Implementations/Services/ServiceExec.cs b/Emby.Server.Implementations/Services/ServiceExec.cs index 9516c1e38..45c918fa1 100644 --- a/Emby.Server.Implementations/Services/ServiceExec.cs +++ b/Emby.Server.Implementations/Services/ServiceExec.cs @@ -5,7 +5,6 @@ using System.Linq.Expressions; using System.Reflection; using System.Threading.Tasks; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Extensions; namespace Emby.Server.Implementations.Services { @@ -74,8 +73,7 @@ namespace Emby.Server.Implementations.Services { var actionName = request.Verb ?? "POST"; - ServiceMethod actionContext; - if (ServiceExecGeneral.execMap.TryGetValue(ServiceMethod.Key(serviceType, actionName, requestName), out actionContext)) + if (execMap.TryGetValue(ServiceMethod.Key(serviceType, actionName, requestName), out ServiceMethod actionContext)) { if (actionContext.RequestFilters != null) { diff --git a/Emby.Server.Implementations/Services/ServiceHandler.cs b/Emby.Server.Implementations/Services/ServiceHandler.cs index 5590c51b6..7e836e22c 100644 --- a/Emby.Server.Implementations/Services/ServiceHandler.cs +++ b/Emby.Server.Implementations/Services/ServiceHandler.cs @@ -4,8 +4,8 @@ using System.Reflection; using System.Threading; using System.Threading.Tasks; using Emby.Server.Implementations.HttpServer; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Services { @@ -62,8 +62,7 @@ namespace Emby.Server.Implementations.Services { if (this.RestPath == null) { - string contentType; - this.RestPath = FindMatchingRestPath(httpMethod, pathInfo, out contentType); + this.RestPath = FindMatchingRestPath(httpMethod, pathInfo, out string contentType); if (contentType != null) ResponseContentType = contentType; @@ -137,9 +136,8 @@ namespace Emby.Server.Implementations.Services public static object CreateRequest(IRequest httpReq, RestPath restPath, Dictionary<string, string> requestParams, object requestDto) { - string contentType; var pathInfo = !restPath.IsWildCardPath - ? GetSanitizedPathInfo(httpReq.PathInfo, out contentType) + ? GetSanitizedPathInfo(httpReq.PathInfo, out string contentType) : httpReq.PathInfo; return restPath.CreateRequest(pathInfo, requestParams, requestDto); @@ -239,8 +237,7 @@ namespace Emby.Server.Implementations.Services private static RestPath GetRoute(IRequest req) { - object route; - req.Items.TryGetValue("__route", out route); + req.Items.TryGetValue("__route", out var route); return route as RestPath; } } diff --git a/Emby.Server.Implementations/Services/ServiceMethod.cs b/Emby.Server.Implementations/Services/ServiceMethod.cs index fa2dd43d0..7add72815 100644 --- a/Emby.Server.Implementations/Services/ServiceMethod.cs +++ b/Emby.Server.Implementations/Services/ServiceMethod.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace Emby.Server.Implementations.Services { @@ -14,4 +14,4 @@ namespace Emby.Server.Implementations.Services return serviceType.FullName + " " + method.ToUpper() + " " + requestDtoName; } } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/Services/ServicePath.cs b/Emby.Server.Implementations/Services/ServicePath.cs index 0222b3782..7e1993b71 100644 --- a/Emby.Server.Implementations/Services/ServicePath.cs +++ b/Emby.Server.Implementations/Services/ServicePath.cs @@ -4,8 +4,6 @@ using System.IO; using System.Linq; using System.Reflection; using System.Text; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Extensions; namespace Emby.Server.Implementations.Services { @@ -308,8 +306,7 @@ namespace Emby.Server.Implementations.Services public int MatchScore(string httpMethod, string[] withPathInfoParts) { - int wildcardMatchCount; - var isMatch = IsMatch(httpMethod, withPathInfoParts, out wildcardMatchCount); + var isMatch = IsMatch(httpMethod, withPathInfoParts, out var wildcardMatchCount); if (!isMatch) { return -1; @@ -486,8 +483,7 @@ namespace Emby.Server.Implementations.Services continue; } - string propertyNameOnRequest; - if (!this.propertyNamesMap.TryGetValue(variableName.ToLower(), out propertyNameOnRequest)) + if (!this.propertyNamesMap.TryGetValue(variableName.ToLower(), out var propertyNameOnRequest)) { if (string.Equals("ignore", variableName, StringComparison.OrdinalIgnoreCase)) { diff --git a/Emby.Server.Implementations/Services/StringMapTypeDeserializer.cs b/Emby.Server.Implementations/Services/StringMapTypeDeserializer.cs index 2233bf918..d13935fba 100644 --- a/Emby.Server.Implementations/Services/StringMapTypeDeserializer.cs +++ b/Emby.Server.Implementations/Services/StringMapTypeDeserializer.cs @@ -11,14 +11,14 @@ namespace Emby.Server.Implementations.Services { internal class PropertySerializerEntry { - public PropertySerializerEntry(Action<object,object> propertySetFn, Func<string, object> propertyParseStringFn) + public PropertySerializerEntry(Action<object, object> propertySetFn, Func<string, object> propertyParseStringFn) { PropertySetFn = propertySetFn; PropertyParseStringFn = propertyParseStringFn; } public Action<object, object> PropertySetFn; - public Func<string,object> PropertyParseStringFn; + public Func<string, object> PropertyParseStringFn; public Type PropertyType; } diff --git a/Emby.Server.Implementations/Services/UrlExtensions.cs b/Emby.Server.Implementations/Services/UrlExtensions.cs index 898dcac3e..8899fbfa3 100644 --- a/Emby.Server.Implementations/Services/UrlExtensions.cs +++ b/Emby.Server.Implementations/Services/UrlExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace Emby.Server.Implementations.Services { @@ -30,4 +30,4 @@ namespace Emby.Server.Implementations.Services : strVal.Substring(0, pos); } } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/Session/HttpSessionController.cs b/Emby.Server.Implementations/Session/HttpSessionController.cs index c61e2aff4..9281f82b3 100644 --- a/Emby.Server.Implementations/Session/HttpSessionController.cs +++ b/Emby.Server.Implementations/Session/HttpSessionController.cs @@ -1,9 +1,3 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Session; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.Session; -using MediaBrowser.Model.System; using System; using System.Collections.Generic; using System.Globalization; @@ -11,6 +5,10 @@ using System.Linq; using System.Net; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Session; +using MediaBrowser.Model.Serialization; +using MediaBrowser.Model.Session; namespace Emby.Server.Implementations.Session { @@ -107,7 +105,7 @@ namespace Emby.Server.Implementations.Session return SendMessage(command.Command.ToString(), messageId, args, cancellationToken); } - private string[] _supportedMessages = new string[] { }; + private string[] _supportedMessages = new string[] { }; public Task SendMessage<T>(string name, string messageId, T data, ISessionController[] allControllers, CancellationToken cancellationToken) { if (!IsSessionActive) diff --git a/Emby.Server.Implementations/Session/SessionManager.cs b/Emby.Server.Implementations/Session/SessionManager.cs index 4e444ac01..e60593198 100644 --- a/Emby.Server.Implementations/Session/SessionManager.cs +++ b/Emby.Server.Implementations/Session/SessionManager.cs @@ -1,13 +1,22 @@ +using System; +using System.Collections.Concurrent; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common.Events; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Controller; +using MediaBrowser.Controller.Authentication; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Security; using MediaBrowser.Controller.Session; using MediaBrowser.Model.Devices; @@ -15,21 +24,11 @@ using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Events; using MediaBrowser.Model.Library; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Session; -using System; -using System.Collections.Concurrent; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Querying; using MediaBrowser.Model.Threading; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Authentication; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Session { @@ -202,8 +201,8 @@ namespace Emby.Server.Implementations.Session /// <param name="remoteEndPoint">The remote end point.</param> /// <param name="user">The user.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">user</exception> - /// <exception cref="System.UnauthorizedAccessException"></exception> + /// <exception cref="ArgumentNullException">user</exception> + /// <exception cref="UnauthorizedAccessException"></exception> public SessionInfo LogSessionActivity(string appName, string appVersion, string deviceId, @@ -266,8 +265,7 @@ namespace Emby.Server.Implementations.Session { var key = GetSessionKey(session.Client, session.DeviceId); - SessionInfo removed; - _activeConnections.TryRemove(key, out removed); + _activeConnections.TryRemove(key, out var removed); OnSessionEnded(session); } @@ -282,8 +280,7 @@ namespace Emby.Server.Implementations.Session { var key = GetSessionKey(session.Client, session.DeviceId); - SessionInfo removed; - _activeConnections.TryRemove(key, out removed); + _activeConnections.TryRemove(key, out var removed); OnSessionEnded(session); } @@ -366,7 +363,7 @@ namespace Emby.Server.Implementations.Session /// Removes the now playing item id. /// </summary> /// <param name="session">The session.</param> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> private void RemoveNowPlayingItem(SessionInfo session) { session.NowPlayingItem = null; @@ -405,7 +402,7 @@ namespace Emby.Server.Implementations.Session CheckDisposed(); - SessionInfo sessionInfo = _activeConnections.GetOrAdd(key, k => + var sessionInfo = _activeConnections.GetOrAdd(key, k => { return CreateSession(k, appName, appVersion, deviceId, deviceName, remoteEndPoint, user); }); @@ -572,7 +569,7 @@ namespace Emby.Server.Implementations.Session /// </summary> /// <param name="info">The info.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">info</exception> + /// <exception cref="ArgumentNullException">info</exception> public async Task OnPlaybackStart(PlaybackStartInfo info) { CheckDisposed(); @@ -785,8 +782,8 @@ namespace Emby.Server.Implementations.Session /// </summary> /// <param name="info">The info.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">info</exception> - /// <exception cref="System.ArgumentOutOfRangeException">positionTicks</exception> + /// <exception cref="ArgumentNullException">info</exception> + /// <exception cref="ArgumentOutOfRangeException">positionTicks</exception> public async Task OnPlaybackStopped(PlaybackStopInfo info) { CheckDisposed(); @@ -798,7 +795,7 @@ namespace Emby.Server.Implementations.Session if (info.PositionTicks.HasValue && info.PositionTicks.Value < 0) { - throw new ArgumentOutOfRangeException(nameof(info),"The PlaybackStopInfo's PositionTicks was negative."); + throw new ArgumentOutOfRangeException(nameof(info), "The PlaybackStopInfo's PositionTicks was negative."); } var session = GetSession(info.SessionId); @@ -1285,8 +1282,8 @@ namespace Emby.Server.Implementations.Session /// </summary> /// <param name="sessionId">The session identifier.</param> /// <param name="userId">The user identifier.</param> - /// <exception cref="System.UnauthorizedAccessException">Cannot modify additional users without authenticating first.</exception> - /// <exception cref="System.ArgumentException">The requested user is already the primary user of the session.</exception> + /// <exception cref="UnauthorizedAccessException">Cannot modify additional users without authenticating first.</exception> + /// <exception cref="ArgumentException">The requested user is already the primary user of the session.</exception> public void AddAdditionalUser(string sessionId, Guid userId) { CheckDisposed(); @@ -1319,8 +1316,8 @@ namespace Emby.Server.Implementations.Session /// </summary> /// <param name="sessionId">The session identifier.</param> /// <param name="userId">The user identifier.</param> - /// <exception cref="System.UnauthorizedAccessException">Cannot modify additional users without authenticating first.</exception> - /// <exception cref="System.ArgumentException">The requested user is already the primary user of the session.</exception> + /// <exception cref="UnauthorizedAccessException">Cannot modify additional users without authenticating first.</exception> + /// <exception cref="ArgumentException">The requested user is already the primary user of the session.</exception> public void RemoveAdditionalUser(string sessionId, Guid userId) { CheckDisposed(); diff --git a/Emby.Server.Implementations/Session/SessionWebSocketListener.cs b/Emby.Server.Implementations/Session/SessionWebSocketListener.cs index 116e455cf..24903f5e8 100644 --- a/Emby.Server.Implementations/Session/SessionWebSocketListener.cs +++ b/Emby.Server.Implementations/Session/SessionWebSocketListener.cs @@ -1,15 +1,11 @@ +using System; +using System.Threading.Tasks; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Session; using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.Session; -using System; -using System.Collections.Specialized; -using System.Globalization; -using System.Linq; -using System.Threading.Tasks; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Session { diff --git a/Emby.Server.Implementations/Session/WebSocketController.cs b/Emby.Server.Implementations/Session/WebSocketController.cs index ed34f8721..0d483c55f 100644 --- a/Emby.Server.Implementations/Session/WebSocketController.cs +++ b/Emby.Server.Implementations/Session/WebSocketController.cs @@ -1,16 +1,13 @@ -using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Session; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Session; -using MediaBrowser.Model.System; using System; using System.Collections.Generic; using System.Linq; +using System.Net.WebSockets; using System.Threading; using System.Threading.Tasks; -using System.Net.WebSockets; +using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Session; +using MediaBrowser.Model.Net; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Session { diff --git a/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs b/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs index 1b2974c27..271188314 100644 --- a/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs +++ b/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs @@ -1,8 +1,8 @@ +using System; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs b/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs index df64d816f..535f123f9 100644 --- a/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs +++ b/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs @@ -1,9 +1,9 @@ +using System; using System.Linq; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/AlbumComparer.cs b/Emby.Server.Implementations/Sorting/AlbumComparer.cs index dda1c5478..3831a0d2d 100644 --- a/Emby.Server.Implementations/Sorting/AlbumComparer.cs +++ b/Emby.Server.Implementations/Sorting/AlbumComparer.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/AlphanumComparator.cs b/Emby.Server.Implementations/Sorting/AlphanumComparator.cs index 4bfcda1ac..2e00c24d7 100644 --- a/Emby.Server.Implementations/Sorting/AlphanumComparator.cs +++ b/Emby.Server.Implementations/Sorting/AlphanumComparator.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Text; using MediaBrowser.Controller.Sorting; @@ -29,8 +29,8 @@ namespace Emby.Server.Implementations.Sorting char thisCh = s1[thisMarker]; char thatCh = s2[thatMarker]; - StringBuilder thisChunk = new StringBuilder(); - StringBuilder thatChunk = new StringBuilder(); + var thisChunk = new StringBuilder(); + var thatChunk = new StringBuilder(); while ((thisMarker < s1.Length) && (thisChunk.Length == 0 || SortHelper.InChunk(thisCh, thisChunk[0]))) { diff --git a/Emby.Server.Implementations/Sorting/ArtistComparer.cs b/Emby.Server.Implementations/Sorting/ArtistComparer.cs index b0f0549e3..9d5befc9a 100644 --- a/Emby.Server.Implementations/Sorting/ArtistComparer.cs +++ b/Emby.Server.Implementations/Sorting/ArtistComparer.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs b/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs index 994759171..87d3ae2d6 100644 --- a/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs +++ b/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs b/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs index 5c4aeaf86..adb78dec5 100644 --- a/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs +++ b/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; diff --git a/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs b/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs index 1c5149517..8501bd9ee 100644 --- a/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs +++ b/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs b/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs index ffe7fbaec..623675157 100644 --- a/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs +++ b/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs @@ -1,8 +1,8 @@ +using System; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs b/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs index c11c1986c..73f59f8cd 100644 --- a/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs +++ b/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/GameSystemComparer.cs b/Emby.Server.Implementations/Sorting/GameSystemComparer.cs index 0b534b3cb..2a04bae3c 100644 --- a/Emby.Server.Implementations/Sorting/GameSystemComparer.cs +++ b/Emby.Server.Implementations/Sorting/GameSystemComparer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs b/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs index 48e3172ce..66de05a6a 100644 --- a/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs +++ b/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; @@ -52,4 +52,4 @@ namespace Emby.Server.Implementations.Sorting /// <value>The user manager.</value> public IUserManager UserManager { get; set; } } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/Sorting/IsFolderComparer.cs b/Emby.Server.Implementations/Sorting/IsFolderComparer.cs index 8b6cbb2db..dfaa144cd 100644 --- a/Emby.Server.Implementations/Sorting/IsFolderComparer.cs +++ b/Emby.Server.Implementations/Sorting/IsFolderComparer.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; diff --git a/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs b/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs index 9f4fc2c06..da3f3dd25 100644 --- a/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs +++ b/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; @@ -52,4 +52,4 @@ namespace Emby.Server.Implementations.Sorting /// <value>The user manager.</value> public IUserManager UserManager { get; set; } } -}
\ No newline at end of file +} diff --git a/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs b/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs index d145aa8dd..d99d0eff2 100644 --- a/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs +++ b/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; diff --git a/Emby.Server.Implementations/Sorting/NameComparer.cs b/Emby.Server.Implementations/Sorting/NameComparer.cs index cfd810a6b..10fa4359a 100644 --- a/Emby.Server.Implementations/Sorting/NameComparer.cs +++ b/Emby.Server.Implementations/Sorting/NameComparer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs b/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs index cd48e3048..e8fa8edc8 100644 --- a/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs +++ b/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Globalization; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/PlayCountComparer.cs b/Emby.Server.Implementations/Sorting/PlayCountComparer.cs index b7165ab8c..eb74ce1bd 100644 --- a/Emby.Server.Implementations/Sorting/PlayCountComparer.cs +++ b/Emby.Server.Implementations/Sorting/PlayCountComparer.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; diff --git a/Emby.Server.Implementations/Sorting/PlayersComparer.cs b/Emby.Server.Implementations/Sorting/PlayersComparer.cs index 5b50ea48a..e3652f36b 100644 --- a/Emby.Server.Implementations/Sorting/PlayersComparer.cs +++ b/Emby.Server.Implementations/Sorting/PlayersComparer.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; diff --git a/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs b/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs index 26c6badaa..0c944a7a0 100644 --- a/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs +++ b/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs b/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs index 0aa5e833b..472a07eb3 100644 --- a/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs +++ b/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; diff --git a/Emby.Server.Implementations/Sorting/RandomComparer.cs b/Emby.Server.Implementations/Sorting/RandomComparer.cs index c69ebe41a..bde8b4534 100644 --- a/Emby.Server.Implementations/Sorting/RandomComparer.cs +++ b/Emby.Server.Implementations/Sorting/RandomComparer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/RuntimeComparer.cs b/Emby.Server.Implementations/Sorting/RuntimeComparer.cs index 77851d702..1d2bdde26 100644 --- a/Emby.Server.Implementations/Sorting/RuntimeComparer.cs +++ b/Emby.Server.Implementations/Sorting/RuntimeComparer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs b/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs index 1bbe30b95..942e84704 100644 --- a/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs +++ b/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs @@ -1,7 +1,7 @@ +using System; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/SortNameComparer.cs b/Emby.Server.Implementations/Sorting/SortNameComparer.cs index 6c42ed988..cc0571c78 100644 --- a/Emby.Server.Implementations/Sorting/SortNameComparer.cs +++ b/Emby.Server.Implementations/Sorting/SortNameComparer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/StartDateComparer.cs b/Emby.Server.Implementations/Sorting/StartDateComparer.cs index 7ae8037d9..aa040fa15 100644 --- a/Emby.Server.Implementations/Sorting/StartDateComparer.cs +++ b/Emby.Server.Implementations/Sorting/StartDateComparer.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; +using System; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Sorting; using MediaBrowser.Model.Querying; -using System; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/Sorting/StudioComparer.cs b/Emby.Server.Implementations/Sorting/StudioComparer.cs index 605d65154..617ed55d5 100644 --- a/Emby.Server.Implementations/Sorting/StudioComparer.cs +++ b/Emby.Server.Implementations/Sorting/StudioComparer.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Sorting; -using MediaBrowser.Model.Querying; using System; using System.Linq; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Sorting; +using MediaBrowser.Model.Querying; namespace Emby.Server.Implementations.Sorting { diff --git a/Emby.Server.Implementations/StartupOptions.cs b/Emby.Server.Implementations/StartupOptions.cs index 2114d85bf..221263634 100644 --- a/Emby.Server.Implementations/StartupOptions.cs +++ b/Emby.Server.Implementations/StartupOptions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Linq; namespace Emby.Server.Implementations diff --git a/Emby.Server.Implementations/SystemEvents.cs b/Emby.Server.Implementations/SystemEvents.cs index 578338aee..1297200f9 100644 --- a/Emby.Server.Implementations/SystemEvents.cs +++ b/Emby.Server.Implementations/SystemEvents.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.System; using Microsoft.Extensions.Logging; diff --git a/Emby.Server.Implementations/TV/TVSeriesManager.cs b/Emby.Server.Implementations/TV/TVSeriesManager.cs index 652557466..630ef4893 100644 --- a/Emby.Server.Implementations/TV/TVSeriesManager.cs +++ b/Emby.Server.Implementations/TV/TVSeriesManager.cs @@ -1,14 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.TV; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Linq; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Dto; namespace Emby.Server.Implementations.TV { @@ -118,7 +118,7 @@ namespace Emby.Server.Implementations.TV OrderBy = new[] { new ValueTuple<string, SortOrder>(ItemSortBy.DatePlayed, SortOrder.Descending) }, SeriesPresentationUniqueKey = presentationUniqueKey, Limit = limit, - DtoOptions = new MediaBrowser.Controller.Dto.DtoOptions + DtoOptions = new DtoOptions { Fields = new ItemFields[] { @@ -196,7 +196,7 @@ namespace Emby.Server.Implementations.TV IsPlayed = true, Limit = 1, ParentIndexNumberNotEquals = 0, - DtoOptions = new MediaBrowser.Controller.Dto.DtoOptions + DtoOptions = new DtoOptions { Fields = new ItemFields[] { diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Detector.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Detector.cs index 507dd5e42..991ee8688 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Detector.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Detector.cs @@ -179,7 +179,7 @@ namespace NLangDetect.Core DetectBlock(); } - List<Language> list = SortProbability(_langprob); + var list = SortProbability(_langprob); return list; } @@ -250,7 +250,7 @@ namespace NLangDetect.Core _langprob = new double[_langlist.Count]; - Random rand = (_seed.HasValue ? new Random(_seed.Value) : new Random()); + var rand = (_seed.HasValue ? new Random(_seed.Value) : new Random()); for (int t = 0; t < _trialsCount; t++) { @@ -305,7 +305,7 @@ namespace NLangDetect.Core private List<string> ExtractNGrams() { var list = new List<string>(); - NGram ngram = new NGram(); + var ngram = new NGram(); for (int i = 0; i < _text.Length; i++) { diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/DetectorFactory.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/DetectorFactory.cs index 9d75b8356..08e98d62e 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/DetectorFactory.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/DetectorFactory.cs @@ -1,10 +1,8 @@ using System; using System.Collections.Generic; -using System.IO; -using System.IO.Compression; -using NLangDetect.Core.Utils; -using MediaBrowser.Model.Serialization; using System.Linq; +using MediaBrowser.Model.Serialization; +using NLangDetect.Core.Utils; namespace NLangDetect.Core { @@ -56,7 +54,7 @@ namespace NLangDetect.Core public static Detector Create(double alpha) { - Detector detector = CreateDetector(); + var detector = CreateDetector(); detector.SetAlpha(alpha); diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/ErrorCode.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/ErrorCode.cs index 3ffd3b2d9..87f07fc9c 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/ErrorCode.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/ErrorCode.cs @@ -1,15 +1,15 @@ -namespace NLangDetect.Core +namespace NLangDetect.Core { - public enum ErrorCode - { - NoTextError, - FormatError, - FileLoadError, - DuplicateLangError, - NeedLoadProfileError, - CantDetectError, - CantOpenTrainData, - TrainDataFormatError, - InitParamError, - } + public enum ErrorCode + { + NoTextError, + FormatError, + FileLoadError, + DuplicateLangError, + NeedLoadProfileError, + CantDetectError, + CantOpenTrainData, + TrainDataFormatError, + InitParamError, + } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/CharExtensions.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/CharExtensions.cs index cd77a30eb..6e58a0be8 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/CharExtensions.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/CharExtensions.cs @@ -1,14 +1,14 @@ -using System; +using System; namespace NLangDetect.Core.Extensions { - public static class CharExtensions - { - private const int MIN_CODE_POINT = 0x000000; - private const int MAX_CODE_POINT = 0x10ffff; + public static class CharExtensions + { + private const int MIN_CODE_POINT = 0x000000; + private const int MAX_CODE_POINT = 0x10ffff; - private static readonly int[] _unicodeBlockStarts = - { + private static readonly int[] _unicodeBlockStarts = + { #region Unicode block starts 0x0000, // Basic Latin @@ -165,8 +165,8 @@ namespace NLangDetect.Core.Extensions #endregion }; - private static readonly UnicodeBlock?[] _unicodeBlocks = - { + private static readonly UnicodeBlock?[] _unicodeBlocks = + { #region Unicode blocks UnicodeBlock.BasicLatin, UnicodeBlock.Latin1Supplement, @@ -322,53 +322,53 @@ namespace NLangDetect.Core.Extensions #endregion }; - #region Public methods + #region Public methods - /// <remarks> - /// Taken from JDK source: http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/lang/Character.java#Character.UnicodeBlock.0LATIN_EXTENDED_ADDITIONAL - /// </remarks> - public static UnicodeBlock? GetUnicodeBlock(this char ch) - { - int codePoint = ch; + /// <remarks> + /// Taken from JDK source: http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/lang/Character.java#Character.UnicodeBlock.0LATIN_EXTENDED_ADDITIONAL + /// </remarks> + public static UnicodeBlock? GetUnicodeBlock(this char ch) + { + int codePoint = ch; - if (!IsValidCodePoint(codePoint)) - { - throw new ArgumentException("Argument is not a valid code point.", nameof(ch)); - } + if (!IsValidCodePoint(codePoint)) + { + throw new ArgumentException("Argument is not a valid code point.", nameof(ch)); + } - int top, bottom, current; + int top, bottom, current; - bottom = 0; - top = _unicodeBlockStarts.Length; - current = top / 2; + bottom = 0; + top = _unicodeBlockStarts.Length; + current = top / 2; - // invariant: top > current >= bottom && codePoint >= unicodeBlockStarts[bottom] - while (top - bottom > 1) - { - if (codePoint >= _unicodeBlockStarts[current]) - { - bottom = current; - } - else - { - top = current; - } + // invariant: top > current >= bottom && codePoint >= unicodeBlockStarts[bottom] + while (top - bottom > 1) + { + if (codePoint >= _unicodeBlockStarts[current]) + { + bottom = current; + } + else + { + top = current; + } - current = (top + bottom) / 2; - } + current = (top + bottom) / 2; + } - return _unicodeBlocks[current]; - } + return _unicodeBlocks[current]; + } - #endregion + #endregion - #region Private helper methods + #region Private helper methods - private static bool IsValidCodePoint(int codePoint) - { - return codePoint >= MIN_CODE_POINT && codePoint <= MAX_CODE_POINT; - } + private static bool IsValidCodePoint(int codePoint) + { + return codePoint >= MIN_CODE_POINT && codePoint <= MAX_CODE_POINT; + } - #endregion - } + #endregion + } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/RandomExtensions.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/RandomExtensions.cs index d55ca80df..5b2fce60b 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/RandomExtensions.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/RandomExtensions.cs @@ -1,51 +1,51 @@ -using System; +using System; namespace NLangDetect.Core.Extensions { - public static class RandomExtensions - { - private const double _Epsilon = 2.22044604925031E-15; - - private static readonly object _mutex = new object(); - - private static double _nextNextGaussian; - private static bool _hasNextNextGaussian; - - /// <summary> - /// Returns the next pseudorandom, Gaussian ("normally") distributed double value with mean 0.0 and standard deviation 1.0 from this random number generator's sequence. - /// The general contract of nextGaussian is that one double value, chosen from (approximately) the usual normal distribution with mean 0.0 and standard deviation 1.0, is pseudorandomly generated and returned. - /// </summary> - /// <remarks> - /// Taken from: http://download.oracle.com/javase/6/docs/api/java/util/Random.html (nextGaussian()) - /// </remarks> - public static double NextGaussian(this Random random) + public static class RandomExtensions { - lock (_mutex) - { - if (_hasNextNextGaussian) - { - _hasNextNextGaussian = false; + private const double _Epsilon = 2.22044604925031E-15; - return _nextNextGaussian; - } + private static readonly object _mutex = new object(); - double v1, v2, s; + private static double _nextNextGaussian; + private static bool _hasNextNextGaussian; - do + /// <summary> + /// Returns the next pseudorandom, Gaussian ("normally") distributed double value with mean 0.0 and standard deviation 1.0 from this random number generator's sequence. + /// The general contract of nextGaussian is that one double value, chosen from (approximately) the usual normal distribution with mean 0.0 and standard deviation 1.0, is pseudorandomly generated and returned. + /// </summary> + /// <remarks> + /// Taken from: http://download.oracle.com/javase/6/docs/api/java/util/Random.html (nextGaussian()) + /// </remarks> + public static double NextGaussian(this Random random) { - v1 = 2.0 * random.NextDouble() - 1.0; // between -1.0 and 1.0 - v2 = 2.0 * random.NextDouble() - 1.0; // between -1.0 and 1.0 - s = v1 * v1 + v2 * v2; - } - while (s >= 1.0 || Math.Abs(s - 0.0) < _Epsilon); + lock (_mutex) + { + if (_hasNextNextGaussian) + { + _hasNextNextGaussian = false; + + return _nextNextGaussian; + } - double multiplier = Math.Sqrt(-2.0 * Math.Log(s) / s); + double v1, v2, s; - _nextNextGaussian = v2 * multiplier; - _hasNextNextGaussian = true; + do + { + v1 = 2.0 * random.NextDouble() - 1.0; // between -1.0 and 1.0 + v2 = 2.0 * random.NextDouble() - 1.0; // between -1.0 and 1.0 + s = v1 * v1 + v2 * v2; + } + while (s >= 1.0 || Math.Abs(s - 0.0) < _Epsilon); - return v1 * multiplier; - } + double multiplier = Math.Sqrt(-2.0 * Math.Log(s) / s); + + _nextNextGaussian = v2 * multiplier; + _hasNextNextGaussian = true; + + return v1 * multiplier; + } + } } - } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/UnicodeBlock.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/UnicodeBlock.cs index 71b5de75e..bcc81f968 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/UnicodeBlock.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/UnicodeBlock.cs @@ -1,131 +1,131 @@ -namespace NLangDetect.Core.Extensions +namespace NLangDetect.Core.Extensions { - public enum UnicodeBlock - { - BasicLatin, - Latin1Supplement, - LatinExtendedA, - LatinExtendedB, - IpaExtensions, - SpacingModifierLetters, - CombiningDiacriticalMarks, - Greek, - Cyrillic, - CyrillicSupplementary, - Armenian, - Hebrew, - Arabic, - Syriac, - Thaana, - Devanagari, - Bengali, - Gurmukhi, - Gujarati, - Oriya, - Tamil, - Telugu, - Kannada, - Malayalam, - Sinhala, - Thai, - Lao, - Tibetan, - Myanmar, - Georgian, - HangulJamo, - Ethiopic, - Cherokee, - UnifiedCanadianAboriginalSyllabics, - Ogham, - Runic, - Tagalog, - Hanunoo, - Buhid, - Tagbanwa, - Khmer, - Mongolian, - Limbu, - TaiLe, - KhmerSymbols, - PhoneticExtensions, - LatinExtendedAdditional, - GreekExtended, - GeneralPunctuation, - SuperscriptsAndSubscripts, - CurrencySymbols, - CombiningMarksForSymbols, - LetterlikeSymbols, - NumberForms, - Arrows, - MathematicalOperators, - MiscellaneousTechnical, - ControlPictures, - OpticalCharacterRecognition, - EnclosedAlphanumerics, - BoxDrawing, - BlockElements, - GeometricShapes, - MiscellaneousSymbols, - Dingbats, - MiscellaneousMathematicalSymbolsA, - SupplementalArrowsA, - BraillePatterns, - SupplementalArrowsB, - MiscellaneousMathematicalSymbolsB, - SupplementalMathematicalOperators, - MiscellaneousSymbolsAndArrows, - CjkRadicalsSupplement, - KangxiRadicals, - IdeographicDescriptionCharacters, - CjkSymbolsAndPunctuation, - Hiragana, - Katakana, - Bopomofo, - HangulCompatibilityJamo, - Kanbun, - BopomofoExtended, - KatakanaPhoneticExtensions, - EnclosedCjkLettersAndMonths, - CjkCompatibility, - CjkUnifiedIdeographsExtensionA, - YijingHexagramSymbols, - CjkUnifiedIdeographs, - YiSyllables, - YiRadicals, - HangulSyllables, - HighSurrogates, - HighPrivateUseSurrogates, - LowSurrogates, - PrivateUseArea, - CjkCompatibilityIdeographs, - AlphabeticPresentationForms, - ArabicPresentationFormsA, - VariationSelectors, - CombiningHalfMarks, - CjkCompatibilityForms, - SmallFormVariants, - ArabicPresentationFormsB, - HalfwidthAndFullwidthForms, - Specials, - LinearBSyllabary, - LinearBIdeograms, - AegeanNumbers, - OldItalic, - Gothic, - Ugaritic, - Deseret, - Shavian, - Osmanya, - CypriotSyllabary, - ByzantineMusicalSymbols, - MusicalSymbols, - TaiXuanJingSymbols, - MathematicalAlphanumericSymbols, - CjkUnifiedIdeographsExtensionB, - CjkCompatibilityIdeographsSupplement, - Tags, - VariationSelectorsSupplement, - SupplementaryPrivateUseAreaA, - SupplementaryPrivateUseAreaB, - } + public enum UnicodeBlock + { + BasicLatin, + Latin1Supplement, + LatinExtendedA, + LatinExtendedB, + IpaExtensions, + SpacingModifierLetters, + CombiningDiacriticalMarks, + Greek, + Cyrillic, + CyrillicSupplementary, + Armenian, + Hebrew, + Arabic, + Syriac, + Thaana, + Devanagari, + Bengali, + Gurmukhi, + Gujarati, + Oriya, + Tamil, + Telugu, + Kannada, + Malayalam, + Sinhala, + Thai, + Lao, + Tibetan, + Myanmar, + Georgian, + HangulJamo, + Ethiopic, + Cherokee, + UnifiedCanadianAboriginalSyllabics, + Ogham, + Runic, + Tagalog, + Hanunoo, + Buhid, + Tagbanwa, + Khmer, + Mongolian, + Limbu, + TaiLe, + KhmerSymbols, + PhoneticExtensions, + LatinExtendedAdditional, + GreekExtended, + GeneralPunctuation, + SuperscriptsAndSubscripts, + CurrencySymbols, + CombiningMarksForSymbols, + LetterlikeSymbols, + NumberForms, + Arrows, + MathematicalOperators, + MiscellaneousTechnical, + ControlPictures, + OpticalCharacterRecognition, + EnclosedAlphanumerics, + BoxDrawing, + BlockElements, + GeometricShapes, + MiscellaneousSymbols, + Dingbats, + MiscellaneousMathematicalSymbolsA, + SupplementalArrowsA, + BraillePatterns, + SupplementalArrowsB, + MiscellaneousMathematicalSymbolsB, + SupplementalMathematicalOperators, + MiscellaneousSymbolsAndArrows, + CjkRadicalsSupplement, + KangxiRadicals, + IdeographicDescriptionCharacters, + CjkSymbolsAndPunctuation, + Hiragana, + Katakana, + Bopomofo, + HangulCompatibilityJamo, + Kanbun, + BopomofoExtended, + KatakanaPhoneticExtensions, + EnclosedCjkLettersAndMonths, + CjkCompatibility, + CjkUnifiedIdeographsExtensionA, + YijingHexagramSymbols, + CjkUnifiedIdeographs, + YiSyllables, + YiRadicals, + HangulSyllables, + HighSurrogates, + HighPrivateUseSurrogates, + LowSurrogates, + PrivateUseArea, + CjkCompatibilityIdeographs, + AlphabeticPresentationForms, + ArabicPresentationFormsA, + VariationSelectors, + CombiningHalfMarks, + CjkCompatibilityForms, + SmallFormVariants, + ArabicPresentationFormsB, + HalfwidthAndFullwidthForms, + Specials, + LinearBSyllabary, + LinearBIdeograms, + AegeanNumbers, + OldItalic, + Gothic, + Ugaritic, + Deseret, + Shavian, + Osmanya, + CypriotSyllabary, + ByzantineMusicalSymbols, + MusicalSymbols, + TaiXuanJingSymbols, + MathematicalAlphanumericSymbols, + CjkUnifiedIdeographsExtensionB, + CjkCompatibilityIdeographsSupplement, + Tags, + VariationSelectorsSupplement, + SupplementaryPrivateUseAreaA, + SupplementaryPrivateUseAreaB, + } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/GenProfile.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/GenProfile.cs index 5895f68ae..26157483b 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/GenProfile.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/GenProfile.cs @@ -1,67 +1,67 @@ using System; +using System.IO; using System.IO.Compression; using System.Xml; using NLangDetect.Core.Utils; -using System.IO; namespace NLangDetect.Core { - // TODO IMM HI: xml reader not tested - public static class GenProfile - { - #region Public methods - - public static LangProfile load(string lang, string file) + // TODO IMM HI: xml reader not tested + public static class GenProfile { - LangProfile profile = new LangProfile(lang); - TagExtractor tagextractor = new TagExtractor("abstract", 100); - Stream inputStream = null; - - try - { - inputStream = File.OpenRead(file); - - string extension = Path.GetExtension(file) ?? ""; + #region Public methods - if (extension.ToUpper() == ".GZ") + public static LangProfile load(string lang, string file) { - inputStream = new GZipStream(inputStream, CompressionMode.Decompress); - } + var profile = new LangProfile(lang); + var tagextractor = new TagExtractor("abstract", 100); + Stream inputStream = null; - using (XmlReader xmlReader = XmlReader.Create(inputStream)) - { - while (xmlReader.Read()) - { - switch (xmlReader.NodeType) + try { - case XmlNodeType.Element: - tagextractor.SetTag(xmlReader.Name); - break; + inputStream = File.OpenRead(file); + + string extension = Path.GetExtension(file) ?? ""; + + if (extension.ToUpper() == ".GZ") + { + inputStream = new GZipStream(inputStream, CompressionMode.Decompress); + } - case XmlNodeType.Text: - tagextractor.Add(xmlReader.Value); - break; + using (var xmlReader = XmlReader.Create(inputStream)) + { + while (xmlReader.Read()) + { + switch (xmlReader.NodeType) + { + case XmlNodeType.Element: + tagextractor.SetTag(xmlReader.Name); + break; - case XmlNodeType.EndElement: - tagextractor.CloseTag(profile); - break; + case XmlNodeType.Text: + tagextractor.Add(xmlReader.Value); + break; + + case XmlNodeType.EndElement: + tagextractor.CloseTag(profile); + break; + } + } + } + } + finally + { + if (inputStream != null) + { + inputStream.Close(); + } } - } - } - } - finally - { - if (inputStream != null) - { - inputStream.Close(); - } - } - Console.WriteLine(lang + ": " + tagextractor.Count); + Console.WriteLine(lang + ": " + tagextractor.Count); - return profile; - } + return profile; + } - #endregion - } + #endregion + } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/InternalException.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/InternalException.cs index 32e50a219..6ed1efa88 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/InternalException.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/InternalException.cs @@ -1,22 +1,22 @@ -using System; +using System; namespace NLangDetect.Core { - [Serializable] - public class InternalException : Exception - { - #region Constructor(s) - - public InternalException(string message, Exception innerException) - : base(message, innerException) + [Serializable] + public class InternalException : Exception { - } + #region Constructor(s) - public InternalException(string message) - : this(message, null) - { - } + public InternalException(string message, Exception innerException) + : base(message, innerException) + { + } + + public InternalException(string message) + : this(message, null) + { + } - #endregion - } + #endregion + } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Language.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Language.cs index f4b4b153e..e15263c05 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Language.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Language.cs @@ -2,44 +2,44 @@ using System.Globalization; namespace NLangDetect.Core { - // TODO IMM HI: name?? - public class Language - { - #region Constructor(s) - - public Language(string name, double probability) + // TODO IMM HI: name?? + public class Language { - Name = name; - Probability = probability; - } + #region Constructor(s) - #endregion + public Language(string name, double probability) + { + Name = name; + Probability = probability; + } - #region Object overrides + #endregion - public override string ToString() - { - if (Name == null) - { - return ""; - } - - return - string.Format( - CultureInfo.InvariantCulture.NumberFormat, - "{0}:{1:0.000000}", - Name, - Probability); - } + #region Object overrides - #endregion + public override string ToString() + { + if (Name == null) + { + return ""; + } - #region Properties + return + string.Format( + CultureInfo.InvariantCulture.NumberFormat, + "{0}:{1:0.000000}", + Name, + Probability); + } - public string Name { get; set; } + #endregion - public double Probability { get; set; } + #region Properties - #endregion - } + public string Name { get; set; } + + public double Probability { get; set; } + + #endregion + } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/LanguageDetector.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/LanguageDetector.cs index 044c7e759..a26f236a8 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/LanguageDetector.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/LanguageDetector.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Serialization; namespace NLangDetect.Core @@ -25,7 +25,7 @@ namespace NLangDetect.Core { if (string.IsNullOrEmpty(plainText)) { throw new ArgumentException("Argument can't be null nor empty.", nameof(plainText)); } - Detector detector = DetectorFactory.Create(_DefaultAlpha); + var detector = DetectorFactory.Create(_DefaultAlpha); detector.Append(plainText); diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/NLangDetectException.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/NLangDetectException.cs index e0d066020..800858bca 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/NLangDetectException.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/NLangDetectException.cs @@ -1,23 +1,23 @@ -using System; +using System; namespace NLangDetect.Core { - public class NLangDetectException : Exception - { - #region Constructor(s) - - public NLangDetectException(string message, ErrorCode errorCode) - : base(message) + public class NLangDetectException : Exception { - ErrorCode = errorCode; - } + #region Constructor(s) - #endregion + public NLangDetectException(string message, ErrorCode errorCode) + : base(message) + { + ErrorCode = errorCode; + } - #region Properties + #endregion - public ErrorCode ErrorCode { get; private set; } + #region Properties - #endregion - } + public ErrorCode ErrorCode { get; private set; } + + #endregion + } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/ProbVector.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/ProbVector.cs index c5a20dbf0..d7afb4113 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/ProbVector.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/ProbVector.cs @@ -1,35 +1,33 @@ -using System; +using System; using System.Collections.Generic; namespace NLangDetect.Core { - public class ProbVector - { - private readonly Dictionary<int, double> _dict = new Dictionary<int, double>(); - - public double this[int key] + public class ProbVector { - get - { - double value; - - return _dict.TryGetValue(key, out value) ? value : 0.0; - } + private readonly Dictionary<int, double> _dict = new Dictionary<int, double>(); - set - { - if (Math.Abs(value) < double.Epsilon) + public double this[int key] { - if (_dict.ContainsKey(key)) - { - _dict.Remove(key); - } + get + { + return _dict.TryGetValue(key, out var value) ? value : 0.0; + } - return; - } + set + { + if (Math.Abs(value) < double.Epsilon) + { + if (_dict.ContainsKey(key)) + { + _dict.Remove(key); + } - _dict[key] = value; - } + return; + } + + _dict[key] = value; + } + } } - } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/LangProfile.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/LangProfile.cs index 0413edfad..78b44e1fc 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/LangProfile.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/LangProfile.cs @@ -59,8 +59,8 @@ namespace NLangDetect.Core.Utils ICollection<string> keys = freq.Keys; int roman = 0; // TODO IMM HI: move up? - Regex regex1 = new Regex("^[A-Za-z]$", RegexOptions.Compiled); - List<string> keysToRemove = new List<string>(); + var regex1 = new Regex("^[A-Za-z]$", RegexOptions.Compiled); + var keysToRemove = new List<string>(); foreach (string key in keys) { @@ -93,7 +93,7 @@ namespace NLangDetect.Core.Utils ICollection<string> keys2 = freq.Keys; // TODO IMM HI: move up? - Regex regex2 = new Regex(".*[A-Za-z].*", RegexOptions.Compiled); + var regex2 = new Regex(".*[A-Za-z].*", RegexOptions.Compiled); foreach (string key in keys2) { diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/Messages.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/Messages.cs index 1d605cc47..879c0a09b 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/Messages.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/Messages.cs @@ -1,10 +1,9 @@ +using System; using System.Collections.Generic; using System.Globalization; using System.IO; -using System.Reflection; -using System.Text.RegularExpressions; using System.Linq; -using System; +using System.Text.RegularExpressions; namespace NLangDetect.Core.Utils { @@ -19,19 +18,17 @@ namespace NLangDetect.Core.Utils public static string getString(string key) { - string value; - return - _messages.TryGetValue(key, out value) + _messages.TryGetValue(key, out var value) ? value : string.Format("!{0}!", key); } private static Dictionary<string, string> LoadMessages() { - var manifestName = typeof(Messages).Assembly.GetManifestResourceNames().FirstOrDefault(i => i.IndexOf("messages.properties", StringComparison.Ordinal) != -1) ; + var manifestName = typeof(Messages).Assembly.GetManifestResourceNames().FirstOrDefault(i => i.IndexOf("messages.properties", StringComparison.Ordinal) != -1); - Stream messagesStream = + var messagesStream = typeof(Messages).Assembly .GetManifestResourceStream(manifestName); diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/NGram.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/NGram.cs index b1738f7ca..2d29ec697 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/NGram.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/NGram.cs @@ -6,14 +6,14 @@ using NLangDetect.Core.Extensions; namespace NLangDetect.Core.Utils { - public class NGram - { - public const int GramsCount = 3; + public class NGram + { + public const int GramsCount = 3; - private static readonly string Latin1Excluded = Messages.getString("NGram.LATIN1_EXCLUDE"); + private static readonly string Latin1Excluded = Messages.getString("NGram.LATIN1_EXCLUDE"); - private static readonly string[] CjkClass = - { + private static readonly string[] CjkClass = + { #region CJK classes Messages.getString("NGram.KANJI_1_0"), @@ -146,185 +146,185 @@ namespace NLangDetect.Core.Utils #endregion }; - private static readonly Dictionary<char, char> _cjkMap; + private static readonly Dictionary<char, char> _cjkMap; - private StringBuilder _grams; - private bool _capitalword; + private StringBuilder _grams; + private bool _capitalword; - #region Constructor(s) + #region Constructor(s) - static NGram() - { - _cjkMap = new Dictionary<char, char>(); + static NGram() + { + _cjkMap = new Dictionary<char, char>(); - foreach (string cjk_list in CjkClass) - { - char representative = cjk_list[0]; + foreach (string cjk_list in CjkClass) + { + char representative = cjk_list[0]; - for (int i = 0; i < cjk_list.Length; i++) - { - _cjkMap.Add(cjk_list[i], representative); + for (int i = 0; i < cjk_list.Length; i++) + { + _cjkMap.Add(cjk_list[i], representative); + } + } } - } - } - - public NGram() - { - _grams = new StringBuilder(" "); - _capitalword = false; - } - #endregion + public NGram() + { + _grams = new StringBuilder(" "); + _capitalword = false; + } - #region Public methods + #endregion - public static char Normalize(char ch) - { - UnicodeBlock? unicodeBlock = ch.GetUnicodeBlock(); + #region Public methods - if (!unicodeBlock.HasValue) - { - return ch; - } + public static char Normalize(char ch) + { + UnicodeBlock? unicodeBlock = ch.GetUnicodeBlock(); - switch (unicodeBlock.Value) - { - case UnicodeBlock.BasicLatin: - { - if (ch < 'A' || (ch < 'a' && ch > 'Z') || ch > 'z') + if (!unicodeBlock.HasValue) { - return ' '; + return ch; } - break; - } - - case UnicodeBlock.Latin1Supplement: - { - if (Latin1Excluded.IndexOf(ch) >= 0) + switch (unicodeBlock.Value) { - return ' '; + case UnicodeBlock.BasicLatin: + { + if (ch < 'A' || (ch < 'a' && ch > 'Z') || ch > 'z') + { + return ' '; + } + + break; + } + + case UnicodeBlock.Latin1Supplement: + { + if (Latin1Excluded.IndexOf(ch) >= 0) + { + return ' '; + } + + break; + } + + case UnicodeBlock.GeneralPunctuation: + { + return ' '; + } + + case UnicodeBlock.Arabic: + { + if (ch == '\u06cc') + { + return '\u064a'; + } + + break; + } + + case UnicodeBlock.LatinExtendedAdditional: + { + if (ch >= '\u1ea0') + { + return '\u1ec3'; + } + + break; + } + + case UnicodeBlock.Hiragana: + { + return '\u3042'; + } + + case UnicodeBlock.Katakana: + { + return '\u30a2'; + } + + case UnicodeBlock.Bopomofo: + case UnicodeBlock.BopomofoExtended: + { + return '\u3105'; + } + + case UnicodeBlock.CjkUnifiedIdeographs: + { + if (_cjkMap.ContainsKey(ch)) + { + return _cjkMap[ch]; + } + + break; + } + + case UnicodeBlock.HangulSyllables: + { + return '\uac00'; + } } - break; - } - - case UnicodeBlock.GeneralPunctuation: - { - return ' '; - } + return ch; + } - case UnicodeBlock.Arabic: - { - if (ch == '\u06cc') + public void AddChar(char ch) + { + ch = Normalize(ch); + char lastchar = _grams[_grams.Length - 1]; + if (lastchar == ' ') { - return '\u064a'; + _grams = new StringBuilder(" "); + _capitalword = false; + if (ch == ' ') return; } - - break; - } - - case UnicodeBlock.LatinExtendedAdditional: - { - if (ch >= '\u1ea0') + else if (_grams.Length >= GramsCount) { - return '\u1ec3'; + _grams.Remove(0, 1); } + _grams.Append(ch); - break; - } - - case UnicodeBlock.Hiragana: - { - return '\u3042'; - } - - case UnicodeBlock.Katakana: - { - return '\u30a2'; - } - - case UnicodeBlock.Bopomofo: - case UnicodeBlock.BopomofoExtended: - { - return '\u3105'; - } - - case UnicodeBlock.CjkUnifiedIdeographs: - { - if (_cjkMap.ContainsKey(ch)) + if (char.IsUpper(ch)) { - return _cjkMap[ch]; + if (char.IsUpper(lastchar)) _capitalword = true; } + else + { + _capitalword = false; + } + } - break; - } - - case UnicodeBlock.HangulSyllables: - { - return '\uac00'; - } - } - - return ch; - } + public string Get(int n) + { + if (_capitalword) + { + return null; + } - public void AddChar(char ch) - { - ch = Normalize(ch); - char lastchar = _grams[_grams.Length - 1]; - if (lastchar == ' ') - { - _grams = new StringBuilder(" "); - _capitalword = false; - if (ch == ' ') return; - } - else if (_grams.Length >= GramsCount) - { - _grams.Remove(0, 1); - } - _grams.Append(ch); - - if (char.IsUpper(ch)) - { - if (char.IsUpper(lastchar)) _capitalword = true; - } - else - { - _capitalword = false; - } - } + int len = _grams.Length; - public string Get(int n) - { - if (_capitalword) - { - return null; - } + if (n < 1 || n > 3 || len < n) + { + return null; + } - int len = _grams.Length; + if (n == 1) + { + char ch = _grams[len - 1]; - if (n < 1 || n > 3 || len < n) - { - return null; - } + if (ch == ' ') + { + return null; + } - if (n == 1) - { - char ch = _grams[len - 1]; + return ch.ToString(); + } - if (ch == ' ') - { - return null; + // TODO IMM HI: is ToString() here effective? + return _grams.ToString().SubSequence(len - n, len); } - return ch.ToString(); - } - - // TODO IMM HI: is ToString() here effective? - return _grams.ToString().SubSequence(len - n, len); + #endregion } - - #endregion - } } diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/TagExtractor.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/TagExtractor.cs index 896fd0960..4441ecd0f 100644 --- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/TagExtractor.cs +++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Utils/TagExtractor.cs @@ -2,75 +2,75 @@ using System.Text; namespace NLangDetect.Core.Utils { - public class TagExtractor - { - // TODO IMM HI: do the really need to be internal? - internal string Target; - internal int Threshold; - internal StringBuilder StringBuilder; - internal string Tag; - - #region Constructor(s) - - public TagExtractor(string tag, int threshold) + public class TagExtractor { - Target = tag; - Threshold = threshold; - Count = 0; - Clear(); - } + // TODO IMM HI: do the really need to be internal? + internal string Target; + internal int Threshold; + internal StringBuilder StringBuilder; + internal string Tag; - #endregion + #region Constructor(s) - #region Public methods - - public void Clear() - { - StringBuilder = new StringBuilder(); - Tag = null; - } + public TagExtractor(string tag, int threshold) + { + Target = tag; + Threshold = threshold; + Count = 0; + Clear(); + } - public void SetTag(string tag) - { - Tag = tag; - } + #endregion - public void Add(string line) - { - if (Tag == Target && line != null) - { - StringBuilder.Append(line); - } - } + #region Public methods - public void CloseTag(LangProfile profile) - { - if (profile != null && Tag == Target && StringBuilder.Length > Threshold) - { - var gram = new NGram(); + public void Clear() + { + StringBuilder = new StringBuilder(); + Tag = null; + } - for (int i = 0; i < StringBuilder.Length; i++) + public void SetTag(string tag) { - gram.AddChar(StringBuilder[i]); + Tag = tag; + } - for (int n = 1; n <= NGram.GramsCount; n++) - { - profile.Add(gram.Get(n)); - } + public void Add(string line) + { + if (Tag == Target && line != null) + { + StringBuilder.Append(line); + } } - Count++; - } + public void CloseTag(LangProfile profile) + { + if (profile != null && Tag == Target && StringBuilder.Length > Threshold) + { + var gram = new NGram(); + + for (int i = 0; i < StringBuilder.Length; i++) + { + gram.AddChar(StringBuilder[i]); - Clear(); - } + for (int n = 1; n <= NGram.GramsCount; n++) + { + profile.Add(gram.Get(n)); + } + } + + Count++; + } - #endregion + Clear(); + } + + #endregion - #region Properties + #region Properties - public int Count { get; private set; } + public int Count { get; private set; } - #endregion - } + #endregion + } } diff --git a/Emby.Server.Implementations/TextEncoding/TextEncoding.cs b/Emby.Server.Implementations/TextEncoding/TextEncoding.cs index 8f15d5a7b..09705d381 100644 --- a/Emby.Server.Implementations/TextEncoding/TextEncoding.cs +++ b/Emby.Server.Implementations/TextEncoding/TextEncoding.cs @@ -1,9 +1,9 @@ using System; using System.Text; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Text; +using Microsoft.Extensions.Logging; using NLangDetect.Core; using UniversalDetector; diff --git a/Emby.Server.Implementations/TextEncoding/TextEncodingDetect.cs b/Emby.Server.Implementations/TextEncoding/TextEncodingDetect.cs index 15f1ce91e..49a371efa 100644 --- a/Emby.Server.Implementations/TextEncoding/TextEncodingDetect.cs +++ b/Emby.Server.Implementations/TextEncoding/TextEncodingDetect.cs @@ -1,4 +1,4 @@ -namespace Emby.Server.Implementations.TextEncoding +namespace Emby.Server.Implementations.TextEncoding { // Copyright 2015-2016 Jonathan Bennett <jon@autoitscript.com> // diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/CharsetDetector.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/CharsetDetector.cs index 922239c54..8cd2ae658 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/CharsetDetector.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/CharsetDetector.cs @@ -100,7 +100,7 @@ namespace UniversalDetector this.confidence = 0.0f; base.Reset(); } - + public string Charset => charset; public float Confidence => confidence; @@ -109,9 +109,9 @@ namespace UniversalDetector { this.charset = charset; this.confidence = confidence; -// if (Finished != null) { -// Finished(charset, confidence); -// } + // if (Finished != null) { + // Finished(charset, confidence); + // } } } diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/Big5Prober.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/Big5Prober.cs index 19152a7ac..68c7d681b 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/Big5Prober.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/Big5Prober.cs @@ -57,27 +57,34 @@ namespace UniversalDetector.Core int codingState = 0; int max = offset + len; - for (int i = offset; i < max; i++) { + for (int i = offset; i < max; i++) + { codingState = codingSM.NextState(buf[i]); - if (codingState == SMModel.ERROR) { + if (codingState == SMModel.ERROR) + { state = ProbingState.NotMe; break; } - if (codingState == SMModel.ITSME) { + if (codingState == SMModel.ITSME) + { state = ProbingState.FoundIt; break; } - if (codingState == SMModel.START) { + if (codingState == SMModel.START) + { int charLen = codingSM.CurrentCharLen; - if (i == offset) { + if (i == offset) + { lastChar[1] = buf[offset]; distributionAnalyser.HandleOneChar(lastChar, 0, charLen); - } else { - distributionAnalyser.HandleOneChar(buf, i-1, charLen); + } + else + { + distributionAnalyser.HandleOneChar(buf, i - 1, charLen); } } } - lastChar[0] = buf[max-1]; + lastChar[0] = buf[max - 1]; if (state == ProbingState.Detecting) if (distributionAnalyser.GotEnoughData() && GetConfidence() > SHORTCUT_THRESHOLD) diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/BitPackage.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/BitPackage.cs index 19bcdc779..8554cba66 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/BitPackage.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/BitPackage.cs @@ -40,20 +40,20 @@ namespace UniversalDetector.Core { public class BitPackage { - public static int INDEX_SHIFT_4BITS = 3; - public static int INDEX_SHIFT_8BITS = 2; + public static int INDEX_SHIFT_4BITS = 3; + public static int INDEX_SHIFT_8BITS = 2; public static int INDEX_SHIFT_16BITS = 1; - public static int SHIFT_MASK_4BITS = 7; - public static int SHIFT_MASK_8BITS = 3; + public static int SHIFT_MASK_4BITS = 7; + public static int SHIFT_MASK_8BITS = 3; public static int SHIFT_MASK_16BITS = 1; - public static int BIT_SHIFT_4BITS = 2; - public static int BIT_SHIFT_8BITS = 3; + public static int BIT_SHIFT_4BITS = 2; + public static int BIT_SHIFT_8BITS = 3; public static int BIT_SHIFT_16BITS = 4; - public static int UNIT_MASK_4BITS = 0x0000000F; - public static int UNIT_MASK_8BITS = 0x000000FF; + public static int UNIT_MASK_4BITS = 0x0000000F; + public static int UNIT_MASK_8BITS = 0x000000FF; public static int UNIT_MASK_16BITS = 0x0000FFFF; private int indexShift; @@ -94,5 +94,5 @@ namespace UniversalDetector.Core return (data[i >> indexShift] >> ((i & shiftMask) << bitShift)) & unitMask; } - } + } } diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CharDistributionAnalyser.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CharDistributionAnalyser.cs index da5995932..601b4906a 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CharDistributionAnalyser.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CharDistributionAnalyser.cs @@ -83,7 +83,7 @@ namespace UniversalDetector.Core /// convert this encoding string to a number, here called order. /// This allow multiple encoding of a language to share one frequency table /// </summary> - /// <param name="buf">A <see cref="System.Byte"/></param> + /// <param name="buf">A <see cref="byte"/></param> /// <param name="offset"></param> /// <returns></returns> public abstract int GetOrder(byte[] buf, int offset); @@ -91,15 +91,17 @@ namespace UniversalDetector.Core /// <summary> /// Feed a character with known length /// </summary> - /// <param name="buf">A <see cref="System.Byte"/></param> + /// <param name="buf">A <see cref="byte"/></param> /// <param name="offset">buf offset</param> public void HandleOneChar(byte[] buf, int offset, int charLen) { //we only care about 2-bytes character in our distribution analysis int order = (charLen == 2) ? GetOrder(buf, offset) : -1; - if (order >= 0) { + if (order >= 0) + { totalChars++; - if (order < tableSize) { // order is valid + if (order < tableSize) + { // order is valid if (512 > charToFreqOrder[order]) freqChars++; } @@ -124,7 +126,8 @@ namespace UniversalDetector.Core // negative answer if (totalChars <= 0 || freqChars <= MINIMUM_DATA_THRESHOLD) return SURE_NO; - if (totalChars != freqChars) { + if (totalChars != freqChars) + { float r = freqChars / ((totalChars - freqChars) * typicalDistributionRatio); if (r < SURE_YES) return r; @@ -610,8 +613,8 @@ namespace UniversalDetector.Core /// <returns></returns> public override int GetOrder(byte[] buf, int offset) { - if (buf[offset] >= 0xB0 && buf[offset+1] >= 0xA1) - return 94 * (buf[offset] - 0xb0) + buf[offset+1] - 0xA1; + if (buf[offset] >= 0xB0 && buf[offset + 1] >= 0xA1) + return 94 * (buf[offset] - 0xb0) + buf[offset + 1] - 0xA1; else return -1; } @@ -1040,7 +1043,7 @@ namespace UniversalDetector.Core public override int GetOrder(byte[] buf, int offset) { if (buf[offset] >= 0xC4) - return 94 * (buf[offset] - 0xC4) + buf[offset+1] - 0xA1; + return 94 * (buf[offset] - 0xC4) + buf[offset + 1] - 0xA1; else return -1; } @@ -1048,7 +1051,7 @@ namespace UniversalDetector.Core public class EUCKRDistributionAnalyser : CharDistributionAnalyser { - // Sampling from about 20M text materials include literature and computer technology + // Sampling from about 20M text materials include literature and computer technology /* * 128 --> 0.79 * 256 --> 0.92 @@ -1634,7 +1637,7 @@ namespace UniversalDetector.Core public override int GetOrder(byte[] buf, int offset) { if (buf[offset] >= 0xB0) - return 94 * (buf[offset] - 0xB0) + buf[offset+1] - 0xA1; + return 94 * (buf[offset] - 0xB0) + buf[offset + 1] - 0xA1; else return -1; } @@ -2559,12 +2562,15 @@ namespace UniversalDetector.Core /// </summary> public override int GetOrder(byte[] buf, int offset) { - if (buf[offset] >= 0xA4) { - if (buf[offset+1] >= 0xA1) - return 157 * (buf[offset] - 0xA4) + buf[offset+1] - 0xA1 + 63; + if (buf[offset] >= 0xA4) + { + if (buf[offset + 1] >= 0xA1) + return 157 * (buf[offset] - 0xA4) + buf[offset + 1] - 0xA1 + 63; else - return 157 * (buf[offset] - 0xA4) + buf[offset+1] - 0x40; - } else { + return 157 * (buf[offset] - 0xA4) + buf[offset + 1] - 0x40; + } + else + { return -1; } } @@ -3140,9 +3146,9 @@ namespace UniversalDetector.Core order = 188 * (buf[offset] - 0xE0 + 31); else return -1; - order += buf[offset+1] - 0x40; + order += buf[offset + 1] - 0x40; - if (buf[offset+1] > 0x7F) + if (buf[offset + 1] > 0x7F) order--; return order; } @@ -3162,7 +3168,7 @@ namespace UniversalDetector.Core public override int GetOrder(byte[] buf, int offset) { if (buf[offset] >= 0xA0) - return 94 * (buf[offset] - 0xA1) + buf[offset+1] - 0xA1; + return 94 * (buf[offset] - 0xA1) + buf[offset + 1] - 0xA1; else return -1; } diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CharsetProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CharsetProber.cs index cc4539058..e61e5848d 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CharsetProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CharsetProber.cs @@ -40,7 +40,8 @@ using System.IO; namespace UniversalDetector.Core { - public enum ProbingState { + public enum ProbingState + { Detecting = 0, // no sure answer yet, but caller can ask for confidence FoundIt = 1, // positive answer NotMe = 2 // negative answer @@ -107,21 +108,27 @@ namespace UniversalDetector.Core { byte[] result = null; - using (MemoryStream ms = new MemoryStream(buf.Length)) { + using (var ms = new MemoryStream(buf.Length)) + { bool meetMSB = false; int max = offset + len; int prev = offset; int cur = offset; - while (cur < max) { + while (cur < max) + { byte b = buf[cur]; - if ((b & 0x80) != 0) { + if ((b & 0x80) != 0) + { meetMSB = true; - } else if (b < CAPITAL_A || (b > CAPITAL_Z && b < SMALL_A) - || b > SMALL_Z) { - if (meetMSB && cur > prev) { + } + else if (b < CAPITAL_A || (b > CAPITAL_Z && b < SMALL_A) + || b > SMALL_Z) + { + if (meetMSB && cur > prev) + { ms.Write(buf, prev, cur - prev); ms.WriteByte(SPACE); meetMSB = false; @@ -149,14 +156,16 @@ namespace UniversalDetector.Core { byte[] result = null; - using (MemoryStream ms = new MemoryStream(buf.Length)) { + using (var ms = new MemoryStream(buf.Length)) + { bool inTag = false; int max = offset + len; int prev = offset; int cur = offset; - while (cur < max) { + while (cur < max) + { byte b = buf[cur]; @@ -167,8 +176,10 @@ namespace UniversalDetector.Core // it's ascii, but it's not a letter if ((b & 0x80) == 0 && (b < CAPITAL_A || b > SMALL_Z - || (b > CAPITAL_Z && b < SMALL_A))) { - if (cur > prev && !inTag) { + || (b > CAPITAL_Z && b < SMALL_A))) + { + if (cur > prev && !inTag) + { ms.Write(buf, prev, cur - prev); ms.WriteByte(SPACE); } diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CodingStateMachine.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CodingStateMachine.cs index 34f24161d..7ba1f2aa3 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CodingStateMachine.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CodingStateMachine.cs @@ -60,7 +60,8 @@ namespace UniversalDetector.Core // for each byte we get its class, if it is first byte, // we also get byte length int byteCls = model.GetClass(b); - if (currentState == SMModel.START) { + if (currentState == SMModel.START) + { currentBytePos = 0; currentCharLen = model.charLenTable[byteCls]; } diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCJPProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCJPProber.cs index eac67fe95..56bcf2274 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCJPProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCJPProber.cs @@ -62,29 +62,36 @@ namespace UniversalDetector.Core int codingState; int max = offset + len; - for (int i = offset; i < max; i++) { + for (int i = offset; i < max; i++) + { codingState = codingSM.NextState(buf[i]); - if (codingState == SMModel.ERROR) { + if (codingState == SMModel.ERROR) + { state = ProbingState.NotMe; break; } - if (codingState == SMModel.ITSME) { + if (codingState == SMModel.ITSME) + { state = ProbingState.FoundIt; break; } - if (codingState == SMModel.START) { + if (codingState == SMModel.START) + { int charLen = codingSM.CurrentCharLen; - if (i == offset) { + if (i == offset) + { lastChar[1] = buf[offset]; contextAnalyser.HandleOneChar(lastChar, 0, charLen); distributionAnalyser.HandleOneChar(lastChar, 0, charLen); - } else { - contextAnalyser.HandleOneChar(buf, i-1, charLen); - distributionAnalyser.HandleOneChar(buf, i-1, charLen); + } + else + { + contextAnalyser.HandleOneChar(buf, i - 1, charLen); + distributionAnalyser.HandleOneChar(buf, i - 1, charLen); } } } - lastChar[0] = buf[max-1]; + lastChar[0] = buf[max - 1]; if (state == ProbingState.Detecting) if (contextAnalyser.GotEnoughData() && GetConfidence() > SHORTCUT_THRESHOLD) state = ProbingState.FoundIt; diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCKRProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCKRProber.cs index b1543dae1..ac9a0b559 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCKRProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCKRProber.cs @@ -60,27 +60,34 @@ namespace UniversalDetector.Core int codingState; int max = offset + len; - for (int i = offset; i < max; i++) { + for (int i = offset; i < max; i++) + { codingState = codingSM.NextState(buf[i]); - if (codingState == SMModel.ERROR) { + if (codingState == SMModel.ERROR) + { state = ProbingState.NotMe; break; } - if (codingState == SMModel.ITSME) { + if (codingState == SMModel.ITSME) + { state = ProbingState.FoundIt; break; } - if (codingState == SMModel.START) { + if (codingState == SMModel.START) + { int charLen = codingSM.CurrentCharLen; - if (i == offset) { + if (i == offset) + { lastChar[1] = buf[offset]; distributionAnalyser.HandleOneChar(lastChar, 0, charLen); - } else { - distributionAnalyser.HandleOneChar(buf, i-1, charLen); + } + else + { + distributionAnalyser.HandleOneChar(buf, i - 1, charLen); } } } - lastChar[0] = buf[max-1]; + lastChar[0] = buf[max - 1]; if (state == ProbingState.Detecting) if (distributionAnalyser.GotEnoughData() && GetConfidence() > SHORTCUT_THRESHOLD) diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCTWProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCTWProber.cs index 65a521760..94a14d166 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCTWProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EUCTWProber.cs @@ -56,27 +56,34 @@ namespace UniversalDetector.Core int codingState; int max = offset + len; - for (int i = 0; i < max; i++) { + for (int i = 0; i < max; i++) + { codingState = codingSM.NextState(buf[i]); - if (codingState == SMModel.ERROR) { + if (codingState == SMModel.ERROR) + { state = ProbingState.NotMe; break; } - if (codingState == SMModel.ITSME) { + if (codingState == SMModel.ITSME) + { state = ProbingState.FoundIt; break; } - if (codingState == SMModel.START) { + if (codingState == SMModel.START) + { int charLen = codingSM.CurrentCharLen; - if (i == offset) { + if (i == offset) + { lastChar[1] = buf[offset]; distributionAnalyser.HandleOneChar(lastChar, 0, charLen); - } else { - distributionAnalyser.HandleOneChar(buf, i-1, charLen); + } + else + { + distributionAnalyser.HandleOneChar(buf, i - 1, charLen); } } } - lastChar[0] = buf[max-1]; + lastChar[0] = buf[max - 1]; if (state == ProbingState.Detecting) if (distributionAnalyser.GotEnoughData() && GetConfidence() > SHORTCUT_THRESHOLD) diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EscCharsetProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EscCharsetProber.cs index f457bf490..e8da73c1c 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EscCharsetProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EscCharsetProber.cs @@ -67,22 +67,30 @@ namespace UniversalDetector.Core { int max = offset + len; - for (int i = offset; i < max && state == ProbingState.Detecting; i++) { - for (int j = activeSM - 1; j >= 0; j--) { + for (int i = offset; i < max && state == ProbingState.Detecting; i++) + { + for (int j = activeSM - 1; j >= 0; j--) + { // byte is feed to all active state machine int codingState = codingSM[j].NextState(buf[i]); - if (codingState == SMModel.ERROR) { + if (codingState == SMModel.ERROR) + { // got negative answer for this state machine, make it inactive activeSM--; - if (activeSM == 0) { + if (activeSM == 0) + { state = ProbingState.NotMe; return state; - } else if (j != activeSM) { + } + else if (j != activeSM) + { CodingStateMachine t = codingSM[activeSM]; codingSM[activeSM] = codingSM[j]; codingSM[j] = t; } - } else if (codingState == SMModel.ITSME) { + } + else if (codingState == SMModel.ITSME) + { state = ProbingState.FoundIt; detectedCharset = codingSM[j].ModelName; return state; diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EscSM.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EscSM.cs index 6ebfa8a4c..38471e28c 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EscSM.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/EscSM.cs @@ -87,7 +87,7 @@ namespace UniversalDetector.Core BitPackage.Pack4bits( 4, ITSME, START, START, START, START, START, START) //28-2f }; - private readonly static int[] HZCharLenTable = {0, 0, 0, 0, 0, 0}; + private readonly static int[] HZCharLenTable = { 0, 0, 0, 0, 0, 0 }; public HZSMModel() : base( new BitPackage(BitPackage.INDEX_SHIFT_4BITS, @@ -153,7 +153,7 @@ namespace UniversalDetector.Core BitPackage.Pack4bits(ERROR,ERROR,ERROR,ERROR,ERROR,ITSME,ERROR,START) //38-3f }; - private readonly static int[] ISO2022CNCharLenTable = {0, 0, 0, 0, 0, 0, 0, 0, 0}; + private readonly static int[] ISO2022CNCharLenTable = { 0, 0, 0, 0, 0, 0, 0, 0, 0 }; public ISO2022CNSMModel() : base( new BitPackage(BitPackage.INDEX_SHIFT_4BITS, @@ -220,7 +220,7 @@ namespace UniversalDetector.Core BitPackage.Pack4bits(ERROR, ERROR, ERROR,ERROR,ITSME,ERROR,START,START) //40-47 }; - private readonly static int[] ISO2022JPCharLenTable = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; + private readonly static int[] ISO2022JPCharLenTable = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }; public ISO2022JPSMModel() : base( new BitPackage(BitPackage.INDEX_SHIFT_4BITS, @@ -284,7 +284,7 @@ namespace UniversalDetector.Core BitPackage.Pack4bits(ERROR,ERROR,ERROR,ITSME,START,START,START,START) //20-27 }; - private readonly static int[] ISO2022KRCharLenTable = {0, 0, 0, 0, 0, 0}; + private readonly static int[] ISO2022KRCharLenTable = { 0, 0, 0, 0, 0, 0 }; public ISO2022KRSMModel() : base( new BitPackage(BitPackage.INDEX_SHIFT_4BITS, diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/GB18030Prober.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/GB18030Prober.cs index 0d2ebd8c7..f805524eb 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/GB18030Prober.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/GB18030Prober.cs @@ -64,30 +64,38 @@ namespace UniversalDetector.Core int codingState = SMModel.START; int max = offset + len; - for (int i = offset; i < max; i++) { + for (int i = offset; i < max; i++) + { codingState = codingSM.NextState(buf[i]); - if (codingState == SMModel.ERROR) { + if (codingState == SMModel.ERROR) + { state = ProbingState.NotMe; break; } - if (codingState == SMModel.ITSME) { + if (codingState == SMModel.ITSME) + { state = ProbingState.FoundIt; break; } - if (codingState == SMModel.START) { + if (codingState == SMModel.START) + { int charLen = codingSM.CurrentCharLen; - if (i == offset) { + if (i == offset) + { lastChar[1] = buf[offset]; analyser.HandleOneChar(lastChar, 0, charLen); - } else { - analyser.HandleOneChar(buf, i-1, charLen); + } + else + { + analyser.HandleOneChar(buf, i - 1, charLen); } } } - lastChar[0] = buf[max-1]; + lastChar[0] = buf[max - 1]; - if (state == ProbingState.Detecting) { + if (state == ProbingState.Detecting) + { if (analyser.GotEnoughData() && GetConfidence() > SHORTCUT_THRESHOLD) state = ProbingState.FoundIt; } diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/HebrewProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/HebrewProber.cs index 2cbf33075..bd7490ad7 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/HebrewProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/HebrewProber.cs @@ -36,7 +36,6 @@ * * ***** END LICENSE BLOCK ***** */ -using System; /** * General ideas of the Hebrew charset recognition @@ -144,11 +143,11 @@ namespace UniversalDetector.Core public class HebrewProber : CharsetProber { // windows-1255 / ISO-8859-8 code points of interest - private const byte FINAL_KAF = 0xEA; + private const byte FINAL_KAF = 0xEA; private const byte NORMAL_KAF = 0xEB; - private const byte FINAL_MEM = 0xED; + private const byte FINAL_MEM = 0xED; private const byte NORMAL_MEM = 0xEE; - private const byte FINAL_NUN = 0xEF; + private const byte FINAL_NUN = 0xEF; private const byte NORMAL_NUN = 0xF0; private const byte FINAL_PE = 0xF3; private const byte NORMAL_PE = 0xF4; @@ -217,14 +216,17 @@ namespace UniversalDetector.Core int max = offset + len; - for (int i = offset; i < max; i++) { + for (int i = offset; i < max; i++) + { byte b = buf[i]; // a word just ended - if (b == 0x20) { + if (b == 0x20) + { // *(curPtr-2) was not a space so prev is not a 1 letter word - if (beforePrev != 0x20) { + if (beforePrev != 0x20) + { // case (1) [-2:not space][-1:final letter][cur:space] if (IsFinal(prev)) finalCharLogicalScore++; @@ -233,7 +235,9 @@ namespace UniversalDetector.Core finalCharVisualScore++; } - } else { + } + else + { // case (3) [-2:space][-1:final letter][cur:not space] if ((beforePrev == 0x20) && (IsFinal(prev)) && (b != ' ')) ++finalCharVisualScore; diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/JapaneseContextAnalyser.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/JapaneseContextAnalyser.cs index 7d28224c5..a2bf04ba0 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/JapaneseContextAnalyser.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/JapaneseContextAnalyser.cs @@ -160,7 +160,7 @@ namespace UniversalDetector.Core { // This is just one way to calculate confidence. It works well for me. if (totalRel > MINIMUM_DATA_THRESHOLD) - return ((float)(totalRel - relSample[0]))/totalRel; + return ((float)(totalRel - relSample[0])) / totalRel; else return DONT_KNOW; } @@ -181,22 +181,28 @@ namespace UniversalDetector.Core // to record those bytes as well and analyse the character once it // is complete, but since a character will not make much difference, // skipping it will simplify our logic and improve performance. - for (int i = needToSkipCharNum+offset; i < max; ) { + for (int i = needToSkipCharNum + offset; i < max;) + { int order = GetOrder(buf, i, out charLen); i += charLen; - if (i > max) { + if (i > max) + { needToSkipCharNum = i - max; lastCharOrder = -1; - } else { - if (order != -1 && lastCharOrder != -1) { - totalRel ++; - if (totalRel > MAX_REL_THRESHOLD) { + } + else + { + if (order != -1 && lastCharOrder != -1) + { + totalRel++; + if (totalRel > MAX_REL_THRESHOLD) + { done = true; break; } relSample[jp2CharContext[lastCharOrder, order]]++; - } - lastCharOrder = order; + } + lastCharOrder = order; } } } @@ -210,7 +216,8 @@ namespace UniversalDetector.Core // Only 2-bytes characters are of our interest int order = (charLen == 2) ? GetOrder(buf, offset) : -1; - if (order != -1 && lastCharOrder != -1) { + if (order != -1 && lastCharOrder != -1) + { totalRel++; // count this sequence to its category counter relSample[jp2CharContext[lastCharOrder, order]]++; @@ -221,7 +228,8 @@ namespace UniversalDetector.Core public void Reset() { totalRel = 0; - for (int i = 0; i < CATEGORIES_NUM; i++) { + for (int i = 0; i < CATEGORIES_NUM; i++) + { relSample[i] = 0; needToSkipCharNum = 0; lastCharOrder = -1; @@ -254,8 +262,9 @@ namespace UniversalDetector.Core charLen = 1; // return its order if it is hiragana - if (buf[offset] == HIRAGANA_FIRST_BYTE) { - byte low = buf[offset+1]; + if (buf[offset] == HIRAGANA_FIRST_BYTE) + { + byte low = buf[offset + 1]; if (low >= 0x9F && low <= 0xF1) return low - 0x9F; } @@ -265,8 +274,9 @@ namespace UniversalDetector.Core protected override int GetOrder(byte[] buf, int offset) { // We are only interested in Hiragana - if (buf[offset] == HIRAGANA_FIRST_BYTE) { - byte low = buf[offset+1]; + if (buf[offset] == HIRAGANA_FIRST_BYTE) + { + byte low = buf[offset + 1]; if (low >= 0x9F && low <= 0xF1) return low - 0x9F; } @@ -292,8 +302,9 @@ namespace UniversalDetector.Core charLen = 1; // return its order if it is hiragana - if (high == HIRAGANA_FIRST_BYTE) { - byte low = buf[offset+1]; + if (high == HIRAGANA_FIRST_BYTE) + { + byte low = buf[offset + 1]; if (low >= 0xA1 && low <= 0xF3) return low - 0xA1; } @@ -303,8 +314,9 @@ namespace UniversalDetector.Core protected override int GetOrder(byte[] buf, int offset) { // We are only interested in Hiragana - if (buf[offset] == HIRAGANA_FIRST_BYTE) { - byte low = buf[offset+1]; + if (buf[offset] == HIRAGANA_FIRST_BYTE) + { + byte low = buf[offset + 1]; if (low >= 0xA1 && low <= 0xF3) return low - 0xA1; } diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/Latin1Prober.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/Latin1Prober.cs index 5d57e30e1..11ce90c87 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/Latin1Prober.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/Latin1Prober.cs @@ -36,7 +36,6 @@ * * ***** END LICENSE BLOCK ***** */ -using System; namespace UniversalDetector.Core { @@ -135,12 +134,14 @@ namespace UniversalDetector.Core byte[] newbuf = FilterWithEnglishLetters(buf, offset, len); byte charClass, freq; - for (int i = 0; i < newbuf.Length; i++) { + for (int i = 0; i < newbuf.Length; i++) + { charClass = Latin1_CharToClass[newbuf[i]]; freq = Latin1ClassModel[lastCharClass * CLASS_NUM + charClass]; - if (freq == 0) { - state = ProbingState.NotMe; - break; + if (freq == 0) + { + state = ProbingState.NotMe; + break; } freqCounter[freq]++; lastCharClass = charClass; @@ -155,13 +156,17 @@ namespace UniversalDetector.Core float confidence = 0.0f; int total = 0; - for (int i = 0; i < FREQ_CAT_NUM; i++) { + for (int i = 0; i < FREQ_CAT_NUM; i++) + { total += freqCounter[i]; } - if (total <= 0) { + if (total <= 0) + { confidence = 0.0f; - } else { + } + else + { confidence = freqCounter[3] * 1.0f / total; confidence -= freqCounter[1] * 20.0f / total; } diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/MBCSGroupProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/MBCSGroupProber.cs index b4f6928a4..b23e499c3 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/MBCSGroupProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/MBCSGroupProber.cs @@ -36,7 +36,6 @@ * * ***** END LICENSE BLOCK ***** */ -using System; namespace UniversalDetector.Core { @@ -67,7 +66,8 @@ namespace UniversalDetector.Core public override string GetCharsetName() { - if (bestGuess == -1) { + if (bestGuess == -1) + { GetConfidence(); if (bestGuess == -1) bestGuess = 0; @@ -78,13 +78,17 @@ namespace UniversalDetector.Core public override void Reset() { activeNum = 0; - for (int i = 0; i < probers.Length; i++) { - if (probers[i] != null) { - probers[i].Reset(); - isActive[i] = true; - ++activeNum; - } else { - isActive[i] = false; + for (int i = 0; i < probers.Length; i++) + { + if (probers[i] != null) + { + probers[i].Reset(); + isActive[i] = true; + ++activeNum; + } + else + { + isActive[i] = false; } } bestGuess = -1; @@ -100,33 +104,43 @@ namespace UniversalDetector.Core bool keepNext = true; int max = offset + len; - for (int i = offset; i < max; i++) { - if ((buf[i] & 0x80) != 0) { + for (int i = offset; i < max; i++) + { + if ((buf[i] & 0x80) != 0) + { highbyteBuf[hptr++] = buf[i]; keepNext = true; - } else { + } + else + { //if previous is highbyte, keep this even it is a ASCII - if (keepNext) { + if (keepNext) + { highbyteBuf[hptr++] = buf[i]; keepNext = false; } } } - ProbingState st = ProbingState.NotMe; + var st = ProbingState.NotMe; - for (int i = 0; i < probers.Length; i++) { + for (int i = 0; i < probers.Length; i++) + { if (!isActive[i]) continue; st = probers[i].HandleData(highbyteBuf, 0, hptr); - if (st == ProbingState.FoundIt) { + if (st == ProbingState.FoundIt) + { bestGuess = i; state = ProbingState.FoundIt; break; - } else if (st == ProbingState.NotMe) { + } + else if (st == ProbingState.NotMe) + { isActive[i] = false; activeNum--; - if (activeNum <= 0) { + if (activeNum <= 0) + { state = ProbingState.NotMe; break; } @@ -140,16 +154,23 @@ namespace UniversalDetector.Core float bestConf = 0.0f; float cf = 0.0f; - if (state == ProbingState.FoundIt) { + if (state == ProbingState.FoundIt) + { return 0.99f; - } else if (state == ProbingState.NotMe) { + } + else if (state == ProbingState.NotMe) + { return 0.01f; - } else { - for (int i = 0; i < PROBERS_NUM; i++) { + } + else + { + for (int i = 0; i < PROBERS_NUM; i++) + { if (!isActive[i]) continue; cf = probers[i].GetConfidence(); - if (bestConf < cf) { + if (bestConf < cf) + { bestConf = cf; bestGuess = i; } @@ -162,10 +183,14 @@ namespace UniversalDetector.Core { float cf; GetConfidence(); - for (int i = 0; i < PROBERS_NUM; i++) { - if (!isActive[i]) { + for (int i = 0; i < PROBERS_NUM; i++) + { + if (!isActive[i]) + { //Console.WriteLine(" MBCS inactive: {0} (confidence is too low).", ProberName[i]); - } else { + } + else + { cf = probers[i].GetConfidence(); //Console.WriteLine(" MBCS {0}: [{1}]", cf, ProberName[i]); } diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/MBCSSM.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/MBCSSM.cs index 65e04292a..b75340166 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/MBCSSM.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/MBCSSM.cs @@ -174,7 +174,7 @@ namespace UniversalDetector.Core // it is used for frequency analysis only, and we are validating // each code range there as well. So it is safe to set it to be // 2 here. - private readonly static int[] GB18030CharLenTable = {0, 1, 1, 1, 1, 1, 2}; + private readonly static int[] GB18030CharLenTable = { 0, 1, 1, 1, 1, 1, 2 }; public GB18030SMModel() : base( new BitPackage(BitPackage.INDEX_SHIFT_4BITS, @@ -235,7 +235,7 @@ namespace UniversalDetector.Core BitPackage.Pack4bits(ERROR,START,START,START,START,START,START,START) //10-17 }; - private readonly static int[] BIG5CharLenTable = {0, 1, 1, 2, 0}; + private readonly static int[] BIG5CharLenTable = { 0, 1, 1, 2, 0 }; public BIG5SMModel() : base( new BitPackage(BitPackage.INDEX_SHIFT_4BITS, diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SBCSGroupProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SBCSGroupProber.cs index 640b19c4a..cdbc16891 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SBCSGroupProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SBCSGroupProber.cs @@ -36,7 +36,6 @@ * * ***** END LICENSE BLOCK ***** */ -using System; namespace UniversalDetector.Core { @@ -60,7 +59,7 @@ namespace UniversalDetector.Core probers[7] = new SingleByteCharSetProber(new Win1253Model()); probers[8] = new SingleByteCharSetProber(new Latin5BulgarianModel()); probers[9] = new SingleByteCharSetProber(new Win1251BulgarianModel()); - HebrewProber hebprober = new HebrewProber(); + var hebprober = new HebrewProber(); probers[10] = hebprober; // Logical probers[11] = new SingleByteCharSetProber(new Win1255Model(), false, hebprober); @@ -76,7 +75,7 @@ namespace UniversalDetector.Core public override ProbingState HandleData(byte[] buf, int offset, int len) { - ProbingState st = ProbingState.NotMe; + var st = ProbingState.NotMe; //apply filter to original buffer, and we got new buffer back //depend on what script it is, we will feed them the new buffer @@ -88,19 +87,24 @@ namespace UniversalDetector.Core if (newBuf.Length == 0) return state; // Nothing to see here, move on. - for (int i = 0; i < PROBERS_NUM; i++) { + for (int i = 0; i < PROBERS_NUM; i++) + { if (!isActive[i]) continue; st = probers[i].HandleData(newBuf, 0, newBuf.Length); - if (st == ProbingState.FoundIt) { + if (st == ProbingState.FoundIt) + { bestGuess = i; state = ProbingState.FoundIt; break; - } else if (st == ProbingState.NotMe) { + } + else if (st == ProbingState.NotMe) + { isActive[i] = false; activeNum--; - if (activeNum <= 0) { + if (activeNum <= 0) + { state = ProbingState.NotMe; break; } @@ -112,24 +116,25 @@ namespace UniversalDetector.Core public override float GetConfidence() { float bestConf = 0.0f, cf; - switch (state) { - case ProbingState.FoundIt: - return 0.99f; //sure yes - case ProbingState.NotMe: - return 0.01f; //sure no - default: - for (int i = 0; i < PROBERS_NUM; i++) - { - if (!isActive[i]) - continue; - cf = probers[i].GetConfidence(); - if (bestConf < cf) + switch (state) + { + case ProbingState.FoundIt: + return 0.99f; //sure yes + case ProbingState.NotMe: + return 0.01f; //sure no + default: + for (int i = 0; i < PROBERS_NUM; i++) { - bestConf = cf; - bestGuess = i; + if (!isActive[i]) + continue; + cf = probers[i].GetConfidence(); + if (bestConf < cf) + { + bestConf = cf; + bestGuess = i; + } } - } - break; + break; } return bestConf; } @@ -137,8 +142,9 @@ namespace UniversalDetector.Core public override void DumpStatus() { float cf = GetConfidence(); - // Console.WriteLine(" SBCS Group Prober --------begin status"); - for (int i = 0; i < PROBERS_NUM; i++) { + // Console.WriteLine(" SBCS Group Prober --------begin status"); + for (int i = 0; i < PROBERS_NUM; i++) + { if (isActive[i]) probers[i].DumpStatus(); //else @@ -148,15 +154,19 @@ namespace UniversalDetector.Core //Console.WriteLine(" SBCS Group found best match [{0}] confidence {1}.", probers[bestGuess].GetCharsetName(), cf); } - public override void Reset () + public override void Reset() { int activeNum = 0; - for (int i = 0; i < PROBERS_NUM; i++) { - if (probers[i] != null) { + for (int i = 0; i < PROBERS_NUM; i++) + { + if (probers[i] != null) + { probers[i].Reset(); isActive[i] = true; activeNum++; - } else { + } + else + { isActive[i] = false; } } @@ -167,7 +177,8 @@ namespace UniversalDetector.Core public override string GetCharsetName() { //if we have no answer yet - if (bestGuess == -1) { + if (bestGuess == -1) + { GetConfidence(); //no charset seems positive if (bestGuess == -1) diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SBCharsetProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SBCharsetProber.cs index 65c0f8ca8..b87ac2170 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SBCharsetProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SBCharsetProber.cs @@ -36,7 +36,6 @@ * * ***** END LICENSE BLOCK ***** */ -using System; namespace UniversalDetector.Core { @@ -49,7 +48,7 @@ namespace UniversalDetector.Core private const float NEGATIVE_SHORTCUT_THRESHOLD = 0.05f; private const int SYMBOL_CAT_ORDER = 250; private const int NUMBER_OF_SEQ_CAT = 4; - private const int POSITIVE_CAT = NUMBER_OF_SEQ_CAT-1; + private const int POSITIVE_CAT = NUMBER_OF_SEQ_CAT - 1; private const int NEGATIVE_CAT = 0; protected SequenceModel model; @@ -89,28 +88,33 @@ namespace UniversalDetector.Core { int max = offset + len; - for (int i = offset; i < max; i++) { + for (int i = offset; i < max; i++) + { byte order = model.GetOrder(buf[i]); if (order < SYMBOL_CAT_ORDER) totalChar++; - if (order < SAMPLE_SIZE) { + if (order < SAMPLE_SIZE) + { freqChar++; - if (lastOrder < SAMPLE_SIZE) { + if (lastOrder < SAMPLE_SIZE) + { totalSeqs++; if (!reversed) - ++(seqCounters[model.GetPrecedence(lastOrder*SAMPLE_SIZE+order)]); + ++(seqCounters[model.GetPrecedence(lastOrder * SAMPLE_SIZE + order)]); else // reverse the order of the letters in the lookup - ++(seqCounters[model.GetPrecedence(order*SAMPLE_SIZE+lastOrder)]); + ++(seqCounters[model.GetPrecedence(order * SAMPLE_SIZE + lastOrder)]); } } lastOrder = order; } - if (state == ProbingState.Detecting) { - if (totalSeqs > SB_ENOUGH_REL_THRESHOLD) { + if (state == ProbingState.Detecting) + { + if (totalSeqs > SB_ENOUGH_REL_THRESHOLD) + { float cf = GetConfidence(); if (cf > POSITIVE_SHORTCUT_THRESHOLD) state = ProbingState.FoundIt; @@ -139,7 +143,8 @@ namespace UniversalDetector.Core // POSITIVE_APPROACH float r = 0.0f; - if (totalSeqs > 0) { + if (totalSeqs > 0) + { r = 1.0f * seqCounters[POSITIVE_CAT] / totalSeqs / model.TypicalPositiveRatio; r = r * freqChar / totalChar; if (r >= 1.0f) diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SJISProber.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SJISProber.cs index e1fbb873e..d01a683bc 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SJISProber.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SJISProber.cs @@ -69,29 +69,36 @@ namespace UniversalDetector.Core int codingState; int max = offset + len; - for (int i = offset; i < max; i++) { + for (int i = offset; i < max; i++) + { codingState = codingSM.NextState(buf[i]); - if (codingState == SMModel.ERROR) { + if (codingState == SMModel.ERROR) + { state = ProbingState.NotMe; break; } - if (codingState == SMModel.ITSME) { + if (codingState == SMModel.ITSME) + { state = ProbingState.FoundIt; break; } - if (codingState == SMModel.START) { + if (codingState == SMModel.START) + { int charLen = codingSM.CurrentCharLen; - if (i == offset) { + if (i == offset) + { lastChar[1] = buf[offset]; - contextAnalyser.HandleOneChar(lastChar, 2-charLen, charLen); + contextAnalyser.HandleOneChar(lastChar, 2 - charLen, charLen); distributionAnalyser.HandleOneChar(lastChar, 0, charLen); - } else { - contextAnalyser.HandleOneChar(buf, i+1-charLen, charLen); - distributionAnalyser.HandleOneChar(buf, i-1, charLen); + } + else + { + contextAnalyser.HandleOneChar(buf, i + 1 - charLen, charLen); + distributionAnalyser.HandleOneChar(buf, i - 1, charLen); } } } - lastChar[0] = buf[max-1]; + lastChar[0] = buf[max - 1]; if (state == ProbingState.Detecting) if (contextAnalyser.GotEnoughData() && GetConfidence() > SHORTCUT_THRESHOLD) state = ProbingState.FoundIt; diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SMModel.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SMModel.cs index cb2f201aa..f11b01e21 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SMModel.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SMModel.cs @@ -36,7 +36,6 @@ * * ***** END LICENSE BLOCK ***** */ -using System; namespace UniversalDetector.Core { @@ -54,7 +53,7 @@ namespace UniversalDetector.Core public int[] charLenTable; private string name; - + public string Name => name; private int classFactor; diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SequenceModel.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SequenceModel.cs index b813dda76..3d5ce5e13 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SequenceModel.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SequenceModel.cs @@ -36,7 +36,6 @@ * * ***** END LICENSE BLOCK ***** */ -using System; namespace UniversalDetector.Core { @@ -51,12 +50,12 @@ namespace UniversalDetector.Core // freqSeqs / totalSeqs protected float typicalPositiveRatio; - + public float TypicalPositiveRatio => typicalPositiveRatio; - // not used + // not used protected bool keepEnglishLetter; - + public bool KeepEnglishLetter => keepEnglishLetter; protected string charsetName; diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/UTF8Prober.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/UTF8Prober.cs index a469e2a0c..2a625576f 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/UTF8Prober.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/UTF8Prober.cs @@ -51,7 +51,8 @@ namespace UniversalDetector.Core Reset(); } - public override string GetCharsetName() { + public override string GetCharsetName() + { return "UTF-8"; } @@ -67,21 +68,25 @@ namespace UniversalDetector.Core int codingState = SMModel.START; int max = offset + len; - for (int i = offset; i < max; i++) { + for (int i = offset; i < max; i++) + { codingState = codingSM.NextState(buf[i]); - if (codingState == SMModel.ERROR) { + if (codingState == SMModel.ERROR) + { state = ProbingState.NotMe; break; } - if (codingState == SMModel.ITSME) { + if (codingState == SMModel.ITSME) + { state = ProbingState.FoundIt; break; } - if (codingState == SMModel.START) { + if (codingState == SMModel.START) + { if (codingSM.CurrentCharLen >= 2) numOfMBChar++; } @@ -98,11 +103,14 @@ namespace UniversalDetector.Core float unlike = 0.99f; float confidence = 0.0f; - if (numOfMBChar < 6) { + if (numOfMBChar < 6) + { for (int i = 0; i < numOfMBChar; i++) unlike *= ONE_CHAR_PROB; confidence = 1.0f - unlike; - } else { + } + else + { confidence = 0.99f; } return confidence; diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/UniversalDetector.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/UniversalDetector.cs index 4dcb282cc..812a9a793 100644 --- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/UniversalDetector.cs +++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/UniversalDetector.cs @@ -39,7 +39,7 @@ namespace UniversalDetector.Core { - enum InputState { PureASCII=0, EscASCII=1, Highbyte=2 }; + enum InputState { PureASCII = 0, EscASCII = 1, Highbyte = 2 }; public abstract class UniversalDetector { @@ -70,7 +70,8 @@ namespace UniversalDetector.Core protected CharsetProber escCharsetProber; protected string detectedCharset; - public UniversalDetector(int languageFilter) { + public UniversalDetector(int languageFilter) + { this.start = true; this.inputState = InputState.PureASCII; this.lastChar = 0x00; @@ -80,7 +81,8 @@ namespace UniversalDetector.Core public virtual void Feed(byte[] buf, int offset, int len) { - if (done) { + if (done) + { return; } @@ -88,52 +90,60 @@ namespace UniversalDetector.Core gotData = true; // If the data starts with BOM, we know it is UTF - if (start) { + if (start) + { start = false; - if (len > 3) { - switch (buf[0]) { - case 0xEF: - if (0xBB == buf[1] && 0xBF == buf[2]) - detectedCharset = "UTF-8"; - break; - case 0xFE: - if (0xFF == buf[1] && 0x00 == buf[2] && 0x00 == buf[3]) - // FE FF 00 00 UCS-4, unusual octet order BOM (3412) - detectedCharset = "X-ISO-10646-UCS-4-3412"; - else if (0xFF == buf[1]) - detectedCharset = "UTF-16BE"; - break; - case 0x00: - if (0x00 == buf[1] && 0xFE == buf[2] && 0xFF == buf[3]) - detectedCharset = "UTF-32BE"; - else if (0x00 == buf[1] && 0xFF == buf[2] && 0xFE == buf[3]) - // 00 00 FF FE UCS-4, unusual octet order BOM (2143) - detectedCharset = "X-ISO-10646-UCS-4-2143"; - break; - case 0xFF: - if (0xFE == buf[1] && 0x00 == buf[2] && 0x00 == buf[3]) - detectedCharset = "UTF-32LE"; - else if (0xFE == buf[1]) - detectedCharset = "UTF-16LE"; - break; + if (len > 3) + { + switch (buf[0]) + { + case 0xEF: + if (0xBB == buf[1] && 0xBF == buf[2]) + detectedCharset = "UTF-8"; + break; + case 0xFE: + if (0xFF == buf[1] && 0x00 == buf[2] && 0x00 == buf[3]) + // FE FF 00 00 UCS-4, unusual octet order BOM (3412) + detectedCharset = "X-ISO-10646-UCS-4-3412"; + else if (0xFF == buf[1]) + detectedCharset = "UTF-16BE"; + break; + case 0x00: + if (0x00 == buf[1] && 0xFE == buf[2] && 0xFF == buf[3]) + detectedCharset = "UTF-32BE"; + else if (0x00 == buf[1] && 0xFF == buf[2] && 0xFE == buf[3]) + // 00 00 FF FE UCS-4, unusual octet order BOM (2143) + detectedCharset = "X-ISO-10646-UCS-4-2143"; + break; + case 0xFF: + if (0xFE == buf[1] && 0x00 == buf[2] && 0x00 == buf[3]) + detectedCharset = "UTF-32LE"; + else if (0xFE == buf[1]) + detectedCharset = "UTF-16LE"; + break; } // switch } - if (detectedCharset != null) { + if (detectedCharset != null) + { done = true; return; } } - for (int i = 0; i < len; i++) { + for (int i = 0; i < len; i++) + { // other than 0xa0, if every other character is ascii, the page is ascii - if ((buf[i] & 0x80) != 0 && buf[i] != 0xA0) { + if ((buf[i] & 0x80) != 0 && buf[i] != 0xA0) + { // we got a non-ascii byte (high-byte) - if (inputState != InputState.Highbyte) { + if (inputState != InputState.Highbyte) + { inputState = InputState.Highbyte; // kill EscCharsetProber if it is active - if (escCharsetProber != null) { + if (escCharsetProber != null) + { escCharsetProber = null; } @@ -145,9 +155,12 @@ namespace UniversalDetector.Core if (charsetProbers[2] == null) charsetProbers[2] = new Latin1Prober(); } - } else { + } + else + { if (inputState == InputState.PureASCII && - (buf[i] == 0x33 || (buf[i] == 0x7B && lastChar == 0x7E))) { + (buf[i] == 0x33 || (buf[i] == 0x7B && lastChar == 0x7E))) + { // found escape character or HZ "~{" inputState = InputState.EscASCII; } @@ -155,27 +168,33 @@ namespace UniversalDetector.Core } } - ProbingState st = ProbingState.NotMe; + var st = ProbingState.NotMe; - switch (inputState) { + switch (inputState) + { case InputState.EscASCII: - if (escCharsetProber == null) { + if (escCharsetProber == null) + { escCharsetProber = new EscCharsetProber(); } st = escCharsetProber.HandleData(buf, offset, len); - if (st == ProbingState.FoundIt) { + if (st == ProbingState.FoundIt) + { done = true; detectedCharset = escCharsetProber.GetCharsetName(); } break; case InputState.Highbyte: - for (int i = 0; i < PROBERS_NUM; i++) { - if (charsetProbers[i] != null) { + for (int i = 0; i < PROBERS_NUM; i++) + { + if (charsetProbers[i] != null) + { st = charsetProbers[i].HandleData(buf, offset, len); - #if DEBUG +#if DEBUG charsetProbers[i].DumpStatus(); - #endif - if (st == ProbingState.FoundIt) { +#endif + if (st == ProbingState.FoundIt) + { done = true; detectedCharset = charsetProbers[i].GetCharsetName(); return; @@ -195,38 +214,47 @@ namespace UniversalDetector.Core /// </summary> public virtual void DataEnd() { - if (!gotData) { + if (!gotData) + { // we haven't got any data yet, return immediately // caller program sometimes call DataEnd before anything has // been sent to detector return; } - if (detectedCharset != null) { + if (detectedCharset != null) + { done = true; Report(detectedCharset, 1.0f); return; } - if (inputState == InputState.Highbyte) { + if (inputState == InputState.Highbyte) + { float proberConfidence = 0.0f; float maxProberConfidence = 0.0f; int maxProber = 0; - for (int i = 0; i < PROBERS_NUM; i++) { - if (charsetProbers[i] != null) { + for (int i = 0; i < PROBERS_NUM; i++) + { + if (charsetProbers[i] != null) + { proberConfidence = charsetProbers[i].GetConfidence(); - if (proberConfidence > maxProberConfidence) { + if (proberConfidence > maxProberConfidence) + { maxProberConfidence = proberConfidence; maxProber = i; } } } - if (maxProberConfidence > MINIMUM_THRESHOLD) { + if (maxProberConfidence > MINIMUM_THRESHOLD) + { Report(charsetProbers[maxProber].GetCharsetName(), maxProberConfidence); } - } else if (inputState == InputState.PureASCII) { + } + else if (inputState == InputState.PureASCII) + { Report("ASCII", 1.0f); } } diff --git a/Emby.Server.Implementations/Threading/CommonTimer.cs b/Emby.Server.Implementations/Threading/CommonTimer.cs index 9451b07f3..5a05da564 100644 --- a/Emby.Server.Implementations/Threading/CommonTimer.cs +++ b/Emby.Server.Implementations/Threading/CommonTimer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Threading; using MediaBrowser.Model.Threading; diff --git a/Emby.Server.Implementations/Threading/TimerFactory.cs b/Emby.Server.Implementations/Threading/TimerFactory.cs index 4ab6f6fc4..ca50064c7 100644 --- a/Emby.Server.Implementations/Threading/TimerFactory.cs +++ b/Emby.Server.Implementations/Threading/TimerFactory.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Threading; namespace Emby.Server.Implementations.Threading diff --git a/Emby.Server.Implementations/Udp/UdpServer.cs b/Emby.Server.Implementations/Udp/UdpServer.cs index 7a59d95bf..bd86c6cdc 100644 --- a/Emby.Server.Implementations/Udp/UdpServer.cs +++ b/Emby.Server.Implementations/Udp/UdpServer.cs @@ -1,15 +1,15 @@ -using MediaBrowser.Controller; -using MediaBrowser.Model.ApiClient; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller; +using MediaBrowser.Model.ApiClient; using MediaBrowser.Model.Events; using MediaBrowser.Model.Net; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Udp { diff --git a/Emby.Server.Implementations/Updates/InstallationManager.cs b/Emby.Server.Implementations/Updates/InstallationManager.cs index d4653281f..6e69ecb56 100644 --- a/Emby.Server.Implementations/Updates/InstallationManager.cs +++ b/Emby.Server.Implementations/Updates/InstallationManager.cs @@ -11,13 +11,13 @@ using MediaBrowser.Common.Net; using MediaBrowser.Common.Plugins; using MediaBrowser.Common.Progress; using MediaBrowser.Common.Updates; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Model.Cryptography; using MediaBrowser.Model.Events; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Updates; -using MediaBrowser.Controller.Configuration; +using Microsoft.Extensions.Logging; namespace Emby.Server.Implementations.Updates { @@ -292,9 +292,7 @@ namespace Emby.Server.Implementations.Updates return true; } - Version requiredVersion; - - return Version.TryParse(packageVersionInfo.requiredVersionStr, out requiredVersion) && currentServerVersion >= requiredVersion; + return Version.TryParse(packageVersionInfo.requiredVersionStr, out var requiredVersion) && currentServerVersion >= requiredVersion; } /// <summary> @@ -390,7 +388,7 @@ namespace Emby.Server.Implementations.Updates /// <param name="progress">The progress.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">package</exception> + /// <exception cref="ArgumentNullException">package</exception> public async Task InstallPackage(PackageVersionInfo package, bool isPlugin, IProgress<double> progress, CancellationToken cancellationToken) { if (package == null) @@ -601,7 +599,7 @@ namespace Emby.Server.Implementations.Updates /// Uninstalls a plugin /// </summary> /// <param name="plugin">The plugin.</param> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentException"></exception> public void UninstallPlugin(IPlugin plugin) { plugin.OnUninstalling(); diff --git a/Emby.Server.Implementations/UserViews/CollectionFolderImageProvider.cs b/Emby.Server.Implementations/UserViews/CollectionFolderImageProvider.cs index 2543fd372..8788cfc26 100644 --- a/Emby.Server.Implementations/UserViews/CollectionFolderImageProvider.cs +++ b/Emby.Server.Implementations/UserViews/CollectionFolderImageProvider.cs @@ -1,23 +1,15 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.IO; using System.Linq; -using System.Threading.Tasks; using Emby.Server.Implementations.Images; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Collections; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.IO; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Querying; namespace Emby.Server.Implementations.UserViews diff --git a/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs b/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs index 95b2e65be..937db3f23 100644 --- a/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs +++ b/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs @@ -1,21 +1,19 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using Emby.Server.Implementations.Images; using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Drawing; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading.Tasks; -using Emby.Server.Implementations.Images; -using MediaBrowser.Controller.Dto; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.LiveTv; using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; namespace Emby.Server.Implementations.UserViews { diff --git a/Emby.Server.Implementations/UserViews/FolderImageProvider.cs b/Emby.Server.Implementations/UserViews/FolderImageProvider.cs index 057d22aec..7629f6039 100644 --- a/Emby.Server.Implementations/UserViews/FolderImageProvider.cs +++ b/Emby.Server.Implementations/UserViews/FolderImageProvider.cs @@ -1,18 +1,15 @@ -using MediaBrowser.Common.Configuration; +using System.Collections.Generic; +using Emby.Server.Implementations.Images; +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Drawing; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using Emby.Server.Implementations.Images; -using MediaBrowser.Model.IO; using MediaBrowser.Model.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Model.Dto; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Querying; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Dto; namespace Emby.Server.Implementations.Photos { diff --git a/Emby.Server.Implementations/Xml/XmlReaderSettingsFactory.cs b/Emby.Server.Implementations/Xml/XmlReaderSettingsFactory.cs index 0f4e8af3c..308922e6d 100644 --- a/Emby.Server.Implementations/Xml/XmlReaderSettingsFactory.cs +++ b/Emby.Server.Implementations/Xml/XmlReaderSettingsFactory.cs @@ -1,4 +1,4 @@ -using System.Xml; +using System.Xml; using MediaBrowser.Model.Xml; namespace Emby.Server.Implementations.Xml diff --git a/Emby.XmlTv/Emby.XmlTv.Console/Classes/EntityExtensions.cs b/Emby.XmlTv/Emby.XmlTv.Console/Classes/EntityExtensions.cs index 37fcf0eca..96e508f12 100644 --- a/Emby.XmlTv/Emby.XmlTv.Console/Classes/EntityExtensions.cs +++ b/Emby.XmlTv/Emby.XmlTv.Console/Classes/EntityExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Linq; using System.Text; diff --git a/Emby.XmlTv/Emby.XmlTv.Console/Emby.XmlTv.Console.csproj b/Emby.XmlTv/Emby.XmlTv.Console/Emby.XmlTv.Console.csproj index 6ce4cff2c..c10b28e82 100644 --- a/Emby.XmlTv/Emby.XmlTv.Console/Emby.XmlTv.Console.csproj +++ b/Emby.XmlTv/Emby.XmlTv.Console/Emby.XmlTv.Console.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <Reference Include="System" /> <Reference Include="System.Core" /> diff --git a/Emby.XmlTv/Emby.XmlTv.Console/Program.cs b/Emby.XmlTv/Emby.XmlTv.Console/Program.cs index e72d94bf5..3e0c7d125 100644 --- a/Emby.XmlTv/Emby.XmlTv.Console/Program.cs +++ b/Emby.XmlTv/Emby.XmlTv.Console/Program.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Diagnostics; using System.IO; using System.Linq; @@ -100,4 +100,4 @@ namespace Emby.XmlTv.Console return count; } } -}
\ No newline at end of file +} diff --git a/Emby.XmlTv/Emby.XmlTv.Console/Properties/AssemblyInfo.cs b/Emby.XmlTv/Emby.XmlTv.Console/Properties/AssemblyInfo.cs index 4178a27a1..ff59f890f 100644 --- a/Emby.XmlTv/Emby.XmlTv.Console/Properties/AssemblyInfo.cs +++ b/Emby.XmlTv/Emby.XmlTv.Console/Properties/AssemblyInfo.cs @@ -1,4 +1,4 @@ -using System.Reflection; +using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; diff --git a/Emby.XmlTv/Emby.XmlTv.Test/Emby.XmlTv.Test.csproj b/Emby.XmlTv/Emby.XmlTv.Test/Emby.XmlTv.Test.csproj index 7ffb30b93..d7c4ad0b7 100644 --- a/Emby.XmlTv/Emby.XmlTv.Test/Emby.XmlTv.Test.csproj +++ b/Emby.XmlTv/Emby.XmlTv.Test/Emby.XmlTv.Test.csproj @@ -1,5 +1,6 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="14.0" DefaultTargets="Build" + xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> @@ -109,15 +110,15 @@ </PropertyGroup> <Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" /> </Target> - <!-- To modify your build process, add your task inside one of the targets below and uncomment it. + <!-- To modify your build process, add your task inside one of the targets below and uncomment it. Other similar extension points exist, see Microsoft.Common.targets. <Target Name="BeforeBuild"> </Target> <Target Name="AfterBuild"> </Target> --> - <PropertyGroup> - <TargetFramework>netstandard2.0</TargetFramework> - <GenerateAssemblyInfo>false</GenerateAssemblyInfo> - </PropertyGroup> + <PropertyGroup> + <TargetFramework>netstandard2.0</TargetFramework> + <GenerateAssemblyInfo>false</GenerateAssemblyInfo> + </PropertyGroup> </Project> diff --git a/Emby.XmlTv/Emby.XmlTv.Test/Properties/AssemblyInfo.cs b/Emby.XmlTv/Emby.XmlTv.Test/Properties/AssemblyInfo.cs index e79fda8a8..902860363 100644 --- a/Emby.XmlTv/Emby.XmlTv.Test/Properties/AssemblyInfo.cs +++ b/Emby.XmlTv/Emby.XmlTv.Test/Properties/AssemblyInfo.cs @@ -1,4 +1,4 @@ -using System.Reflection; +using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; diff --git a/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderDateTimeTests.cs b/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderDateTimeTests.cs index 2e4516be5..857cc339c 100644 --- a/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderDateTimeTests.cs +++ b/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderDateTimeTests.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using Emby.XmlTv.Classes; diff --git a/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderLanguageTests.cs b/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderLanguageTests.cs index 77dabe13e..32a0431d2 100644 --- a/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderLanguageTests.cs +++ b/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderLanguageTests.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Linq; using System.Threading; diff --git a/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderTests.cs b/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderTests.cs index 1485cf06c..b1dffc59c 100644 --- a/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderTests.cs +++ b/Emby.XmlTv/Emby.XmlTv.Test/XmlTvReaderTests.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Linq; using System.Threading; diff --git a/Emby.XmlTv/Emby.XmlTv.sln b/Emby.XmlTv/Emby.XmlTv.sln index 519cbfc9d..8243d4b72 100644 --- a/Emby.XmlTv/Emby.XmlTv.sln +++ b/Emby.XmlTv/Emby.XmlTv.sln @@ -1,4 +1,4 @@ - + Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 14 VisualStudioVersion = 14.0.24720.0 diff --git a/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs b/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs index aa4840664..52e58ed8d 100644 --- a/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs +++ b/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs @@ -34,7 +34,7 @@ namespace Emby.XmlTv.Classes private static XmlReader CreateXmlTextReader(string path) { - XmlReaderSettings settings = new XmlReaderSettings(); + var settings = new XmlReaderSettings(); // https://msdn.microsoft.com/en-us/library/system.xml.xmlreadersettings.xmlresolver(v=vs.110).aspx // Looks like we don't need this anyway? @@ -140,8 +140,7 @@ namespace Emby.XmlTv.Classes private void SetChannelNumber(XmlTvChannel channel, string value) { value = value.Replace("-", "."); - double number; - if (double.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out number)) + if (double.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var number)) { channel.Number = value; } @@ -426,8 +425,7 @@ namespace Emby.XmlTv.Classes if (textValue.Contains("/")) { var components = textValue.Split('/'); - float value; - if (float.TryParse(components[0], out value)) + if (float.TryParse(components[0], out var value)) { result.StarRating = value; } @@ -1053,8 +1051,7 @@ namespace Emby.XmlTv.Classes } var standardDate = string.Format("{0} {1}", dateComponent, dateOffset); - DateTimeOffset parsedDateTime; - if (DateTimeOffset.TryParseExact(standardDate, "yyyyMMddHHmmss zzz", CultureInfo.CurrentCulture, DateTimeStyles.None, out parsedDateTime)) + if (DateTimeOffset.TryParseExact(standardDate, "yyyyMMddHHmmss zzz", CultureInfo.CurrentCulture, DateTimeStyles.None, out var parsedDateTime)) { return parsedDateTime.ToUniversalTime(); } diff --git a/Emby.XmlTv/Emby.XmlTv/Emby.XmlTv.csproj b/Emby.XmlTv/Emby.XmlTv/Emby.XmlTv.csproj index 41dd9dd97..baa522ee3 100644 --- a/Emby.XmlTv/Emby.XmlTv/Emby.XmlTv.csproj +++ b/Emby.XmlTv/Emby.XmlTv/Emby.XmlTv.csproj @@ -1,4 +1,3 @@ - <Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvChannel.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvChannel.cs index 2240fd9d4..2673d711c 100644 --- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvChannel.cs +++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvChannel.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Text; namespace Emby.XmlTv.Entities @@ -47,4 +47,4 @@ namespace Emby.XmlTv.Entities return builder.ToString(); } } -}
\ No newline at end of file +} diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCredit.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCredit.cs index 0077a3e6e..d959ce76f 100644 --- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCredit.cs +++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCredit.cs @@ -1,5 +1,3 @@ -using System; - namespace Emby.XmlTv.Entities { public class XmlTvCredit diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCreditType.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCreditType.cs index e54f24346..31c7f5e44 100644 --- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCreditType.cs +++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCreditType.cs @@ -1,4 +1,4 @@ -namespace Emby.XmlTv.Entities +namespace Emby.XmlTv.Entities { public enum XmlTvCreditType { @@ -14,4 +14,4 @@ Commentator, Guest } -}
\ No newline at end of file +} diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvEpisode.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvEpisode.cs index de84ab5ba..47525b57c 100644 --- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvEpisode.cs +++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvEpisode.cs @@ -1,4 +1,3 @@ -using System; using System.Text; namespace Emby.XmlTv.Entities diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvIcon.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvIcon.cs index 3417a717b..77ef8d5fd 100644 --- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvIcon.cs +++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvIcon.cs @@ -1,4 +1,3 @@ -using System; using System.Text; namespace Emby.XmlTv.Entities diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvLanguage.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvLanguage.cs index fea387244..0fd5573cd 100644 --- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvLanguage.cs +++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvLanguage.cs @@ -1,5 +1,3 @@ -using System; - namespace Emby.XmlTv.Entities { public class XmlTvLanguage diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvPremiere.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvPremiere.cs index 6b7e49055..a1920bc77 100644 --- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvPremiere.cs +++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvPremiere.cs @@ -1,9 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; - namespace Emby.XmlTv.Entities { public class XmlTvPremiere diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvProgram.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvProgram.cs index b6614afc1..1725e17d7 100644 --- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvProgram.cs +++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvProgram.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Text; diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvRating.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvRating.cs index 381294e7e..e37113d7a 100644 --- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvRating.cs +++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvRating.cs @@ -1,4 +1,3 @@ -using System; using System.Text; namespace Emby.XmlTv.Entities diff --git a/Emby.XmlTv/Emby.XmlTv/XmlTvSchema.dtd b/Emby.XmlTv/Emby.XmlTv/XmlTvSchema.dtd index f723eadc0..889939224 100644 --- a/Emby.XmlTv/Emby.XmlTv/XmlTvSchema.dtd +++ b/Emby.XmlTv/Emby.XmlTv/XmlTvSchema.dtd @@ -1,4 +1,4 @@ -<!-- DTD for TV listings +<!-- DTD for TV listings This is a DTD to represent a TV listing. It doesn't explicitly group programmes by day or by channel, instead broadcast time and channel diff --git a/Emby.XmlTv/Nuget/Emby.XmlTv.nuspec b/Emby.XmlTv/Nuget/Emby.XmlTv.nuspec index 06d290548..087ce1e6e 100644 --- a/Emby.XmlTv/Nuget/Emby.XmlTv.nuspec +++ b/Emby.XmlTv/Nuget/Emby.XmlTv.nuspec @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0" encoding="utf-8"?> <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd"> <metadata> <id>Emby.XmlTv</id> diff --git a/Jellyfin.Server/CoreAppHost.cs b/Jellyfin.Server/CoreAppHost.cs index 64e03f22e..b18562a69 100644 --- a/Jellyfin.Server/CoreAppHost.cs +++ b/Jellyfin.Server/CoreAppHost.cs @@ -16,29 +16,16 @@ namespace Jellyfin.Server { } - public override bool CanSelfRestart - { - get - { - // A restart script must be provided - return StartupOptions.ContainsOption("-restartpath"); - } - } + public override bool CanSelfRestart => StartupOptions.ContainsOption("-restartpath"); protected override void RestartInternal() => Program.Restart(); protected override IEnumerable<Assembly> GetAssembliesWithPartsInternal() - => new [] { typeof(CoreAppHost).Assembly }; + => new[] { typeof(CoreAppHost).Assembly }; protected override void ShutdownInternal() => Program.Shutdown(); - protected override bool SupportsDualModeSockets - { - get - { - return true; - } - } + protected override bool SupportsDualModeSockets => true; protected override IHttpListener CreateHttpListener() => new WebSocketSharpListener( diff --git a/Jellyfin.Server/Jellyfin.Server.csproj b/Jellyfin.Server/Jellyfin.Server.csproj index e7358e6a1..f17e06e69 100644 --- a/Jellyfin.Server/Jellyfin.Server.csproj +++ b/Jellyfin.Server/Jellyfin.Server.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <AssemblyName>jellyfin</AssemblyName> diff --git a/Jellyfin.Server/Program.cs b/Jellyfin.Server/Program.cs index 46a80b492..51ad53749 100644 --- a/Jellyfin.Server/Program.cs +++ b/Jellyfin.Server/Program.cs @@ -17,8 +17,8 @@ using Emby.Server.Implementations.Networking; using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Drawing; -using MediaBrowser.Model.IO; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.System; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.Logging; @@ -278,7 +278,8 @@ namespace Jellyfin.Server return new NullImageEncoder(); } - private static MediaBrowser.Model.System.OperatingSystem getOperatingSystem() { + private static MediaBrowser.Model.System.OperatingSystem getOperatingSystem() + { switch (Environment.OSVersion.Platform) { case PlatformID.MacOSX: @@ -287,22 +288,22 @@ namespace Jellyfin.Server return MediaBrowser.Model.System.OperatingSystem.Windows; case PlatformID.Unix: default: - { - string osDescription = RuntimeInformation.OSDescription; - if (osDescription.Contains("linux", StringComparison.OrdinalIgnoreCase)) - { - return MediaBrowser.Model.System.OperatingSystem.Linux; - } - else if (osDescription.Contains("darwin", StringComparison.OrdinalIgnoreCase)) - { - return MediaBrowser.Model.System.OperatingSystem.OSX; - } - else if (osDescription.Contains("bsd", StringComparison.OrdinalIgnoreCase)) { - return MediaBrowser.Model.System.OperatingSystem.BSD; + string osDescription = RuntimeInformation.OSDescription; + if (osDescription.Contains("linux", StringComparison.OrdinalIgnoreCase)) + { + return MediaBrowser.Model.System.OperatingSystem.Linux; + } + else if (osDescription.Contains("darwin", StringComparison.OrdinalIgnoreCase)) + { + return MediaBrowser.Model.System.OperatingSystem.OSX; + } + else if (osDescription.Contains("bsd", StringComparison.OrdinalIgnoreCase)) + { + return MediaBrowser.Model.System.OperatingSystem.BSD; + } + throw new Exception($"Can't resolve OS with description: '{osDescription}'"); } - throw new Exception($"Can't resolve OS with description: '{osDescription}'"); - } } } @@ -340,7 +341,7 @@ namespace Jellyfin.Server } else { - commandLineArgsString = string .Join(" ", + commandLineArgsString = string.Join(" ", Environment.GetCommandLineArgs() .Skip(1) .Select(NormalizeCommandLineArgument) diff --git a/Jellyfin.Server/Properties/AssemblyInfo.cs b/Jellyfin.Server/Properties/AssemblyInfo.cs index 1934b6bc1..2959cdf1f 100644 --- a/Jellyfin.Server/Properties/AssemblyInfo.cs +++ b/Jellyfin.Server/Properties/AssemblyInfo.cs @@ -2,7 +2,7 @@ using System.Reflection; using System.Resources; using System.Runtime.InteropServices; -// General Information about an assembly is controlled through the following +// General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. [assembly: AssemblyTitle("Jellyfin.Server")] diff --git a/Jellyfin.Server/SocketSharp/HttpFile.cs b/Jellyfin.Server/SocketSharp/HttpFile.cs index 4a798062d..77ce03510 100644 --- a/Jellyfin.Server/SocketSharp/HttpFile.cs +++ b/Jellyfin.Server/SocketSharp/HttpFile.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; using MediaBrowser.Model.Services; namespace Jellyfin.SocketSharp diff --git a/Jellyfin.Server/SocketSharp/RequestMono.cs b/Jellyfin.Server/SocketSharp/RequestMono.cs index 4c3d8d1d5..45cb323d2 100644 --- a/Jellyfin.Server/SocketSharp/RequestMono.cs +++ b/Jellyfin.Server/SocketSharp/RequestMono.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.IO; @@ -75,7 +75,7 @@ namespace Jellyfin.SocketSharp // // We use a substream, as in 2.x we will support large uploads streamed to disk, // - HttpPostedFile sub = new HttpPostedFile(e.Filename, e.ContentType, input, e.Start, e.Length); + var sub = new HttpPostedFile(e.Filename, e.ContentType, input, e.Start, e.Length); files[e.Name] = sub; } } @@ -113,21 +113,9 @@ namespace Jellyfin.SocketSharp return form; } - public string Accept - { - get - { - return string.IsNullOrEmpty(request.Headers["Accept"]) ? null : request.Headers["Accept"]; - } - } + public string Accept => string.IsNullOrEmpty(request.Headers["Accept"]) ? null : request.Headers["Accept"]; - public string Authorization - { - get - { - return string.IsNullOrEmpty(request.Headers["Authorization"]) ? null : request.Headers["Authorization"]; - } - } + public string Authorization => string.IsNullOrEmpty(request.Headers["Authorization"]) ? null : request.Headers["Authorization"]; protected bool validate_cookies, validate_query_string, validate_form; protected bool checked_cookies, checked_query_string, checked_form; @@ -160,9 +148,7 @@ namespace Jellyfin.SocketSharp internal static bool IsInvalidString(string val) { - int validationFailureIndex; - - return IsInvalidString(val, out validationFailureIndex); + return IsInvalidString(val, out var validationFailureIndex); } internal static bool IsInvalidString(string val, out int validationFailureIndex) @@ -219,17 +205,17 @@ namespace Jellyfin.SocketSharp async Task LoadWwwForm(WebROCollection form) { - using (Stream input = InputStream) + using (var input = InputStream) { using (var ms = new MemoryStream()) { await input.CopyToAsync(ms).ConfigureAwait(false); ms.Position = 0; - using (StreamReader s = new StreamReader(ms, ContentEncoding)) + using (var s = new StreamReader(ms, ContentEncoding)) { - StringBuilder key = new StringBuilder(); - StringBuilder value = new StringBuilder(); + var key = new StringBuilder(); + var value = new StringBuilder(); int c; while ((c = s.Read()) != -1) @@ -281,7 +267,7 @@ namespace Jellyfin.SocketSharp { public override string ToString() { - StringBuilder result = new StringBuilder(); + var result = new StringBuilder(); foreach (var pair in this) { if (result.Length > 0) @@ -410,30 +396,17 @@ namespace Jellyfin.SocketSharp throw new NotSupportedException(); } - public override bool CanRead - { - get { return true; } - } - public override bool CanSeek - { - get { return true; } - } - public override bool CanWrite - { - get { return false; } - } + public override bool CanRead => true; - public override long Length - { - get { return end - offset; } - } + public override bool CanSeek => true; + + public override bool CanWrite => false; + + public override long Length => end - offset; public override long Position { - get - { - return position - offset; - } + get => position - offset; set { if (value > Length) @@ -451,37 +424,13 @@ namespace Jellyfin.SocketSharp this.stream = new ReadSubStream(base_stream, offset, length); } - public string ContentType - { - get - { - return content_type; - } - } + public string ContentType => content_type; - public int ContentLength - { - get - { - return (int)stream.Length; - } - } + public int ContentLength => (int)stream.Length; - public string FileName - { - get - { - return name; - } - } + public string FileName => name; - public Stream InputStream - { - get - { - return stream; - } - } + public Stream InputStream => stream; } class Helpers @@ -764,7 +713,7 @@ namespace Jellyfin.SocketSharp if (at_eof || ReadBoundary()) return null; - Element elem = new Element(); + var elem = new Element(); string header; while ((header = ReadHeaders()) != null) { diff --git a/Jellyfin.Server/SocketSharp/SharpWebSocket.cs b/Jellyfin.Server/SocketSharp/SharpWebSocket.cs index 7101f83d9..d0dcd86eb 100644 --- a/Jellyfin.Server/SocketSharp/SharpWebSocket.cs +++ b/Jellyfin.Server/SocketSharp/SharpWebSocket.cs @@ -1,7 +1,7 @@ using System; +using System.Net.WebSockets; using System.Threading; using System.Threading.Tasks; -using System.Net.WebSockets; using Emby.Server.Implementations.Net; using Microsoft.Extensions.Logging; @@ -85,13 +85,7 @@ namespace Jellyfin.SocketSharp /// Gets or sets the state. /// </summary> /// <value>The state.</value> - public WebSocketState State - { - get - { - return WebSocket.ReadyState; - } - } + public WebSocketState State => WebSocket.ReadyState; /// <summary> /// Sends the async. diff --git a/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs b/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs index 468c4c5ca..89337b6b7 100644 --- a/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs +++ b/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs @@ -3,8 +3,8 @@ using System.Collections.Generic; using System.Security.Cryptography.X509Certificates; using System.Threading; using System.Threading.Tasks; -using Emby.Server.Implementations.Net; using Emby.Server.Implementations.HttpServer; +using Emby.Server.Implementations.Net; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Cryptography; diff --git a/Jellyfin.Server/SocketSharp/WebSocketSharpRequest.cs b/Jellyfin.Server/SocketSharp/WebSocketSharpRequest.cs index 149842bd4..e38468388 100644 --- a/Jellyfin.Server/SocketSharp/WebSocketSharpRequest.cs +++ b/Jellyfin.Server/SocketSharp/WebSocketSharpRequest.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Text; @@ -39,88 +39,38 @@ namespace Jellyfin.SocketSharp return string.IsNullOrEmpty(endHostUrl) ? null : endHostUrl.TrimEnd('/'); } - public HttpListenerRequest HttpRequest - { - get { return request; } - } + public HttpListenerRequest HttpRequest => request; - public object OriginalRequest - { - get { return request; } - } + public object OriginalRequest => request; - public IResponse Response - { - get { return response; } - } + public IResponse Response => response; - public IHttpResponse HttpResponse - { - get { return response; } - } + public IHttpResponse HttpResponse => response; public string OperationName { get; set; } public object Dto { get; set; } - public string RawUrl - { - get { return request.RawUrl; } - } + public string RawUrl => request.RawUrl; - public string AbsoluteUri - { - get { return request.Url.AbsoluteUri.TrimEnd('/'); } - } + public string AbsoluteUri => request.Url.AbsoluteUri.TrimEnd('/'); - public string UserHostAddress - { - get { return request.UserHostAddress; } - } + public string UserHostAddress => request.UserHostAddress; - public string XForwardedFor - { - get - { - return string.IsNullOrEmpty(request.Headers["X-Forwarded-For"]) ? null : request.Headers["X-Forwarded-For"]; - } - } + public string XForwardedFor => string.IsNullOrEmpty(request.Headers["X-Forwarded-For"]) ? null : request.Headers["X-Forwarded-For"]; - public int? XForwardedPort - { - get - { - return string.IsNullOrEmpty(request.Headers["X-Forwarded-Port"]) ? (int?)null : int.Parse(request.Headers["X-Forwarded-Port"]); - } - } + public int? XForwardedPort => string.IsNullOrEmpty(request.Headers["X-Forwarded-Port"]) ? (int?)null : int.Parse(request.Headers["X-Forwarded-Port"]); - public string XForwardedProtocol - { - get - { - return string.IsNullOrEmpty(request.Headers["X-Forwarded-Proto"]) ? null : request.Headers["X-Forwarded-Proto"]; - } - } + public string XForwardedProtocol => string.IsNullOrEmpty(request.Headers["X-Forwarded-Proto"]) ? null : request.Headers["X-Forwarded-Proto"]; - public string XRealIp - { - get - { - return string.IsNullOrEmpty(request.Headers["X-Real-IP"]) ? null : request.Headers["X-Real-IP"]; - } - } + public string XRealIp => string.IsNullOrEmpty(request.Headers["X-Real-IP"]) ? null : request.Headers["X-Real-IP"]; private string remoteIp; - public string RemoteIp - { - get - { - return remoteIp ?? - (remoteIp = (CheckBadChars(XForwardedFor)) ?? - (NormalizeIp(CheckBadChars(XRealIp)) ?? - (request.RemoteEndPoint != null ? NormalizeIp(request.RemoteEndPoint.Address.ToString()) : null))); - } - } + public string RemoteIp => + remoteIp ?? + (remoteIp = (CheckBadChars(XForwardedFor)) ?? + (NormalizeIp(CheckBadChars(XRealIp)) ?? + (request.RemoteEndPoint != null ? NormalizeIp(request.RemoteEndPoint.Address.ToString()) : null))); private static readonly char[] HttpTrimCharacters = new char[] { (char)0x09, (char)0xA, (char)0xB, (char)0xC, (char)0xD, (char)0x20 }; @@ -215,34 +165,20 @@ namespace Jellyfin.SocketSharp return ip; } - public bool IsSecureConnection - { - get { return request.IsSecureConnection || XForwardedProtocol == "https"; } - } + public bool IsSecureConnection => request.IsSecureConnection || XForwardedProtocol == "https"; - public string[] AcceptTypes - { - get { return request.AcceptTypes; } - } + public string[] AcceptTypes => request.AcceptTypes; private Dictionary<string, object> items; - public Dictionary<string, object> Items - { - get { return items ?? (items = new Dictionary<string, object>()); } - } + public Dictionary<string, object> Items => items ?? (items = new Dictionary<string, object>()); private string responseContentType; public string ResponseContentType { - get - { - return responseContentType - ?? (responseContentType = GetResponseContentType(this)); - } - set - { - this.responseContentType = value; - } + get => + responseContentType + ?? (responseContentType = GetResponseContentType(this)); + set => this.responseContentType = value; } public const string FormUrlEncoded = "application/x-www-form-urlencoded"; @@ -425,7 +361,7 @@ namespace Jellyfin.SocketSharp cookies = new Dictionary<string, System.Net.Cookie>(); foreach (var cookie in this.request.Cookies) { - var httpCookie = (System.Net.Cookie) cookie; + var httpCookie = (System.Net.Cookie)cookie; cookies[httpCookie.Name] = new System.Net.Cookie(httpCookie.Name, httpCookie.Value, httpCookie.Path, httpCookie.Domain); } } @@ -434,58 +370,32 @@ namespace Jellyfin.SocketSharp } } - public string UserAgent - { - get { return request.UserAgent; } - } + public string UserAgent => request.UserAgent; - public QueryParamCollection Headers - { - get { return request.Headers; } - } + public QueryParamCollection Headers => request.Headers; private QueryParamCollection queryString; - public QueryParamCollection QueryString - { - get { return queryString ?? (queryString = MyHttpUtility.ParseQueryString(request.Url.Query)); } - } + public QueryParamCollection QueryString => queryString ?? (queryString = MyHttpUtility.ParseQueryString(request.Url.Query)); - public bool IsLocal - { - get { return request.IsLocal; } - } + public bool IsLocal => request.IsLocal; private string httpMethod; - public string HttpMethod - { - get - { - return httpMethod - ?? (httpMethod = request.HttpMethod); - } - } + public string HttpMethod => + httpMethod + ?? (httpMethod = request.HttpMethod); - public string Verb - { - get { return HttpMethod; } - } + public string Verb => HttpMethod; - public string ContentType - { - get { return request.ContentType; } - } + public string ContentType => request.ContentType; public Encoding contentEncoding; public Encoding ContentEncoding { - get { return contentEncoding ?? request.ContentEncoding; } - set { contentEncoding = value; } + get => contentEncoding ?? request.ContentEncoding; + set => contentEncoding = value; } - public Uri UrlReferrer - { - get { return request.UrlReferrer; } - } + public Uri UrlReferrer => request.UrlReferrer; public static Encoding GetEncoding(string contentTypeHeader) { @@ -501,15 +411,9 @@ namespace Jellyfin.SocketSharp } } - public Stream InputStream - { - get { return request.InputStream; } - } + public Stream InputStream => request.InputStream; - public long ContentLength - { - get { return request.ContentLength64; } - } + public long ContentLength => request.ContentLength64; private IHttpFile[] httpFiles; public IHttpFile[] Files diff --git a/Jellyfin.Server/SocketSharp/WebSocketSharpResponse.cs b/Jellyfin.Server/SocketSharp/WebSocketSharpResponse.cs index c7437c825..21bfac55d 100644 --- a/Jellyfin.Server/SocketSharp/WebSocketSharpResponse.cs +++ b/Jellyfin.Server/SocketSharp/WebSocketSharpResponse.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Net; @@ -31,27 +31,24 @@ namespace Jellyfin.SocketSharp public IRequest Request { get; private set; } public Dictionary<string, object> Items { get; private set; } - public object OriginalResponse - { - get { return _response; } - } + public object OriginalResponse => _response; public int StatusCode { - get { return this._response.StatusCode; } - set { this._response.StatusCode = value; } + get => this._response.StatusCode; + set => this._response.StatusCode = value; } public string StatusDescription { - get { return this._response.StatusDescription; } - set { this._response.StatusDescription = value; } + get => this._response.StatusDescription; + set => this._response.StatusDescription = value; } public string ContentType { - get { return _response.ContentType; } - set { _response.ContentType = value; } + get => _response.ContentType; + set => _response.ContentType = value; } //public ICookies Cookies { get; set; } @@ -67,13 +64,7 @@ namespace Jellyfin.SocketSharp _response.AddHeader(name, value); } - public QueryParamCollection Headers - { - get - { - return _response.Headers; - } - } + public QueryParamCollection Headers => _response.Headers; public string GetHeader(string name) { @@ -85,10 +76,7 @@ namespace Jellyfin.SocketSharp _response.Redirect(url); } - public Stream OutputStream - { - get { return _response.OutputStream; } - } + public Stream OutputStream => _response.OutputStream; public void Close() { @@ -179,8 +167,8 @@ namespace Jellyfin.SocketSharp public bool SendChunked { - get { return _response.SendChunked; } - set { _response.SendChunked = value; } + get => _response.SendChunked; + set => _response.SendChunked = value; } public bool KeepAlive { get; set; } diff --git a/MediaBrowser.Api/ApiEntryPoint.cs b/MediaBrowser.Api/ApiEntryPoint.cs index ef782ddfc..8ae0ad942 100644 --- a/MediaBrowser.Api/ApiEntryPoint.cs +++ b/MediaBrowser.Api/ApiEntryPoint.cs @@ -1,24 +1,24 @@ -using System; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Api.Playback; +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Plugins; using MediaBrowser.Controller.Session; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Diagnostics; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Threading; -using System.Collections.Generic; -using System.Threading; -using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Api.Playback; -using System.IO; using MediaBrowser.Model.Session; -using System.Linq; -using System.Threading.Tasks; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Common.Configuration; +using MediaBrowser.Model.Threading; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Api { @@ -101,8 +101,7 @@ namespace MediaBrowser.Api { lock (_transcodingLocks) { - SemaphoreSlim result; - if (!_transcodingLocks.TryGetValue(outputPath, out result)) + if (!_transcodingLocks.TryGetValue(outputPath, out SemaphoreSlim result)) { result = new SemaphoreSlim(1, 1); _transcodingLocks[outputPath] = result; @@ -681,7 +680,7 @@ namespace MediaBrowser.Api } } - /// <summary> + /// <summary> /// Class TranscodingJob /// </summary> public class TranscodingJob diff --git a/MediaBrowser.Api/BaseApiService.cs b/MediaBrowser.Api/BaseApiService.cs index ed31cbd1d..8decea5a2 100644 --- a/MediaBrowser.Api/BaseApiService.cs +++ b/MediaBrowser.Api/BaseApiService.cs @@ -1,17 +1,15 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Session; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Extensions; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Api { @@ -24,25 +22,13 @@ namespace MediaBrowser.Api /// Gets or sets the logger. /// </summary> /// <value>The logger.</value> - public ILogger Logger - { - get - { - return ApiEntryPoint.Instance.Logger; - } - } + public ILogger Logger => ApiEntryPoint.Instance.Logger; /// <summary> /// Gets or sets the HTTP result factory. /// </summary> /// <value>The HTTP result factory.</value> - public IHttpResultFactory ResultFactory - { - get - { - return ApiEntryPoint.Instance.ResultFactory; - } - } + public IHttpResultFactory ResultFactory => ApiEntryPoint.Instance.ResultFactory; /// <summary> /// Gets or sets the request context. diff --git a/MediaBrowser.Api/BrandingService.cs b/MediaBrowser.Api/BrandingService.cs index 4eb69678a..f5845f4e0 100644 --- a/MediaBrowser.Api/BrandingService.cs +++ b/MediaBrowser.Api/BrandingService.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Configuration; using MediaBrowser.Model.Branding; using MediaBrowser.Model.Services; diff --git a/MediaBrowser.Api/ChannelService.cs b/MediaBrowser.Api/ChannelService.cs index 0b9d5efa9..d28bfaff5 100644 --- a/MediaBrowser.Api/ChannelService.cs +++ b/MediaBrowser.Api/ChannelService.cs @@ -1,18 +1,18 @@ -using MediaBrowser.Controller.Channels; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Channels; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Api.UserLibrary; -using MediaBrowser.Model.Services; +using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; +using MediaBrowser.Model.Channels; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Services; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/ConfigurationService.cs b/MediaBrowser.Api/ConfigurationService.cs index 9d14558e3..718f537bc 100644 --- a/MediaBrowser.Api/ConfigurationService.cs +++ b/MediaBrowser.Api/ConfigurationService.cs @@ -1,14 +1,14 @@ -using MediaBrowser.Controller.Configuration; +using System.IO; +using System.Threading.Tasks; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Serialization; -using System.IO; using MediaBrowser.Model.IO; -using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; -using System.Threading.Tasks; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/Devices/DeviceService.cs b/MediaBrowser.Api/Devices/DeviceService.cs index 9cc16b4a1..dc211af6b 100644 --- a/MediaBrowser.Api/Devices/DeviceService.cs +++ b/MediaBrowser.Api/Devices/DeviceService.cs @@ -1,14 +1,13 @@ -using System; +using System; +using System.IO; +using System.Threading.Tasks; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Security; +using MediaBrowser.Controller.Session; using MediaBrowser.Model.Devices; using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Session; -using System.IO; -using System.Threading.Tasks; using MediaBrowser.Model.Services; -using MediaBrowser.Controller.Security; -using MediaBrowser.Controller.Session; namespace MediaBrowser.Api.Devices { diff --git a/MediaBrowser.Api/DisplayPreferencesService.cs b/MediaBrowser.Api/DisplayPreferencesService.cs index eea83490a..d56023fe2 100644 --- a/MediaBrowser.Api/DisplayPreferencesService.cs +++ b/MediaBrowser.Api/DisplayPreferencesService.cs @@ -1,9 +1,8 @@ -using MediaBrowser.Controller.Net; +using System.Threading; +using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Serialization; -using System.Threading; -using System.Threading.Tasks; using MediaBrowser.Model.Services; namespace MediaBrowser.Api diff --git a/MediaBrowser.Api/EnvironmentService.cs b/MediaBrowser.Api/EnvironmentService.cs index d67867820..0fc20749f 100644 --- a/MediaBrowser.Api/EnvironmentService.cs +++ b/MediaBrowser.Api/EnvironmentService.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Net; using System; using System.Collections.Generic; using System.IO; using System.Linq; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Net; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Net; using MediaBrowser.Model.Services; namespace MediaBrowser.Api diff --git a/MediaBrowser.Api/FilterService.cs b/MediaBrowser.Api/FilterService.cs index 59e203b7f..be80305f9 100644 --- a/MediaBrowser.Api/FilterService.cs +++ b/MediaBrowser.Api/FilterService.cs @@ -1,12 +1,10 @@ -using MediaBrowser.Controller.Entities; +using System; +using System.Linq; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Querying; using MediaBrowser.Model.Dto; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; namespace MediaBrowser.Api diff --git a/MediaBrowser.Api/GamesService.cs b/MediaBrowser.Api/GamesService.cs index 3e4e20506..bb908836c 100644 --- a/MediaBrowser.Api/GamesService.cs +++ b/MediaBrowser.Api/GamesService.cs @@ -1,18 +1,13 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.IO; +using System.Linq; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Threading.Tasks; -using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/IHasDtoOptions.cs b/MediaBrowser.Api/IHasDtoOptions.cs index 6ed1670c2..03d3b3692 100644 --- a/MediaBrowser.Api/IHasDtoOptions.cs +++ b/MediaBrowser.Api/IHasDtoOptions.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Api { public interface IHasDtoOptions : IHasItemFields diff --git a/MediaBrowser.Api/IHasItemFields.cs b/MediaBrowser.Api/IHasItemFields.cs index 0b3919985..8598ea262 100644 --- a/MediaBrowser.Api/IHasItemFields.cs +++ b/MediaBrowser.Api/IHasItemFields.cs @@ -1,7 +1,6 @@ -using MediaBrowser.Model.Querying; using System; -using System.Collections.Generic; using System.Linq; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Api { @@ -38,9 +37,7 @@ namespace MediaBrowser.Api return val.Split(',').Select(v => { - ItemFields value; - - if (Enum.TryParse(v, true, out value)) + if (Enum.TryParse(v, true, out ItemFields value)) { return (ItemFields?)value; } diff --git a/MediaBrowser.Api/Images/ImageByNameService.cs b/MediaBrowser.Api/Images/ImageByNameService.cs index 7d328a373..61efae46d 100644 --- a/MediaBrowser.Api/Images/ImageByNameService.cs +++ b/MediaBrowser.Api/Images/ImageByNameService.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Dto; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading.Tasks; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Net; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.IO; using MediaBrowser.Model.Services; diff --git a/MediaBrowser.Api/Images/ImageRequest.cs b/MediaBrowser.Api/Images/ImageRequest.cs index d4c01fdb0..71ff09b63 100644 --- a/MediaBrowser.Api/Images/ImageRequest.cs +++ b/MediaBrowser.Api/Images/ImageRequest.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.Images diff --git a/MediaBrowser.Api/Images/ImageService.cs b/MediaBrowser.Api/Images/ImageService.cs index 17c6d5dc5..369e9781f 100644 --- a/MediaBrowser.Api/Images/ImageService.cs +++ b/MediaBrowser.Api/Images/ImageService.cs @@ -1,5 +1,12 @@ -using MediaBrowser.Common.Extensions; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Drawing; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; @@ -8,19 +15,8 @@ using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.IO; -using MediaBrowser.Controller.LiveTv; using MediaBrowser.Model.IO; using MediaBrowser.Model.Services; - using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.Images @@ -663,8 +659,7 @@ namespace MediaBrowser.Api.Images { if (!string.IsNullOrWhiteSpace(request.Format)) { - ImageFormat format; - if (Enum.TryParse(request.Format, true, out format)) + if (Enum.TryParse(request.Format, true, out ImageFormat format)) { return new ImageFormat[] { format }; } diff --git a/MediaBrowser.Api/Images/RemoteImageService.cs b/MediaBrowser.Api/Images/RemoteImageService.cs index 8d75ec10c..24c8ed835 100644 --- a/MediaBrowser.Api/Images/RemoteImageService.cs +++ b/MediaBrowser.Api/Images/RemoteImageService.cs @@ -1,4 +1,10 @@ -using MediaBrowser.Common.Extensions; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Controller; using MediaBrowser.Controller.Dto; @@ -7,16 +13,8 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; -using System; -using System.Collections.Generic; -using System.IO; -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.Services; namespace MediaBrowser.Api.Images diff --git a/MediaBrowser.Api/ItemLookupService.cs b/MediaBrowser.Api/ItemLookupService.cs index 331fb711d..10d882e08 100644 --- a/MediaBrowser.Api/ItemLookupService.cs +++ b/MediaBrowser.Api/ItemLookupService.cs @@ -1,4 +1,10 @@ -using MediaBrowser.Common.Extensions; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Extensions; using MediaBrowser.Controller; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; @@ -7,14 +13,8 @@ using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Providers; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; using Microsoft.Extensions.Logging; @@ -240,7 +240,7 @@ namespace MediaBrowser.Api //item.ProductionYear = request.ProductionYear; //item.Name = request.Name; - return _providerManager.RefreshFullItem(item, new MetadataRefreshOptions(new DirectoryService(Logger, _fileSystem)) + return _providerManager.RefreshFullItem(item, new MetadataRefreshOptions(new DirectoryService(Logger, _fileSystem)) { MetadataRefreshMode = MetadataRefreshMode.FullRefresh, ImageRefreshMode = MetadataRefreshMode.FullRefresh, diff --git a/MediaBrowser.Api/ItemRefreshService.cs b/MediaBrowser.Api/ItemRefreshService.cs index ba1c809fe..8238ad19c 100644 --- a/MediaBrowser.Api/ItemRefreshService.cs +++ b/MediaBrowser.Api/ItemRefreshService.cs @@ -1,13 +1,9 @@ -using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Providers; -using System.Threading; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/ItemUpdateService.cs b/MediaBrowser.Api/ItemUpdateService.cs index d89750eae..c386b25b8 100644 --- a/MediaBrowser.Api/ItemUpdateService.cs +++ b/MediaBrowser.Api/ItemUpdateService.cs @@ -1,4 +1,8 @@ -using MediaBrowser.Controller.Configuration; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.TV; @@ -8,14 +12,9 @@ using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Services; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Services; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/Library/LibraryService.cs b/MediaBrowser.Api/Library/LibraryService.cs index ecf3eb7db..12d807a7e 100644 --- a/MediaBrowser.Api/Library/LibraryService.cs +++ b/MediaBrowser.Api/Library/LibraryService.cs @@ -1,5 +1,13 @@ -using MediaBrowser.Api.Movies; -using MediaBrowser.Api.Music; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Api.Movies; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Progress; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; @@ -9,29 +17,17 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; +using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.TV; using MediaBrowser.Model.Activity; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.IO; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; -using MediaBrowser.Common.Extensions; -using MediaBrowser.Common.Progress; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.Library diff --git a/MediaBrowser.Api/Library/LibraryStructureService.cs b/MediaBrowser.Api/Library/LibraryStructureService.cs index cd839e0f8..3be6b29dd 100644 --- a/MediaBrowser.Api/Library/LibraryStructureService.cs +++ b/MediaBrowser.Api/Library/LibraryStructureService.cs @@ -1,7 +1,3 @@ -using MediaBrowser.Controller; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.IO; @@ -9,11 +5,13 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Common.Progress; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller; using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.Library diff --git a/MediaBrowser.Api/LiveTv/LiveTvService.cs b/MediaBrowser.Api/LiveTv/LiveTvService.cs index fc645898c..88ed4b525 100644 --- a/MediaBrowser.Api/LiveTv/LiveTvService.cs +++ b/MediaBrowser.Api/LiveTv/LiveTvService.cs @@ -1,30 +1,29 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.LiveTv; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.LiveTv; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; +using System.Text; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Api.UserLibrary; -using MediaBrowser.Model.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Controller.Net; +using MediaBrowser.Model.Cryptography; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; using MediaBrowser.Model.System; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.Cryptography; -using System.Text; -using MediaBrowser.Controller.Entities; namespace MediaBrowser.Api.LiveTv { diff --git a/MediaBrowser.Api/LiveTv/ProgressiveFileCopier.cs b/MediaBrowser.Api/LiveTv/ProgressiveFileCopier.cs index 07ac7f28d..8412bf66b 100644 --- a/MediaBrowser.Api/LiveTv/ProgressiveFileCopier.cs +++ b/MediaBrowser.Api/LiveTv/ProgressiveFileCopier.cs @@ -1,4 +1,3 @@ -using System; using System.Collections.Generic; using System.IO; using System.Threading; @@ -7,7 +6,6 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Model.IO; using MediaBrowser.Model.Services; using MediaBrowser.Model.System; -using MediaBrowser.Controller.IO; using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.LiveTv @@ -47,13 +45,7 @@ namespace MediaBrowser.Api.LiveTv _streamHelper = streamHelper; } - public IDictionary<string, string> Headers - { - get - { - return _outputHeaders; - } - } + public IDictionary<string, string> Headers => _outputHeaders; private Stream GetInputStream(bool allowAsyncFileRead) { diff --git a/MediaBrowser.Api/LocalizationService.cs b/MediaBrowser.Api/LocalizationService.cs index 56d32fc37..0694de782 100644 --- a/MediaBrowser.Api/LocalizationService.cs +++ b/MediaBrowser.Api/LocalizationService.cs @@ -1,7 +1,6 @@ -using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; -using System.Collections.Generic; using MediaBrowser.Model.Services; namespace MediaBrowser.Api diff --git a/MediaBrowser.Api/MediaBrowser.Api.csproj b/MediaBrowser.Api/MediaBrowser.Api.csproj index 5ffaaed27..ba29c656b 100644 --- a/MediaBrowser.Api/MediaBrowser.Api.csproj +++ b/MediaBrowser.Api/MediaBrowser.Api.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" /> diff --git a/MediaBrowser.Api/Movies/CollectionService.cs b/MediaBrowser.Api/Movies/CollectionService.cs index 9adefdf75..b52f8a547 100644 --- a/MediaBrowser.Api/Movies/CollectionService.cs +++ b/MediaBrowser.Api/Movies/CollectionService.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Collections; +using System; +using MediaBrowser.Controller.Collections; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Collections; -using System; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.Movies @@ -69,7 +69,7 @@ namespace MediaBrowser.Api.Movies Name = request.Name, ParentId = parentId, ItemIdList = SplitValue(request.Ids, ','), - UserIds = new [] { userId } + UserIds = new[] { userId } }); diff --git a/MediaBrowser.Api/Movies/MoviesService.cs b/MediaBrowser.Api/Movies/MoviesService.cs index e8d9712de..996087018 100644 --- a/MediaBrowser.Api/Movies/MoviesService.cs +++ b/MediaBrowser.Api/Movies/MoviesService.cs @@ -1,20 +1,18 @@ -using MediaBrowser.Common.Extensions; +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.LiveTv; using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.Movies @@ -370,7 +368,7 @@ namespace MediaBrowser.Api.Movies { var people = _libraryManager.GetPeople(new InternalPeopleQuery { - ExcludePersonTypes = new [] + ExcludePersonTypes = new[] { PersonType.Director }, diff --git a/MediaBrowser.Api/Movies/TrailersService.cs b/MediaBrowser.Api/Movies/TrailersService.cs index 45b07712f..6e4443dbe 100644 --- a/MediaBrowser.Api/Movies/TrailersService.cs +++ b/MediaBrowser.Api/Movies/TrailersService.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Api.UserLibrary; +using MediaBrowser.Api.UserLibrary; +using MediaBrowser.Controller.Collections; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Querying; -using MediaBrowser.Controller.Collections; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; diff --git a/MediaBrowser.Api/Music/AlbumsService.cs b/MediaBrowser.Api/Music/AlbumsService.cs index 538840f6c..c48bcde5c 100644 --- a/MediaBrowser.Api/Music/AlbumsService.cs +++ b/MediaBrowser.Api/Music/AlbumsService.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; -using System; -using System.Collections.Generic; -using System.Linq; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.Music diff --git a/MediaBrowser.Api/Music/InstantMixService.cs b/MediaBrowser.Api/Music/InstantMixService.cs index 8435b1ac1..875f0a8de 100644 --- a/MediaBrowser.Api/Music/InstantMixService.cs +++ b/MediaBrowser.Api/Music/InstantMixService.cs @@ -1,16 +1,13 @@ -using MediaBrowser.Controller.Dto; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Playlists; -using MediaBrowser.Model.Querying; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Api.Music { diff --git a/MediaBrowser.Api/PackageService.cs b/MediaBrowser.Api/PackageService.cs index 0b1dc083d..c202f0f6b 100644 --- a/MediaBrowser.Api/PackageService.cs +++ b/MediaBrowser.Api/PackageService.cs @@ -1,15 +1,15 @@ -using MediaBrowser.Common; -using MediaBrowser.Common.Extensions; -using MediaBrowser.Common.Updates; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Updates; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Progress; +using MediaBrowser.Common.Updates; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.Services; +using MediaBrowser.Model.Updates; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/Playback/BaseStreamingService.cs b/MediaBrowser.Api/Playback/BaseStreamingService.cs index ba7f7070b..bb525adc7 100644 --- a/MediaBrowser.Api/Playback/BaseStreamingService.cs +++ b/MediaBrowser.Api/Playback/BaseStreamingService.cs @@ -1,16 +1,3 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Devices; -using MediaBrowser.Controller.Dlna; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.Globalization; @@ -19,11 +6,23 @@ using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Controller; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Devices; +using MediaBrowser.Controller.Dlna; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Diagnostics; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.MediaInfo; +using MediaBrowser.Model.Serialization; using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.Playback @@ -142,10 +141,7 @@ namespace MediaBrowser.Api.Playback return Path.Combine(folder, dataHash + (outputFileExtension ?? string.Empty).ToLower()); } - protected virtual bool EnableOutputInSubFolder - { - get { return false; } - } + protected virtual bool EnableOutputInSubFolder => false; protected readonly CultureInfo UsCulture = new CultureInfo("en-US"); @@ -535,8 +531,7 @@ namespace MediaBrowser.Api.Playback { if (!string.IsNullOrWhiteSpace(val) && videoRequest != null) { - SubtitleDeliveryMethod method; - if (Enum.TryParse(val, out method)) + if (Enum.TryParse(val, out SubtitleDeliveryMethod method)) { videoRequest.SubtitleMethod = method; } @@ -640,8 +635,7 @@ namespace MediaBrowser.Api.Playback if (value.IndexOf(':') == -1) { // Parses npt times in the format of '417.33' - double seconds; - if (double.TryParse(value, NumberStyles.Any, UsCulture, out seconds)) + if (double.TryParse(value, NumberStyles.Any, UsCulture, out var seconds)) { return TimeSpan.FromSeconds(seconds).Ticks; } @@ -656,8 +650,7 @@ namespace MediaBrowser.Api.Playback foreach (var time in tokens) { - double digit; - if (double.TryParse(time, NumberStyles.Any, UsCulture, out digit)) + if (double.TryParse(time, NumberStyles.Any, UsCulture, out var digit)) { secondsSum += digit * timeFactor; } @@ -755,7 +748,7 @@ namespace MediaBrowser.Api.Playback MediaSourceInfo mediaSource = null; if (string.IsNullOrWhiteSpace(request.LiveStreamId)) { - TranscodingJob currentJob = !string.IsNullOrWhiteSpace(request.PlaySessionId) ? + var currentJob = !string.IsNullOrWhiteSpace(request.PlaySessionId) ? ApiEntryPoint.Instance.GetTranscodingJob(request.PlaySessionId) : null; diff --git a/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs b/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs index 3e17d0b74..1e90d03b0 100644 --- a/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs +++ b/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs @@ -1,20 +1,20 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Devices; -using MediaBrowser.Controller.Dlna; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.IO; using System.Text; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Devices; +using MediaBrowser.Controller.Dlna; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Net; +using MediaBrowser.Model.Serialization; using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.Playback.Hls @@ -52,10 +52,7 @@ namespace MediaBrowser.Api.Playback.Hls /// Gets the type of the transcoding job. /// </summary> /// <value>The type of the transcoding job.</value> - protected override TranscodingJobType TranscodingJobType - { - get { return TranscodingJobType.Hls; } - } + protected override TranscodingJobType TranscodingJobType => TranscodingJobType.Hls; /// <summary> /// Processes the request. @@ -201,7 +198,7 @@ namespace MediaBrowser.Api.Playback.Hls while (!reader.EndOfStream) { - var line = reader.ReadLine(); + var line = reader.ReadLine(); if (line.IndexOf("#EXTINF:", StringComparison.OrdinalIgnoreCase) != -1) { diff --git a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs index ff3712f8a..b3099e17e 100644 --- a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs +++ b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs @@ -1,27 +1,27 @@ -using MediaBrowser.Common.Net; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Dlna; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Net; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Text; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Services; -using MimeTypes = MediaBrowser.Model.Net.MimeTypes; using Microsoft.Extensions.Logging; +using MimeTypes = MediaBrowser.Model.Net.MimeTypes; namespace MediaBrowser.Api.Playback.Hls { diff --git a/MediaBrowser.Api/Playback/Hls/HlsSegmentService.cs b/MediaBrowser.Api/Playback/Hls/HlsSegmentService.cs index 52cc02528..02b837912 100644 --- a/MediaBrowser.Api/Playback/Hls/HlsSegmentService.cs +++ b/MediaBrowser.Api/Playback/Hls/HlsSegmentService.cs @@ -1,12 +1,11 @@ -using MediaBrowser.Controller; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Net; using System; using System.IO; using System.Linq; using System.Threading.Tasks; - +using MediaBrowser.Controller; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.IO; using MediaBrowser.Model.Services; diff --git a/MediaBrowser.Api/Playback/Hls/VideoHlsService.cs b/MediaBrowser.Api/Playback/Hls/VideoHlsService.cs index 1ae7ea3a8..142dc2dfd 100644 --- a/MediaBrowser.Api/Playback/Hls/VideoHlsService.cs +++ b/MediaBrowser.Api/Playback/Hls/VideoHlsService.cs @@ -1,14 +1,14 @@ +using System; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Dlna; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Serialization; -using System; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.Playback.Hls diff --git a/MediaBrowser.Api/Playback/MediaInfoService.cs b/MediaBrowser.Api/Playback/MediaInfoService.cs index b0154cc7e..1c7be52f3 100644 --- a/MediaBrowser.Api/Playback/MediaInfoService.cs +++ b/MediaBrowser.Api/Playback/MediaInfoService.cs @@ -1,23 +1,23 @@ -using MediaBrowser.Common.Net; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Session; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; +using MediaBrowser.Model.Session; using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.Playback diff --git a/MediaBrowser.Api/Playback/Progressive/AudioService.cs b/MediaBrowser.Api/Playback/Progressive/AudioService.cs index 44e096dd7..150571ce9 100644 --- a/MediaBrowser.Api/Playback/Progressive/AudioService.cs +++ b/MediaBrowser.Api/Playback/Progressive/AudioService.cs @@ -1,17 +1,14 @@ -using MediaBrowser.Common.Net; +using System.Threading.Tasks; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Dlna; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Serialization; -using System.Collections.Generic; -using System.Threading.Tasks; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; using MediaBrowser.Model.System; diff --git a/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs b/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs index cc59b1049..bb21fe5ae 100644 --- a/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs +++ b/MediaBrowser.Api/Playback/Progressive/BaseProgressiveStreamingService.cs @@ -1,4 +1,9 @@ -using MediaBrowser.Common.Net; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Dlna; @@ -9,16 +14,8 @@ using MediaBrowser.Controller.Net; using MediaBrowser.Model.IO; using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Threading; -using System.Threading.Tasks; using MediaBrowser.Model.Services; using MediaBrowser.Model.System; -using Microsoft.Extensions.Logging; -using MediaBrowser.Api.LiveTv; namespace MediaBrowser.Api.Playback.Progressive { @@ -105,10 +102,7 @@ namespace MediaBrowser.Api.Playback.Progressive /// Gets the type of the transcoding job. /// </summary> /// <value>The type of the transcoding job.</value> - protected override TranscodingJobType TranscodingJobType - { - get { return TranscodingJobType.Progressive; } - } + protected override TranscodingJobType TranscodingJobType => TranscodingJobType.Progressive; /// <summary> /// Processes the request. diff --git a/MediaBrowser.Api/Playback/Progressive/ProgressiveStreamWriter.cs b/MediaBrowser.Api/Playback/Progressive/ProgressiveStreamWriter.cs index ed2930b4d..3dd9de2a1 100644 --- a/MediaBrowser.Api/Playback/Progressive/ProgressiveStreamWriter.cs +++ b/MediaBrowser.Api/Playback/Progressive/ProgressiveStreamWriter.cs @@ -1,12 +1,10 @@ -using System; +using System; +using System.Collections.Generic; using System.IO; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Net; -using System.Collections.Generic; -using MediaBrowser.Controller.IO; using MediaBrowser.Controller.Library; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Services; using MediaBrowser.Model.System; using Microsoft.Extensions.Logging; @@ -52,13 +50,7 @@ namespace MediaBrowser.Api.Playback.Progressive _environment = environment; } - public IDictionary<string, string> Headers - { - get - { - return _outputHeaders; - } - } + public IDictionary<string, string> Headers => _outputHeaders; private Stream GetInputStream(bool allowAsyncFileRead) { diff --git a/MediaBrowser.Api/Playback/Progressive/VideoService.cs b/MediaBrowser.Api/Playback/Progressive/VideoService.cs index a41b4cbf5..00b79ccdd 100644 --- a/MediaBrowser.Api/Playback/Progressive/VideoService.cs +++ b/MediaBrowser.Api/Playback/Progressive/VideoService.cs @@ -1,14 +1,14 @@ +using System.Threading.Tasks; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Dlna; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Serialization; -using System.Threading.Tasks; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; using MediaBrowser.Model.System; @@ -97,4 +97,4 @@ namespace MediaBrowser.Api.Playback.Progressive return EncodingHelper.GetProgressiveVideoFullCommandLine(state, encodingOptions, outputPath, GetDefaultH264Preset()); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Api/Playback/StaticRemoteStreamWriter.cs b/MediaBrowser.Api/Playback/StaticRemoteStreamWriter.cs index 6bb3b6b80..3b8b29995 100644 --- a/MediaBrowser.Api/Playback/StaticRemoteStreamWriter.cs +++ b/MediaBrowser.Api/Playback/StaticRemoteStreamWriter.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Common.Net; using System.Collections.Generic; using System.IO; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Net; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.Playback @@ -31,10 +31,7 @@ namespace MediaBrowser.Api.Playback /// Gets the options. /// </summary> /// <value>The options.</value> - public IDictionary<string, string> Headers - { - get { return _options; } - } + public IDictionary<string, string> Headers => _options; public async Task WriteToAsync(Stream responseStream, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Api/Playback/StreamRequest.cs b/MediaBrowser.Api/Playback/StreamRequest.cs index 6b0725f31..da1f00c3e 100644 --- a/MediaBrowser.Api/Playback/StreamRequest.cs +++ b/MediaBrowser.Api/Playback/StreamRequest.cs @@ -1,6 +1,5 @@ -using System; +using System; using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.Playback @@ -51,13 +50,7 @@ namespace MediaBrowser.Api.Playback /// Gets a value indicating whether this instance has fixed resolution. /// </summary> /// <value><c>true</c> if this instance has fixed resolution; otherwise, <c>false</c>.</value> - public bool HasFixedResolution - { - get - { - return Width.HasValue || Height.HasValue; - } - } + public bool HasFixedResolution => Width.HasValue || Height.HasValue; public bool EnableSubtitlesInManifest { get; set; } } diff --git a/MediaBrowser.Api/Playback/StreamState.cs b/MediaBrowser.Api/Playback/StreamState.cs index 73741d527..400ad47cc 100644 --- a/MediaBrowser.Api/Playback/StreamState.cs +++ b/MediaBrowser.Api/Playback/StreamState.cs @@ -1,18 +1,9 @@ -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Drawing; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Net; using System; -using System.Collections.Generic; -using System.Globalization; using System.IO; -using System.Linq; -using System.Threading; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Net; using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.Playback @@ -26,7 +17,7 @@ namespace MediaBrowser.Api.Playback public StreamRequest Request { - get { return (StreamRequest)BaseRequest; } + get => (StreamRequest)BaseRequest; set { BaseRequest = value; @@ -37,10 +28,7 @@ namespace MediaBrowser.Api.Playback public TranscodingThrottler TranscodingThrottler { get; set; } - public VideoStreamRequest VideoRequest - { - get { return Request as VideoStreamRequest; } - } + public VideoStreamRequest VideoRequest => Request as VideoStreamRequest; /// <summary> /// Gets or sets the log file stream. @@ -51,10 +39,7 @@ namespace MediaBrowser.Api.Playback public string WaitForPath { get; set; } - public bool IsOutputVideo - { - get { return Request is VideoStreamRequest; } - } + public bool IsOutputVideo => Request is VideoStreamRequest; public int SegmentLength { @@ -107,13 +92,7 @@ namespace MediaBrowser.Api.Playback } } - public int HlsListSize - { - get - { - return 0; - } - } + public int HlsListSize => 0; public string UserAgent { get; set; } diff --git a/MediaBrowser.Api/Playback/TranscodingThrottler.cs b/MediaBrowser.Api/Playback/TranscodingThrottler.cs index 5852852f6..97f21c8f3 100644 --- a/MediaBrowser.Api/Playback/TranscodingThrottler.cs +++ b/MediaBrowser.Api/Playback/TranscodingThrottler.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Model.Configuration; using System; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.IO; using MediaBrowser.Model.Threading; using Microsoft.Extensions.Logging; diff --git a/MediaBrowser.Api/Playback/UniversalAudioService.cs b/MediaBrowser.Api/Playback/UniversalAudioService.cs index 6f928000a..1faa32ba9 100644 --- a/MediaBrowser.Api/Playback/UniversalAudioService.cs +++ b/MediaBrowser.Api/Playback/UniversalAudioService.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.Linq; @@ -128,7 +128,7 @@ namespace MediaBrowser.Api.Playback var directPlayProfiles = new List<DirectPlayProfile>(); - var containers = (request.Container ?? string.Empty).Split(new [] { ',' }, StringSplitOptions.RemoveEmptyEntries); + var containers = (request.Container ?? string.Empty).Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries); foreach (var container in containers) { diff --git a/MediaBrowser.Api/PlaylistService.cs b/MediaBrowser.Api/PlaylistService.cs index 471e3bb57..482c1a2a8 100644 --- a/MediaBrowser.Api/PlaylistService.cs +++ b/MediaBrowser.Api/PlaylistService.cs @@ -1,4 +1,6 @@ -using System.Linq; +using System; +using System.Linq; +using System.Threading.Tasks; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; @@ -6,10 +8,7 @@ using MediaBrowser.Controller.Playlists; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Playlists; using MediaBrowser.Model.Querying; -using System.Threading.Tasks; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Extensions; -using System; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/PluginService.cs b/MediaBrowser.Api/PluginService.cs index 17822fb54..94be45474 100644 --- a/MediaBrowser.Api/PluginService.cs +++ b/MediaBrowser.Api/PluginService.cs @@ -1,17 +1,16 @@ -using MediaBrowser.Common; +using System; +using System.IO; +using System.Linq; +using System.Threading.Tasks; +using MediaBrowser.Common; using MediaBrowser.Common.Net; +using MediaBrowser.Common.Plugins; using MediaBrowser.Common.Updates; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Plugins; using MediaBrowser.Model.Serialization; -using System; -using System.IO; -using System.Linq; -using System.Threading.Tasks; using MediaBrowser.Model.Services; -using MediaBrowser.Common.Plugins; -using Microsoft.Extensions.Logging; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs b/MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs index 719e80082..16b036912 100644 --- a/MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs +++ b/MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Tasks; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.Services; +using MediaBrowser.Model.Tasks; namespace MediaBrowser.Api.ScheduledTasks { @@ -168,7 +168,7 @@ namespace MediaBrowser.Api.ScheduledTasks /// </summary> /// <param name="request">The request.</param> /// <returns>IEnumerable{TaskInfo}.</returns> - /// <exception cref="MediaBrowser.Common.Extensions.ResourceNotFoundException">Task not found</exception> + /// <exception cref="ResourceNotFoundException">Task not found</exception> public object Get(GetScheduledTask request) { var task = TaskManager.ScheduledTasks.FirstOrDefault(i => string.Equals(i.Id, request.Id)); @@ -187,7 +187,7 @@ namespace MediaBrowser.Api.ScheduledTasks /// Posts the specified request. /// </summary> /// <param name="request">The request.</param> - /// <exception cref="MediaBrowser.Common.Extensions.ResourceNotFoundException">Task not found</exception> + /// <exception cref="ResourceNotFoundException">Task not found</exception> public void Post(StartScheduledTask request) { var task = TaskManager.ScheduledTasks.FirstOrDefault(i => string.Equals(i.Id, request.Id)); @@ -214,7 +214,7 @@ namespace MediaBrowser.Api.ScheduledTasks /// Posts the specified request. /// </summary> /// <param name="request">The request.</param> - /// <exception cref="MediaBrowser.Common.Extensions.ResourceNotFoundException">Task not found</exception> + /// <exception cref="ResourceNotFoundException">Task not found</exception> public void Delete(StopScheduledTask request) { var task = TaskManager.ScheduledTasks.FirstOrDefault(i => string.Equals(i.Id, request.Id)); @@ -231,7 +231,7 @@ namespace MediaBrowser.Api.ScheduledTasks /// Posts the specified request. /// </summary> /// <param name="request">The request.</param> - /// <exception cref="MediaBrowser.Common.Extensions.ResourceNotFoundException">Task not found</exception> + /// <exception cref="ResourceNotFoundException">Task not found</exception> public void Post(UpdateScheduledTaskTriggers request) { // We need to parse this manually because we told service stack not to with IRequiresRequestStream diff --git a/MediaBrowser.Api/ScheduledTasks/ScheduledTasksWebSocketListener.cs b/MediaBrowser.Api/ScheduledTasks/ScheduledTasksWebSocketListener.cs index fa5fa99d1..b0c4b29c1 100644 --- a/MediaBrowser.Api/ScheduledTasks/ScheduledTasksWebSocketListener.cs +++ b/MediaBrowser.Api/ScheduledTasks/ScheduledTasksWebSocketListener.cs @@ -1,12 +1,11 @@ -using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Tasks; using System.Collections.Generic; using System.Linq; using System.Threading; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Net; +using MediaBrowser.Model.Events; +using MediaBrowser.Model.Tasks; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.ScheduledTasks { @@ -25,10 +24,7 @@ namespace MediaBrowser.Api.ScheduledTasks /// Gets the name. /// </summary> /// <value>The name.</value> - protected override string Name - { - get { return "ScheduledTasksInfo"; } - } + protected override string Name => "ScheduledTasksInfo"; /// <summary> /// Initializes a new instance of the <see cref="ScheduledTasksWebSocketListener" /> class. diff --git a/MediaBrowser.Api/SearchService.cs b/MediaBrowser.Api/SearchService.cs index 0473dd924..ecf07c912 100644 --- a/MediaBrowser.Api/SearchService.cs +++ b/MediaBrowser.Api/SearchService.cs @@ -1,17 +1,16 @@ -using System.Linq; +using System; +using System.Linq; using MediaBrowser.Controller.Drawing; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Search; -using System.Threading.Tasks; -using MediaBrowser.Controller.LiveTv; using MediaBrowser.Model.Services; -using System; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/Session/SessionInfoWebSocketListener.cs b/MediaBrowser.Api/Session/SessionInfoWebSocketListener.cs index 533e7d307..387ccad25 100644 --- a/MediaBrowser.Api/Session/SessionInfoWebSocketListener.cs +++ b/MediaBrowser.Api/Session/SessionInfoWebSocketListener.cs @@ -1,13 +1,10 @@ -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Session; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Session; using System.Collections.Generic; -using System.Linq; using System.Threading; -using MediaBrowser.Model.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Session; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.Session { @@ -20,10 +17,7 @@ namespace MediaBrowser.Api.Session /// Gets the name. /// </summary> /// <value>The name.</value> - protected override string Name - { - get { return "Sessions"; } - } + protected override string Name => "Sessions"; /// <summary> /// The _kernel diff --git a/MediaBrowser.Api/Session/SessionsService.cs b/MediaBrowser.Api/Session/SessionsService.cs index 1056b3c8b..234ada6c0 100644 --- a/MediaBrowser.Api/Session/SessionsService.cs +++ b/MediaBrowser.Api/Session/SessionsService.cs @@ -1,17 +1,16 @@ -using MediaBrowser.Controller.Devices; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Security; -using MediaBrowser.Controller.Session; -using MediaBrowser.Model.Session; using System; -using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.Services; using MediaBrowser.Controller; +using MediaBrowser.Controller.Devices; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Security; +using MediaBrowser.Controller.Session; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Services; +using MediaBrowser.Model.Session; namespace MediaBrowser.Api.Session { @@ -414,10 +413,9 @@ namespace MediaBrowser.Api.Session /// <param name="request">The request.</param> public Task Post(SendSystemCommand request) { - GeneralCommandType commandType; var name = request.Command; - if (Enum.TryParse(name, true, out commandType)) + if (Enum.TryParse(name, true, out GeneralCommandType commandType)) { name = commandType.ToString(); } @@ -519,4 +517,4 @@ namespace MediaBrowser.Api.Session _sessionManager.ReportCapabilities(request.Id, request); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Api/SimilarItemsHelper.cs b/MediaBrowser.Api/SimilarItemsHelper.cs index db075e8f4..44bb24ef2 100644 --- a/MediaBrowser.Api/SimilarItemsHelper.cs +++ b/MediaBrowser.Api/SimilarItemsHelper.cs @@ -1,16 +1,15 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using MediaBrowser.Model.Dto; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Api { @@ -96,7 +95,7 @@ namespace MediaBrowser.Api var items = GetSimilaritems(item, libraryManager, inputItems, getSimilarityScore) .ToList(); - List<BaseItem> returnItems = items; + var returnItems = items; if (request.Limit.HasValue) { diff --git a/MediaBrowser.Api/StartupWizardService.cs b/MediaBrowser.Api/StartupWizardService.cs index 0ddc1e1dd..5f137d804 100644 --- a/MediaBrowser.Api/StartupWizardService.cs +++ b/MediaBrowser.Api/StartupWizardService.cs @@ -1,15 +1,13 @@ -using MediaBrowser.Controller; +using System.Linq; +using System.Threading.Tasks; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Connect; using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Net; -using System; -using System.Linq; -using System.Threading.Tasks; using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.Services; -using MediaBrowser.Common.Net; -using System.Threading; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/Subtitles/SubtitleService.cs b/MediaBrowser.Api/Subtitles/SubtitleService.cs index 0e5b0a964..0552fbbd8 100644 --- a/MediaBrowser.Api/Subtitles/SubtitleService.cs +++ b/MediaBrowser.Api/Subtitles/SubtitleService.cs @@ -1,11 +1,3 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Controller.Subtitles; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.Globalization; @@ -14,10 +6,18 @@ using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Controller.Subtitles; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Services; -using MimeTypes = MediaBrowser.Model.Net.MimeTypes; using Microsoft.Extensions.Logging; +using MimeTypes = MediaBrowser.Model.Net.MimeTypes; namespace MediaBrowser.Api.Subtitles { @@ -247,7 +247,7 @@ namespace MediaBrowser.Api.Subtitles { var video = (Video)_libraryManager.GetItemById(request.Id); - return await _subtitleManager.SearchSubtitles(video, request.Language, request.IsPerfectMatch, CancellationToken.None).ConfigureAwait(false); + return await _subtitleManager.SearchSubtitles(video, request.Language, request.IsPerfectMatch, CancellationToken.None).ConfigureAwait(false); } public Task Delete(DeleteSubtitle request) diff --git a/MediaBrowser.Api/SuggestionsService.cs b/MediaBrowser.Api/SuggestionsService.cs index 07053c554..72fdae365 100644 --- a/MediaBrowser.Api/SuggestionsService.cs +++ b/MediaBrowser.Api/SuggestionsService.cs @@ -1,15 +1,13 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.Linq; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; -using System; -using System.Linq; -using System.Threading.Tasks; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/System/ActivityLogService.cs b/MediaBrowser.Api/System/ActivityLogService.cs index d55c57ffa..4d6ce1014 100644 --- a/MediaBrowser.Api/System/ActivityLogService.cs +++ b/MediaBrowser.Api/System/ActivityLogService.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Activity; -using MediaBrowser.Model.Querying; using System; using System.Globalization; +using MediaBrowser.Controller.Net; +using MediaBrowser.Model.Activity; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.System diff --git a/MediaBrowser.Api/System/ActivityLogWebSocketListener.cs b/MediaBrowser.Api/System/ActivityLogWebSocketListener.cs index 29f01eab9..0df46c399 100644 --- a/MediaBrowser.Api/System/ActivityLogWebSocketListener.cs +++ b/MediaBrowser.Api/System/ActivityLogWebSocketListener.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Model.Activity; -using MediaBrowser.Model.Events; -using Microsoft.Extensions.Logging; using System.Collections.Generic; +using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Net; -using System.Threading; +using MediaBrowser.Model.Activity; +using MediaBrowser.Model.Events; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.System { @@ -17,10 +17,7 @@ namespace MediaBrowser.Api.System /// Gets the name. /// </summary> /// <value>The name.</value> - protected override string Name - { - get { return "ActivityLogEntry"; } - } + protected override string Name => "ActivityLogEntry"; /// <summary> /// The _kernel diff --git a/MediaBrowser.Api/System/SystemService.cs b/MediaBrowser.Api/System/SystemService.cs index c2c2386ac..56184e18b 100644 --- a/MediaBrowser.Api/System/SystemService.cs +++ b/MediaBrowser.Api/System/SystemService.cs @@ -1,17 +1,17 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.System; using System; using System.Collections.Generic; using System.IO; using System.Linq; +using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.IO; using MediaBrowser.Model.Net; using MediaBrowser.Model.Services; -using System.Threading; +using MediaBrowser.Model.System; using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.System diff --git a/MediaBrowser.Api/TvShowsService.cs b/MediaBrowser.Api/TvShowsService.cs index 6cbb4062d..b0900a554 100644 --- a/MediaBrowser.Api/TvShowsService.cs +++ b/MediaBrowser.Api/TvShowsService.cs @@ -1,4 +1,7 @@ -using MediaBrowser.Common.Extensions; +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; @@ -6,13 +9,9 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.TV; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using MediaBrowser.Model.Dto; using MediaBrowser.Model.Services; namespace MediaBrowser.Api diff --git a/MediaBrowser.Api/UserLibrary/ArtistsService.cs b/MediaBrowser.Api/UserLibrary/ArtistsService.cs index cd3c80463..651da1939 100644 --- a/MediaBrowser.Api/UserLibrary/ArtistsService.cs +++ b/MediaBrowser.Api/UserLibrary/ArtistsService.cs @@ -1,4 +1,5 @@ -using System; +using System; +using System.Collections.Generic; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; @@ -6,7 +7,6 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; -using System.Collections.Generic; using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; @@ -92,7 +92,7 @@ namespace MediaBrowser.Api.UserLibrary //request.IncludeItemTypes = "Audio,MusicVideo"; } - return GetResultSlim(request); + return GetResultSlim(request); } /// <summary> diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs index eee27ac8e..6e577c53e 100644 --- a/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs +++ b/MediaBrowser.Api/UserLibrary/BaseItemsByNameService.cs @@ -1,16 +1,14 @@ -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Persistence; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Api.UserLibrary { diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsRequest.cs b/MediaBrowser.Api/UserLibrary/BaseItemsRequest.cs index 2ce9b0aec..4cccc0cb5 100644 --- a/MediaBrowser.Api/UserLibrary/BaseItemsRequest.cs +++ b/MediaBrowser.Api/UserLibrary/BaseItemsRequest.cs @@ -1,8 +1,7 @@ -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; -using System.Collections.Generic; using System.Linq; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.UserLibrary @@ -460,7 +459,7 @@ namespace MediaBrowser.Api.UserLibrary if (string.IsNullOrEmpty(val)) { - return Array.Empty<ValueTuple<string, Model.Entities.SortOrder>>(); + return Array.Empty<ValueTuple<string, SortOrder>>(); } var vals = val.Split(','); @@ -471,7 +470,7 @@ namespace MediaBrowser.Api.UserLibrary var sortOrders = requestedSortOrder.Split(','); - var result = new ValueTuple<string, Model.Entities.SortOrder>[vals.Length]; + var result = new ValueTuple<string, SortOrder>[vals.Length]; for (var i = 0; i < vals.Length; i++) { @@ -480,7 +479,7 @@ namespace MediaBrowser.Api.UserLibrary var sortOrderValue = sortOrders.Length > sortOrderIndex ? sortOrders[sortOrderIndex] : null; var sortOrder = string.Equals(sortOrderValue, "Descending", StringComparison.OrdinalIgnoreCase) ? MediaBrowser.Model.Entities.SortOrder.Descending : MediaBrowser.Model.Entities.SortOrder.Ascending; - result[i] = new ValueTuple<string, Model.Entities.SortOrder>(vals[i], sortOrder); + result[i] = new ValueTuple<string, SortOrder>(vals[i], sortOrder); } return result; diff --git a/MediaBrowser.Api/UserLibrary/GameGenresService.cs b/MediaBrowser.Api/UserLibrary/GameGenresService.cs index 476e881b9..3e0d4aca4 100644 --- a/MediaBrowser.Api/UserLibrary/GameGenresService.cs +++ b/MediaBrowser.Api/UserLibrary/GameGenresService.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.Collections.Generic; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; -using System; -using System.Collections.Generic; using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; diff --git a/MediaBrowser.Api/UserLibrary/GenresService.cs b/MediaBrowser.Api/UserLibrary/GenresService.cs index c897ba300..e20428ead 100644 --- a/MediaBrowser.Api/UserLibrary/GenresService.cs +++ b/MediaBrowser.Api/UserLibrary/GenresService.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.Collections.Generic; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using System; -using System.Collections.Generic; using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs index e2febc25d..bf453576c 100644 --- a/MediaBrowser.Api/UserLibrary/ItemsService.cs +++ b/MediaBrowser.Api/UserLibrary/ItemsService.cs @@ -1,19 +1,17 @@ -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; using System.Globalization; using System.Linq; -using System.Threading.Tasks; +using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Api.UserLibrary { @@ -481,7 +479,7 @@ namespace MediaBrowser.Api.UserLibrary // Albums by artist if (query.ArtistIds.Length > 0 && query.IncludeItemTypes.Length == 1 && string.Equals(query.IncludeItemTypes[0], "MusicAlbum", StringComparison.OrdinalIgnoreCase)) { - query.OrderBy = new [] + query.OrderBy = new[] { new ValueTuple<string, SortOrder>(ItemSortBy.ProductionYear, SortOrder.Descending), new ValueTuple<string, SortOrder>(ItemSortBy.SortName, SortOrder.Ascending) diff --git a/MediaBrowser.Api/UserLibrary/MusicGenresService.cs b/MediaBrowser.Api/UserLibrary/MusicGenresService.cs index 9583dacb2..4fcc3aa53 100644 --- a/MediaBrowser.Api/UserLibrary/MusicGenresService.cs +++ b/MediaBrowser.Api/UserLibrary/MusicGenresService.cs @@ -1,4 +1,5 @@ -using System; +using System; +using System.Collections.Generic; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; @@ -6,7 +7,6 @@ using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; -using System.Collections.Generic; using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; diff --git a/MediaBrowser.Api/UserLibrary/PersonsService.cs b/MediaBrowser.Api/UserLibrary/PersonsService.cs index d2c9ef33a..d317f9f38 100644 --- a/MediaBrowser.Api/UserLibrary/PersonsService.cs +++ b/MediaBrowser.Api/UserLibrary/PersonsService.cs @@ -1,14 +1,14 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; -using System.Collections.Generic; -using System.Linq; -using MediaBrowser.Model.Services; -using System; using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Services; namespace MediaBrowser.Api.UserLibrary { diff --git a/MediaBrowser.Api/UserLibrary/PlaystateService.cs b/MediaBrowser.Api/UserLibrary/PlaystateService.cs index 9b269542a..76f91e373 100644 --- a/MediaBrowser.Api/UserLibrary/PlaystateService.cs +++ b/MediaBrowser.Api/UserLibrary/PlaystateService.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Controller.Entities; +using System; +using System.Globalization; +using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Session; using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Session; -using System; -using System.Globalization; -using System.Threading.Tasks; using MediaBrowser.Model.Services; +using MediaBrowser.Model.Session; using Microsoft.Extensions.Logging; namespace MediaBrowser.Api.UserLibrary diff --git a/MediaBrowser.Api/UserLibrary/StudiosService.cs b/MediaBrowser.Api/UserLibrary/StudiosService.cs index 4a3204f71..4e2483a56 100644 --- a/MediaBrowser.Api/UserLibrary/StudiosService.cs +++ b/MediaBrowser.Api/UserLibrary/StudiosService.cs @@ -1,12 +1,11 @@ -using System; +using System; +using System.Collections.Generic; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; -using System.Collections.Generic; -using System.Linq; using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; diff --git a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs index d188d7f7e..a9b06095d 100644 --- a/MediaBrowser.Api/UserLibrary/UserLibraryService.cs +++ b/MediaBrowser.Api/UserLibrary/UserLibraryService.cs @@ -1,19 +1,17 @@ -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; -using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Model.IO; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; namespace MediaBrowser.Api.UserLibrary diff --git a/MediaBrowser.Api/UserLibrary/UserViewsService.cs b/MediaBrowser.Api/UserLibrary/UserViewsService.cs index a65cc18eb..1d61c5c1e 100644 --- a/MediaBrowser.Api/UserLibrary/UserViewsService.cs +++ b/MediaBrowser.Api/UserLibrary/UserViewsService.cs @@ -1,18 +1,14 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.Linq; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Net; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Library; using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Controller.Net; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Api.UserLibrary { diff --git a/MediaBrowser.Api/UserLibrary/YearsService.cs b/MediaBrowser.Api/UserLibrary/YearsService.cs index 528406aa4..0ee0fd219 100644 --- a/MediaBrowser.Api/UserLibrary/YearsService.cs +++ b/MediaBrowser.Api/UserLibrary/YearsService.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Controller.Dto; +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Dto; -using System.Collections.Generic; -using System.Linq; using MediaBrowser.Model.Services; -using System; namespace MediaBrowser.Api.UserLibrary { diff --git a/MediaBrowser.Api/UserService.cs b/MediaBrowser.Api/UserService.cs index 913a55b2b..2ef18d7cf 100644 --- a/MediaBrowser.Api/UserService.cs +++ b/MediaBrowser.Api/UserService.cs @@ -1,6 +1,9 @@ -using MediaBrowser.Controller.Authentication; +using System; +using System.Linq; +using System.Threading.Tasks; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Authentication; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Library; @@ -9,11 +12,8 @@ using MediaBrowser.Controller.Session; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Connect; using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Users; -using System; -using System.Linq; -using System.Threading.Tasks; using MediaBrowser.Model.Services; +using MediaBrowser.Model.Users; namespace MediaBrowser.Api { diff --git a/MediaBrowser.Api/VideosService.cs b/MediaBrowser.Api/VideosService.cs index 40d2e066c..061f72438 100644 --- a/MediaBrowser.Api/VideosService.cs +++ b/MediaBrowser.Api/VideosService.cs @@ -1,18 +1,15 @@ -using MediaBrowser.Controller.Configuration; +using System; +using System.Linq; +using System.Threading; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Net; using MediaBrowser.Controller.Persistence; -using MediaBrowser.Model.Querying; -using System; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Services; namespace MediaBrowser.Api diff --git a/MediaBrowser.Common/Configuration/ConfigurationUpdateEventArgs.cs b/MediaBrowser.Common/Configuration/ConfigurationUpdateEventArgs.cs index 310e2aa63..0b59627cc 100644 --- a/MediaBrowser.Common/Configuration/ConfigurationUpdateEventArgs.cs +++ b/MediaBrowser.Common/Configuration/ConfigurationUpdateEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Common.Configuration { diff --git a/MediaBrowser.Common/Configuration/IApplicationPaths.cs b/MediaBrowser.Common/Configuration/IApplicationPaths.cs index c6256bc5a..27092c0e1 100644 --- a/MediaBrowser.Common/Configuration/IApplicationPaths.cs +++ b/MediaBrowser.Common/Configuration/IApplicationPaths.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Common.Configuration { /// <summary> diff --git a/MediaBrowser.Common/Configuration/IConfigurationFactory.cs b/MediaBrowser.Common/Configuration/IConfigurationFactory.cs index 6ed638536..0fb2b83d1 100644 --- a/MediaBrowser.Common/Configuration/IConfigurationFactory.cs +++ b/MediaBrowser.Common/Configuration/IConfigurationFactory.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; namespace MediaBrowser.Common.Configuration diff --git a/MediaBrowser.Common/Configuration/IConfigurationManager.cs b/MediaBrowser.Common/Configuration/IConfigurationManager.cs index d826a3ee7..8fed2dcdf 100644 --- a/MediaBrowser.Common/Configuration/IConfigurationManager.cs +++ b/MediaBrowser.Common/Configuration/IConfigurationManager.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Configuration; using System; using System.Collections.Generic; +using MediaBrowser.Model.Configuration; namespace MediaBrowser.Common.Configuration { diff --git a/MediaBrowser.Common/Events/EventHelper.cs b/MediaBrowser.Common/Events/EventHelper.cs index 2630ce7da..0ac7905a1 100644 --- a/MediaBrowser.Common/Events/EventHelper.cs +++ b/MediaBrowser.Common/Events/EventHelper.cs @@ -1,6 +1,6 @@ -using Microsoft.Extensions.Logging; using System; using System.Threading.Tasks; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Common.Events { diff --git a/MediaBrowser.Common/Extensions/BaseExtensions.cs b/MediaBrowser.Common/Extensions/BaseExtensions.cs index 520c04244..db0514bb1 100644 --- a/MediaBrowser.Common/Extensions/BaseExtensions.cs +++ b/MediaBrowser.Common/Extensions/BaseExtensions.cs @@ -1,5 +1,4 @@ -using System; -using System.Globalization; +using System; using System.Text.RegularExpressions; using MediaBrowser.Model.Cryptography; diff --git a/MediaBrowser.Common/Extensions/ResourceNotFoundException.cs b/MediaBrowser.Common/Extensions/ResourceNotFoundException.cs index 89e20b1b4..f62c65fd7 100644 --- a/MediaBrowser.Common/Extensions/ResourceNotFoundException.cs +++ b/MediaBrowser.Common/Extensions/ResourceNotFoundException.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Common.Extensions { diff --git a/MediaBrowser.Common/IApplicationHost.cs b/MediaBrowser.Common/IApplicationHost.cs index c4f760b15..bc6c3a984 100644 --- a/MediaBrowser.Common/IApplicationHost.cs +++ b/MediaBrowser.Common/IApplicationHost.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Common.Plugins; -using MediaBrowser.Model.Events; -using MediaBrowser.Model.Updates; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Plugins; +using MediaBrowser.Model.Events; +using MediaBrowser.Model.Updates; namespace MediaBrowser.Common { diff --git a/MediaBrowser.Common/MediaBrowser.Common.csproj b/MediaBrowser.Common/MediaBrowser.Common.csproj index af5536b36..2220d4661 100644 --- a/MediaBrowser.Common/MediaBrowser.Common.csproj +++ b/MediaBrowser.Common/MediaBrowser.Common.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <Authors>Jellyfin Contributors</Authors> diff --git a/MediaBrowser.Common/Net/HttpRequestOptions.cs b/MediaBrowser.Common/Net/HttpRequestOptions.cs index c61e88c87..dadac5e03 100644 --- a/MediaBrowser.Common/Net/HttpRequestOptions.cs +++ b/MediaBrowser.Common/Net/HttpRequestOptions.cs @@ -1,9 +1,7 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; -using System.Net; using System.Threading; -using System.Text; namespace MediaBrowser.Common.Net { @@ -26,11 +24,8 @@ namespace MediaBrowser.Common.Net /// <value>The accept header.</value> public string AcceptHeader { - get { return GetHeaderValue("Accept"); } - set - { - RequestHeaders["Accept"] = value; - } + get => GetHeaderValue("Accept"); + set => RequestHeaders["Accept"] = value; } /// <summary> /// Gets or sets the cancellation token. @@ -50,11 +45,8 @@ namespace MediaBrowser.Common.Net /// <value>The user agent.</value> public string UserAgent { - get { return GetHeaderValue("User-Agent"); } - set - { - RequestHeaders["User-Agent"] = value; - } + get => GetHeaderValue("User-Agent"); + set => RequestHeaders["User-Agent"] = value; } /// <summary> @@ -110,9 +102,7 @@ namespace MediaBrowser.Common.Net private string GetHeaderValue(string name) { - string value; - - RequestHeaders.TryGetValue(name, out value); + RequestHeaders.TryGetValue(name, out var value); return value; } @@ -133,7 +123,7 @@ namespace MediaBrowser.Common.Net TimeoutMs = 20000; } - public void SetPostData(IDictionary<string,string> values) + public void SetPostData(IDictionary<string, string> values) { var strings = values.Keys.Select(key => string.Format("{0}={1}", key, values[key])); var postContent = string.Join("&", strings.ToArray()); diff --git a/MediaBrowser.Common/Net/HttpResponseInfo.cs b/MediaBrowser.Common/Net/HttpResponseInfo.cs index a36550a28..186674167 100644 --- a/MediaBrowser.Common/Net/HttpResponseInfo.cs +++ b/MediaBrowser.Common/Net/HttpResponseInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Net; @@ -50,7 +50,7 @@ namespace MediaBrowser.Common.Net /// Gets or sets the headers. /// </summary> /// <value>The headers.</value> - public Dictionary<string,string> Headers { get; set; } + public Dictionary<string, string> Headers { get; set; } private readonly IDisposable _disposable; diff --git a/MediaBrowser.Common/Net/IHttpClient.cs b/MediaBrowser.Common/Net/IHttpClient.cs index f88cfbb2b..5aaf7e0be 100644 --- a/MediaBrowser.Common/Net/IHttpClient.cs +++ b/MediaBrowser.Common/Net/IHttpClient.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; using System.Threading.Tasks; namespace MediaBrowser.Common.Net @@ -43,7 +43,7 @@ namespace MediaBrowser.Common.Net /// <param name="options">The options.</param> /// <returns>Task{System.String}.</returns> /// <exception cref="System.ArgumentNullException">progress</exception> - /// <exception cref="MediaBrowser.Model.Net.HttpException"></exception> + /// <exception cref="Model.Net.HttpException"></exception> Task<string> GetTempFile(HttpRequestOptions options); /// <summary> diff --git a/MediaBrowser.Common/Net/INetworkManager.cs b/MediaBrowser.Common/Net/INetworkManager.cs index b2ff797bc..72fb6e2b8 100644 --- a/MediaBrowser.Common/Net/INetworkManager.cs +++ b/MediaBrowser.Common/Net/INetworkManager.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Net; -using System.Collections.Generic; using System; +using System.Collections.Generic; using System.Threading.Tasks; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Net; namespace MediaBrowser.Common.Net { @@ -63,4 +63,4 @@ namespace MediaBrowser.Common.Net bool IsAddressInSubnets(string addressString, string[] subnets); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Common/Plugins/BasePlugin.cs b/MediaBrowser.Common/Plugins/BasePlugin.cs index 2fdee381d..1ff2e98ef 100644 --- a/MediaBrowser.Common/Plugins/BasePlugin.cs +++ b/MediaBrowser.Common/Plugins/BasePlugin.cs @@ -1,8 +1,8 @@ +using System; +using System.IO; using MediaBrowser.Common.Configuration; using MediaBrowser.Model.Plugins; using MediaBrowser.Model.Serialization; -using System; -using System.IO; namespace MediaBrowser.Common.Plugins { @@ -18,10 +18,7 @@ namespace MediaBrowser.Common.Plugins /// Gets the description. /// </summary> /// <value>The description.</value> - public virtual string Description - { - get { return string.Empty; } - } + public virtual string Description => string.Empty; /// <summary> /// Gets the unique id. @@ -108,10 +105,7 @@ namespace MediaBrowser.Common.Plugins /// Gets the type of configuration this plugin uses /// </summary> /// <value>The type of the configuration.</value> - public Type ConfigurationType - { - get { return typeof(TConfigurationType); } - } + public Type ConfigurationType => typeof(TConfigurationType); private Action<string> _directoryCreateFn; public void SetStartupInfo(Action<string> directoryCreateFn) @@ -124,13 +118,7 @@ namespace MediaBrowser.Common.Plugins /// Gets the name the assembly file /// </summary> /// <value>The name of the assembly file.</value> - protected string AssemblyFileName - { - get - { - return Path.GetFileName(AssemblyFilePath); - } - } + protected string AssemblyFileName => Path.GetFileName(AssemblyFilePath); /// <summary> /// The _configuration sync lock @@ -161,10 +149,7 @@ namespace MediaBrowser.Common.Plugins } return _configuration; } - protected set - { - _configuration = value; - } + protected set => _configuration = value; } private TConfigurationType LoadConfiguration() @@ -185,22 +170,13 @@ namespace MediaBrowser.Common.Plugins /// Gets the name of the configuration file. Subclasses should override /// </summary> /// <value>The name of the configuration file.</value> - public virtual string ConfigurationFileName - { - get { return Path.ChangeExtension(AssemblyFileName, ".xml"); } - } + public virtual string ConfigurationFileName => Path.ChangeExtension(AssemblyFileName, ".xml"); /// <summary> /// Gets the full path to the configuration file /// </summary> /// <value>The configuration file path.</value> - public string ConfigurationFilePath - { - get - { - return Path.Combine(ApplicationPaths.PluginConfigurationsPath, ConfigurationFileName); - } - } + public string ConfigurationFilePath => Path.Combine(ApplicationPaths.PluginConfigurationsPath, ConfigurationFileName); /// <summary> /// Initializes a new instance of the <see cref="BasePlugin{TConfigurationType}" /> class. @@ -236,7 +212,7 @@ namespace MediaBrowser.Common.Plugins /// Returns true or false indicating success or failure /// </summary> /// <param name="configuration">The configuration.</param> - /// <exception cref="System.ArgumentNullException">configuration</exception> + /// <exception cref="ArgumentNullException">configuration</exception> public virtual void UpdateConfiguration(BasePluginConfiguration configuration) { if (configuration == null) @@ -253,10 +229,7 @@ namespace MediaBrowser.Common.Plugins /// Gets the plugin's configuration /// </summary> /// <value>The configuration.</value> - BasePluginConfiguration IHasPluginConfiguration.Configuration - { - get { return Configuration; } - } + BasePluginConfiguration IHasPluginConfiguration.Configuration => Configuration; public override PluginInfo GetPluginInfo() { diff --git a/MediaBrowser.Common/Plugins/IPlugin.cs b/MediaBrowser.Common/Plugins/IPlugin.cs index bffd21143..32527c299 100644 --- a/MediaBrowser.Common/Plugins/IPlugin.cs +++ b/MediaBrowser.Common/Plugins/IPlugin.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Plugins; using System; +using MediaBrowser.Model.Plugins; namespace MediaBrowser.Common.Plugins { @@ -69,7 +69,7 @@ namespace MediaBrowser.Common.Plugins /// Returns true or false indicating success or failure /// </summary> /// <param name="configuration">The configuration.</param> - /// <exception cref="System.ArgumentNullException">configuration</exception> + /// <exception cref="ArgumentNullException">configuration</exception> void UpdateConfiguration(BasePluginConfiguration configuration); /// <summary> @@ -80,4 +80,4 @@ namespace MediaBrowser.Common.Plugins void SetStartupInfo(Action<string> directoryCreateFn); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Common/Progress/ActionableProgress.cs b/MediaBrowser.Common/Progress/ActionableProgress.cs index 67347bc15..9fe01931f 100644 --- a/MediaBrowser.Common/Progress/ActionableProgress.cs +++ b/MediaBrowser.Common/Progress/ActionableProgress.cs @@ -1,5 +1,4 @@ -using System; -using System.Collections.Generic; +using System; namespace MediaBrowser.Common.Progress { diff --git a/MediaBrowser.Common/Updates/IInstallationManager.cs b/MediaBrowser.Common/Updates/IInstallationManager.cs index a3e0277d9..a263be35f 100644 --- a/MediaBrowser.Common/Updates/IInstallationManager.cs +++ b/MediaBrowser.Common/Updates/IInstallationManager.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Common.Plugins; -using MediaBrowser.Model.Events; -using MediaBrowser.Model.Updates; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Plugins; +using MediaBrowser.Model.Events; +using MediaBrowser.Model.Updates; namespace MediaBrowser.Common.Updates { @@ -106,14 +106,14 @@ namespace MediaBrowser.Common.Updates /// <param name="progress">The progress.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">package</exception> + /// <exception cref="ArgumentNullException">package</exception> Task InstallPackage(PackageVersionInfo package, bool isPlugin, IProgress<double> progress, CancellationToken cancellationToken); /// <summary> /// Uninstalls a plugin /// </summary> /// <param name="plugin">The plugin.</param> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentException"></exception> void UninstallPlugin(IPlugin plugin); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Common/Updates/InstallationEventArgs.cs b/MediaBrowser.Common/Updates/InstallationEventArgs.cs index 9dc8ead83..9f215e889 100644 --- a/MediaBrowser.Common/Updates/InstallationEventArgs.cs +++ b/MediaBrowser.Common/Updates/InstallationEventArgs.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Updates; +using MediaBrowser.Model.Updates; namespace MediaBrowser.Common.Updates { diff --git a/MediaBrowser.Common/Updates/InstallationFailedEventArgs.cs b/MediaBrowser.Common/Updates/InstallationFailedEventArgs.cs index 69dc1ee98..43adfb02d 100644 --- a/MediaBrowser.Common/Updates/InstallationFailedEventArgs.cs +++ b/MediaBrowser.Common/Updates/InstallationFailedEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Common.Updates { @@ -6,4 +6,4 @@ namespace MediaBrowser.Common.Updates { public Exception Exception { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Authentication/IAuthenticationProvider.cs b/MediaBrowser.Controller/Authentication/IAuthenticationProvider.cs index 82308296f..b9f282bd2 100644 --- a/MediaBrowser.Controller/Authentication/IAuthenticationProvider.cs +++ b/MediaBrowser.Controller/Authentication/IAuthenticationProvider.cs @@ -1,4 +1,4 @@ -using System.Threading.Tasks; +using System.Threading.Tasks; using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Users; diff --git a/MediaBrowser.Controller/Channels/Channel.cs b/MediaBrowser.Controller/Channels/Channel.cs index 9cd50db17..adf03fb66 100644 --- a/MediaBrowser.Controller/Channels/Channel.cs +++ b/MediaBrowser.Controller/Channels/Channel.cs @@ -1,12 +1,10 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Channels; -using MediaBrowser.Model.Querying; using System; using System.Linq; -using MediaBrowser.Model.Serialization; using System.Threading; -using System.Threading.Tasks; using MediaBrowser.Common.Progress; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Channels { @@ -33,19 +31,10 @@ namespace MediaBrowser.Controller.Channels } [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; [IgnoreDataMember] - public override SourceType SourceType - { - get { return SourceType.Channel; } - } + public override SourceType SourceType => SourceType.Channel; protected override QueryResult<BaseItem> GetItemsInternal(InternalItemsQuery query) { diff --git a/MediaBrowser.Controller/Channels/ChannelItemInfo.cs b/MediaBrowser.Controller/Channels/ChannelItemInfo.cs index 0de2b9a0c..aff68883b 100644 --- a/MediaBrowser.Controller/Channels/ChannelItemInfo.cs +++ b/MediaBrowser.Controller/Channels/ChannelItemInfo.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Channels; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Channels; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Channels { diff --git a/MediaBrowser.Controller/Channels/ChannelItemResult.cs b/MediaBrowser.Controller/Channels/ChannelItemResult.cs index f88881811..c194c8e48 100644 --- a/MediaBrowser.Controller/Channels/ChannelItemResult.cs +++ b/MediaBrowser.Controller/Channels/ChannelItemResult.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace MediaBrowser.Controller.Channels { @@ -13,4 +13,4 @@ namespace MediaBrowser.Controller.Channels Items = new List<ChannelItemInfo>(); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Channels/ChannelItemType.cs b/MediaBrowser.Controller/Channels/ChannelItemType.cs index 184ce8a76..833ae75fe 100644 --- a/MediaBrowser.Controller/Channels/ChannelItemType.cs +++ b/MediaBrowser.Controller/Channels/ChannelItemType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Controller.Channels +namespace MediaBrowser.Controller.Channels { public enum ChannelItemType { @@ -6,4 +6,4 @@ Folder = 1 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Channels/ChannelParentalRating.cs b/MediaBrowser.Controller/Channels/ChannelParentalRating.cs index d9cc521b3..1d189446d 100644 --- a/MediaBrowser.Controller/Channels/ChannelParentalRating.cs +++ b/MediaBrowser.Controller/Channels/ChannelParentalRating.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Controller.Channels +namespace MediaBrowser.Controller.Channels { public enum ChannelParentalRating { @@ -12,4 +12,4 @@ Adult = 4 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Channels/ChannelSearchInfo.cs b/MediaBrowser.Controller/Channels/ChannelSearchInfo.cs index c2a51654c..c02055b90 100644 --- a/MediaBrowser.Controller/Channels/ChannelSearchInfo.cs +++ b/MediaBrowser.Controller/Channels/ChannelSearchInfo.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Controller.Channels +namespace MediaBrowser.Controller.Channels { public class ChannelSearchInfo { @@ -11,4 +11,4 @@ { public string UserId { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Channels/IChannel.cs b/MediaBrowser.Controller/Channels/IChannel.cs index dc1d9b00a..f8ed98a45 100644 --- a/MediaBrowser.Controller/Channels/IChannel.cs +++ b/MediaBrowser.Controller/Channels/IChannel.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Channels { diff --git a/MediaBrowser.Controller/Channels/IChannelManager.cs b/MediaBrowser.Controller/Channels/IChannelManager.cs index b345001a6..df508fbe2 100644 --- a/MediaBrowser.Controller/Channels/IChannelManager.cs +++ b/MediaBrowser.Controller/Channels/IChannelManager.cs @@ -1,11 +1,11 @@ using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Channels; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Querying; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; namespace MediaBrowser.Controller.Channels { diff --git a/MediaBrowser.Controller/Channels/IHasCacheKey.cs b/MediaBrowser.Controller/Channels/IHasCacheKey.cs index 6376d2f91..d86ad0dba 100644 --- a/MediaBrowser.Controller/Channels/IHasCacheKey.cs +++ b/MediaBrowser.Controller/Channels/IHasCacheKey.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Channels { public interface IHasCacheKey diff --git a/MediaBrowser.Controller/Channels/IRequiresMediaInfoCallback.cs b/MediaBrowser.Controller/Channels/IRequiresMediaInfoCallback.cs index a2c63586b..deee46ff7 100644 --- a/MediaBrowser.Controller/Channels/IRequiresMediaInfoCallback.cs +++ b/MediaBrowser.Controller/Channels/IRequiresMediaInfoCallback.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.Dto; @@ -12,4 +12,4 @@ namespace MediaBrowser.Controller.Channels /// </summary> Task<IEnumerable<MediaSourceInfo>> GetChannelItemMediaInfo(string id, CancellationToken cancellationToken); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Channels/ISearchableChannel.cs b/MediaBrowser.Controller/Channels/ISearchableChannel.cs index bf9842eb4..d5b76a160 100644 --- a/MediaBrowser.Controller/Channels/ISearchableChannel.cs +++ b/MediaBrowser.Controller/Channels/ISearchableChannel.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; @@ -47,4 +47,4 @@ namespace MediaBrowser.Controller.Channels { string[] Attributes { get; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs b/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs index 976808aad..60455e68a 100644 --- a/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs +++ b/MediaBrowser.Controller/Channels/InternalChannelFeatures.cs @@ -1,6 +1,5 @@ -using System; -using MediaBrowser.Model.Channels; using System.Collections.Generic; +using MediaBrowser.Model.Channels; namespace MediaBrowser.Controller.Channels { diff --git a/MediaBrowser.Controller/Channels/InternalChannelItemQuery.cs b/MediaBrowser.Controller/Channels/InternalChannelItemQuery.cs index c69a1f6c3..6d5ca75af 100644 --- a/MediaBrowser.Controller/Channels/InternalChannelItemQuery.cs +++ b/MediaBrowser.Controller/Channels/InternalChannelItemQuery.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Channels; using System; +using MediaBrowser.Model.Channels; namespace MediaBrowser.Controller.Channels diff --git a/MediaBrowser.Controller/Chapters/IChapterManager.cs b/MediaBrowser.Controller/Chapters/IChapterManager.cs index 161e87094..d061898a1 100644 --- a/MediaBrowser.Controller/Chapters/IChapterManager.cs +++ b/MediaBrowser.Controller/Chapters/IChapterManager.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Chapters diff --git a/MediaBrowser.Controller/Collections/CollectionCreationOptions.cs b/MediaBrowser.Controller/Collections/CollectionCreationOptions.cs index 5363e035c..51fe4ce29 100644 --- a/MediaBrowser.Controller/Collections/CollectionCreationOptions.cs +++ b/MediaBrowser.Controller/Collections/CollectionCreationOptions.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Collections { diff --git a/MediaBrowser.Controller/Collections/CollectionEvents.cs b/MediaBrowser.Controller/Collections/CollectionEvents.cs index 80f66a444..bfc6af463 100644 --- a/MediaBrowser.Controller/Collections/CollectionEvents.cs +++ b/MediaBrowser.Controller/Collections/CollectionEvents.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Movies; using System; using System.Collections.Generic; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Movies; namespace MediaBrowser.Controller.Collections { diff --git a/MediaBrowser.Controller/Collections/ICollectionManager.cs b/MediaBrowser.Controller/Collections/ICollectionManager.cs index 05bc927ba..cfe8493d3 100644 --- a/MediaBrowser.Controller/Collections/ICollectionManager.cs +++ b/MediaBrowser.Controller/Collections/ICollectionManager.cs @@ -1,8 +1,7 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Movies; using System; using System.Collections.Generic; -using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Movies; namespace MediaBrowser.Controller.Collections { diff --git a/MediaBrowser.Controller/Configuration/IServerConfigurationManager.cs b/MediaBrowser.Controller/Configuration/IServerConfigurationManager.cs index af5714932..6660743e6 100644 --- a/MediaBrowser.Controller/Configuration/IServerConfigurationManager.cs +++ b/MediaBrowser.Controller/Configuration/IServerConfigurationManager.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Configuration; using MediaBrowser.Model.Configuration; namespace MediaBrowser.Controller.Configuration diff --git a/MediaBrowser.Controller/Connect/UserLinkResult.cs b/MediaBrowser.Controller/Connect/UserLinkResult.cs index 16ebfc70a..327ceb952 100644 --- a/MediaBrowser.Controller/Connect/UserLinkResult.cs +++ b/MediaBrowser.Controller/Connect/UserLinkResult.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Connect { public class UserLinkResult diff --git a/MediaBrowser.Controller/Devices/CameraImageUploadInfo.cs b/MediaBrowser.Controller/Devices/CameraImageUploadInfo.cs index b3f3bb902..89d0be58f 100644 --- a/MediaBrowser.Controller/Devices/CameraImageUploadInfo.cs +++ b/MediaBrowser.Controller/Devices/CameraImageUploadInfo.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Devices; +using MediaBrowser.Model.Devices; namespace MediaBrowser.Controller.Devices { diff --git a/MediaBrowser.Controller/Devices/IDeviceManager.cs b/MediaBrowser.Controller/Devices/IDeviceManager.cs index d29fb8ded..77d567631 100644 --- a/MediaBrowser.Controller/Devices/IDeviceManager.cs +++ b/MediaBrowser.Controller/Devices/IDeviceManager.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Model.Devices; -using MediaBrowser.Model.Events; -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Session; using System; using System.IO; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Devices; +using MediaBrowser.Model.Events; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Session; namespace MediaBrowser.Controller.Devices { diff --git a/MediaBrowser.Controller/Dlna/IDlnaManager.cs b/MediaBrowser.Controller/Dlna/IDlnaManager.cs index 70529d062..a6ee7c505 100644 --- a/MediaBrowser.Controller/Dlna/IDlnaManager.cs +++ b/MediaBrowser.Controller/Dlna/IDlnaManager.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Model.Dlna; using System.Collections.Generic; +using MediaBrowser.Controller.Drawing; +using MediaBrowser.Model.Dlna; namespace MediaBrowser.Controller.Dlna { @@ -17,7 +17,7 @@ namespace MediaBrowser.Controller.Dlna /// </summary> /// <param name="headers">The headers.</param> /// <returns>DeviceProfile.</returns> - DeviceProfile GetProfile(IDictionary<string,string> headers); + DeviceProfile GetProfile(IDictionary<string, string> headers); /// <summary> /// Gets the default profile. diff --git a/MediaBrowser.Controller/Drawing/IImageEncoder.cs b/MediaBrowser.Controller/Drawing/IImageEncoder.cs index 757448eb2..6e2d5781a 100644 --- a/MediaBrowser.Controller/Drawing/IImageEncoder.cs +++ b/MediaBrowser.Controller/Drawing/IImageEncoder.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Drawing; namespace MediaBrowser.Controller.Drawing diff --git a/MediaBrowser.Controller/Drawing/IImageProcessor.cs b/MediaBrowser.Controller/Drawing/IImageProcessor.cs index fdf10e223..c5d30c426 100644 --- a/MediaBrowser.Controller/Drawing/IImageProcessor.cs +++ b/MediaBrowser.Controller/Drawing/IImageProcessor.cs @@ -1,11 +1,11 @@ -using System; +using System; +using System.Collections.Generic; +using System.IO; +using System.Threading.Tasks; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Entities; -using System.Collections.Generic; -using System.IO; -using System.Threading.Tasks; namespace MediaBrowser.Controller.Drawing { diff --git a/MediaBrowser.Controller/Drawing/ImageCollageOptions.cs b/MediaBrowser.Controller/Drawing/ImageCollageOptions.cs index 92a7f5ac9..3f762fad0 100644 --- a/MediaBrowser.Controller/Drawing/ImageCollageOptions.cs +++ b/MediaBrowser.Controller/Drawing/ImageCollageOptions.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Drawing { public class ImageCollageOptions diff --git a/MediaBrowser.Controller/Drawing/ImageHelper.cs b/MediaBrowser.Controller/Drawing/ImageHelper.cs index 6fb9f256e..2680c60bd 100644 --- a/MediaBrowser.Controller/Drawing/ImageHelper.cs +++ b/MediaBrowser.Controller/Drawing/ImageHelper.cs @@ -1,4 +1,3 @@ -using System; using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Entities; diff --git a/MediaBrowser.Controller/Drawing/ImageProcessingOptions.cs b/MediaBrowser.Controller/Drawing/ImageProcessingOptions.cs index ffc3e6cc0..00d93930f 100644 --- a/MediaBrowser.Controller/Drawing/ImageProcessingOptions.cs +++ b/MediaBrowser.Controller/Drawing/ImageProcessingOptions.cs @@ -1,10 +1,9 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Drawing; using System; -using System.Collections.Generic; using System.IO; using System.Linq; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Drawing; namespace MediaBrowser.Controller.Drawing { diff --git a/MediaBrowser.Controller/Drawing/ImageProcessorExtensions.cs b/MediaBrowser.Controller/Drawing/ImageProcessorExtensions.cs index 1b1e386e5..df9050de5 100644 --- a/MediaBrowser.Controller/Drawing/ImageProcessorExtensions.cs +++ b/MediaBrowser.Controller/Drawing/ImageProcessorExtensions.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Drawing @@ -22,4 +22,4 @@ namespace MediaBrowser.Controller.Drawing return processor.GetImageCacheTag(item, imageInfo); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Drawing/ImageStream.cs b/MediaBrowser.Controller/Drawing/ImageStream.cs index 353abaca3..74ac24ec9 100644 --- a/MediaBrowser.Controller/Drawing/ImageStream.cs +++ b/MediaBrowser.Controller/Drawing/ImageStream.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Drawing; using System; using System.IO; +using MediaBrowser.Model.Drawing; namespace MediaBrowser.Controller.Drawing { diff --git a/MediaBrowser.Controller/Dto/DtoOptions.cs b/MediaBrowser.Controller/Dto/DtoOptions.cs index b5ce09028..aa99f6b58 100644 --- a/MediaBrowser.Controller/Dto/DtoOptions.cs +++ b/MediaBrowser.Controller/Dto/DtoOptions.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; using System.Linq; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Controller.Dto { public class DtoOptions { - private static readonly ItemFields[] DefaultExcludedFields = new [] + private static readonly ItemFields[] DefaultExcludedFields = new[] { ItemFields.SeasonUserData, ItemFields.RefreshState diff --git a/MediaBrowser.Controller/Dto/IDtoService.cs b/MediaBrowser.Controller/Dto/IDtoService.cs index 37e83e45a..df5ec5dd0 100644 --- a/MediaBrowser.Controller/Dto/IDtoService.cs +++ b/MediaBrowser.Controller/Dto/IDtoService.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System.Collections.Generic; +using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Querying; -using System.Collections.Generic; namespace MediaBrowser.Controller.Dto { diff --git a/MediaBrowser.Controller/Entities/AggregateFolder.cs b/MediaBrowser.Controller/Entities/AggregateFolder.cs index 6425fa41b..054df21e5 100644 --- a/MediaBrowser.Controller/Entities/AggregateFolder.cs +++ b/MediaBrowser.Controller/Entities/AggregateFolder.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.IO; -using MediaBrowser.Controller.Library; using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Serialization; @@ -24,10 +24,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool IsPhysicalRoot - { - get { return true; } - } + public override bool IsPhysicalRoot => true; public override bool CanDelete() { @@ -35,13 +32,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return false; - } - } + public override bool SupportsPlayedStatus => false; /// <summary> /// The _virtual children @@ -52,19 +43,10 @@ namespace MediaBrowser.Controller.Entities /// Gets the virtual children. /// </summary> /// <value>The virtual children.</value> - public ConcurrentBag<BaseItem> VirtualChildren - { - get { return _virtualChildren; } - } + public ConcurrentBag<BaseItem> VirtualChildren => _virtualChildren; [IgnoreDataMember] - public override string[] PhysicalLocations - { - get - { - return PhysicalLocationsList; - } - } + public override string[] PhysicalLocations => PhysicalLocationsList; public string[] PhysicalLocationsList { get; set; } @@ -182,7 +164,7 @@ namespace MediaBrowser.Controller.Entities /// Adds the virtual child. /// </summary> /// <param name="child">The child.</param> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public void AddVirtualChild(BaseItem child) { if (child == null) @@ -198,7 +180,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <param name="id">The id.</param> /// <returns>BaseItem.</returns> - /// <exception cref="System.ArgumentNullException">id</exception> + /// <exception cref="ArgumentNullException">id</exception> public BaseItem FindVirtualChild(Guid id) { if (id.Equals(Guid.Empty)) diff --git a/MediaBrowser.Controller/Entities/Audio/Audio.cs b/MediaBrowser.Controller/Entities/Audio/Audio.cs index 1aeae6052..13a6fe44a 100644 --- a/MediaBrowser.Controller/Entities/Audio/Audio.cs +++ b/MediaBrowser.Controller/Entities/Audio/Audio.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using MediaBrowser.Controller.Persistence; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Entities.Audio @@ -41,49 +41,22 @@ namespace MediaBrowser.Controller.Entities.Audio } [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return true; - } - } + public override bool SupportsPlayedStatus => true; [IgnoreDataMember] - public override bool SupportsPeople - { - get { return false; } - } + public override bool SupportsPeople => false; [IgnoreDataMember] - public override bool SupportsAddingToPlaylist - { - get { return true; } - } + public override bool SupportsAddingToPlaylist => true; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get { return true; } - } + public override bool SupportsInheritedParentImages => true; [IgnoreDataMember] - protected override bool SupportsOwnedItems - { - get - { - return false; - } - } + protected override bool SupportsOwnedItems => false; [IgnoreDataMember] - public override Folder LatestItemsIndexContainer - { - get - { - return AlbumEntity; - } - } + public override Folder LatestItemsIndexContainer => AlbumEntity; public override bool CanDownload() { @@ -115,23 +88,14 @@ namespace MediaBrowser.Controller.Entities.Audio } [IgnoreDataMember] - public MusicAlbum AlbumEntity - { - get { return FindParent<MusicAlbum>(); } - } + public MusicAlbum AlbumEntity => FindParent<MusicAlbum>(); /// <summary> /// Gets the type of the media. /// </summary> /// <value>The type of the media.</value> [IgnoreDataMember] - public override string MediaType - { - get - { - return Model.Entities.MediaType.Audio; - } - } + public override string MediaType => Model.Entities.MediaType.Audio; /// <summary> /// Creates the name of the sort. diff --git a/MediaBrowser.Controller/Entities/Audio/IHasAlbumArtist.cs b/MediaBrowser.Controller/Entities/Audio/IHasAlbumArtist.cs index b2dedada4..a269b3486 100644 --- a/MediaBrowser.Controller/Entities/Audio/IHasAlbumArtist.cs +++ b/MediaBrowser.Controller/Entities/Audio/IHasAlbumArtist.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Entities.Audio { public interface IHasAlbumArtist diff --git a/MediaBrowser.Controller/Entities/Audio/IHasMusicGenres.cs b/MediaBrowser.Controller/Entities/Audio/IHasMusicGenres.cs index 2200d4b75..5ae056050 100644 --- a/MediaBrowser.Controller/Entities/Audio/IHasMusicGenres.cs +++ b/MediaBrowser.Controller/Entities/Audio/IHasMusicGenres.cs @@ -1,5 +1,3 @@ -using System.Collections.Generic; - namespace MediaBrowser.Controller.Entities.Audio { public interface IHasMusicGenres diff --git a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs index 870e6e07e..a3e05f0d2 100644 --- a/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs +++ b/MediaBrowser.Controller/Entities/Audio/MusicAlbum.cs @@ -1,15 +1,15 @@ -using System; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Users; +using System; using System.Collections.Generic; using System.Linq; -using MediaBrowser.Model.Serialization; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Serialization; +using MediaBrowser.Model.Users; namespace MediaBrowser.Controller.Entities.Audio { @@ -28,22 +28,13 @@ namespace MediaBrowser.Controller.Entities.Audio } [IgnoreDataMember] - public override bool SupportsAddingToPlaylist - { - get { return true; } - } + public override bool SupportsAddingToPlaylist => true; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get { return true; } - } + public override bool SupportsInheritedParentImages => true; [IgnoreDataMember] - public MusicArtist MusicArtist - { - get { return GetMusicArtist(new DtoOptions(true)); } - } + public MusicArtist MusicArtist => GetMusicArtist(new DtoOptions(true)); public MusicArtist GetMusicArtist(DtoOptions options) { @@ -66,22 +57,10 @@ namespace MediaBrowser.Controller.Entities.Audio } [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return false; - } - } + public override bool SupportsPlayedStatus => false; [IgnoreDataMember] - public override bool SupportsCumulativeRunTimeTicks - { - get - { - return true; - } - } + public override bool SupportsCumulativeRunTimeTicks => true; [IgnoreDataMember] public string[] AllArtists @@ -107,29 +86,17 @@ namespace MediaBrowser.Controller.Entities.Audio } [IgnoreDataMember] - public string AlbumArtist - { - get { return AlbumArtists.Length == 0 ? null : AlbumArtists[0]; } - } + public string AlbumArtist => AlbumArtists.Length == 0 ? null : AlbumArtists[0]; [IgnoreDataMember] - public override bool SupportsPeople - { - get { return false; } - } + public override bool SupportsPeople => false; /// <summary> /// Gets the tracks. /// </summary> /// <value>The tracks.</value> [IgnoreDataMember] - public IEnumerable<BaseItem> Tracks - { - get - { - return GetRecursiveChildren(i => i is Audio); - } - } + public IEnumerable<BaseItem> Tracks => GetRecursiveChildren(i => i is Audio); protected override IEnumerable<BaseItem> GetEligibleChildrenForRecursiveChildren(User user) { diff --git a/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs b/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs index 56ed10ced..2d464bd32 100644 --- a/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs +++ b/MediaBrowser.Controller/Entities/Audio/MusicArtist.cs @@ -1,14 +1,14 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Users; using System; using System.Collections.Generic; using System.Linq; -using MediaBrowser.Model.Serialization; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Serialization; +using MediaBrowser.Model.Users; using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Entities.Audio @@ -19,61 +19,25 @@ namespace MediaBrowser.Controller.Entities.Audio public class MusicArtist : Folder, IItemByName, IHasMusicGenres, IHasDualAccess, IHasLookupInfo<ArtistInfo> { [IgnoreDataMember] - public bool IsAccessedByName - { - get { return ParentId.Equals(Guid.Empty); } - } + public bool IsAccessedByName => ParentId.Equals(Guid.Empty); [IgnoreDataMember] - public override bool IsFolder - { - get - { - return !IsAccessedByName; - } - } + public override bool IsFolder => !IsAccessedByName; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; [IgnoreDataMember] - public override bool SupportsCumulativeRunTimeTicks - { - get - { - return true; - } - } + public override bool SupportsCumulativeRunTimeTicks => true; [IgnoreDataMember] - public override bool IsDisplayedAsFolder - { - get - { - return true; - } - } + public override bool IsDisplayedAsFolder => true; [IgnoreDataMember] - public override bool SupportsAddingToPlaylist - { - get { return true; } - } + public override bool SupportsAddingToPlaylist => true; [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return false; - } - } + public override bool SupportsPlayedStatus => false; public override double GetDefaultPrimaryImageAspectRatio() { @@ -154,13 +118,7 @@ namespace MediaBrowser.Controller.Entities.Audio /// </summary> /// <value>The containing folder path.</value> [IgnoreDataMember] - public override string ContainingFolderPath - { - get - { - return Path; - } - } + public override string ContainingFolderPath => Path; /// <summary> /// Gets the user data key. @@ -207,13 +165,7 @@ namespace MediaBrowser.Controller.Entities.Audio } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; public static string GetPath(string name) { diff --git a/MediaBrowser.Controller/Entities/Audio/MusicGenre.cs b/MediaBrowser.Controller/Entities/Audio/MusicGenre.cs index ec68eaf8b..d26aaf2bb 100644 --- a/MediaBrowser.Controller/Entities/Audio/MusicGenre.cs +++ b/MediaBrowser.Controller/Entities/Audio/MusicGenre.cs @@ -1,7 +1,7 @@ -using System; +using System; using System.Collections.Generic; -using MediaBrowser.Model.Serialization; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Model.Serialization; using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Entities.Audio @@ -24,28 +24,13 @@ namespace MediaBrowser.Controller.Entities.Audio } [IgnoreDataMember] - public override bool SupportsAddingToPlaylist - { - get { return true; } - } + public override bool SupportsAddingToPlaylist => true; [IgnoreDataMember] - public override bool SupportsAncestors - { - get - { - return false; - } - } + public override bool SupportsAncestors => false; [IgnoreDataMember] - public override bool IsDisplayedAsFolder - { - get - { - return true; - } - } + public override bool IsDisplayedAsFolder => true; /// <summary> /// Returns the folder containing the item. @@ -53,13 +38,7 @@ namespace MediaBrowser.Controller.Entities.Audio /// </summary> /// <value>The containing folder path.</value> [IgnoreDataMember] - public override string ContainingFolderPath - { - get - { - return Path; - } - } + public override string ContainingFolderPath => Path; public override double GetDefaultPrimaryImageAspectRatio() { @@ -77,13 +56,7 @@ namespace MediaBrowser.Controller.Entities.Audio } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; public IList<BaseItem> GetTaggedItems(InternalItemsQuery query) { diff --git a/MediaBrowser.Controller/Entities/AudioBook.cs b/MediaBrowser.Controller/Entities/AudioBook.cs index 679facf64..65c8a5fdd 100644 --- a/MediaBrowser.Controller/Entities/AudioBook.cs +++ b/MediaBrowser.Controller/Entities/AudioBook.cs @@ -1,30 +1,17 @@ -using System; +using System; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Entities { public class AudioBook : Audio.Audio, IHasSeries, IHasLookupInfo<SongInfo> { [IgnoreDataMember] - public override bool SupportsPositionTicksResume - { - get - { - return true; - } - } + public override bool SupportsPositionTicksResume => true; [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return true; - } - } + public override bool SupportsPlayedStatus => true; [IgnoreDataMember] public string SeriesPresentationUniqueKey { get; set; } diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs index 8298f4087..68374c8df 100644 --- a/MediaBrowser.Controller/Entities/BaseItem.cs +++ b/MediaBrowser.Controller/Entities/BaseItem.cs @@ -1,15 +1,3 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Channels; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Persistence; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Library; -using MediaBrowser.Model.Users; using System; using System.Collections.Generic; using System.Globalization; @@ -17,15 +5,27 @@ using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller.Channels; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Persistence; +using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.Sorting; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Globalization; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Library; using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.MediaInfo; +using MediaBrowser.Model.Users; using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Entities @@ -108,19 +108,10 @@ namespace MediaBrowser.Controller.Entities public Guid ChannelId { get; set; } [IgnoreDataMember] - public virtual bool SupportsAddingToPlaylist - { - get - { - return false; - } - } + public virtual bool SupportsAddingToPlaylist => false; [IgnoreDataMember] - public virtual bool AlwaysScanInternalMetadataPath - { - get { return false; } - } + public virtual bool AlwaysScanInternalMetadataPath => false; /// <summary> /// Gets a value indicating whether this instance is in mixed folder. @@ -130,31 +121,13 @@ namespace MediaBrowser.Controller.Entities public bool IsInMixedFolder { get; set; } [IgnoreDataMember] - public virtual bool SupportsPlayedStatus - { - get - { - return false; - } - } + public virtual bool SupportsPlayedStatus => false; [IgnoreDataMember] - public virtual bool SupportsPositionTicksResume - { - get - { - return false; - } - } + public virtual bool SupportsPositionTicksResume => false; [IgnoreDataMember] - public virtual bool SupportsRemoteImageDownloading - { - get - { - return true; - } - } + public virtual bool SupportsRemoteImageDownloading => true; private string _name; /// <summary> @@ -164,10 +137,7 @@ namespace MediaBrowser.Controller.Entities [IgnoreDataMember] public virtual string Name { - get - { - return _name; - } + get => _name; set { _name = value; @@ -178,10 +148,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public bool IsUnaired - { - get { return PremiereDate.HasValue && PremiereDate.Value.ToLocalTime().Date >= DateTime.Now.Date; } - } + public bool IsUnaired => PremiereDate.HasValue && PremiereDate.Value.ToLocalTime().Date >= DateTime.Now.Date; [IgnoreDataMember] public int? TotalBitrate { get; set; } @@ -189,13 +156,7 @@ namespace MediaBrowser.Controller.Entities public ExtraType? ExtraType { get; set; } [IgnoreDataMember] - public bool IsThemeMedia - { - get - { - return ExtraType.HasValue && (ExtraType.Value == Model.Entities.ExtraType.ThemeSong || ExtraType.Value == Model.Entities.ExtraType.ThemeVideo); - } - } + public bool IsThemeMedia => ExtraType.HasValue && (ExtraType.Value == Model.Entities.ExtraType.ThemeSong || ExtraType.Value == Model.Entities.ExtraType.ThemeVideo); [IgnoreDataMember] public string OriginalTitle { get; set; } @@ -295,13 +256,7 @@ namespace MediaBrowser.Controller.Entities public string ExternalEtag { get; set; } [IgnoreDataMember] - public virtual bool IsHidden - { - get - { - return false; - } - } + public virtual bool IsHidden => false; public BaseItem GetOwner() { @@ -362,22 +317,10 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public bool IsFileProtocol - { - get - { - return IsPathProtocol(MediaProtocol.File); - } - } + public bool IsFileProtocol => IsPathProtocol(MediaProtocol.File); [IgnoreDataMember] - public bool HasPathProtocol - { - get - { - return PathProtocol.HasValue; - } - } + public bool HasPathProtocol => PathProtocol.HasValue; [IgnoreDataMember] public virtual bool SupportsLocalMetadata @@ -408,13 +351,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public virtual bool EnableAlphaNumericSorting - { - get - { - return true; - } - } + public virtual bool EnableAlphaNumericSorting => true; private List<Tuple<StringBuilder, bool>> GetSortChunks(string s1) { @@ -430,7 +367,7 @@ namespace MediaBrowser.Controller.Entities } char thisCh = s1[thisMarker]; - StringBuilder thisChunk = new StringBuilder(); + var thisChunk = new StringBuilder(); while ((thisMarker < s1.Length) && (thisChunk.Length == 0 || SortHelper.InChunk(thisCh, thisChunk[0]))) { @@ -455,10 +392,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The primary image path.</value> [IgnoreDataMember] - public string PrimaryImagePath - { - get { return this.GetImagePath(ImageType.Primary); } - } + public string PrimaryImagePath => this.GetImagePath(ImageType.Primary); public bool IsMetadataFetcherEnabled(LibraryOptions libraryOptions, string name) { @@ -614,9 +548,9 @@ namespace MediaBrowser.Controller.Entities public static IMediaSourceManager MediaSourceManager { get; set; } /// <summary> - /// Returns a <see cref="System.String" /> that represents this instance. + /// Returns a <see cref="string" /> that represents this instance. /// </summary> - /// <returns>A <see cref="System.String" /> that represents this instance.</returns> + /// <returns>A <see cref="string" /> that represents this instance.</returns> public override string ToString() { return Name; @@ -637,13 +571,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The type of the media.</value> [IgnoreDataMember] - public virtual string MediaType - { - get - { - return null; - } - } + public virtual string MediaType => null; [IgnoreDataMember] public virtual string[] PhysicalLocations @@ -667,7 +595,7 @@ namespace MediaBrowser.Controller.Entities [IgnoreDataMember] public string ForcedSortName { - get { return _forcedSortName; } + get => _forcedSortName; set { _forcedSortName = value; _sortName = null; } } @@ -695,10 +623,7 @@ namespace MediaBrowser.Controller.Entities } return _sortName; } - set - { - _sortName = value; - } + set => _sortName = value; } public string GetInternalMetadataPath() @@ -816,7 +741,7 @@ namespace MediaBrowser.Controller.Entities [IgnoreDataMember] public Folder Parent { - get { return GetParent() as Folder; } + get => GetParent() as Folder; set { @@ -1007,10 +932,7 @@ namespace MediaBrowser.Controller.Entities public int? ParentIndexNumber { get; set; } [IgnoreDataMember] - public virtual bool HasLocalAlternateVersions - { - get { return false; } - } + public virtual bool HasLocalAlternateVersions => false; [IgnoreDataMember] public string OfficialRatingForComparison @@ -1426,22 +1348,13 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - protected virtual bool SupportsOwnedItems - { - get { return !ParentId.Equals(Guid.Empty) && IsFileProtocol; } - } + protected virtual bool SupportsOwnedItems => !ParentId.Equals(Guid.Empty) && IsFileProtocol; [IgnoreDataMember] - public virtual bool SupportsPeople - { - get { return false; } - } + public virtual bool SupportsPeople => false; [IgnoreDataMember] - public virtual bool SupportsThemeMedia - { - get { return false; } - } + public virtual bool SupportsThemeMedia => false; /// <summary> /// Refreshes owned items such as trailers, theme videos, special features, etc. @@ -1602,10 +1515,7 @@ namespace MediaBrowser.Controller.Entities public Dictionary<string, string> ProviderIds { get; set; } [IgnoreDataMember] - public virtual Folder LatestItemsIndexContainer - { - get { return null; } - } + public virtual Folder LatestItemsIndexContainer => null; public virtual double GetDefaultPrimaryImageAspectRatio() { @@ -1751,7 +1661,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <param name="user">The user.</param> /// <returns><c>true</c> if [is parental allowed] [the specified user]; otherwise, <c>false</c>.</returns> - /// <exception cref="System.ArgumentNullException">user</exception> + /// <exception cref="ArgumentNullException">user</exception> public bool IsParentalAllowed(User user) { if (user == null) @@ -1901,7 +1811,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <param name="user">The user.</param> /// <returns><c>true</c> if the specified user is visible; otherwise, <c>false</c>.</returns> - /// <exception cref="System.ArgumentNullException">user</exception> + /// <exception cref="ArgumentNullException">user</exception> public virtual bool IsVisible(User user) { if (user == null) @@ -1923,10 +1833,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public virtual bool SupportsInheritedParentImages - { - get { return false; } - } + public virtual bool SupportsInheritedParentImages => false; protected bool IsVisibleStandaloneInternal(User user, bool checkFolders) { @@ -1969,22 +1876,10 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value><c>true</c> if this instance is folder; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public virtual bool IsFolder - { - get - { - return false; - } - } + public virtual bool IsFolder => false; [IgnoreDataMember] - public virtual bool IsDisplayedAsFolder - { - get - { - return false; - } - } + public virtual bool IsDisplayedAsFolder => false; public virtual string GetClientTypeName() { @@ -2070,19 +1965,13 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public virtual bool EnableRememberingTrackSelections - { - get - { - return true; - } - } + public virtual bool EnableRememberingTrackSelections => true; /// <summary> /// Adds a studio to the item /// </summary> /// <param name="name">The name.</param> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public void AddStudio(string name) { if (string.IsNullOrEmpty(name)) @@ -2101,7 +1990,7 @@ namespace MediaBrowser.Controller.Entities else { var list = - Studios = current.Concat(new [] { name }).ToArray(); + Studios = current.Concat(new[] { name }).ToArray(); } } } @@ -2115,7 +2004,7 @@ namespace MediaBrowser.Controller.Entities /// Adds a genre to the item /// </summary> /// <param name="name">The name.</param> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public void AddGenre(string name) { if (string.IsNullOrEmpty(name)) @@ -2139,7 +2028,7 @@ namespace MediaBrowser.Controller.Entities /// <param name="datePlayed">The date played.</param> /// <param name="resetPosition">if set to <c>true</c> [reset position].</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public virtual void MarkPlayed(User user, DateTime? datePlayed, bool resetPosition) @@ -2176,7 +2065,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <param name="user">The user.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public virtual void MarkUnplayed(User user) { if (user == null) @@ -2215,7 +2104,7 @@ namespace MediaBrowser.Controller.Entities /// <param name="type">The type.</param> /// <param name="imageIndex">Index of the image.</param> /// <returns><c>true</c> if the specified type has image; otherwise, <c>false</c>.</returns> - /// <exception cref="System.ArgumentException">Backdrops should be accessed using Item.Backdrops</exception> + /// <exception cref="ArgumentException">Backdrops should be accessed using Item.Backdrops</exception> public bool HasImage(ImageType type, int imageIndex) { return GetImageInfo(type, imageIndex) != null; @@ -2241,7 +2130,7 @@ namespace MediaBrowser.Controller.Entities else { var currentCount = ImageInfos.Length; - ImageInfos = ImageInfos.Concat(new [] { image }) .ToArray(); + ImageInfos = ImageInfos.Concat(new[] { image }).ToArray(); } } @@ -2256,7 +2145,7 @@ namespace MediaBrowser.Controller.Entities if (image == null) { - ImageInfos = ImageInfos.Concat(new [] { GetImageInfo(file, type) }) .ToArray(); + ImageInfos = ImageInfos.Concat(new[] { GetImageInfo(file, type) }).ToArray(); } else { @@ -2343,9 +2232,9 @@ namespace MediaBrowser.Controller.Entities /// <param name="imageType">Type of the image.</param> /// <param name="imageIndex">Index of the image.</param> /// <returns>System.String.</returns> - /// <exception cref="System.InvalidOperationException"> + /// <exception cref="InvalidOperationException"> /// </exception> - /// <exception cref="System.ArgumentNullException">item</exception> + /// <exception cref="ArgumentNullException">item</exception> public string GetImagePath(ImageType imageType, int imageIndex) { var info = GetImageInfo(imageType, imageIndex); @@ -2405,7 +2294,7 @@ namespace MediaBrowser.Controller.Entities /// <param name="imageType">Type of the image.</param> /// <param name="images">The images.</param> /// <returns><c>true</c> if XXXX, <c>false</c> otherwise.</returns> - /// <exception cref="System.ArgumentException">Cannot call AddImages with chapter images</exception> + /// <exception cref="ArgumentException">Cannot call AddImages with chapter images</exception> public bool AddImages(ImageType imageType, List<FileSystemMetadata> images) { if (imageType == ImageType.Chapter) @@ -2813,22 +2702,10 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public virtual bool SupportsAncestors - { - get - { - return true; - } - } + public virtual bool SupportsAncestors => true; [IgnoreDataMember] - public virtual bool StopRefreshIfLocalMetadataFound - { - get - { - return true; - } - } + public virtual bool StopRefreshIfLocalMetadataFound => true; public virtual IEnumerable<Guid> GetIdsForAncestorQuery() { @@ -2915,14 +2792,9 @@ namespace MediaBrowser.Controller.Entities return GetExtras(); } - public virtual bool IsHD { - get - { - return Height >= 720; - } - } - public bool IsShortcut{ get; set;} - public string ShortcutPath{ get; set;} + public virtual bool IsHD => 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; } @@ -2931,12 +2803,7 @@ namespace MediaBrowser.Controller.Entities return RunTimeTicks ?? 0; } // what does this do? - public static ExtraType[] DisplayExtraTypes = new[] {Model.Entities.ExtraType.ThemeSong, Model.Entities.ExtraType.ThemeVideo }; - public virtual bool SupportsExternalTransfer - { - get { - return false; - } - } + public static ExtraType[] DisplayExtraTypes = new[] { Model.Entities.ExtraType.ThemeSong, Model.Entities.ExtraType.ThemeVideo }; + public virtual bool SupportsExternalTransfer => false; } } diff --git a/MediaBrowser.Controller/Entities/BaseItemExtensions.cs b/MediaBrowser.Controller/Entities/BaseItemExtensions.cs index bfd832d34..9c955a724 100644 --- a/MediaBrowser.Controller/Entities/BaseItemExtensions.cs +++ b/MediaBrowser.Controller/Entities/BaseItemExtensions.cs @@ -1,14 +1,6 @@ -using System; using System.Linq; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Querying; namespace MediaBrowser.Controller.Entities { @@ -72,7 +64,7 @@ namespace MediaBrowser.Controller.Entities where T : BaseItem where TU : BaseItem { - var sourceProps = typeof (T).GetProperties().Where(x => x.CanRead).ToList(); + var sourceProps = typeof(T).GetProperties().Where(x => x.CanRead).ToList(); var destProps = typeof(TU).GetProperties() .Where(x => x.CanWrite) .ToList(); diff --git a/MediaBrowser.Controller/Entities/BasePluginFolder.cs b/MediaBrowser.Controller/Entities/BasePluginFolder.cs index c06f1cef4..8cdb9695c 100644 --- a/MediaBrowser.Controller/Entities/BasePluginFolder.cs +++ b/MediaBrowser.Controller/Entities/BasePluginFolder.cs @@ -1,4 +1,3 @@ - using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Entities @@ -10,10 +9,7 @@ namespace MediaBrowser.Controller.Entities public abstract class BasePluginFolder : Folder, ICollectionFolder { [IgnoreDataMember] - public virtual string CollectionType - { - get { return null; } - } + public virtual string CollectionType => null; public override bool CanDelete() { @@ -26,22 +22,10 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; //public override double? GetDefaultPrimaryImageAspectRatio() //{ diff --git a/MediaBrowser.Controller/Entities/Book.cs b/MediaBrowser.Controller/Entities/Book.cs index 6814570c3..7a23d9a66 100644 --- a/MediaBrowser.Controller/Entities/Book.cs +++ b/MediaBrowser.Controller/Entities/Book.cs @@ -1,22 +1,15 @@ -using System; +using System; using System.Linq; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Entities { public class Book : BaseItem, IHasLookupInfo<BookInfo>, IHasSeries { [IgnoreDataMember] - public override string MediaType - { - get - { - return Model.Entities.MediaType.Book; - } - } + public override string MediaType => Model.Entities.MediaType.Book; [IgnoreDataMember] public string SeriesPresentationUniqueKey { get; set; } diff --git a/MediaBrowser.Controller/Entities/CollectionFolder.cs b/MediaBrowser.Controller/Entities/CollectionFolder.cs index 75d6b9381..91cfcd0ce 100644 --- a/MediaBrowser.Controller/Entities/CollectionFolder.cs +++ b/MediaBrowser.Controller/Entities/CollectionFolder.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; @@ -8,9 +8,7 @@ using System.Threading.Tasks; using MediaBrowser.Controller.IO; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; -using MediaBrowser.Controller.Configuration; using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; using MediaBrowser.Model.Serialization; @@ -36,22 +34,10 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return false; - } - } + public override bool SupportsPlayedStatus => false; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; public override bool CanDelete() { @@ -117,8 +103,7 @@ namespace MediaBrowser.Controller.Entities { lock (LibraryOptions) { - LibraryOptions options; - if (!LibraryOptions.TryGetValue(path, out options)) + if (!LibraryOptions.TryGetValue(path, out var options)) { options = LoadLibraryOptions(path); LibraryOptions[path] = options; @@ -160,22 +145,10 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The display prefs id.</value> [IgnoreDataMember] - public override Guid DisplayPreferencesId - { - get - { - return Id; - } - } + public override Guid DisplayPreferencesId => Id; [IgnoreDataMember] - public override string[] PhysicalLocations - { - get - { - return PhysicalLocationsList; - } - } + public override string[] PhysicalLocations => PhysicalLocationsList; public override bool IsSaveLocalMetadataEnabled() { @@ -339,10 +312,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The actual children.</value> [IgnoreDataMember] - public override IEnumerable<BaseItem> Children - { - get { return GetActualChildren(); } - } + public override IEnumerable<BaseItem> Children => GetActualChildren(); public IEnumerable<BaseItem> GetActualChildren() { @@ -388,12 +358,6 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; } } diff --git a/MediaBrowser.Controller/Entities/DayOfWeekHelper.cs b/MediaBrowser.Controller/Entities/DayOfWeekHelper.cs index 166ef66d4..8a79e0783 100644 --- a/MediaBrowser.Controller/Entities/DayOfWeekHelper.cs +++ b/MediaBrowser.Controller/Entities/DayOfWeekHelper.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Configuration; using System; using System.Collections.Generic; +using MediaBrowser.Model.Configuration; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/Extensions.cs b/MediaBrowser.Controller/Entities/Extensions.cs index 91f78b902..f3bddd29c 100644 --- a/MediaBrowser.Controller/Entities/Extensions.cs +++ b/MediaBrowser.Controller/Entities/Extensions.cs @@ -1,7 +1,6 @@ -using MediaBrowser.Model.Entities; using System; using System.Linq; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Entities { @@ -35,7 +34,7 @@ namespace MediaBrowser.Controller.Entities } else { - item.RemoteTrailers = item.RemoteTrailers.Concat(new [] { mediaUrl }).ToArray(); + item.RemoteTrailers = item.RemoteTrailers.Concat(new[] { mediaUrl }).ToArray(); } } } diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs index d9952cea8..2103e0045 100644 --- a/MediaBrowser.Controller/Entities/Folder.cs +++ b/MediaBrowser.Controller/Entities/Folder.cs @@ -1,27 +1,23 @@ -using MediaBrowser.Common.Progress; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Progress; using MediaBrowser.Controller.Channels; +using MediaBrowser.Controller.Collections; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.Channels; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Collections; -using MediaBrowser.Controller.Configuration; using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Entities @@ -51,80 +47,35 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsThemeMedia - { - get { return true; } - } + public override bool SupportsThemeMedia => true; [IgnoreDataMember] - public virtual bool IsPreSorted - { - get { return false; } - } + public virtual bool IsPreSorted => false; [IgnoreDataMember] - public virtual bool IsPhysicalRoot - { - get { return false; } - } + public virtual bool IsPhysicalRoot => false; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return true; - } - } + public override bool SupportsInheritedParentImages => true; [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return true; - } - } + public override bool SupportsPlayedStatus => true; /// <summary> /// Gets a value indicating whether this instance is folder. /// </summary> /// <value><c>true</c> if this instance is folder; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public override bool IsFolder - { - get - { - return true; - } - } + public override bool IsFolder => true; [IgnoreDataMember] - public override bool IsDisplayedAsFolder - { - get - { - return true; - } - } + public override bool IsDisplayedAsFolder => true; [IgnoreDataMember] - public virtual bool SupportsCumulativeRunTimeTicks - { - get - { - return false; - } - } + public virtual bool SupportsCumulativeRunTimeTicks => false; [IgnoreDataMember] - public virtual bool SupportsDateLastMediaAdded - { - get - { - return false; - } - } + public virtual bool SupportsDateLastMediaAdded => false; public override bool CanDelete() { @@ -176,10 +127,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - protected virtual bool SupportsShortcutChildren - { - get { return false; } - } + protected virtual bool SupportsShortcutChildren => false; /// <summary> /// Adds the child. @@ -187,7 +135,7 @@ namespace MediaBrowser.Controller.Entities /// <param name="item">The item.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.InvalidOperationException">Unable to add + item.Name</exception> + /// <exception cref="InvalidOperationException">Unable to add + item.Name</exception> public void AddChild(BaseItem item, CancellationToken cancellationToken) { item.SetParent(this); @@ -214,23 +162,14 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The actual children.</value> [IgnoreDataMember] - public virtual IEnumerable<BaseItem> Children - { - get - { - return LoadChildren(); - } - } + public virtual IEnumerable<BaseItem> Children => LoadChildren(); /// <summary> /// thread-safe access to all recursive children of this folder - without regard to user /// </summary> /// <value>The recursive children.</value> [IgnoreDataMember] - public IEnumerable<BaseItem> RecursiveChildren - { - get { return GetRecursiveChildren(); } - } + public IEnumerable<BaseItem> RecursiveChildren => GetRecursiveChildren(); public override bool IsVisible(User user) { @@ -392,9 +331,7 @@ namespace MediaBrowser.Controller.Entities foreach (var child in nonCachedChildren) { - BaseItem currentChild; - - if (currentChildren.TryGetValue(child.Id, out currentChild)) + if (currentChildren.TryGetValue(child.Id, out BaseItem currentChild)) { validChildren.Add(currentChild); @@ -1322,7 +1259,7 @@ namespace MediaBrowser.Controller.Entities /// <param name="user">The user.</param> /// <param name="includeLinkedChildren">if set to <c>true</c> [include linked children].</param> /// <returns>IEnumerable{BaseItem}.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public IEnumerable<BaseItem> GetRecursiveChildren(User user, bool includeLinkedChildren = true) { return GetRecursiveChildren(user, null); @@ -1425,13 +1362,7 @@ namespace MediaBrowser.Controller.Entities return list; } - protected virtual bool FilterLinkedChildrenPerUser - { - get - { - return false; - } - } + protected virtual bool FilterLinkedChildrenPerUser => false; public bool ContainsLinkedChildByItemId(Guid itemId) { @@ -1528,13 +1459,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - protected override bool SupportsOwnedItems - { - get - { - return base.SupportsOwnedItems || SupportsShortcutChildren; - } - } + protected override bool SupportsOwnedItems => base.SupportsOwnedItems || SupportsShortcutChildren; protected override async Task<bool> RefreshedOwnedItems(MetadataRefreshOptions options, List<FileSystemMetadata> fileSystemChildren, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Controller/Entities/Game.cs b/MediaBrowser.Controller/Entities/Game.cs index 4efc5648e..82a4531ff 100644 --- a/MediaBrowser.Controller/Entities/Game.cs +++ b/MediaBrowser.Controller/Entities/Game.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; @@ -27,26 +27,17 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsThemeMedia - { - get { return true; } - } + public override bool SupportsThemeMedia => true; [IgnoreDataMember] - public override bool SupportsPeople - { - get { return false; } - } + public override bool SupportsPeople => false; /// <summary> /// Gets the type of the media. /// </summary> /// <value>The type of the media.</value> [IgnoreDataMember] - public override string MediaType - { - get { return Model.Entities.MediaType.Game; } - } + public override string MediaType => Model.Entities.MediaType.Game; /// <summary> /// Gets or sets the players supported. diff --git a/MediaBrowser.Controller/Entities/GameGenre.cs b/MediaBrowser.Controller/Entities/GameGenre.cs index ba178d3c3..c0fd4ae89 100644 --- a/MediaBrowser.Controller/Entities/GameGenre.cs +++ b/MediaBrowser.Controller/Entities/GameGenre.cs @@ -1,7 +1,7 @@ -using System; +using System; using System.Collections.Generic; -using MediaBrowser.Model.Serialization; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Model.Serialization; using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Entities @@ -32,22 +32,10 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The containing folder path.</value> [IgnoreDataMember] - public override string ContainingFolderPath - { - get - { - return Path; - } - } + public override string ContainingFolderPath => Path; [IgnoreDataMember] - public override bool SupportsAncestors - { - get - { - return false; - } - } + public override bool SupportsAncestors => false; public override bool IsSaveLocalMetadataEnabled() { @@ -68,13 +56,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; public static string GetPath(string name) { diff --git a/MediaBrowser.Controller/Entities/GameSystem.cs b/MediaBrowser.Controller/Entities/GameSystem.cs index fb60ce83a..63f830d25 100644 --- a/MediaBrowser.Controller/Entities/GameSystem.cs +++ b/MediaBrowser.Controller/Entities/GameSystem.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.Serialization; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; using System; using System.Collections.Generic; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Users; namespace MediaBrowser.Controller.Entities @@ -18,31 +18,13 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The display prefs id.</value> [IgnoreDataMember] - public override Guid DisplayPreferencesId - { - get - { - return Id; - } - } + public override Guid DisplayPreferencesId => Id; [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return false; - } - } + public override bool SupportsPlayedStatus => false; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; public override double GetDefaultPrimaryImageAspectRatio() { @@ -90,12 +72,6 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; } } diff --git a/MediaBrowser.Controller/Entities/Genre.cs b/MediaBrowser.Controller/Entities/Genre.cs index 57ffe2744..3f3ab3551 100644 --- a/MediaBrowser.Controller/Entities/Genre.cs +++ b/MediaBrowser.Controller/Entities/Genre.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.Serialization; -using MediaBrowser.Controller.Entities.Audio; using System; using System.Collections.Generic; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Model.Serialization; using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Entities @@ -35,31 +35,13 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The containing folder path.</value> [IgnoreDataMember] - public override string ContainingFolderPath - { - get - { - return Path; - } - } + public override string ContainingFolderPath => Path; [IgnoreDataMember] - public override bool IsDisplayedAsFolder - { - get - { - return true; - } - } + public override bool IsDisplayedAsFolder => true; [IgnoreDataMember] - public override bool SupportsAncestors - { - get - { - return false; - } - } + public override bool SupportsAncestors => false; public override bool IsSaveLocalMetadataEnabled() { @@ -80,13 +62,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; public static string GetPath(string name) { diff --git a/MediaBrowser.Controller/Entities/ICollectionFolder.cs b/MediaBrowser.Controller/Entities/ICollectionFolder.cs index b61e7b339..a6a9a0783 100644 --- a/MediaBrowser.Controller/Entities/ICollectionFolder.cs +++ b/MediaBrowser.Controller/Entities/ICollectionFolder.cs @@ -1,6 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; +using System; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/IHasAspectRatio.cs b/MediaBrowser.Controller/Entities/IHasAspectRatio.cs index 5aecf4eac..149c1e5ab 100644 --- a/MediaBrowser.Controller/Entities/IHasAspectRatio.cs +++ b/MediaBrowser.Controller/Entities/IHasAspectRatio.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Controller.Entities +namespace MediaBrowser.Controller.Entities { /// <summary> /// Interface IHasAspectRatio diff --git a/MediaBrowser.Controller/Entities/IHasDisplayOrder.cs b/MediaBrowser.Controller/Entities/IHasDisplayOrder.cs index 5e1ae2179..abee75a28 100644 --- a/MediaBrowser.Controller/Entities/IHasDisplayOrder.cs +++ b/MediaBrowser.Controller/Entities/IHasDisplayOrder.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Entities { /// <summary> diff --git a/MediaBrowser.Controller/Entities/IHasMediaSources.cs b/MediaBrowser.Controller/Entities/IHasMediaSources.cs index a13c95942..4635b9062 100644 --- a/MediaBrowser.Controller/Entities/IHasMediaSources.cs +++ b/MediaBrowser.Controller/Entities/IHasMediaSources.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Model.Dto; +using System; using System.Collections.Generic; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using System; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/IHasProgramAttributes.cs b/MediaBrowser.Controller/Entities/IHasProgramAttributes.cs index 0bc9ff81e..777b40828 100644 --- a/MediaBrowser.Controller/Entities/IHasProgramAttributes.cs +++ b/MediaBrowser.Controller/Entities/IHasProgramAttributes.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.LiveTv; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/IHasScreenshots.cs b/MediaBrowser.Controller/Entities/IHasScreenshots.cs index 2fd402bc2..0975242f5 100644 --- a/MediaBrowser.Controller/Entities/IHasScreenshots.cs +++ b/MediaBrowser.Controller/Entities/IHasScreenshots.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Entities { /// <summary> diff --git a/MediaBrowser.Controller/Entities/IHasSeries.cs b/MediaBrowser.Controller/Entities/IHasSeries.cs index 18d66452a..7da53f730 100644 --- a/MediaBrowser.Controller/Entities/IHasSeries.cs +++ b/MediaBrowser.Controller/Entities/IHasSeries.cs @@ -1,4 +1,3 @@ - using System; namespace MediaBrowser.Controller.Entities diff --git a/MediaBrowser.Controller/Entities/IHasSpecialFeatures.cs b/MediaBrowser.Controller/Entities/IHasSpecialFeatures.cs index f4905b7dc..688439e6c 100644 --- a/MediaBrowser.Controller/Entities/IHasSpecialFeatures.cs +++ b/MediaBrowser.Controller/Entities/IHasSpecialFeatures.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/IHasStartDate.cs b/MediaBrowser.Controller/Entities/IHasStartDate.cs index a6714fb96..1ecde9af4 100644 --- a/MediaBrowser.Controller/Entities/IHasStartDate.cs +++ b/MediaBrowser.Controller/Entities/IHasStartDate.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/IHasTrailers.cs b/MediaBrowser.Controller/Entities/IHasTrailers.cs index 8e7c4e007..3bdb9b64a 100644 --- a/MediaBrowser.Controller/Entities/IHasTrailers.cs +++ b/MediaBrowser.Controller/Entities/IHasTrailers.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/IItemByName.cs b/MediaBrowser.Controller/Entities/IItemByName.cs index d21c6ae4d..89b5dfee3 100644 --- a/MediaBrowser.Controller/Entities/IItemByName.cs +++ b/MediaBrowser.Controller/Entities/IItemByName.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/IMetadataContainer.cs b/MediaBrowser.Controller/Entities/IMetadataContainer.cs index 33aa08425..a384c0df3 100644 --- a/MediaBrowser.Controller/Entities/IMetadataContainer.cs +++ b/MediaBrowser.Controller/Entities/IMetadataContainer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Providers; using System; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Providers; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/ISupportsBoxSetGrouping.cs b/MediaBrowser.Controller/Entities/ISupportsBoxSetGrouping.cs index 7eede6708..7d13bf325 100644 --- a/MediaBrowser.Controller/Entities/ISupportsBoxSetGrouping.cs +++ b/MediaBrowser.Controller/Entities/ISupportsBoxSetGrouping.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Entities { /// <summary> diff --git a/MediaBrowser.Controller/Entities/ISupportsPlaceHolders.cs b/MediaBrowser.Controller/Entities/ISupportsPlaceHolders.cs index 2507c8ee6..3e96771c3 100644 --- a/MediaBrowser.Controller/Entities/ISupportsPlaceHolders.cs +++ b/MediaBrowser.Controller/Entities/ISupportsPlaceHolders.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Entities { public interface ISupportsPlaceHolders diff --git a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs index b35e36e1b..4b7af5391 100644 --- a/MediaBrowser.Controller/Entities/InternalItemsQuery.cs +++ b/MediaBrowser.Controller/Entities/InternalItemsQuery.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; -using MediaBrowser.Model.Configuration; using System.Linq; using MediaBrowser.Controller.Dto; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/InternalPeopleQuery.cs b/MediaBrowser.Controller/Entities/InternalPeopleQuery.cs index ce3e9e070..1613531b5 100644 --- a/MediaBrowser.Controller/Entities/InternalPeopleQuery.cs +++ b/MediaBrowser.Controller/Entities/InternalPeopleQuery.cs @@ -1,5 +1,4 @@ -using System; -using System.Collections.Generic; +using System; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/ItemImageInfo.cs b/MediaBrowser.Controller/Entities/ItemImageInfo.cs index bd0011c4b..ff6b13398 100644 --- a/MediaBrowser.Controller/Entities/ItemImageInfo.cs +++ b/MediaBrowser.Controller/Entities/ItemImageInfo.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Entities; using System; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Entities diff --git a/MediaBrowser.Controller/Entities/LinkedChild.cs b/MediaBrowser.Controller/Entities/LinkedChild.cs index 363a3d6fd..bb2d03246 100644 --- a/MediaBrowser.Controller/Entities/LinkedChild.cs +++ b/MediaBrowser.Controller/Entities/LinkedChild.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using MediaBrowser.Model.IO; using MediaBrowser.Model.Serialization; diff --git a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs index 51fb73df7..124a943ef 100644 --- a/MediaBrowser.Controller/Entities/Movies/BoxSet.cs +++ b/MediaBrowser.Controller/Entities/Movies/BoxSet.cs @@ -1,13 +1,12 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Users; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Users; namespace MediaBrowser.Controller.Entities.Movies { @@ -26,28 +25,13 @@ namespace MediaBrowser.Controller.Entities.Movies } [IgnoreDataMember] - protected override bool FilterLinkedChildrenPerUser - { - get - { - return true; - } - } + protected override bool FilterLinkedChildrenPerUser => true; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; [IgnoreDataMember] - public override bool SupportsPeople - { - get { return true; } - } + public override bool SupportsPeople => true; public Guid[] LocalTrailerIds { get; set; } public Guid[] RemoteTrailerIds { get; set; } @@ -111,13 +95,7 @@ namespace MediaBrowser.Controller.Entities.Movies } [IgnoreDataMember] - public override bool IsPreSorted - { - get - { - return true; - } - } + public override bool IsPreSorted => true; public override bool IsAuthorizedToDelete(User user, List<Folder> allCollectionFolders) { diff --git a/MediaBrowser.Controller/Entities/Movies/Movie.cs b/MediaBrowser.Controller/Entities/Movies/Movie.cs index 1d7e1cff1..232d11624 100644 --- a/MediaBrowser.Controller/Entities/Movies/Movie.cs +++ b/MediaBrowser.Controller/Entities/Movies/Movie.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; @@ -21,10 +21,10 @@ namespace MediaBrowser.Controller.Entities.Movies public Movie() { - SpecialFeatureIds = new Guid[] {}; + SpecialFeatureIds = new Guid[] { }; RemoteTrailers = EmptyMediaUrlArray; - LocalTrailerIds = new Guid[] {}; - RemoteTrailerIds = new Guid[] {}; + LocalTrailerIds = new Guid[] { }; + RemoteTrailerIds = new Guid[] { }; } public Guid[] LocalTrailerIds { get; set; } @@ -39,8 +39,8 @@ namespace MediaBrowser.Controller.Entities.Movies [IgnoreDataMember] public string CollectionName { - get { return TmdbCollectionName; } - set { TmdbCollectionName = value; } + get => TmdbCollectionName; + set => TmdbCollectionName = value; } public override double GetDefaultPrimaryImageAspectRatio() @@ -184,13 +184,6 @@ namespace MediaBrowser.Controller.Entities.Movies } [IgnoreDataMember] - public override bool StopRefreshIfLocalMetadataFound - { - get - { - // Need people id's from internet metadata - return false; - } - } + public override bool StopRefreshIfLocalMetadataFound => false; } } diff --git a/MediaBrowser.Controller/Entities/MusicVideo.cs b/MediaBrowser.Controller/Entities/MusicVideo.cs index 4015a1178..5bf082b7e 100644 --- a/MediaBrowser.Controller/Entities/MusicVideo.cs +++ b/MediaBrowser.Controller/Entities/MusicVideo.cs @@ -1,9 +1,8 @@ -using MediaBrowser.Controller.Entities.Audio; +using System; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; -using System.Collections.Generic; using MediaBrowser.Model.Serialization; -using System; namespace MediaBrowser.Controller.Entities { @@ -18,13 +17,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public string[] AllArtists - { - get - { - return Artists; - } - } + public string[] AllArtists => Artists; public override UnratedItem GetBlockUnratedType() { diff --git a/MediaBrowser.Controller/Entities/PeopleHelper.cs b/MediaBrowser.Controller/Entities/PeopleHelper.cs index d09ef3a15..2fb613768 100644 --- a/MediaBrowser.Controller/Entities/PeopleHelper.cs +++ b/MediaBrowser.Controller/Entities/PeopleHelper.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/Person.cs b/MediaBrowser.Controller/Entities/Person.cs index 5c35a7411..dd0183489 100644 --- a/MediaBrowser.Controller/Entities/Person.cs +++ b/MediaBrowser.Controller/Entities/Person.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Providers; using System; using System.Collections.Generic; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Serialization; using Microsoft.Extensions.Logging; @@ -51,13 +51,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The containing folder path.</value> [IgnoreDataMember] - public override string ContainingFolderPath - { - get - { - return Path; - } - } + public override string ContainingFolderPath => Path; public override bool CanDelete() { @@ -70,31 +64,13 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool EnableAlphaNumericSorting - { - get - { - return false; - } - } + public override bool EnableAlphaNumericSorting => false; [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; [IgnoreDataMember] - public override bool SupportsAncestors - { - get - { - return false; - } - } + public override bool SupportsAncestors => false; public static string GetPath(string name) { @@ -199,9 +175,9 @@ namespace MediaBrowser.Controller.Entities public Dictionary<string, string> ProviderIds { get; set; } /// <summary> - /// Returns a <see cref="System.String" /> that represents this instance. + /// Returns a <see cref="string" /> that represents this instance. /// </summary> - /// <returns>A <see cref="System.String" /> that represents this instance.</returns> + /// <returns>A <see cref="string" /> that represents this instance.</returns> public override string ToString() { return Name; diff --git a/MediaBrowser.Controller/Entities/Photo.cs b/MediaBrowser.Controller/Entities/Photo.cs index 074a1f4f7..60c832189 100644 --- a/MediaBrowser.Controller/Entities/Photo.cs +++ b/MediaBrowser.Controller/Entities/Photo.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Drawing; +using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Entities @@ -6,31 +6,13 @@ namespace MediaBrowser.Controller.Entities public class Photo : BaseItem { [IgnoreDataMember] - public override bool SupportsLocalMetadata - { - get - { - return false; - } - } + public override bool SupportsLocalMetadata => false; [IgnoreDataMember] - public override string MediaType - { - get - { - return Model.Entities.MediaType.Photo; - } - } + public override string MediaType => Model.Entities.MediaType.Photo; [IgnoreDataMember] - public override Folder LatestItemsIndexContainer - { - get - { - return AlbumEntity; - } - } + public override Folder LatestItemsIndexContainer => AlbumEntity; [IgnoreDataMember] diff --git a/MediaBrowser.Controller/Entities/PhotoAlbum.cs b/MediaBrowser.Controller/Entities/PhotoAlbum.cs index af9d8c801..4cd0c8b66 100644 --- a/MediaBrowser.Controller/Entities/PhotoAlbum.cs +++ b/MediaBrowser.Controller/Entities/PhotoAlbum.cs @@ -1,34 +1,16 @@ -using MediaBrowser.Model.Serialization; +using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Entities { public class PhotoAlbum : Folder { [IgnoreDataMember] - public override bool AlwaysScanInternalMetadataPath - { - get - { - return true; - } - } + public override bool AlwaysScanInternalMetadataPath => true; [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return false; - } - } + public override bool SupportsPlayedStatus => false; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; } } diff --git a/MediaBrowser.Controller/Entities/Share.cs b/MediaBrowser.Controller/Entities/Share.cs index 4ea0b1ea6..c17789ccc 100644 --- a/MediaBrowser.Controller/Entities/Share.cs +++ b/MediaBrowser.Controller/Entities/Share.cs @@ -1,5 +1,3 @@ -using System.Collections.Generic; - namespace MediaBrowser.Controller.Entities { public interface IHasShares diff --git a/MediaBrowser.Controller/Entities/SourceType.cs b/MediaBrowser.Controller/Entities/SourceType.cs index 9c307b4e6..927483b93 100644 --- a/MediaBrowser.Controller/Entities/SourceType.cs +++ b/MediaBrowser.Controller/Entities/SourceType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Entities { public enum SourceType diff --git a/MediaBrowser.Controller/Entities/Studio.cs b/MediaBrowser.Controller/Entities/Studio.cs index c076cd680..d6da0d48c 100644 --- a/MediaBrowser.Controller/Entities/Studio.cs +++ b/MediaBrowser.Controller/Entities/Studio.cs @@ -1,7 +1,7 @@ -using System; +using System; using System.Collections.Generic; -using MediaBrowser.Model.Serialization; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Model.Serialization; using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Entities @@ -29,31 +29,13 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The containing folder path.</value> [IgnoreDataMember] - public override string ContainingFolderPath - { - get - { - return Path; - } - } + public override string ContainingFolderPath => Path; [IgnoreDataMember] - public override bool IsDisplayedAsFolder - { - get - { - return true; - } - } + public override bool IsDisplayedAsFolder => true; [IgnoreDataMember] - public override bool SupportsAncestors - { - get - { - return false; - } - } + public override bool SupportsAncestors => false; public override double GetDefaultPrimaryImageAspectRatio() { @@ -81,13 +63,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; public static string GetPath(string name) { diff --git a/MediaBrowser.Controller/Entities/TV/Episode.cs b/MediaBrowser.Controller/Entities/TV/Episode.cs index 0a367c594..072b1d89a 100644 --- a/MediaBrowser.Controller/Entities/TV/Episode.cs +++ b/MediaBrowser.Controller/Entities/TV/Episode.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.Globalization; using System.Linq; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; using MediaBrowser.Model.Serialization; using Microsoft.Extensions.Logging; @@ -47,61 +47,25 @@ namespace MediaBrowser.Controller.Entities.TV } [IgnoreDataMember] - protected override bool SupportsOwnedItems - { - get - { - return IsStacked || MediaSourceCount > 1; - } - } + protected override bool SupportsOwnedItems => IsStacked || MediaSourceCount > 1; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get { return true; } - } + public override bool SupportsInheritedParentImages => true; [IgnoreDataMember] - public override bool SupportsPeople - { - get { return true; } - } + public override bool SupportsPeople => true; [IgnoreDataMember] - public int? AiredSeasonNumber - { - get - { - return AirsAfterSeasonNumber ?? AirsBeforeSeasonNumber ?? ParentIndexNumber; - } - } + public int? AiredSeasonNumber => AirsAfterSeasonNumber ?? AirsBeforeSeasonNumber ?? ParentIndexNumber; [IgnoreDataMember] - public override Folder LatestItemsIndexContainer - { - get - { - return Series; - } - } + public override Folder LatestItemsIndexContainer => Series; [IgnoreDataMember] - public override Guid DisplayParentId - { - get - { - return SeasonId; - } - } + public override Guid DisplayParentId => SeasonId; [IgnoreDataMember] - protected override bool EnableDefaultVideoUserDataKeys - { - get - { - return false; - } - } + protected override bool EnableDefaultVideoUserDataKeys => false; public override double GetDefaultPrimaryImageAspectRatio() { @@ -143,7 +107,8 @@ namespace MediaBrowser.Controller.Entities.TV get { var seriesId = SeriesId; - if (seriesId.Equals(Guid.Empty)) { + if (seriesId.Equals(Guid.Empty)) + { seriesId = FindSeriesId(); } return !seriesId.Equals(Guid.Empty) ? (LibraryManager.GetItemById(seriesId) as Series) : null; @@ -156,7 +121,8 @@ namespace MediaBrowser.Controller.Entities.TV get { var seasonId = SeasonId; - if (seasonId.Equals(Guid.Empty)) { + if (seasonId.Equals(Guid.Empty)) + { seasonId = FindSeasonId(); } return !seasonId.Equals(Guid.Empty) ? (LibraryManager.GetItemById(seasonId) as Season) : null; @@ -164,13 +130,7 @@ namespace MediaBrowser.Controller.Entities.TV } [IgnoreDataMember] - public bool IsInSeasonFolder - { - get - { - return FindParent<Season>() != null; - } - } + public bool IsInSeasonFolder => FindParent<Season>() != null; [IgnoreDataMember] public string SeriesPresentationUniqueKey { get; set; } @@ -276,13 +236,7 @@ namespace MediaBrowser.Controller.Entities.TV } [IgnoreDataMember] - public bool IsMissingEpisode - { - get - { - return LocationType == LocationType.Virtual; - } - } + public bool IsMissingEpisode => LocationType == LocationType.Virtual; [IgnoreDataMember] public Guid SeasonId { get; set; } diff --git a/MediaBrowser.Controller/Entities/TV/Season.cs b/MediaBrowser.Controller/Entities/TV/Season.cs index cb3a7f345..b40009e0c 100644 --- a/MediaBrowser.Controller/Entities/TV/Season.cs +++ b/MediaBrowser.Controller/Entities/TV/Season.cs @@ -1,13 +1,12 @@ -using System; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Users; +using System; using System.Collections.Generic; using System.Linq; -using System.Threading.Tasks; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Serialization; +using MediaBrowser.Model.Users; namespace MediaBrowser.Controller.Entities.TV { @@ -17,46 +16,22 @@ namespace MediaBrowser.Controller.Entities.TV public class Season : Folder, IHasSeries, IHasLookupInfo<SeasonInfo> { [IgnoreDataMember] - public override bool SupportsAddingToPlaylist - { - get { return true; } - } + public override bool SupportsAddingToPlaylist => true; [IgnoreDataMember] - public override bool IsPreSorted - { - get - { - return true; - } - } + public override bool IsPreSorted => true; [IgnoreDataMember] - public override bool SupportsDateLastMediaAdded - { - get - { - return false; - } - } + public override bool SupportsDateLastMediaAdded => false; [IgnoreDataMember] - public override bool SupportsPeople - { - get { return true; } - } + public override bool SupportsPeople => true; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get { return true; } - } + public override bool SupportsInheritedParentImages => true; [IgnoreDataMember] - public override Guid DisplayParentId - { - get { return SeriesId; } - } + public override Guid DisplayParentId => SeriesId; public override double GetDefaultPrimaryImageAspectRatio() { diff --git a/MediaBrowser.Controller/Entities/TV/Series.cs b/MediaBrowser.Controller/Entities/TV/Series.cs index d4a62626e..4539ab0f2 100644 --- a/MediaBrowser.Controller/Entities/TV/Series.cs +++ b/MediaBrowser.Controller/Entities/TV/Series.cs @@ -1,17 +1,17 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Users; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Providers; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Serialization; +using MediaBrowser.Model.Users; namespace MediaBrowser.Controller.Entities.TV { @@ -32,43 +32,19 @@ namespace MediaBrowser.Controller.Entities.TV public string AirTime { get; set; } [IgnoreDataMember] - public override bool SupportsAddingToPlaylist - { - get { return true; } - } + public override bool SupportsAddingToPlaylist => true; [IgnoreDataMember] - public override bool IsPreSorted - { - get - { - return true; - } - } + public override bool IsPreSorted => true; [IgnoreDataMember] - public override bool SupportsDateLastMediaAdded - { - get - { - return true; - } - } + public override bool SupportsDateLastMediaAdded => true; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; [IgnoreDataMember] - public override bool SupportsPeople - { - get { return true; } - } + public override bool SupportsPeople => true; public Guid[] LocalTrailerIds { get; set; } public Guid[] RemoteTrailerIds { get; set; } @@ -143,7 +119,7 @@ namespace MediaBrowser.Controller.Entities.TV IncludeItemTypes = new[] { typeof(Season).Name }, IsVirtualItem = false, Limit = 0, - DtoOptions = new Dto.DtoOptions(false) + DtoOptions = new DtoOptions(false) { EnableImages = false } @@ -160,7 +136,7 @@ namespace MediaBrowser.Controller.Entities.TV { AncestorWithPresentationUniqueKey = null, SeriesPresentationUniqueKey = seriesKey, - DtoOptions = new Dto.DtoOptions(false) + DtoOptions = new DtoOptions(false) { EnableImages = false } @@ -526,13 +502,6 @@ namespace MediaBrowser.Controller.Entities.TV } [IgnoreDataMember] - public override bool StopRefreshIfLocalMetadataFound - { - get - { - // Need people id's from internet metadata - return false; - } - } + public override bool StopRefreshIfLocalMetadataFound => false; } } diff --git a/MediaBrowser.Controller/Entities/TagExtensions.cs b/MediaBrowser.Controller/Entities/TagExtensions.cs index 3e079a2a8..97f590635 100644 --- a/MediaBrowser.Controller/Entities/TagExtensions.cs +++ b/MediaBrowser.Controller/Entities/TagExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Linq; namespace MediaBrowser.Controller.Entities @@ -22,7 +22,7 @@ namespace MediaBrowser.Controller.Entities } else { - item.Tags = current.Concat(new [] { name }).ToArray(); + item.Tags = current.Concat(new[] { name }).ToArray(); } } } diff --git a/MediaBrowser.Controller/Entities/Trailer.cs b/MediaBrowser.Controller/Entities/Trailer.cs index d84ac187b..5bf22d7bc 100644 --- a/MediaBrowser.Controller/Entities/Trailer.cs +++ b/MediaBrowser.Controller/Entities/Trailer.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Controller.Providers; +using System; +using System.Collections.Generic; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Entities; -using System.Collections.Generic; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System; namespace MediaBrowser.Controller.Entities { @@ -94,13 +94,6 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool StopRefreshIfLocalMetadataFound - { - get - { - // Need people id's from internet metadata - return false; - } - } + public override bool StopRefreshIfLocalMetadataFound => false; } } diff --git a/MediaBrowser.Controller/Entities/User.cs b/MediaBrowser.Controller/Entities/User.cs index 57e3210a1..10fe096a4 100644 --- a/MediaBrowser.Controller/Entities/User.cs +++ b/MediaBrowser.Controller/Entities/User.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Controller.Library; +using System; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Connect; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Users; -using System; -using System.Threading; -using System.Threading.Tasks; namespace MediaBrowser.Controller.Entities { @@ -40,14 +40,8 @@ namespace MediaBrowser.Controller.Entities // Strictly to remove IgnoreDataMember public override ItemImageInfo[] ImageInfos { - get - { - return base.ImageInfos; - } - set - { - base.ImageInfos = value; - } + get => base.ImageInfos; + set => base.ImageInfos = value; } /// <summary> @@ -57,15 +51,8 @@ namespace MediaBrowser.Controller.Entities [IgnoreDataMember] public override string Path { - get - { - // Return this so that metadata providers will look in here - return ConfigurationDirectoryPath; - } - set - { - base.Path = value; - } + get => ConfigurationDirectoryPath; + set => base.Path = value; } private string _name; @@ -75,10 +62,7 @@ namespace MediaBrowser.Controller.Entities /// <value>The name.</value> public override string Name { - get - { - return _name; - } + get => _name; set { _name = value; @@ -94,26 +78,14 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The containing folder path.</value> [IgnoreDataMember] - public override string ContainingFolderPath - { - get - { - return Path; - } - } + public override string ContainingFolderPath => Path; /// <summary> /// Gets the root folder. /// </summary> /// <value>The root folder.</value> [IgnoreDataMember] - public Folder RootFolder - { - get - { - return LibraryManager.GetUserRootFolder(); - } - } + public Folder RootFolder => LibraryManager.GetUserRootFolder(); /// <summary> /// Gets or sets the last login date. @@ -146,7 +118,7 @@ namespace MediaBrowser.Controller.Entities return _config; } - set { _config = value; } + set => _config = value; } private volatile UserPolicy _policy; @@ -169,7 +141,7 @@ namespace MediaBrowser.Controller.Entities return _policy; } - set { _policy = value; } + set => _policy = value; } /// <summary> @@ -177,7 +149,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <param name="newName">The new name.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public Task Rename(string newName) { if (string.IsNullOrEmpty(newName)) @@ -232,13 +204,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The configuration directory path.</value> [IgnoreDataMember] - public string ConfigurationDirectoryPath - { - get - { - return GetConfigurationDirectoryPath(Name); - } - } + public string ConfigurationDirectoryPath => GetConfigurationDirectoryPath(Name); public override double GetDefaultPrimaryImageAspectRatio() { @@ -327,15 +293,9 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; - public long InternalId { get; set;} + public long InternalId { get; set; } } diff --git a/MediaBrowser.Controller/Entities/UserItemData.cs b/MediaBrowser.Controller/Entities/UserItemData.cs index 9bd58417a..f7136bdf2 100644 --- a/MediaBrowser.Controller/Entities/UserItemData.cs +++ b/MediaBrowser.Controller/Entities/UserItemData.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Entities @@ -28,13 +28,10 @@ namespace MediaBrowser.Controller.Entities /// Gets or sets the users 0-10 rating /// </summary> /// <value>The rating.</value> - /// <exception cref="System.ArgumentOutOfRangeException">Rating;A 0 to 10 rating is required for UserItemData.</exception> + /// <exception cref="ArgumentOutOfRangeException">Rating;A 0 to 10 rating is required for UserItemData.</exception> public double? Rating { - get - { - return _rating; - } + get => _rating; set { if (value.HasValue) diff --git a/MediaBrowser.Controller/Entities/UserRootFolder.cs b/MediaBrowser.Controller/Entities/UserRootFolder.cs index abfcd7984..7fe8df8af 100644 --- a/MediaBrowser.Controller/Entities/UserRootFolder.cs +++ b/MediaBrowser.Controller/Entities/UserRootFolder.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Model.Serialization; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Library; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Library; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Entities { @@ -34,22 +34,10 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return false; - } - } + public override bool SupportsPlayedStatus => false; private void ClearCache() { @@ -88,22 +76,10 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - protected override bool SupportsShortcutChildren - { - get - { - return true; - } - } + protected override bool SupportsShortcutChildren => true; [IgnoreDataMember] - public override bool IsPreSorted - { - get - { - return true; - } - } + public override bool IsPreSorted => true; protected override IEnumerable<BaseItem> GetEligibleChildrenForRecursiveChildren(User user) { diff --git a/MediaBrowser.Controller/Entities/UserView.cs b/MediaBrowser.Controller/Entities/UserView.cs index b7c9884ff..de4105df9 100644 --- a/MediaBrowser.Controller/Entities/UserView.cs +++ b/MediaBrowser.Controller/Entities/UserView.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Playlists; -using MediaBrowser.Controller.TV; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; using System.Linq; -using MediaBrowser.Model.Serialization; using System.Threading.Tasks; +using MediaBrowser.Controller.Playlists; +using MediaBrowser.Controller.TV; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Entities { @@ -20,13 +20,7 @@ namespace MediaBrowser.Controller.Entities public static IPlaylistManager PlaylistManager; [IgnoreDataMember] - public string CollectionType - { - get - { - return ViewType; - } - } + public string CollectionType => ViewType; public override IEnumerable<Guid> GetIdsForAncestorQuery() { @@ -48,22 +42,10 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return false; - } - } + public override bool SupportsPlayedStatus => false; public override int GetChildCount(User user) { @@ -188,12 +170,6 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; } } diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs index 284ff2a53..6f98fcd8d 100644 --- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs +++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs @@ -1,20 +1,15 @@ -using MediaBrowser.Controller.Entities.Audio; +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Playlists; using MediaBrowser.Controller.TV; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Collections; -using MediaBrowser.Model.Extensions; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Entities { diff --git a/MediaBrowser.Controller/Entities/Video.cs b/MediaBrowser.Controller/Entities/Video.cs index 2db200ee2..dd4440c3b 100644 --- a/MediaBrowser.Controller/Entities/Video.cs +++ b/MediaBrowser.Controller/Entities/Video.cs @@ -1,20 +1,19 @@ -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Persistence; -using MediaBrowser.Controller.Providers; -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 System.Threading.Tasks; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Controller.Persistence; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Controller.LiveTv; namespace MediaBrowser.Controller.Entities { @@ -34,28 +33,13 @@ namespace MediaBrowser.Controller.Entities public LinkedChild[] LinkedAlternateVersions { get; set; } [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return true; - } - } + public override bool SupportsPlayedStatus => true; [IgnoreDataMember] - public override bool SupportsPeople - { - get { return true; } - } + public override bool SupportsPeople => true; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return true; - } - } + public override bool SupportsInheritedParentImages => true; [IgnoreDataMember] public override bool SupportsPositionTicksResume @@ -107,10 +91,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsThemeMedia - { - get { return true; } - } + public override bool SupportsThemeMedia => true; /// <summary> /// Gets or sets the timestamp. @@ -200,10 +181,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsAddingToPlaylist - { - get { return true; } - } + public override bool SupportsAddingToPlaylist => true; [IgnoreDataMember] public int MediaSourceCount @@ -223,16 +201,10 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public bool IsStacked - { - get { return AdditionalParts.Length > 0; } - } + public bool IsStacked => AdditionalParts.Length > 0; [IgnoreDataMember] - public override bool HasLocalAlternateVersions - { - get { return LocalAlternateVersions.Length > 0; } - } + public override bool HasLocalAlternateVersions => LocalAlternateVersions.Length > 0; public IEnumerable<Guid> GetAdditionalPartIds() { @@ -290,13 +262,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - protected virtual bool EnableDefaultVideoUserDataKeys - { - get - { - return true; - } - } + protected virtual bool EnableDefaultVideoUserDataKeys => true; public override List<string> GetUserDataKeys() { @@ -467,23 +433,14 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value><c>true</c> if [is3 D]; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public bool Is3D - { - get { return Video3DFormat.HasValue; } - } + public bool Is3D => Video3DFormat.HasValue; /// <summary> /// Gets the type of the media. /// </summary> /// <value>The type of the media.</value> [IgnoreDataMember] - public override string MediaType - { - get - { - return Model.Entities.MediaType.Video; - } - } + public override string MediaType => Model.Entities.MediaType.Video; protected override async Task<bool> RefreshedOwnedItems(MetadataRefreshOptions options, List<FileSystemMetadata> fileSystemChildren, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Controller/Entities/Year.cs b/MediaBrowser.Controller/Entities/Year.cs index 8e3cd0b70..13e82fada 100644 --- a/MediaBrowser.Controller/Entities/Year.cs +++ b/MediaBrowser.Controller/Entities/Year.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using MediaBrowser.Model.Serialization; @@ -25,13 +25,7 @@ namespace MediaBrowser.Controller.Entities /// </summary> /// <value>The containing folder path.</value> [IgnoreDataMember] - public override string ContainingFolderPath - { - get - { - return Path; - } - } + public override string ContainingFolderPath => Path; public override double GetDefaultPrimaryImageAspectRatio() { @@ -42,13 +36,7 @@ namespace MediaBrowser.Controller.Entities } [IgnoreDataMember] - public override bool SupportsAncestors - { - get - { - return false; - } - } + public override bool SupportsAncestors => false; public override bool CanDelete() { @@ -62,11 +50,9 @@ namespace MediaBrowser.Controller.Entities public IList<BaseItem> GetTaggedItems(InternalItemsQuery query) { - int year; - var usCulture = new CultureInfo("en-US"); - if (!int.TryParse(Name, NumberStyles.Integer, usCulture, out year)) + if (!int.TryParse(Name, NumberStyles.Integer, usCulture, out var year)) { return new List<BaseItem>(); } @@ -78,24 +64,16 @@ namespace MediaBrowser.Controller.Entities public int? GetYearValue() { - int i; - - if (int.TryParse(Name, NumberStyles.Integer, CultureInfo.InvariantCulture, out i)) + if (int.TryParse(Name, NumberStyles.Integer, CultureInfo.InvariantCulture, out var year)) { - return i; + return year; } return null; } [IgnoreDataMember] - public override bool SupportsPeople - { - get - { - return false; - } - } + public override bool SupportsPeople => false; public static string GetPath(string name) { diff --git a/MediaBrowser.Controller/Extensions/StringExtensions.cs b/MediaBrowser.Controller/Extensions/StringExtensions.cs index 60e7815db..73f529fc0 100644 --- a/MediaBrowser.Controller/Extensions/StringExtensions.cs +++ b/MediaBrowser.Controller/Extensions/StringExtensions.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.Globalization; namespace MediaBrowser.Controller.Extensions { diff --git a/MediaBrowser.Controller/IO/FileData.cs b/MediaBrowser.Controller/IO/FileData.cs index a95d562a2..4bbb60283 100644 --- a/MediaBrowser.Controller/IO/FileData.cs +++ b/MediaBrowser.Controller/IO/FileData.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.IO { @@ -34,7 +34,7 @@ namespace MediaBrowser.Controller.IO /// <param name="flattenFolderDepth">The flatten folder depth.</param> /// <param name="resolveShortcuts">if set to <c>true</c> [resolve shortcuts].</param> /// <returns>Dictionary{System.StringFileSystemInfo}.</returns> - /// <exception cref="System.ArgumentNullException">path</exception> + /// <exception cref="ArgumentNullException">path</exception> public static FileSystemMetadata[] GetFilteredFileSystemEntries(IDirectoryService directoryService, string path, IFileSystem fileSystem, diff --git a/MediaBrowser.Controller/IResourceFileManager.cs b/MediaBrowser.Controller/IResourceFileManager.cs index 64f1b9f7a..f70ea6a17 100644 --- a/MediaBrowser.Controller/IResourceFileManager.cs +++ b/MediaBrowser.Controller/IResourceFileManager.cs @@ -1,22 +1,6 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Plugins; -using MediaBrowser.Model.Extensions; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Serialization; using System; -using System.Collections.Generic; using System.IO; -using System.Linq; using System.Threading.Tasks; -using MediaBrowser.Common.Plugins; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Plugins; -using MediaBrowser.Model.Reflection; using MediaBrowser.Model.Services; namespace MediaBrowser.Controller diff --git a/MediaBrowser.Controller/IServerApplicationHost.cs b/MediaBrowser.Controller/IServerApplicationHost.cs index 57a3bbc0a..22797aa0d 100644 --- a/MediaBrowser.Controller/IServerApplicationHost.cs +++ b/MediaBrowser.Controller/IServerApplicationHost.cs @@ -1,11 +1,10 @@ -using MediaBrowser.Common; -using MediaBrowser.Model.System; using System; using System.Collections.Generic; -using System.Net; +using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common; using MediaBrowser.Model.Net; -using System.Threading; +using MediaBrowser.Model.System; namespace MediaBrowser.Controller { diff --git a/MediaBrowser.Controller/IServerApplicationPaths.cs b/MediaBrowser.Controller/IServerApplicationPaths.cs index 0358b9264..2b43513b7 100644 --- a/MediaBrowser.Controller/IServerApplicationPaths.cs +++ b/MediaBrowser.Controller/IServerApplicationPaths.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Configuration; namespace MediaBrowser.Controller { @@ -105,4 +105,4 @@ namespace MediaBrowser.Controller string GetTranscodingTempPath(); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Library/DeleteOptions.cs b/MediaBrowser.Controller/Library/DeleteOptions.cs index 822fc3dc3..751b90481 100644 --- a/MediaBrowser.Controller/Library/DeleteOptions.cs +++ b/MediaBrowser.Controller/Library/DeleteOptions.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Library { public class DeleteOptions diff --git a/MediaBrowser.Controller/Library/IIntroProvider.cs b/MediaBrowser.Controller/Library/IIntroProvider.cs index 611aab387..d9d1ca8c7 100644 --- a/MediaBrowser.Controller/Library/IIntroProvider.cs +++ b/MediaBrowser.Controller/Library/IIntroProvider.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Controller.Entities; using System.Collections.Generic; using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/ILibraryManager.cs b/MediaBrowser.Controller/Library/ILibraryManager.cs index cefa9ebdf..9d404ba1a 100644 --- a/MediaBrowser.Controller/Library/ILibraryManager.cs +++ b/MediaBrowser.Controller/Library/ILibraryManager.cs @@ -1,22 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.Resolvers; using MediaBrowser.Controller.Sorting; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Dto; -using MediaBrowser.Controller.IO; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Controller.Library { @@ -103,7 +100,7 @@ namespace MediaBrowser.Controller.Library /// </summary> /// <param name="value">The value.</param> /// <returns>Task{Year}.</returns> - /// <exception cref="System.ArgumentOutOfRangeException"></exception> + /// <exception cref="ArgumentOutOfRangeException"></exception> Year GetYear(int value); /// <summary> diff --git a/MediaBrowser.Controller/Library/ILibraryMonitor.cs b/MediaBrowser.Controller/Library/ILibraryMonitor.cs index e965e47d6..233cfb197 100644 --- a/MediaBrowser.Controller/Library/ILibraryMonitor.cs +++ b/MediaBrowser.Controller/Library/ILibraryMonitor.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Library { @@ -40,4 +40,4 @@ namespace MediaBrowser.Controller.Library /// <returns><c>true</c> if [is path locked] [the specified path]; otherwise, <c>false</c>.</returns> bool IsPathLocked(string path); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Library/ILibraryPostScanTask.cs b/MediaBrowser.Controller/Library/ILibraryPostScanTask.cs index 694422907..cba5e8fd7 100644 --- a/MediaBrowser.Controller/Library/ILibraryPostScanTask.cs +++ b/MediaBrowser.Controller/Library/ILibraryPostScanTask.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Threading; using System.Threading.Tasks; diff --git a/MediaBrowser.Controller/Library/ILiveStream.cs b/MediaBrowser.Controller/Library/ILiveStream.cs index e00da7340..734932f17 100644 --- a/MediaBrowser.Controller/Library/ILiveStream.cs +++ b/MediaBrowser.Controller/Library/ILiveStream.cs @@ -1,6 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.Dto; diff --git a/MediaBrowser.Controller/Library/IMediaSourceManager.cs b/MediaBrowser.Controller/Library/IMediaSourceManager.cs index 8541c4fd9..fbae4edb0 100644 --- a/MediaBrowser.Controller/Library/IMediaSourceManager.cs +++ b/MediaBrowser.Controller/Library/IMediaSourceManager.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Persistence; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.MediaInfo; using System; using System.Collections.Generic; +using System.IO; using System.Threading; using System.Threading.Tasks; -using System.IO; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Persistence; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/IMediaSourceProvider.cs b/MediaBrowser.Controller/Library/IMediaSourceProvider.cs index eec138532..9e74879fc 100644 --- a/MediaBrowser.Controller/Library/IMediaSourceProvider.cs +++ b/MediaBrowser.Controller/Library/IMediaSourceProvider.cs @@ -1,9 +1,8 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Dto; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; -using System; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/IMetadataFileSaver.cs b/MediaBrowser.Controller/Library/IMetadataFileSaver.cs index e66fbcbc8..5b92388ce 100644 --- a/MediaBrowser.Controller/Library/IMetadataFileSaver.cs +++ b/MediaBrowser.Controller/Library/IMetadataFileSaver.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Library { @@ -16,4 +16,4 @@ namespace MediaBrowser.Controller.Library { bool IsEnabled { get; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Library/IMetadataSaver.cs b/MediaBrowser.Controller/Library/IMetadataSaver.cs index f71afa656..dd119984e 100644 --- a/MediaBrowser.Controller/Library/IMetadataSaver.cs +++ b/MediaBrowser.Controller/Library/IMetadataSaver.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Controller.Entities; using System.Threading; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/IMusicManager.cs b/MediaBrowser.Controller/Library/IMusicManager.cs index 535e6df7e..554dd0895 100644 --- a/MediaBrowser.Controller/Library/IMusicManager.cs +++ b/MediaBrowser.Controller/Library/IMusicManager.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; using System.Collections.Generic; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/ISearchEngine.cs b/MediaBrowser.Controller/Library/ISearchEngine.cs index 715f16407..8498b92ae 100644 --- a/MediaBrowser.Controller/Library/ISearchEngine.cs +++ b/MediaBrowser.Controller/Library/ISearchEngine.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Querying; using MediaBrowser.Model.Search; namespace MediaBrowser.Controller.Library diff --git a/MediaBrowser.Controller/Library/IUserDataManager.cs b/MediaBrowser.Controller/Library/IUserDataManager.cs index f3f81378b..ce4e3f530 100644 --- a/MediaBrowser.Controller/Library/IUserDataManager.cs +++ b/MediaBrowser.Controller/Library/IUserDataManager.cs @@ -1,10 +1,10 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; +using System.Threading; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using System; -using System.Threading; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/IUserManager.cs b/MediaBrowser.Controller/Library/IUserManager.cs index 154ef3b05..925d91a37 100644 --- a/MediaBrowser.Controller/Library/IUserManager.cs +++ b/MediaBrowser.Controller/Library/IUserManager.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Events; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.Users; using MediaBrowser.Controller.Authentication; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Events; +using MediaBrowser.Model.Users; namespace MediaBrowser.Controller.Library { @@ -43,7 +43,7 @@ namespace MediaBrowser.Controller.Library /// </summary> /// <param name="id">The id.</param> /// <returns>User.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> User GetUserById(Guid id); /// <summary> @@ -73,16 +73,16 @@ namespace MediaBrowser.Controller.Library /// <param name="user">The user.</param> /// <param name="newName">The new name.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">user</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">user</exception> + /// <exception cref="ArgumentException"></exception> Task RenameUser(User user, string newName); /// <summary> /// Updates the user. /// </summary> /// <param name="user">The user.</param> - /// <exception cref="System.ArgumentNullException">user</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">user</exception> + /// <exception cref="ArgumentException"></exception> void UpdateUser(User user); /// <summary> @@ -90,8 +90,8 @@ namespace MediaBrowser.Controller.Library /// </summary> /// <param name="name">The name.</param> /// <returns>User.</returns> - /// <exception cref="System.ArgumentNullException">name</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">name</exception> + /// <exception cref="ArgumentException"></exception> Task<User> CreateUser(string name); /// <summary> @@ -99,8 +99,8 @@ namespace MediaBrowser.Controller.Library /// </summary> /// <param name="user">The user.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">user</exception> - /// <exception cref="System.ArgumentException"></exception> + /// <exception cref="ArgumentNullException">user</exception> + /// <exception cref="ArgumentException"></exception> Task DeleteUser(User user); /// <summary> diff --git a/MediaBrowser.Controller/Library/IUserViewManager.cs b/MediaBrowser.Controller/Library/IUserViewManager.cs index f4649777c..0d7da7579 100644 --- a/MediaBrowser.Controller/Library/IUserViewManager.cs +++ b/MediaBrowser.Controller/Library/IUserViewManager.cs @@ -1,11 +1,9 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Library; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Library; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/IntroInfo.cs b/MediaBrowser.Controller/Library/IntroInfo.cs index d0e61d0f0..0e761d549 100644 --- a/MediaBrowser.Controller/Library/IntroInfo.cs +++ b/MediaBrowser.Controller/Library/IntroInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Library { @@ -16,4 +16,4 @@ namespace MediaBrowser.Controller.Library /// <value>The item id.</value> public Guid? ItemId { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Library/ItemChangeEventArgs.cs b/MediaBrowser.Controller/Library/ItemChangeEventArgs.cs index e671490d3..c9671de47 100644 --- a/MediaBrowser.Controller/Library/ItemChangeEventArgs.cs +++ b/MediaBrowser.Controller/Library/ItemChangeEventArgs.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/ItemResolveArgs.cs b/MediaBrowser.Controller/Library/ItemResolveArgs.cs index 4d1a4ed2f..7bb8325f8 100644 --- a/MediaBrowser.Controller/Library/ItemResolveArgs.cs +++ b/MediaBrowser.Controller/Library/ItemResolveArgs.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.IO; @@ -67,13 +67,7 @@ namespace MediaBrowser.Controller.Library /// Gets a value indicating whether this instance is directory. /// </summary> /// <value><c>true</c> if this instance is directory; otherwise, <c>false</c>.</value> - public bool IsDirectory - { - get - { - return FileInfo.IsDirectory; - } - } + public bool IsDirectory => FileInfo.IsDirectory; /// <summary> /// Gets a value indicating whether this instance is vf. @@ -103,13 +97,7 @@ namespace MediaBrowser.Controller.Library /// Gets a value indicating whether this instance is physical root. /// </summary> /// <value><c>true</c> if this instance is physical root; otherwise, <c>false</c>.</value> - public bool IsPhysicalRoot - { - get - { - return IsDirectory && BaseItem.FileSystem.AreEqual(Path, _appPaths.RootFolderPath); - } - } + public bool IsPhysicalRoot => IsDirectory && BaseItem.FileSystem.AreEqual(Path, _appPaths.RootFolderPath); /// <summary> /// Gets or sets the additional locations. @@ -150,7 +138,7 @@ namespace MediaBrowser.Controller.Library /// Adds the additional location. /// </summary> /// <param name="path">The path.</param> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public void AddAdditionalLocation(string path) { if (string.IsNullOrEmpty(path)) @@ -185,7 +173,7 @@ namespace MediaBrowser.Controller.Library /// </summary> /// <param name="name">The name.</param> /// <returns>FileSystemInfo.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public FileSystemMetadata GetFileSystemEntryByName(string name) { if (string.IsNullOrEmpty(name)) @@ -201,7 +189,7 @@ namespace MediaBrowser.Controller.Library /// </summary> /// <param name="path">The path.</param> /// <returns>FileSystemInfo.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public FileSystemMetadata GetFileSystemEntryByPath(string path) { if (string.IsNullOrEmpty(path)) @@ -240,10 +228,10 @@ namespace MediaBrowser.Controller.Library #region Equality Overrides /// <summary> - /// Determines whether the specified <see cref="System.Object" /> is equal to this instance. + /// Determines whether the specified <see cref="object" /> is equal to this instance. /// </summary> /// <param name="obj">The object to compare with the current object.</param> - /// <returns><c>true</c> if the specified <see cref="System.Object" /> is equal to this instance; otherwise, <c>false</c>.</returns> + /// <returns><c>true</c> if the specified <see cref="object" /> is equal to this instance; otherwise, <c>false</c>.</returns> public override bool Equals(object obj) { return Equals(obj as ItemResolveArgs); diff --git a/MediaBrowser.Controller/Library/ItemUpdateType.cs b/MediaBrowser.Controller/Library/ItemUpdateType.cs index cf6263356..b62f314ba 100644 --- a/MediaBrowser.Controller/Library/ItemUpdateType.cs +++ b/MediaBrowser.Controller/Library/ItemUpdateType.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/LibraryManagerExtensions.cs b/MediaBrowser.Controller/Library/LibraryManagerExtensions.cs index ec69bea6e..037b0b62c 100644 --- a/MediaBrowser.Controller/Library/LibraryManagerExtensions.cs +++ b/MediaBrowser.Controller/Library/LibraryManagerExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Library @@ -10,4 +10,4 @@ namespace MediaBrowser.Controller.Library return manager.GetItemById(new Guid(id)); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Library/MetadataConfigurationStore.cs b/MediaBrowser.Controller/Library/MetadataConfigurationStore.cs index dc2fa0f99..31adbdcf3 100644 --- a/MediaBrowser.Controller/Library/MetadataConfigurationStore.cs +++ b/MediaBrowser.Controller/Library/MetadataConfigurationStore.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Model.Configuration; using System.Collections.Generic; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Model.Configuration; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/NameExtensions.cs b/MediaBrowser.Controller/Library/NameExtensions.cs index bab334a6d..e2988a831 100644 --- a/MediaBrowser.Controller/Library/NameExtensions.cs +++ b/MediaBrowser.Controller/Library/NameExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using MediaBrowser.Controller.Extensions; using MediaBrowser.Model.Extensions; diff --git a/MediaBrowser.Controller/Library/PlaybackProgressEventArgs.cs b/MediaBrowser.Controller/Library/PlaybackProgressEventArgs.cs index 00d9932a7..b0302d04c 100644 --- a/MediaBrowser.Controller/Library/PlaybackProgressEventArgs.cs +++ b/MediaBrowser.Controller/Library/PlaybackProgressEventArgs.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Dto; using System; using System.Collections.Generic; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Session; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/PlaybackStopEventArgs.cs b/MediaBrowser.Controller/Library/PlaybackStopEventArgs.cs index b0f6799fc..12add2573 100644 --- a/MediaBrowser.Controller/Library/PlaybackStopEventArgs.cs +++ b/MediaBrowser.Controller/Library/PlaybackStopEventArgs.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Controller.Library +namespace MediaBrowser.Controller.Library { public class PlaybackStopEventArgs : PlaybackProgressEventArgs { @@ -8,4 +8,4 @@ /// <value><c>true</c> if [played to completion]; otherwise, <c>false</c>.</value> public bool PlayedToCompletion { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Library/Profiler.cs b/MediaBrowser.Controller/Library/Profiler.cs index 745e49920..9fe175a7c 100644 --- a/MediaBrowser.Controller/Library/Profiler.cs +++ b/MediaBrowser.Controller/Library/Profiler.cs @@ -1,6 +1,6 @@ -using Microsoft.Extensions.Logging; using System; using System.Diagnostics; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/SearchHintInfo.cs b/MediaBrowser.Controller/Library/SearchHintInfo.cs index f832811c2..692431e34 100644 --- a/MediaBrowser.Controller/Library/SearchHintInfo.cs +++ b/MediaBrowser.Controller/Library/SearchHintInfo.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/Library/TVUtils.cs b/MediaBrowser.Controller/Library/TVUtils.cs index 162ebc75e..3080143ce 100644 --- a/MediaBrowser.Controller/Library/TVUtils.cs +++ b/MediaBrowser.Controller/Library/TVUtils.cs @@ -1,5 +1,4 @@ -using System; -using System.Collections.Generic; +using System; namespace MediaBrowser.Controller.Library { @@ -41,9 +40,7 @@ namespace MediaBrowser.Controller.Library }; } - DayOfWeek value; - - if (Enum.TryParse(day, true, out value)) + if (Enum.TryParse(day, true, out DayOfWeek value)) { return new DayOfWeek[] { @@ -51,7 +48,7 @@ namespace MediaBrowser.Controller.Library }; } - return new DayOfWeek[]{}; + return new DayOfWeek[] { }; } return null; } diff --git a/MediaBrowser.Controller/Library/UserDataSaveEventArgs.cs b/MediaBrowser.Controller/Library/UserDataSaveEventArgs.cs index d921a7077..3e7351b8b 100644 --- a/MediaBrowser.Controller/Library/UserDataSaveEventArgs.cs +++ b/MediaBrowser.Controller/Library/UserDataSaveEventArgs.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Library { diff --git a/MediaBrowser.Controller/LiveTv/ChannelInfo.cs b/MediaBrowser.Controller/LiveTv/ChannelInfo.cs index f45c7b71a..70477fce7 100644 --- a/MediaBrowser.Controller/LiveTv/ChannelInfo.cs +++ b/MediaBrowser.Controller/LiveTv/ChannelInfo.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.LiveTv; +using MediaBrowser.Model.LiveTv; namespace MediaBrowser.Controller.LiveTv { diff --git a/MediaBrowser.Controller/LiveTv/IListingsProvider.cs b/MediaBrowser.Controller/LiveTv/IListingsProvider.cs index faf4a34df..c719ad81c 100644 --- a/MediaBrowser.Controller/LiveTv/IListingsProvider.cs +++ b/MediaBrowser.Controller/LiveTv/IListingsProvider.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.LiveTv; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.LiveTv; namespace MediaBrowser.Controller.LiveTv { diff --git a/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs b/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs index a7f675034..f99df6c7c 100644 --- a/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs +++ b/MediaBrowser.Controller/LiveTv/ILiveTvManager.cs @@ -1,15 +1,14 @@ -using System; +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Controller.Dto; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Events; using MediaBrowser.Model.LiveTv; using MediaBrowser.Model.Querying; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.Events; -using MediaBrowser.Controller.Library; namespace MediaBrowser.Controller.LiveTv { diff --git a/MediaBrowser.Controller/LiveTv/ILiveTvService.cs b/MediaBrowser.Controller/LiveTv/ILiveTvService.cs index 5986474d8..ba3813d8a 100644 --- a/MediaBrowser.Controller/LiveTv/ILiveTvService.cs +++ b/MediaBrowser.Controller/LiveTv/ILiveTvService.cs @@ -1,10 +1,9 @@ -using MediaBrowser.Controller.Drawing; -using MediaBrowser.Model.Dto; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Library; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Controller.LiveTv { diff --git a/MediaBrowser.Controller/LiveTv/ITunerHost.cs b/MediaBrowser.Controller/LiveTv/ITunerHost.cs index d5a0e2115..240ba8c23 100644 --- a/MediaBrowser.Controller/LiveTv/ITunerHost.cs +++ b/MediaBrowser.Controller/LiveTv/ITunerHost.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.LiveTv; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Library; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.LiveTv; namespace MediaBrowser.Controller.LiveTv { diff --git a/MediaBrowser.Controller/LiveTv/LiveTvChannel.cs b/MediaBrowser.Controller/LiveTv/LiveTvChannel.cs index 9e2d29eb6..55f47aae9 100644 --- a/MediaBrowser.Controller/LiveTv/LiveTvChannel.cs +++ b/MediaBrowser.Controller/LiveTv/LiveTvChannel.cs @@ -1,14 +1,14 @@ -using MediaBrowser.Controller.Entities; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.LiveTv; using MediaBrowser.Model.MediaInfo; -using System.Collections.Generic; -using System.Globalization; using MediaBrowser.Model.Serialization; -using System; -using System.Linq; namespace MediaBrowser.Controller.LiveTv { @@ -32,28 +32,13 @@ namespace MediaBrowser.Controller.LiveTv } [IgnoreDataMember] - public override bool SupportsPositionTicksResume - { - get - { - return false; - } - } + public override bool SupportsPositionTicksResume => false; [IgnoreDataMember] - public override SourceType SourceType - { - get { return SourceType.LiveTV; } - } + public override SourceType SourceType => SourceType.LiveTV; [IgnoreDataMember] - public override bool EnableRememberingTrackSelections - { - get - { - return false; - } - } + public override bool EnableRememberingTrackSelections => false; /// <summary> /// Gets or sets the number. @@ -68,14 +53,7 @@ namespace MediaBrowser.Controller.LiveTv public ChannelType ChannelType { get; set; } [IgnoreDataMember] - public override LocationType LocationType - { - get - { - // TODO: This should be removed - return LocationType.Remote; - } - } + public override LocationType LocationType => LocationType.Remote; protected override string CreateSortName() { @@ -93,13 +71,7 @@ namespace MediaBrowser.Controller.LiveTv } [IgnoreDataMember] - public override string MediaType - { - get - { - return ChannelType == ChannelType.Radio ? Model.Entities.MediaType.Audio : Model.Entities.MediaType.Video; - } - } + public override string MediaType => ChannelType == ChannelType.Radio ? Model.Entities.MediaType.Audio : Model.Entities.MediaType.Video; public override string GetClientTypeName() { @@ -176,13 +148,7 @@ namespace MediaBrowser.Controller.LiveTv /// </summary> /// <value><c>true</c> if this instance is kids; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public bool IsKids - { - get - { - return Tags.Contains("Kids", StringComparer.OrdinalIgnoreCase); - } - } + public bool IsKids => Tags.Contains("Kids", StringComparer.OrdinalIgnoreCase); [IgnoreDataMember] public bool IsRepeat { get; set; } diff --git a/MediaBrowser.Controller/LiveTv/LiveTvConflictException.cs b/MediaBrowser.Controller/LiveTv/LiveTvConflictException.cs index a7735ad80..df8f91eec 100644 --- a/MediaBrowser.Controller/LiveTv/LiveTvConflictException.cs +++ b/MediaBrowser.Controller/LiveTv/LiveTvConflictException.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.LiveTv { @@ -17,4 +17,4 @@ namespace MediaBrowser.Controller.LiveTv } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/LiveTv/LiveTvProgram.cs b/MediaBrowser.Controller/LiveTv/LiveTvProgram.cs index c4a75d199..8bde6a5da 100644 --- a/MediaBrowser.Controller/LiveTv/LiveTvProgram.cs +++ b/MediaBrowser.Controller/LiveTv/LiveTvProgram.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.LiveTv; using System; using System.Collections.Generic; using System.Linq; using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.LiveTv; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; @@ -63,10 +63,7 @@ namespace MediaBrowser.Controller.LiveTv } [IgnoreDataMember] - public override SourceType SourceType - { - get { return SourceType.LiveTV; } - } + public override SourceType SourceType => SourceType.LiveTV; /// <summary> /// The start date of the program, in UTC. @@ -103,13 +100,7 @@ namespace MediaBrowser.Controller.LiveTv /// </summary> /// <value><c>true</c> if this instance is sports; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public bool IsSports - { - get - { - return Tags.Contains("Sports", StringComparer.OrdinalIgnoreCase); - } - } + public bool IsSports => Tags.Contains("Sports", StringComparer.OrdinalIgnoreCase); /// <summary> /// Gets or sets a value indicating whether this instance is series. @@ -123,52 +114,28 @@ namespace MediaBrowser.Controller.LiveTv /// </summary> /// <value><c>true</c> if this instance is live; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public bool IsLive - { - get - { - return Tags.Contains("Live", StringComparer.OrdinalIgnoreCase); - } - } + public bool IsLive => Tags.Contains("Live", StringComparer.OrdinalIgnoreCase); /// <summary> /// Gets or sets a value indicating whether this instance is news. /// </summary> /// <value><c>true</c> if this instance is news; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public bool IsNews - { - get - { - return Tags.Contains("News", StringComparer.OrdinalIgnoreCase); - } - } + public bool IsNews => Tags.Contains("News", StringComparer.OrdinalIgnoreCase); /// <summary> /// Gets or sets a value indicating whether this instance is kids. /// </summary> /// <value><c>true</c> if this instance is kids; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public bool IsKids - { - get - { - return Tags.Contains("Kids", StringComparer.OrdinalIgnoreCase); - } - } + public bool IsKids => Tags.Contains("Kids", StringComparer.OrdinalIgnoreCase); /// <summary> /// Gets or sets a value indicating whether this instance is premiere. /// </summary> /// <value><c>true</c> if this instance is premiere; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public bool IsPremiere - { - get - { - return Tags.Contains("Premiere", StringComparer.OrdinalIgnoreCase); - } - } + public bool IsPremiere => Tags.Contains("Premiere", StringComparer.OrdinalIgnoreCase); /// <summary> /// Returns the folder containing the item. @@ -176,13 +143,7 @@ namespace MediaBrowser.Controller.LiveTv /// </summary> /// <value>The containing folder path.</value> [IgnoreDataMember] - public override string ContainingFolderPath - { - get - { - return Path; - } - } + public override string ContainingFolderPath => Path; //[IgnoreDataMember] //public override string MediaType @@ -251,13 +212,7 @@ namespace MediaBrowser.Controller.LiveTv } [IgnoreDataMember] - public override bool SupportsAncestors - { - get - { - return false; - } - } + public override bool SupportsAncestors => false; private LiveTvOptions GetConfiguration() { @@ -313,6 +268,6 @@ namespace MediaBrowser.Controller.LiveTv return list; } - public string SeriesName { get; set;} + public string SeriesName { get; set; } } } diff --git a/MediaBrowser.Controller/LiveTv/LiveTvServiceStatusInfo.cs b/MediaBrowser.Controller/LiveTv/LiveTvServiceStatusInfo.cs index 20e5d228b..67b2f0eb1 100644 --- a/MediaBrowser.Controller/LiveTv/LiveTvServiceStatusInfo.cs +++ b/MediaBrowser.Controller/LiveTv/LiveTvServiceStatusInfo.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.LiveTv; using System.Collections.Generic; +using MediaBrowser.Model.LiveTv; namespace MediaBrowser.Controller.LiveTv { diff --git a/MediaBrowser.Controller/LiveTv/LiveTvTunerInfo.cs b/MediaBrowser.Controller/LiveTv/LiveTvTunerInfo.cs index ade25abdc..2857f73f6 100644 --- a/MediaBrowser.Controller/LiveTv/LiveTvTunerInfo.cs +++ b/MediaBrowser.Controller/LiveTv/LiveTvTunerInfo.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.LiveTv; using System.Collections.Generic; +using MediaBrowser.Model.LiveTv; namespace MediaBrowser.Controller.LiveTv { @@ -70,4 +70,4 @@ namespace MediaBrowser.Controller.LiveTv Clients = new List<string>(); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/LiveTv/ProgramInfo.cs b/MediaBrowser.Controller/LiveTv/ProgramInfo.cs index 9e3cbdded..5d0f13192 100644 --- a/MediaBrowser.Controller/LiveTv/ProgramInfo.cs +++ b/MediaBrowser.Controller/LiveTv/ProgramInfo.cs @@ -1,7 +1,6 @@ -using MediaBrowser.Model.LiveTv; using System; using System.Collections.Generic; -using MediaBrowser.Model.Entities; +using MediaBrowser.Model.LiveTv; namespace MediaBrowser.Controller.LiveTv { @@ -161,7 +160,7 @@ namespace MediaBrowser.Controller.LiveTv /// Gets or sets a value indicating whether this instance is premiere. /// </summary> /// <value><c>true</c> if this instance is premiere; otherwise, <c>false</c>.</value> - public bool IsPremiere { get; set; } + public bool IsPremiere { get; set; } /// <summary> /// Gets or sets the production year. diff --git a/MediaBrowser.Controller/LiveTv/RecordingInfo.cs b/MediaBrowser.Controller/LiveTv/RecordingInfo.cs index 0ca4749d7..432388d6b 100644 --- a/MediaBrowser.Controller/LiveTv/RecordingInfo.cs +++ b/MediaBrowser.Controller/LiveTv/RecordingInfo.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.LiveTv; using System; using System.Collections.Generic; +using MediaBrowser.Model.LiveTv; namespace MediaBrowser.Controller.LiveTv { diff --git a/MediaBrowser.Controller/LiveTv/RecordingStatusChangedEventArgs.cs b/MediaBrowser.Controller/LiveTv/RecordingStatusChangedEventArgs.cs index 90ea329fe..99460a686 100644 --- a/MediaBrowser.Controller/LiveTv/RecordingStatusChangedEventArgs.cs +++ b/MediaBrowser.Controller/LiveTv/RecordingStatusChangedEventArgs.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.LiveTv; using System; +using MediaBrowser.Model.LiveTv; namespace MediaBrowser.Controller.LiveTv { diff --git a/MediaBrowser.Controller/LiveTv/SeriesTimerInfo.cs b/MediaBrowser.Controller/LiveTv/SeriesTimerInfo.cs index a9bb9f4e8..4fbd496c5 100644 --- a/MediaBrowser.Controller/LiveTv/SeriesTimerInfo.cs +++ b/MediaBrowser.Controller/LiveTv/SeriesTimerInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using MediaBrowser.Model.LiveTv; diff --git a/MediaBrowser.Controller/LiveTv/TimerEventInfo.cs b/MediaBrowser.Controller/LiveTv/TimerEventInfo.cs index 5b71a26a2..cfec39b4e 100644 --- a/MediaBrowser.Controller/LiveTv/TimerEventInfo.cs +++ b/MediaBrowser.Controller/LiveTv/TimerEventInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.LiveTv { diff --git a/MediaBrowser.Controller/LiveTv/TimerInfo.cs b/MediaBrowser.Controller/LiveTv/TimerInfo.cs index c9eb6fee6..2fea6a8cb 100644 --- a/MediaBrowser.Controller/LiveTv/TimerInfo.cs +++ b/MediaBrowser.Controller/LiveTv/TimerInfo.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Model.LiveTv; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Model.LiveTv; using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.LiveTv @@ -114,28 +114,15 @@ namespace MediaBrowser.Controller.LiveTv /// </summary> /// <value>The episode number.</value> public int? EpisodeNumber { get; set; } + public bool IsMovie { get; set; } - public bool IsKids - { - get - { - return Tags.Contains("Kids", StringComparer.OrdinalIgnoreCase); - } - } - public bool IsSports - { - get - { - return Tags.Contains("Sports", StringComparer.OrdinalIgnoreCase); - } - } - public bool IsNews - { - get - { - return Tags.Contains("News", StringComparer.OrdinalIgnoreCase); - } - } + + public bool IsKids => Tags.Contains("Kids", StringComparer.OrdinalIgnoreCase); + + public bool IsSports => Tags.Contains("Sports", StringComparer.OrdinalIgnoreCase); + + public bool IsNews => Tags.Contains("News", StringComparer.OrdinalIgnoreCase); + public bool IsSeries { get; set; } /// <summary> @@ -143,28 +130,21 @@ namespace MediaBrowser.Controller.LiveTv /// </summary> /// <value><c>true</c> if this instance is live; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public bool IsLive - { - get - { - return Tags.Contains("Live", StringComparer.OrdinalIgnoreCase); - } - } + public bool IsLive => Tags.Contains("Live", StringComparer.OrdinalIgnoreCase); [IgnoreDataMember] - public bool IsPremiere - { - get - { - return Tags.Contains("Premiere", StringComparer.OrdinalIgnoreCase); - } - } + public bool IsPremiere => Tags.Contains("Premiere", StringComparer.OrdinalIgnoreCase); public int? ProductionYear { get; set; } + public string EpisodeTitle { get; set; } + public DateTime? OriginalAirDate { get; set; } + public bool IsProgramSeries { get; set; } + public bool IsRepeat { get; set; } + public string HomePageUrl { get; set; } public float? CommunityRating { get; set; } public string OfficialRating { get; set; } diff --git a/MediaBrowser.Controller/LiveTv/TunerChannelMapping.cs b/MediaBrowser.Controller/LiveTv/TunerChannelMapping.cs index 3b2df0471..cb02da635 100644 --- a/MediaBrowser.Controller/LiveTv/TunerChannelMapping.cs +++ b/MediaBrowser.Controller/LiveTv/TunerChannelMapping.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Controller.LiveTv +namespace MediaBrowser.Controller.LiveTv { public class TunerChannelMapping { diff --git a/MediaBrowser.Controller/MediaBrowser.Controller.csproj b/MediaBrowser.Controller/MediaBrowser.Controller.csproj index 5898d8f98..01893f1b5 100644 --- a/MediaBrowser.Controller/MediaBrowser.Controller.csproj +++ b/MediaBrowser.Controller/MediaBrowser.Controller.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <Authors>Jellyfin Contributors</Authors> diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs index 5dca45c1e..edc43ef46 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs @@ -8,9 +8,9 @@ using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Controller.MediaEncoding { @@ -943,9 +943,7 @@ namespace MediaBrowser.Controller.MediaEncoding var level = state.GetRequestedLevel(videoStream.Codec); if (!string.IsNullOrEmpty(level)) { - double requestLevel; - - if (double.TryParse(level, NumberStyles.Any, _usCulture, out requestLevel)) + if (double.TryParse(level, NumberStyles.Any, _usCulture, out var requestLevel)) { if (!videoStream.Level.HasValue) { diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingJobInfo.cs b/MediaBrowser.Controller/MediaEncoding/EncodingJobInfo.cs index 3f6da59d8..ea8a79306 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingJobInfo.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingJobInfo.cs @@ -1,15 +1,15 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.Linq; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Session; using Microsoft.Extensions.Logging; @@ -61,53 +61,17 @@ namespace MediaBrowser.Controller.MediaEncoding } } - public bool IgnoreInputDts - { - get - { - return MediaSource.IgnoreDts; - } - } + public bool IgnoreInputDts => MediaSource.IgnoreDts; - public bool IgnoreInputIndex - { - get - { - return MediaSource.IgnoreIndex; - } - } + public bool IgnoreInputIndex => MediaSource.IgnoreIndex; - public bool GenPtsInput - { - get - { - return MediaSource.GenPtsInput; - } - } + public bool GenPtsInput => MediaSource.GenPtsInput; - public bool DiscardCorruptFramesInput - { - get - { - return false; - } - } + public bool DiscardCorruptFramesInput => false; - public bool EnableFastSeekInput - { - get - { - return false; - } - } + public bool EnableFastSeekInput => false; - public bool GenPtsOutput - { - get - { - return false; - } - } + public bool GenPtsOutput => false; public string OutputContainer { get; set; } @@ -142,15 +106,9 @@ namespace MediaBrowser.Controller.MediaEncoding public BaseEncodingJobOptions BaseRequest { get; set; } - public long? StartTimeTicks - { - get { return BaseRequest.StartTimeTicks; } - } + public long? StartTimeTicks => BaseRequest.StartTimeTicks; - public bool CopyTimestamps - { - get { return BaseRequest.CopyTimestamps; } - } + public bool CopyTimestamps => BaseRequest.CopyTimestamps; public int? OutputAudioBitrate; public int? OutputAudioChannels; @@ -235,8 +193,7 @@ namespace MediaBrowser.Controller.MediaEncoding if (!string.IsNullOrEmpty(codec)) { var value = BaseRequest.GetOption(codec, "maxrefframes"); - int result; - if (!string.IsNullOrEmpty(value) && int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out result)) + if (!string.IsNullOrEmpty(value) && int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -255,8 +212,7 @@ namespace MediaBrowser.Controller.MediaEncoding if (!string.IsNullOrEmpty(codec)) { var value = BaseRequest.GetOption(codec, "videobitdepth"); - int result; - if (!string.IsNullOrEmpty(value) && int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out result)) + if (!string.IsNullOrEmpty(value) && int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -275,8 +231,7 @@ namespace MediaBrowser.Controller.MediaEncoding if (!string.IsNullOrEmpty(codec)) { var value = BaseRequest.GetOption(codec, "audiobitdepth"); - int result; - if (!string.IsNullOrEmpty(value) && int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out result)) + if (!string.IsNullOrEmpty(value) && int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -299,8 +254,7 @@ namespace MediaBrowser.Controller.MediaEncoding if (!string.IsNullOrEmpty(codec)) { var value = BaseRequest.GetOption(codec, "audiochannels"); - int result; - if (!string.IsNullOrEmpty(value) && int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out result)) + if (!string.IsNullOrEmpty(value) && int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -323,13 +277,7 @@ namespace MediaBrowser.Controller.MediaEncoding SupportedSubtitleCodecs = Array.Empty<string>(); } - public bool IsSegmentedLiveStream - { - get - { - return TranscodingType != TranscodingJobType.Progressive && !RunTimeTicks.HasValue; - } - } + public bool IsSegmentedLiveStream => TranscodingType != TranscodingJobType.Progressive && !RunTimeTicks.HasValue; public bool EnableBreakOnNonKeyFrames(string videoCodec) { @@ -346,13 +294,7 @@ namespace MediaBrowser.Controller.MediaEncoding return false; } - public int? TotalOutputBitrate - { - get - { - return (OutputAudioBitrate ?? 0) + (OutputVideoBitrate ?? 0); - } - } + public int? TotalOutputBitrate => (OutputAudioBitrate ?? 0) + (OutputVideoBitrate ?? 0); public int? OutputWidth { @@ -473,8 +415,7 @@ namespace MediaBrowser.Controller.MediaEncoding } var level = GetRequestedLevel(ActualOutputVideoCodec); - double result; - if (!string.IsNullOrEmpty(level) && double.TryParse(level, NumberStyles.Any, CultureInfo.InvariantCulture, out result)) + if (!string.IsNullOrEmpty(level) && double.TryParse(level, NumberStyles.Any, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -745,11 +686,13 @@ namespace MediaBrowser.Controller.MediaEncoding } public IProgress<double> Progress { get; set; } - public virtual void ReportTranscodingProgress(TimeSpan? transcodingPosition, float framerate, double? percentComplete, long bytesTranscoded, int? bitRate) { + public virtual void ReportTranscodingProgress(TimeSpan? transcodingPosition, float framerate, double? percentComplete, long bytesTranscoded, int? bitRate) + { Progress.Report(percentComplete.Value); } - public virtual void Dispose () { + public virtual void Dispose() + { } } diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs b/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs index 101748a5a..ff54bb393 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.Linq; @@ -20,13 +20,7 @@ namespace MediaBrowser.Controller.MediaEncoding /// Gets a value indicating whether this instance has fixed resolution. /// </summary> /// <value><c>true</c> if this instance has fixed resolution; otherwise, <c>false</c>.</value> - public bool HasFixedResolution - { - get - { - return Width.HasValue || Height.HasValue; - } - } + public bool HasFixedResolution => Width.HasValue || Height.HasValue; private readonly CultureInfo _usCulture = new CultureInfo("en-US"); public EncodingJobOptions(StreamInfo info, DeviceProfile deviceProfile) @@ -234,8 +228,7 @@ namespace MediaBrowser.Controller.MediaEncoding public string GetOption(string name) { - string value; - if (StreamOptions.TryGetValue(name, out value)) + if (StreamOptions.TryGetValue(name, out var value)) { return value; } diff --git a/MediaBrowser.Controller/MediaEncoding/IEncodingManager.cs b/MediaBrowser.Controller/MediaEncoding/IEncodingManager.cs index 7d50efd5e..e560999e8 100644 --- a/MediaBrowser.Controller/MediaEncoding/IEncodingManager.cs +++ b/MediaBrowser.Controller/MediaEncoding/IEncodingManager.cs @@ -1,9 +1,9 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Entities; using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.MediaEncoding { diff --git a/MediaBrowser.Controller/MediaEncoding/IMediaEncoder.cs b/MediaBrowser.Controller/MediaEncoding/IMediaEncoder.cs index 2b85b8975..48055a37e 100644 --- a/MediaBrowser.Controller/MediaEncoding/IMediaEncoder.cs +++ b/MediaBrowser.Controller/MediaEncoding/IMediaEncoder.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.MediaInfo; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.Controller.MediaEncoding { diff --git a/MediaBrowser.Controller/MediaEncoding/ISubtitleEncoder.cs b/MediaBrowser.Controller/MediaEncoding/ISubtitleEncoder.cs index de7496d42..174e74f34 100644 --- a/MediaBrowser.Controller/MediaEncoding/ISubtitleEncoder.cs +++ b/MediaBrowser.Controller/MediaEncoding/ISubtitleEncoder.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.MediaInfo; using System.IO; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.Controller.MediaEncoding { diff --git a/MediaBrowser.Controller/MediaEncoding/ImageEncodingOptions.cs b/MediaBrowser.Controller/MediaEncoding/ImageEncodingOptions.cs index d69c2e47d..361dd79dc 100644 --- a/MediaBrowser.Controller/MediaEncoding/ImageEncodingOptions.cs +++ b/MediaBrowser.Controller/MediaEncoding/ImageEncodingOptions.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.MediaEncoding { public class ImageEncodingOptions diff --git a/MediaBrowser.Controller/MediaEncoding/JobLogger.cs b/MediaBrowser.Controller/MediaEncoding/JobLogger.cs index 0554822a8..b812a8ddc 100644 --- a/MediaBrowser.Controller/MediaEncoding/JobLogger.cs +++ b/MediaBrowser.Controller/MediaEncoding/JobLogger.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Model.Extensions; using System; using System.Globalization; using System.IO; using System.Linq; using System.Text; +using MediaBrowser.Model.Extensions; using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.MediaEncoding @@ -74,9 +74,8 @@ namespace MediaBrowser.Controller.MediaEncoding (i + 1 < parts.Length)) { var rate = parts[i + 1]; - float val; - if (float.TryParse(rate, NumberStyles.Any, _usCulture, out val)) + if (float.TryParse(rate, NumberStyles.Any, _usCulture, out var val)) { framerate = val; } @@ -85,9 +84,8 @@ namespace MediaBrowser.Controller.MediaEncoding part.StartsWith("time=", StringComparison.OrdinalIgnoreCase)) { var time = part.Split(new[] { '=' }, 2).Last(); - TimeSpan val; - if (TimeSpan.TryParse(time, _usCulture, out val)) + if (TimeSpan.TryParse(time, _usCulture, out var val)) { var currentMs = startMs + val.TotalMilliseconds; @@ -110,9 +108,7 @@ namespace MediaBrowser.Controller.MediaEncoding if (scale.HasValue) { - long val; - - if (long.TryParse(size, NumberStyles.Any, _usCulture, out val)) + if (long.TryParse(size, NumberStyles.Any, _usCulture, out var val)) { bytesTranscoded = val * scale.Value; } @@ -131,9 +127,7 @@ namespace MediaBrowser.Controller.MediaEncoding if (scale.HasValue) { - float val; - - if (float.TryParse(rate, NumberStyles.Any, _usCulture, out val)) + if (float.TryParse(rate, NumberStyles.Any, _usCulture, out var val)) { bitRate = (int)Math.Ceiling(val * scale.Value); } diff --git a/MediaBrowser.Controller/MediaEncoding/MediaEncoderHelpers.cs b/MediaBrowser.Controller/MediaEncoding/MediaEncoderHelpers.cs index 70e4db84f..7f842c1d0 100644 --- a/MediaBrowser.Controller/MediaEncoding/MediaEncoderHelpers.cs +++ b/MediaBrowser.Controller/MediaEncoding/MediaEncoderHelpers.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.IO; -using MediaBrowser.Model.MediaInfo; using System; using System.IO; using System.Linq; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.Controller.MediaEncoding { @@ -31,14 +31,14 @@ namespace MediaBrowser.Controller.MediaEncoding return GetPlayableStreamFiles(fileSystem, isoMount.MountedPath, playableStreamFileNames); } - return new[] {videoPath}; + return new[] { videoPath }; } private static string[] GetPlayableStreamFiles(IFileSystem fileSystem, string rootPath, string[] filenames) { if (filenames.Length == 0) { - return new string[]{}; + return new string[] { }; } var allFiles = fileSystem diff --git a/MediaBrowser.Controller/MediaEncoding/MediaInfoRequest.cs b/MediaBrowser.Controller/MediaEncoding/MediaInfoRequest.cs index b191f9905..b78ef0b80 100644 --- a/MediaBrowser.Controller/MediaEncoding/MediaInfoRequest.cs +++ b/MediaBrowser.Controller/MediaEncoding/MediaInfoRequest.cs @@ -1,10 +1,7 @@ -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.MediaInfo; -using System.Collections.Generic; -using MediaBrowser.Model.Dto; using System; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.IO; namespace MediaBrowser.Controller.MediaEncoding { diff --git a/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs b/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs index 2f31b8e66..64c2294e3 100644 --- a/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs +++ b/MediaBrowser.Controller/Net/AuthenticatedAttribute.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Services; namespace MediaBrowser.Controller.Net @@ -44,14 +44,11 @@ namespace MediaBrowser.Controller.Net /// >0 Executed after global request filters /// </summary> /// <value>The priority.</value> - public int Priority - { - get { return 0; } - } + public int Priority => 0; public string[] GetRoles() { - return (Roles ?? string.Empty).Split(new []{ ',' }, StringSplitOptions.RemoveEmptyEntries); + return (Roles ?? string.Empty).Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries); } public bool AllowLocalOnly { get; set; } diff --git a/MediaBrowser.Controller/Net/AuthorizationInfo.cs b/MediaBrowser.Controller/Net/AuthorizationInfo.cs index 86c7b7e0f..3e004763d 100644 --- a/MediaBrowser.Controller/Net/AuthorizationInfo.cs +++ b/MediaBrowser.Controller/Net/AuthorizationInfo.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Controller.Entities; using System; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Net { @@ -9,11 +9,7 @@ namespace MediaBrowser.Controller.Net /// Gets or sets the user identifier. /// </summary> /// <value>The user identifier.</value> - public Guid UserId { - get { - return User == null ? Guid.Empty : User.Id; - } - } + public Guid UserId => User == null ? Guid.Empty : User.Id; /// <summary> /// Gets or sets the device identifier. diff --git a/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs b/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs index b97b2f97d..4e7e1c8ed 100644 --- a/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs +++ b/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Threading; +using System; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Net.WebSockets; -using System.Threading.Tasks; using System.Threading; -using System; +using System.Threading.Tasks; +using MediaBrowser.Model.Net; +using MediaBrowser.Model.Threading; using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Net @@ -83,13 +83,7 @@ namespace MediaBrowser.Controller.Net protected readonly CultureInfo UsCulture = new CultureInfo("en-US"); - protected virtual bool SendOnTimer - { - get - { - return false; - } - } + protected virtual bool SendOnTimer => false; protected virtual void ParseMessageParams(string[] values) { diff --git a/MediaBrowser.Controller/Net/IAuthService.cs b/MediaBrowser.Controller/Net/IAuthService.cs index 361320250..142f1d91c 100644 --- a/MediaBrowser.Controller/Net/IAuthService.cs +++ b/MediaBrowser.Controller/Net/IAuthService.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Services; +using MediaBrowser.Model.Services; namespace MediaBrowser.Controller.Net { diff --git a/MediaBrowser.Controller/Net/IAuthorizationContext.cs b/MediaBrowser.Controller/Net/IAuthorizationContext.cs index 9b9b2226a..61598391f 100644 --- a/MediaBrowser.Controller/Net/IAuthorizationContext.cs +++ b/MediaBrowser.Controller/Net/IAuthorizationContext.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Services; +using MediaBrowser.Model.Services; namespace MediaBrowser.Controller.Net { diff --git a/MediaBrowser.Controller/Net/IHasResultFactory.cs b/MediaBrowser.Controller/Net/IHasResultFactory.cs index 03144e4b8..b8cf8cd78 100644 --- a/MediaBrowser.Controller/Net/IHasResultFactory.cs +++ b/MediaBrowser.Controller/Net/IHasResultFactory.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Services; +using MediaBrowser.Model.Services; namespace MediaBrowser.Controller.Net { diff --git a/MediaBrowser.Controller/Net/IHttpResultFactory.cs b/MediaBrowser.Controller/Net/IHttpResultFactory.cs index d23733f5e..ff9ecf8af 100644 --- a/MediaBrowser.Controller/Net/IHttpResultFactory.cs +++ b/MediaBrowser.Controller/Net/IHttpResultFactory.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; diff --git a/MediaBrowser.Controller/Net/IHttpServer.cs b/MediaBrowser.Controller/Net/IHttpServer.cs index d2ebadcfa..f41303007 100644 --- a/MediaBrowser.Controller/Net/IHttpServer.cs +++ b/MediaBrowser.Controller/Net/IHttpServer.cs @@ -1,7 +1,7 @@ using System; using System.Collections.Generic; -using MediaBrowser.Model.Services; using MediaBrowser.Model.Events; +using MediaBrowser.Model.Services; namespace MediaBrowser.Controller.Net { diff --git a/MediaBrowser.Controller/Net/ISessionContext.cs b/MediaBrowser.Controller/Net/ISessionContext.cs index 40e76c252..5c3c19f6b 100644 --- a/MediaBrowser.Controller/Net/ISessionContext.cs +++ b/MediaBrowser.Controller/Net/ISessionContext.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Session; -using System.Threading.Tasks; using MediaBrowser.Model.Services; namespace MediaBrowser.Controller.Net diff --git a/MediaBrowser.Controller/Net/IWebSocketConnection.cs b/MediaBrowser.Controller/Net/IWebSocketConnection.cs index 816e9afca..a09b2f7a2 100644 --- a/MediaBrowser.Controller/Net/IWebSocketConnection.cs +++ b/MediaBrowser.Controller/Net/IWebSocketConnection.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Services; +using System; using System.Net.WebSockets; -using System.Threading.Tasks; using System.Threading; -using System; +using System.Threading.Tasks; +using MediaBrowser.Model.Net; +using MediaBrowser.Model.Services; namespace MediaBrowser.Controller.Net { @@ -62,7 +62,7 @@ namespace MediaBrowser.Controller.Net /// <param name="message">The message.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">message</exception> + /// <exception cref="ArgumentNullException">message</exception> Task SendAsync<T>(WebSocketMessage<T> message, CancellationToken cancellationToken); /// <summary> @@ -79,7 +79,7 @@ namespace MediaBrowser.Controller.Net /// <param name="text">The text.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">buffer</exception> + /// <exception cref="ArgumentNullException">buffer</exception> Task SendAsync(string text, CancellationToken cancellationToken); } } diff --git a/MediaBrowser.Controller/Net/IWebSocketListener.cs b/MediaBrowser.Controller/Net/IWebSocketListener.cs index 29698c1a4..e38f0e259 100644 --- a/MediaBrowser.Controller/Net/IWebSocketListener.cs +++ b/MediaBrowser.Controller/Net/IWebSocketListener.cs @@ -1,4 +1,4 @@ -using System.Threading.Tasks; +using System.Threading.Tasks; namespace MediaBrowser.Controller.Net { diff --git a/MediaBrowser.Controller/Net/SecurityException.cs b/MediaBrowser.Controller/Net/SecurityException.cs index b251ab9a9..3ccecf0eb 100644 --- a/MediaBrowser.Controller/Net/SecurityException.cs +++ b/MediaBrowser.Controller/Net/SecurityException.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Net { diff --git a/MediaBrowser.Controller/Net/StaticResultOptions.cs b/MediaBrowser.Controller/Net/StaticResultOptions.cs index 1c9b2586d..a54de12be 100644 --- a/MediaBrowser.Controller/Net/StaticResultOptions.cs +++ b/MediaBrowser.Controller/Net/StaticResultOptions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; diff --git a/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs b/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs index 26abbc2d2..f26b764bb 100644 --- a/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs +++ b/MediaBrowser.Controller/Net/WebSocketConnectEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Services; namespace MediaBrowser.Controller.Net diff --git a/MediaBrowser.Controller/Net/WebSocketMessageInfo.cs b/MediaBrowser.Controller/Net/WebSocketMessageInfo.cs index 332f16420..5bf39cae6 100644 --- a/MediaBrowser.Controller/Net/WebSocketMessageInfo.cs +++ b/MediaBrowser.Controller/Net/WebSocketMessageInfo.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Net; +using MediaBrowser.Model.Net; namespace MediaBrowser.Controller.Net { @@ -13,4 +13,4 @@ namespace MediaBrowser.Controller.Net /// <value>The connection.</value> public IWebSocketConnection Connection { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Notifications/INotificationManager.cs b/MediaBrowser.Controller/Notifications/INotificationManager.cs index 161f0ffba..44defbe0b 100644 --- a/MediaBrowser.Controller/Notifications/INotificationManager.cs +++ b/MediaBrowser.Controller/Notifications/INotificationManager.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Notifications; using System.Collections.Generic; -using System.Threading.Tasks; using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Notifications; namespace MediaBrowser.Controller.Notifications { diff --git a/MediaBrowser.Controller/Notifications/INotificationService.cs b/MediaBrowser.Controller/Notifications/INotificationService.cs index b1e313b87..8c6019923 100644 --- a/MediaBrowser.Controller/Notifications/INotificationService.cs +++ b/MediaBrowser.Controller/Notifications/INotificationService.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Controller.Entities; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Notifications { diff --git a/MediaBrowser.Controller/Notifications/INotificationTypeFactory.cs b/MediaBrowser.Controller/Notifications/INotificationTypeFactory.cs index bf92aae2d..9f1d2841d 100644 --- a/MediaBrowser.Controller/Notifications/INotificationTypeFactory.cs +++ b/MediaBrowser.Controller/Notifications/INotificationTypeFactory.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Notifications; using System.Collections.Generic; +using MediaBrowser.Model.Notifications; namespace MediaBrowser.Controller.Notifications { diff --git a/MediaBrowser.Controller/Notifications/UserNotification.cs b/MediaBrowser.Controller/Notifications/UserNotification.cs index d035a3995..3f46468b3 100644 --- a/MediaBrowser.Controller/Notifications/UserNotification.cs +++ b/MediaBrowser.Controller/Notifications/UserNotification.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Notifications; using System; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Notifications; namespace MediaBrowser.Controller.Notifications { diff --git a/MediaBrowser.Controller/Persistence/IDisplayPreferencesRepository.cs b/MediaBrowser.Controller/Persistence/IDisplayPreferencesRepository.cs index 25aba6bd9..4424e044b 100644 --- a/MediaBrowser.Controller/Persistence/IDisplayPreferencesRepository.cs +++ b/MediaBrowser.Controller/Persistence/IDisplayPreferencesRepository.cs @@ -1,7 +1,7 @@ -using System.Collections.Generic; -using MediaBrowser.Model.Entities; using System; +using System.Collections.Generic; using System.Threading; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Persistence { diff --git a/MediaBrowser.Controller/Persistence/IItemRepository.cs b/MediaBrowser.Controller/Persistence/IItemRepository.cs index 7905ea1aa..0d086fd7e 100644 --- a/MediaBrowser.Controller/Persistence/IItemRepository.cs +++ b/MediaBrowser.Controller/Persistence/IItemRepository.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.Threading; +using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Querying; namespace MediaBrowser.Controller.Persistence diff --git a/MediaBrowser.Controller/Persistence/IRepository.cs b/MediaBrowser.Controller/Persistence/IRepository.cs index 2340ca646..56bf1dd5a 100644 --- a/MediaBrowser.Controller/Persistence/IRepository.cs +++ b/MediaBrowser.Controller/Persistence/IRepository.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Persistence { diff --git a/MediaBrowser.Controller/Persistence/IUserDataRepository.cs b/MediaBrowser.Controller/Persistence/IUserDataRepository.cs index 5ab3f0943..a4bdf60d7 100644 --- a/MediaBrowser.Controller/Persistence/IUserDataRepository.cs +++ b/MediaBrowser.Controller/Persistence/IUserDataRepository.cs @@ -1,7 +1,6 @@ -using System.Collections.Generic; -using MediaBrowser.Controller.Entities; -using System; +using System.Collections.Generic; using System.Threading; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Persistence { diff --git a/MediaBrowser.Controller/Persistence/IUserRepository.cs b/MediaBrowser.Controller/Persistence/IUserRepository.cs index 7d56924b6..cd23e5223 100644 --- a/MediaBrowser.Controller/Persistence/IUserRepository.cs +++ b/MediaBrowser.Controller/Persistence/IUserRepository.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Controller.Entities; using System.Collections.Generic; -using System.Threading; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Persistence { diff --git a/MediaBrowser.Controller/Persistence/MediaStreamQuery.cs b/MediaBrowser.Controller/Persistence/MediaStreamQuery.cs index 10985f57d..7dc563b3a 100644 --- a/MediaBrowser.Controller/Persistence/MediaStreamQuery.cs +++ b/MediaBrowser.Controller/Persistence/MediaStreamQuery.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Entities; using System; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Persistence { diff --git a/MediaBrowser.Controller/Playlists/IPlaylistManager.cs b/MediaBrowser.Controller/Playlists/IPlaylistManager.cs index d481bf7c5..5001f6842 100644 --- a/MediaBrowser.Controller/Playlists/IPlaylistManager.cs +++ b/MediaBrowser.Controller/Playlists/IPlaylistManager.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Playlists; +using System; using System.Collections.Generic; using System.Threading.Tasks; -using System; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Playlists; namespace MediaBrowser.Controller.Playlists { diff --git a/MediaBrowser.Controller/Playlists/Playlist.cs b/MediaBrowser.Controller/Playlists/Playlist.cs index 642dfde80..969643660 100644 --- a/MediaBrowser.Controller/Playlists/Playlist.cs +++ b/MediaBrowser.Controller/Playlists/Playlist.cs @@ -1,15 +1,15 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; using System.Collections.Generic; using System.Linq; -using MediaBrowser.Model.Serialization; +using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Providers; -using System.Threading; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Serialization; namespace MediaBrowser.Controller.Playlists { @@ -34,13 +34,7 @@ namespace MediaBrowser.Controller.Playlists } [IgnoreDataMember] - public bool IsFile - { - get - { - return IsPlaylistFile(Path); - } - } + public bool IsFile => IsPlaylistFile(Path); public static bool IsPlaylistFile(string path) { @@ -64,49 +58,19 @@ namespace MediaBrowser.Controller.Playlists } [IgnoreDataMember] - protected override bool FilterLinkedChildrenPerUser - { - get - { - return true; - } - } + protected override bool FilterLinkedChildrenPerUser => true; [IgnoreDataMember] - public override bool SupportsInheritedParentImages - { - get - { - return false; - } - } + public override bool SupportsInheritedParentImages => false; [IgnoreDataMember] - public override bool SupportsPlayedStatus - { - get - { - return string.Equals(MediaType, "Video", StringComparison.OrdinalIgnoreCase); - } - } + public override bool SupportsPlayedStatus => string.Equals(MediaType, "Video", StringComparison.OrdinalIgnoreCase); [IgnoreDataMember] - public override bool AlwaysScanInternalMetadataPath - { - get - { - return true; - } - } + public override bool AlwaysScanInternalMetadataPath => true; [IgnoreDataMember] - public override bool SupportsCumulativeRunTimeTicks - { - get - { - return true; - } - } + public override bool SupportsCumulativeRunTimeTicks => true; public override double GetDefaultPrimaryImageAspectRatio() { @@ -229,24 +193,12 @@ namespace MediaBrowser.Controller.Playlists } [IgnoreDataMember] - public override bool IsPreSorted - { - get - { - return true; - } - } + public override bool IsPreSorted => true; public string PlaylistMediaType { get; set; } [IgnoreDataMember] - public override string MediaType - { - get - { - return PlaylistMediaType; - } - } + public override string MediaType => PlaylistMediaType; public void SetMediaType(string value) { diff --git a/MediaBrowser.Controller/Plugins/ILocalizablePlugin.cs b/MediaBrowser.Controller/Plugins/ILocalizablePlugin.cs index e914fc200..5deb165f6 100644 --- a/MediaBrowser.Controller/Plugins/ILocalizablePlugin.cs +++ b/MediaBrowser.Controller/Plugins/ILocalizablePlugin.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; using System.Reflection; namespace MediaBrowser.Controller.Plugins diff --git a/MediaBrowser.Controller/Plugins/IPluginConfigurationPage.cs b/MediaBrowser.Controller/Plugins/IPluginConfigurationPage.cs index 5feaf798c..c156da924 100644 --- a/MediaBrowser.Controller/Plugins/IPluginConfigurationPage.cs +++ b/MediaBrowser.Controller/Plugins/IPluginConfigurationPage.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Common.Plugins; using System.IO; +using MediaBrowser.Common.Plugins; namespace MediaBrowser.Controller.Plugins { diff --git a/MediaBrowser.Controller/Plugins/IServerEntryPoint.cs b/MediaBrowser.Controller/Plugins/IServerEntryPoint.cs index 9ad829e45..7b7a591aa 100644 --- a/MediaBrowser.Controller/Plugins/IServerEntryPoint.cs +++ b/MediaBrowser.Controller/Plugins/IServerEntryPoint.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Plugins { diff --git a/MediaBrowser.Controller/Providers/ArtistInfo.cs b/MediaBrowser.Controller/Providers/ArtistInfo.cs index 8a4abd5c6..08bf3982b 100644 --- a/MediaBrowser.Controller/Providers/ArtistInfo.cs +++ b/MediaBrowser.Controller/Providers/ArtistInfo.cs @@ -11,4 +11,4 @@ namespace MediaBrowser.Controller.Providers SongInfos = new List<SongInfo>(); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/BookInfo.cs b/MediaBrowser.Controller/Providers/BookInfo.cs index 52519bcb0..03a6737c5 100644 --- a/MediaBrowser.Controller/Providers/BookInfo.cs +++ b/MediaBrowser.Controller/Providers/BookInfo.cs @@ -4,4 +4,4 @@ namespace MediaBrowser.Controller.Providers { public string SeriesName { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/BoxSetInfo.cs b/MediaBrowser.Controller/Providers/BoxSetInfo.cs index f604231de..4cbe2d6ef 100644 --- a/MediaBrowser.Controller/Providers/BoxSetInfo.cs +++ b/MediaBrowser.Controller/Providers/BoxSetInfo.cs @@ -4,4 +4,4 @@ namespace MediaBrowser.Controller.Providers { } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/DirectoryService.cs b/MediaBrowser.Controller/Providers/DirectoryService.cs index 9bb2f5bed..133e7c115 100644 --- a/MediaBrowser.Controller/Providers/DirectoryService.cs +++ b/MediaBrowser.Controller/Providers/DirectoryService.cs @@ -1,8 +1,8 @@ -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Linq; using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Providers { @@ -25,9 +25,7 @@ namespace MediaBrowser.Controller.Providers public FileSystemMetadata[] GetFileSystemEntries(string path) { - FileSystemMetadata[] entries; - - if (!_cache.TryGetValue(path, out entries)) + if (!_cache.TryGetValue(path, out FileSystemMetadata[] entries)) { //_logger.LogDebug("Getting files for " + path); @@ -56,8 +54,7 @@ namespace MediaBrowser.Controller.Providers public FileSystemMetadata GetFile(string path) { - FileSystemMetadata file; - if (!_fileCache.TryGetValue(path, out file)) + if (!_fileCache.TryGetValue(path, out FileSystemMetadata file)) { file = _fileSystem.GetFileInfo(path); @@ -83,8 +80,7 @@ namespace MediaBrowser.Controller.Providers public List<string> GetFilePaths(string path, bool clearCache) { - List<string> result; - if (clearCache || !_filePathCache.TryGetValue(path, out result)) + if (clearCache || !_filePathCache.TryGetValue(path, out List<string> result)) { result = _fileSystem.GetFilePaths(path).ToList(); diff --git a/MediaBrowser.Controller/Providers/DynamicImageInfo.cs b/MediaBrowser.Controller/Providers/DynamicImageInfo.cs index 14b4c6afb..0791783c6 100644 --- a/MediaBrowser.Controller/Providers/DynamicImageInfo.cs +++ b/MediaBrowser.Controller/Providers/DynamicImageInfo.cs @@ -7,4 +7,4 @@ namespace MediaBrowser.Controller.Providers public string ImageId { get; set; } public ImageType Type { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/DynamicImageResponse.cs b/MediaBrowser.Controller/Providers/DynamicImageResponse.cs index d19a28a24..11c7ccbe5 100644 --- a/MediaBrowser.Controller/Providers/DynamicImageResponse.cs +++ b/MediaBrowser.Controller/Providers/DynamicImageResponse.cs @@ -33,4 +33,4 @@ namespace MediaBrowser.Controller.Providers } } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/EpisodeInfo.cs b/MediaBrowser.Controller/Providers/EpisodeInfo.cs index 4eafe0e0e..6ecf4edc5 100644 --- a/MediaBrowser.Controller/Providers/EpisodeInfo.cs +++ b/MediaBrowser.Controller/Providers/EpisodeInfo.cs @@ -17,4 +17,4 @@ namespace MediaBrowser.Controller.Providers SeriesProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/ExtraInfo.cs b/MediaBrowser.Controller/Providers/ExtraInfo.cs index 1fbe6e93a..413ff2e78 100644 --- a/MediaBrowser.Controller/Providers/ExtraInfo.cs +++ b/MediaBrowser.Controller/Providers/ExtraInfo.cs @@ -12,4 +12,4 @@ namespace MediaBrowser.Controller.Providers public ExtraType ExtraType { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/ExtraSource.cs b/MediaBrowser.Controller/Providers/ExtraSource.cs index 901af60f8..46b246fbc 100644 --- a/MediaBrowser.Controller/Providers/ExtraSource.cs +++ b/MediaBrowser.Controller/Providers/ExtraSource.cs @@ -6,4 +6,4 @@ namespace MediaBrowser.Controller.Providers Metadata = 2, Remote = 3 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/GameInfo.cs b/MediaBrowser.Controller/Providers/GameInfo.cs index 771cf6cec..1f3eb40b7 100644 --- a/MediaBrowser.Controller/Providers/GameInfo.cs +++ b/MediaBrowser.Controller/Providers/GameInfo.cs @@ -8,4 +8,4 @@ namespace MediaBrowser.Controller.Providers /// <value>The game system.</value> public string GameSystem { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/GameSystemInfo.cs b/MediaBrowser.Controller/Providers/GameSystemInfo.cs index efe2635cd..796486b82 100644 --- a/MediaBrowser.Controller/Providers/GameSystemInfo.cs +++ b/MediaBrowser.Controller/Providers/GameSystemInfo.cs @@ -8,4 +8,4 @@ namespace MediaBrowser.Controller.Providers /// <value>The path.</value> public string Path { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/ICustomMetadataProvider.cs b/MediaBrowser.Controller/Providers/ICustomMetadataProvider.cs index af1838d74..2d5a0b364 100644 --- a/MediaBrowser.Controller/Providers/ICustomMetadataProvider.cs +++ b/MediaBrowser.Controller/Providers/ICustomMetadataProvider.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/IDirectoryService.cs b/MediaBrowser.Controller/Providers/IDirectoryService.cs index 0b4574f6e..8059d2bd1 100644 --- a/MediaBrowser.Controller/Providers/IDirectoryService.cs +++ b/MediaBrowser.Controller/Providers/IDirectoryService.cs @@ -12,4 +12,4 @@ namespace MediaBrowser.Controller.Providers List<string> GetFilePaths(string path); List<string> GetFilePaths(string path, bool clearCache); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/IDynamicImageProvider.cs b/MediaBrowser.Controller/Providers/IDynamicImageProvider.cs index 3e9127fc4..dec327d66 100644 --- a/MediaBrowser.Controller/Providers/IDynamicImageProvider.cs +++ b/MediaBrowser.Controller/Providers/IDynamicImageProvider.cs @@ -24,4 +24,4 @@ namespace MediaBrowser.Controller.Providers /// <returns>Task{DynamicImageResponse}.</returns> Task<DynamicImageResponse> GetImage(BaseItem item, ImageType type, CancellationToken cancellationToken); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/IExternalId.cs b/MediaBrowser.Controller/Providers/IExternalId.cs index 946f28199..d7e337bda 100644 --- a/MediaBrowser.Controller/Providers/IExternalId.cs +++ b/MediaBrowser.Controller/Providers/IExternalId.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/IExtrasProvider.cs b/MediaBrowser.Controller/Providers/IExtrasProvider.cs index 58775ccac..fa31635cb 100644 --- a/MediaBrowser.Controller/Providers/IExtrasProvider.cs +++ b/MediaBrowser.Controller/Providers/IExtrasProvider.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/IForcedProvider.cs b/MediaBrowser.Controller/Providers/IForcedProvider.cs index 9e35b00ad..35fa29d94 100644 --- a/MediaBrowser.Controller/Providers/IForcedProvider.cs +++ b/MediaBrowser.Controller/Providers/IForcedProvider.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Providers { /// <summary> diff --git a/MediaBrowser.Controller/Providers/IHasItemChangeMonitor.cs b/MediaBrowser.Controller/Providers/IHasItemChangeMonitor.cs index 7cc05bf67..68acb3910 100644 --- a/MediaBrowser.Controller/Providers/IHasItemChangeMonitor.cs +++ b/MediaBrowser.Controller/Providers/IHasItemChangeMonitor.cs @@ -12,4 +12,4 @@ namespace MediaBrowser.Controller.Providers /// <returns><c>true</c> if the specified item has changed; otherwise, <c>false</c>.</returns> bool HasChanged(BaseItem item, IDirectoryService directoryService); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/IHasLookupInfo.cs b/MediaBrowser.Controller/Providers/IHasLookupInfo.cs index afce49852..4c0c38442 100644 --- a/MediaBrowser.Controller/Providers/IHasLookupInfo.cs +++ b/MediaBrowser.Controller/Providers/IHasLookupInfo.cs @@ -5,4 +5,4 @@ namespace MediaBrowser.Controller.Providers { TLookupInfoType GetLookupInfo(); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/IHasOrder.cs b/MediaBrowser.Controller/Providers/IHasOrder.cs index cb5298dd3..a3db61225 100644 --- a/MediaBrowser.Controller/Providers/IHasOrder.cs +++ b/MediaBrowser.Controller/Providers/IHasOrder.cs @@ -4,4 +4,4 @@ namespace MediaBrowser.Controller.Providers { int Order { get; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/IImageEnhancer.cs b/MediaBrowser.Controller/Providers/IImageEnhancer.cs index c8ea25335..2de657854 100644 --- a/MediaBrowser.Controller/Providers/IImageEnhancer.cs +++ b/MediaBrowser.Controller/Providers/IImageEnhancer.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Entities; -using System.Threading.Tasks; namespace MediaBrowser.Controller.Providers { @@ -58,4 +58,4 @@ namespace MediaBrowser.Controller.Providers { public bool RequiresTransparency { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/IImageProvider.cs b/MediaBrowser.Controller/Providers/IImageProvider.cs index ac857b2aa..2df3d5ff8 100644 --- a/MediaBrowser.Controller/Providers/IImageProvider.cs +++ b/MediaBrowser.Controller/Providers/IImageProvider.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/ILocalImageFileProvider.cs b/MediaBrowser.Controller/Providers/ILocalImageFileProvider.cs index 96e154dad..72bc56390 100644 --- a/MediaBrowser.Controller/Providers/ILocalImageFileProvider.cs +++ b/MediaBrowser.Controller/Providers/ILocalImageFileProvider.cs @@ -7,4 +7,4 @@ namespace MediaBrowser.Controller.Providers { List<LocalImageInfo> GetImages(BaseItem item, IDirectoryService directoryService); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/ILocalImageProvider.cs b/MediaBrowser.Controller/Providers/ILocalImageProvider.cs index 1027a4cb2..09aaab3de 100644 --- a/MediaBrowser.Controller/Providers/ILocalImageProvider.cs +++ b/MediaBrowser.Controller/Providers/ILocalImageProvider.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Controller.Providers +namespace MediaBrowser.Controller.Providers { /// <summary> /// This is just a marker interface diff --git a/MediaBrowser.Controller/Providers/ILocalMetadataProvider.cs b/MediaBrowser.Controller/Providers/ILocalMetadataProvider.cs index 68f1ae589..2a2c379f6 100644 --- a/MediaBrowser.Controller/Providers/ILocalMetadataProvider.cs +++ b/MediaBrowser.Controller/Providers/ILocalMetadataProvider.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Controller.Entities; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/IMetadataProvider.cs b/MediaBrowser.Controller/Providers/IMetadataProvider.cs index 7da590193..3e595ff93 100644 --- a/MediaBrowser.Controller/Providers/IMetadataProvider.cs +++ b/MediaBrowser.Controller/Providers/IMetadataProvider.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/IMetadataService.cs b/MediaBrowser.Controller/Providers/IMetadataService.cs index 1c9c4b71a..49f6a7830 100644 --- a/MediaBrowser.Controller/Providers/IMetadataService.cs +++ b/MediaBrowser.Controller/Providers/IMetadataService.cs @@ -1,8 +1,8 @@ -using System; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; +using System; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/IPreRefreshProvider.cs b/MediaBrowser.Controller/Providers/IPreRefreshProvider.cs index 4170bb375..058010e1a 100644 --- a/MediaBrowser.Controller/Providers/IPreRefreshProvider.cs +++ b/MediaBrowser.Controller/Providers/IPreRefreshProvider.cs @@ -4,4 +4,4 @@ namespace MediaBrowser.Controller.Providers { } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/IProviderManager.cs b/MediaBrowser.Controller/Providers/IProviderManager.cs index f1930ee2f..925ace895 100644 --- a/MediaBrowser.Controller/Providers/IProviderManager.cs +++ b/MediaBrowser.Controller/Providers/IProviderManager.cs @@ -1,15 +1,15 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.IO; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Events; +using MediaBrowser.Model.Providers; namespace MediaBrowser.Controller.Providers { @@ -175,4 +175,4 @@ namespace MediaBrowser.Controller.Providers Normal = 1, Low = 2 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/IRemoteImageProvider.cs b/MediaBrowser.Controller/Providers/IRemoteImageProvider.cs index 32f51c650..e56bba3e3 100644 --- a/MediaBrowser.Controller/Providers/IRemoteImageProvider.cs +++ b/MediaBrowser.Controller/Providers/IRemoteImageProvider.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Providers; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/IRemoteMetadataProvider.cs b/MediaBrowser.Controller/Providers/IRemoteMetadataProvider.cs index 695d488ed..c143b15cd 100644 --- a/MediaBrowser.Controller/Providers/IRemoteMetadataProvider.cs +++ b/MediaBrowser.Controller/Providers/IRemoteMetadataProvider.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Providers; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Providers; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/IRemoteSearchProvider.cs b/MediaBrowser.Controller/Providers/IRemoteSearchProvider.cs index 0077def42..fdb0c8eb5 100644 --- a/MediaBrowser.Controller/Providers/IRemoteSearchProvider.cs +++ b/MediaBrowser.Controller/Providers/IRemoteSearchProvider.cs @@ -14,4 +14,4 @@ namespace MediaBrowser.Controller.Providers /// <returns>Task{HttpResponseInfo}.</returns> Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/ImageRefreshOptions.cs b/MediaBrowser.Controller/Providers/ImageRefreshOptions.cs index 6cc8a691e..aac41369c 100644 --- a/MediaBrowser.Controller/Providers/ImageRefreshOptions.cs +++ b/MediaBrowser.Controller/Providers/ImageRefreshOptions.cs @@ -1,7 +1,6 @@ -using System.Collections.Generic; -using MediaBrowser.Model.Entities; using System; using System.Linq; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/ItemInfo.cs b/MediaBrowser.Controller/Providers/ItemInfo.cs index 76adfe8a2..f29a8aa70 100644 --- a/MediaBrowser.Controller/Providers/ItemInfo.cs +++ b/MediaBrowser.Controller/Providers/ItemInfo.cs @@ -29,4 +29,4 @@ namespace MediaBrowser.Controller.Providers public bool IsInMixedFolder { get; set; } public bool IsPlaceHolder { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/ItemLookupInfo.cs b/MediaBrowser.Controller/Providers/ItemLookupInfo.cs index dc7a04135..0aaab9a94 100644 --- a/MediaBrowser.Controller/Providers/ItemLookupInfo.cs +++ b/MediaBrowser.Controller/Providers/ItemLookupInfo.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/LocalImageInfo.cs b/MediaBrowser.Controller/Providers/LocalImageInfo.cs index 5e6efe9f6..24cded79b 100644 --- a/MediaBrowser.Controller/Providers/LocalImageInfo.cs +++ b/MediaBrowser.Controller/Providers/LocalImageInfo.cs @@ -1,5 +1,3 @@ - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; @@ -10,4 +8,4 @@ namespace MediaBrowser.Controller.Providers public FileSystemMetadata FileInfo { get; set; } public ImageType Type { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/MetadataProviderPriority.cs b/MediaBrowser.Controller/Providers/MetadataProviderPriority.cs index d01261866..0076bb972 100644 --- a/MediaBrowser.Controller/Providers/MetadataProviderPriority.cs +++ b/MediaBrowser.Controller/Providers/MetadataProviderPriority.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Providers { /// <summary> diff --git a/MediaBrowser.Controller/Providers/MetadataRefreshMode.cs b/MediaBrowser.Controller/Providers/MetadataRefreshMode.cs index 56492006a..02152ee33 100644 --- a/MediaBrowser.Controller/Providers/MetadataRefreshMode.cs +++ b/MediaBrowser.Controller/Providers/MetadataRefreshMode.cs @@ -22,4 +22,4 @@ namespace MediaBrowser.Controller.Providers /// </summary> FullRefresh = 3 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs b/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs index 3dbcc5305..b3eb8cdd1 100644 --- a/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs +++ b/MediaBrowser.Controller/Providers/MetadataRefreshOptions.cs @@ -1,8 +1,6 @@ -using System; +using System; using System.Linq; using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Providers; namespace MediaBrowser.Controller.Providers diff --git a/MediaBrowser.Controller/Providers/MetadataResult.cs b/MediaBrowser.Controller/Providers/MetadataResult.cs index 271f784d7..f4b915c06 100644 --- a/MediaBrowser.Controller/Providers/MetadataResult.cs +++ b/MediaBrowser.Controller/Providers/MetadataResult.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Controller.Entities; using System; using System.Collections.Generic; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Providers { diff --git a/MediaBrowser.Controller/Providers/MovieInfo.cs b/MediaBrowser.Controller/Providers/MovieInfo.cs index 198336fc0..c9a766fe7 100644 --- a/MediaBrowser.Controller/Providers/MovieInfo.cs +++ b/MediaBrowser.Controller/Providers/MovieInfo.cs @@ -4,4 +4,4 @@ namespace MediaBrowser.Controller.Providers { } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/MusicVideoInfo.cs b/MediaBrowser.Controller/Providers/MusicVideoInfo.cs index 6e12405f7..194b26484 100644 --- a/MediaBrowser.Controller/Providers/MusicVideoInfo.cs +++ b/MediaBrowser.Controller/Providers/MusicVideoInfo.cs @@ -4,4 +4,4 @@ namespace MediaBrowser.Controller.Providers { public string[] Artists { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/PersonLookupInfo.cs b/MediaBrowser.Controller/Providers/PersonLookupInfo.cs index db4dacb0b..3fa6e50b7 100644 --- a/MediaBrowser.Controller/Providers/PersonLookupInfo.cs +++ b/MediaBrowser.Controller/Providers/PersonLookupInfo.cs @@ -4,4 +4,4 @@ namespace MediaBrowser.Controller.Providers { } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/RemoteSearchQuery.cs b/MediaBrowser.Controller/Providers/RemoteSearchQuery.cs index 9fe6f96bc..078125673 100644 --- a/MediaBrowser.Controller/Providers/RemoteSearchQuery.cs +++ b/MediaBrowser.Controller/Providers/RemoteSearchQuery.cs @@ -20,4 +20,4 @@ namespace MediaBrowser.Controller.Providers /// <value><c>true</c> if [include disabled providers]; otherwise, <c>false</c>.</value> public bool IncludeDisabledProviders { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/SeasonInfo.cs b/MediaBrowser.Controller/Providers/SeasonInfo.cs index 31af268b8..dd2ef9ad7 100644 --- a/MediaBrowser.Controller/Providers/SeasonInfo.cs +++ b/MediaBrowser.Controller/Providers/SeasonInfo.cs @@ -12,4 +12,4 @@ namespace MediaBrowser.Controller.Providers SeriesProviderIds = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/SeriesInfo.cs b/MediaBrowser.Controller/Providers/SeriesInfo.cs index 0b1361757..6c206e031 100644 --- a/MediaBrowser.Controller/Providers/SeriesInfo.cs +++ b/MediaBrowser.Controller/Providers/SeriesInfo.cs @@ -3,4 +3,4 @@ namespace MediaBrowser.Controller.Providers public class SeriesInfo : ItemLookupInfo { } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/TrailerInfo.cs b/MediaBrowser.Controller/Providers/TrailerInfo.cs index ea8377adf..13f07562d 100644 --- a/MediaBrowser.Controller/Providers/TrailerInfo.cs +++ b/MediaBrowser.Controller/Providers/TrailerInfo.cs @@ -3,4 +3,4 @@ namespace MediaBrowser.Controller.Providers public class TrailerInfo : ItemLookupInfo { } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Providers/VideoContentType.cs b/MediaBrowser.Controller/Providers/VideoContentType.cs index 903c77612..c3b8964a3 100644 --- a/MediaBrowser.Controller/Providers/VideoContentType.cs +++ b/MediaBrowser.Controller/Providers/VideoContentType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Providers { /// <summary> diff --git a/MediaBrowser.Controller/Resolvers/BaseItemResolver.cs b/MediaBrowser.Controller/Resolvers/BaseItemResolver.cs index fc5157d5f..637a7e3f0 100644 --- a/MediaBrowser.Controller/Resolvers/BaseItemResolver.cs +++ b/MediaBrowser.Controller/Resolvers/BaseItemResolver.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; namespace MediaBrowser.Controller.Resolvers @@ -24,13 +24,7 @@ namespace MediaBrowser.Controller.Resolvers /// Gets the priority. /// </summary> /// <value>The priority.</value> - public virtual ResolverPriority Priority - { - get - { - return ResolverPriority.First; - } - } + public virtual ResolverPriority Priority => ResolverPriority.First; /// <summary> /// Sets initial values on the newly resolved item diff --git a/MediaBrowser.Controller/Resolvers/IItemResolver.cs b/MediaBrowser.Controller/Resolvers/IItemResolver.cs index 298ec248a..16e37d249 100644 --- a/MediaBrowser.Controller/Resolvers/IItemResolver.cs +++ b/MediaBrowser.Controller/Resolvers/IItemResolver.cs @@ -1,9 +1,7 @@ -using MediaBrowser.Controller.Entities; +using System.Collections.Generic; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; namespace MediaBrowser.Controller.Resolvers diff --git a/MediaBrowser.Controller/Resolvers/IResolverIgnoreRule.cs b/MediaBrowser.Controller/Resolvers/IResolverIgnoreRule.cs index 25537193a..b40cc157a 100644 --- a/MediaBrowser.Controller/Resolvers/IResolverIgnoreRule.cs +++ b/MediaBrowser.Controller/Resolvers/IResolverIgnoreRule.cs @@ -1,6 +1,4 @@ - using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; namespace MediaBrowser.Controller.Resolvers diff --git a/MediaBrowser.Controller/Resolvers/ResolverPriority.cs b/MediaBrowser.Controller/Resolvers/ResolverPriority.cs index df5edeb05..e39310095 100644 --- a/MediaBrowser.Controller/Resolvers/ResolverPriority.cs +++ b/MediaBrowser.Controller/Resolvers/ResolverPriority.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Resolvers { /// <summary> diff --git a/MediaBrowser.Controller/Security/AuthenticationInfo.cs b/MediaBrowser.Controller/Security/AuthenticationInfo.cs index ecb3866d0..828213588 100644 --- a/MediaBrowser.Controller/Security/AuthenticationInfo.cs +++ b/MediaBrowser.Controller/Security/AuthenticationInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Security { @@ -65,6 +65,6 @@ namespace MediaBrowser.Controller.Security public DateTime? DateRevoked { get; set; } public DateTime DateLastActivity { get; set; } - public string UserName { get; set;} + public string UserName { get; set; } } } diff --git a/MediaBrowser.Controller/Security/AuthenticationInfoQuery.cs b/MediaBrowser.Controller/Security/AuthenticationInfoQuery.cs index 2fa988ec1..2bd17eb26 100644 --- a/MediaBrowser.Controller/Security/AuthenticationInfoQuery.cs +++ b/MediaBrowser.Controller/Security/AuthenticationInfoQuery.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Security { diff --git a/MediaBrowser.Controller/Security/IAuthenticationRepository.cs b/MediaBrowser.Controller/Security/IAuthenticationRepository.cs index 4f454f895..6a9625613 100644 --- a/MediaBrowser.Controller/Security/IAuthenticationRepository.cs +++ b/MediaBrowser.Controller/Security/IAuthenticationRepository.cs @@ -1,6 +1,5 @@ using MediaBrowser.Model.Devices; using MediaBrowser.Model.Querying; -using System.Threading; namespace MediaBrowser.Controller.Security { diff --git a/MediaBrowser.Controller/Security/IEncryptionManager.cs b/MediaBrowser.Controller/Security/IEncryptionManager.cs index bb4f77d83..68680fdf3 100644 --- a/MediaBrowser.Controller/Security/IEncryptionManager.cs +++ b/MediaBrowser.Controller/Security/IEncryptionManager.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Security { public interface IEncryptionManager diff --git a/MediaBrowser.Controller/Session/AuthenticationRequest.cs b/MediaBrowser.Controller/Session/AuthenticationRequest.cs index 0489cf9b6..a28f47a9c 100644 --- a/MediaBrowser.Controller/Session/AuthenticationRequest.cs +++ b/MediaBrowser.Controller/Session/AuthenticationRequest.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Session { diff --git a/MediaBrowser.Controller/Session/ISessionController.cs b/MediaBrowser.Controller/Session/ISessionController.cs index e1d3a7ee6..a59c96ac7 100644 --- a/MediaBrowser.Controller/Session/ISessionController.cs +++ b/MediaBrowser.Controller/Session/ISessionController.cs @@ -1,4 +1,4 @@ -using System.Threading; +using System.Threading; using System.Threading.Tasks; namespace MediaBrowser.Controller.Session diff --git a/MediaBrowser.Controller/Session/ISessionManager.cs b/MediaBrowser.Controller/Session/ISessionManager.cs index 1b51ddc16..771027103 100644 --- a/MediaBrowser.Controller/Session/ISessionManager.cs +++ b/MediaBrowser.Controller/Session/ISessionManager.cs @@ -1,14 +1,14 @@ -using MediaBrowser.Controller.Authentication; +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Controller.Authentication; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Security; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Events; using MediaBrowser.Model.Session; -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; namespace MediaBrowser.Controller.Session { @@ -90,7 +90,7 @@ namespace MediaBrowser.Controller.Session /// </summary> /// <param name="info">The info.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> Task OnPlaybackProgress(PlaybackProgressInfo info); Task OnPlaybackProgress(PlaybackProgressInfo info, bool isAutomated); @@ -100,7 +100,7 @@ namespace MediaBrowser.Controller.Session /// </summary> /// <param name="info">The info.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> Task OnPlaybackStopped(PlaybackStopInfo info); /// <summary> diff --git a/MediaBrowser.Controller/Session/SessionEventArgs.cs b/MediaBrowser.Controller/Session/SessionEventArgs.cs index 96daa6ec9..08baaf647 100644 --- a/MediaBrowser.Controller/Session/SessionEventArgs.cs +++ b/MediaBrowser.Controller/Session/SessionEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Controller.Session { diff --git a/MediaBrowser.Controller/Session/SessionInfo.cs b/MediaBrowser.Controller/Session/SessionInfo.cs index 77e786ead..d698795dd 100644 --- a/MediaBrowser.Controller/Session/SessionInfo.cs +++ b/MediaBrowser.Controller/Session/SessionInfo.cs @@ -1,11 +1,11 @@ +using System; +using System.Linq; using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Session; -using System; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Threading; -using System.Linq; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Controller.Session { @@ -142,7 +142,7 @@ namespace MediaBrowser.Controller.Session { if (Capabilities == null) { - return new string[] {}; + return new string[] { }; } return Capabilities.SupportedCommands; } diff --git a/MediaBrowser.Controller/Sorting/IBaseItemComparer.cs b/MediaBrowser.Controller/Sorting/IBaseItemComparer.cs index 6d0b95bcb..31087edec 100644 --- a/MediaBrowser.Controller/Sorting/IBaseItemComparer.cs +++ b/MediaBrowser.Controller/Sorting/IBaseItemComparer.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Controller.Entities; using System.Collections.Generic; +using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Sorting { diff --git a/MediaBrowser.Controller/Sorting/IUserBaseItemComparer.cs b/MediaBrowser.Controller/Sorting/IUserBaseItemComparer.cs index 915d4854b..1e2df37bf 100644 --- a/MediaBrowser.Controller/Sorting/IUserBaseItemComparer.cs +++ b/MediaBrowser.Controller/Sorting/IUserBaseItemComparer.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; namespace MediaBrowser.Controller.Sorting diff --git a/MediaBrowser.Controller/Sorting/SortExtensions.cs b/MediaBrowser.Controller/Sorting/SortExtensions.cs index ec8ee5a11..111f4f17f 100644 --- a/MediaBrowser.Controller/Sorting/SortExtensions.cs +++ b/MediaBrowser.Controller/Sorting/SortExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Text; @@ -72,8 +72,8 @@ namespace MediaBrowser.Controller.Sorting char thisCh = s1[thisMarker]; char thatCh = s2[thatMarker]; - StringBuilder thisChunk = new StringBuilder(); - StringBuilder thatChunk = new StringBuilder(); + var thisChunk = new StringBuilder(); + var thatChunk = new StringBuilder(); while ((thisMarker < s1.Length) && (thisChunk.Length == 0 || InChunk(thisCh, thisChunk[0]))) { diff --git a/MediaBrowser.Controller/Sorting/SortHelper.cs b/MediaBrowser.Controller/Sorting/SortHelper.cs index 3456b9b04..05981d975 100644 --- a/MediaBrowser.Controller/Sorting/SortHelper.cs +++ b/MediaBrowser.Controller/Sorting/SortHelper.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Controller.Sorting +namespace MediaBrowser.Controller.Sorting { public static class SortHelper { diff --git a/MediaBrowser.Controller/Subtitles/ISubtitleManager.cs b/MediaBrowser.Controller/Subtitles/ISubtitleManager.cs index e41826be5..2ee58bbe6 100644 --- a/MediaBrowser.Controller/Subtitles/ISubtitleManager.cs +++ b/MediaBrowser.Controller/Subtitles/ISubtitleManager.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Entities; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Providers; namespace MediaBrowser.Controller.Subtitles { diff --git a/MediaBrowser.Controller/Subtitles/ISubtitleProvider.cs b/MediaBrowser.Controller/Subtitles/ISubtitleProvider.cs index 2502d685d..8ffd7c530 100644 --- a/MediaBrowser.Controller/Subtitles/ISubtitleProvider.cs +++ b/MediaBrowser.Controller/Subtitles/ISubtitleProvider.cs @@ -1,9 +1,8 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Providers; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Providers; namespace MediaBrowser.Controller.Subtitles { diff --git a/MediaBrowser.Controller/Subtitles/SubtitleDownloadEventArgs.cs b/MediaBrowser.Controller/Subtitles/SubtitleDownloadEventArgs.cs index 1d204f2cb..5703aea17 100644 --- a/MediaBrowser.Controller/Subtitles/SubtitleDownloadEventArgs.cs +++ b/MediaBrowser.Controller/Subtitles/SubtitleDownloadEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Controller.Entities; namespace MediaBrowser.Controller.Subtitles diff --git a/MediaBrowser.Controller/Subtitles/SubtitleResponse.cs b/MediaBrowser.Controller/Subtitles/SubtitleResponse.cs index e2f6dfc97..b8ba35a5f 100644 --- a/MediaBrowser.Controller/Subtitles/SubtitleResponse.cs +++ b/MediaBrowser.Controller/Subtitles/SubtitleResponse.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; namespace MediaBrowser.Controller.Subtitles { @@ -9,4 +9,4 @@ namespace MediaBrowser.Controller.Subtitles public bool IsForced { get; set; } public Stream Stream { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Controller/Subtitles/SubtitleSearchRequest.cs b/MediaBrowser.Controller/Subtitles/SubtitleSearchRequest.cs index daef6db79..61dc72258 100644 --- a/MediaBrowser.Controller/Subtitles/SubtitleSearchRequest.cs +++ b/MediaBrowser.Controller/Subtitles/SubtitleSearchRequest.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Controller.Subtitles { diff --git a/MediaBrowser.Controller/Sync/IHasDynamicAccess.cs b/MediaBrowser.Controller/Sync/IHasDynamicAccess.cs index cf868a381..d6bac23be 100644 --- a/MediaBrowser.Controller/Sync/IHasDynamicAccess.cs +++ b/MediaBrowser.Controller/Sync/IHasDynamicAccess.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Sync; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Model.Sync; namespace MediaBrowser.Controller.Sync { diff --git a/MediaBrowser.Controller/Sync/IRemoteSyncProvider.cs b/MediaBrowser.Controller/Sync/IRemoteSyncProvider.cs index aeb7a3bff..c0b62b753 100644 --- a/MediaBrowser.Controller/Sync/IRemoteSyncProvider.cs +++ b/MediaBrowser.Controller/Sync/IRemoteSyncProvider.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Controller.Sync { /// <summary> diff --git a/MediaBrowser.Controller/Sync/IServerSyncProvider.cs b/MediaBrowser.Controller/Sync/IServerSyncProvider.cs index 335fea296..8b2d5d779 100644 --- a/MediaBrowser.Controller/Sync/IServerSyncProvider.cs +++ b/MediaBrowser.Controller/Sync/IServerSyncProvider.cs @@ -1,11 +1,10 @@ -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Sync; using System; using System.IO; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Sync; namespace MediaBrowser.Controller.Sync { diff --git a/MediaBrowser.Controller/Sync/ISyncProvider.cs b/MediaBrowser.Controller/Sync/ISyncProvider.cs index 0b2fcc95e..56f6f3729 100644 --- a/MediaBrowser.Controller/Sync/ISyncProvider.cs +++ b/MediaBrowser.Controller/Sync/ISyncProvider.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Sync; using System.Collections.Generic; +using MediaBrowser.Model.Sync; namespace MediaBrowser.Controller.Sync { diff --git a/MediaBrowser.Controller/Sync/SyncedFileInfo.cs b/MediaBrowser.Controller/Sync/SyncedFileInfo.cs index 1c87551f1..2ff40addb 100644 --- a/MediaBrowser.Controller/Sync/SyncedFileInfo.cs +++ b/MediaBrowser.Controller/Sync/SyncedFileInfo.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.MediaInfo; using System.Collections.Generic; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.Controller.Sync { diff --git a/MediaBrowser.Controller/TV/ITVSeriesManager.cs b/MediaBrowser.Controller/TV/ITVSeriesManager.cs index 56e06bcfa..09a0f6fea 100644 --- a/MediaBrowser.Controller/TV/ITVSeriesManager.cs +++ b/MediaBrowser.Controller/TV/ITVSeriesManager.cs @@ -1,7 +1,6 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Model.Querying; -using System.Collections.Generic; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Controller.TV { diff --git a/MediaBrowser.LocalMetadata/BaseXmlProvider.cs b/MediaBrowser.LocalMetadata/BaseXmlProvider.cs index ecd255c18..a6553563f 100644 --- a/MediaBrowser.LocalMetadata/BaseXmlProvider.cs +++ b/MediaBrowser.LocalMetadata/BaseXmlProvider.cs @@ -1,10 +1,8 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; using System.IO; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; namespace MediaBrowser.LocalMetadata @@ -69,32 +67,14 @@ namespace MediaBrowser.LocalMetadata return file.Exists && FileSystem.GetLastWriteTimeUtc(file) > item.DateLastSaved; } - public string Name - { - get - { - return XmlProviderUtils.Name; - } - } + public string Name => XmlProviderUtils.Name; - public virtual int Order - { - get - { - // After Nfo - return 1; - } - } + //After Nfo + public virtual int Order => 1; } static class XmlProviderUtils { - public static string Name - { - get - { - return "Emby Xml"; - } - } + public static string Name => "Emby Xml"; } } diff --git a/MediaBrowser.LocalMetadata/Images/CollectionFolderImageProvider.cs b/MediaBrowser.LocalMetadata/Images/CollectionFolderImageProvider.cs index de14cec38..206e761bb 100644 --- a/MediaBrowser.LocalMetadata/Images/CollectionFolderImageProvider.cs +++ b/MediaBrowser.LocalMetadata/Images/CollectionFolderImageProvider.cs @@ -1,8 +1,6 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; using System.Collections.Generic; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; namespace MediaBrowser.LocalMetadata.Images @@ -16,24 +14,15 @@ namespace MediaBrowser.LocalMetadata.Images _fileSystem = fileSystem; } - public string Name - { - get { return "Collection Folder Images"; } - } + public string Name => "Collection Folder Images"; public bool Supports(BaseItem item) { return item is CollectionFolder && item.SupportsLocalMetadata; } - public int Order - { - get - { - // Run after LocalImageProvider - return 1; - } - } + // Run after LocalImageProvider + public int Order => 1; public List<LocalImageInfo> GetImages(BaseItem item, IDirectoryService directoryService) { diff --git a/MediaBrowser.LocalMetadata/Images/EpisodeLocalImageProvider.cs b/MediaBrowser.LocalMetadata/Images/EpisodeLocalImageProvider.cs index eaf3343e3..894f46129 100644 --- a/MediaBrowser.LocalMetadata/Images/EpisodeLocalImageProvider.cs +++ b/MediaBrowser.LocalMetadata/Images/EpisodeLocalImageProvider.cs @@ -1,11 +1,10 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.Linq; - +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; namespace MediaBrowser.LocalMetadata.Images @@ -19,15 +18,9 @@ namespace MediaBrowser.LocalMetadata.Images _fileSystem = fileSystem; } - public string Name - { - get { return "Local Images"; } - } + public string Name => "Local Images"; - public int Order - { - get { return 0; } - } + public int Order => 0; public bool Supports(BaseItem item) { diff --git a/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs b/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs index cc06e04e8..c0706ceeb 100644 --- a/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs +++ b/MediaBrowser.LocalMetadata/Images/InternalMetadataFolderImageProvider.cs @@ -1,11 +1,9 @@ -using MediaBrowser.Controller.Configuration; +using System.Collections.Generic; +using System.IO; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Providers; -using System.Collections.Generic; -using System.IO; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; namespace MediaBrowser.LocalMetadata.Images @@ -21,10 +19,7 @@ namespace MediaBrowser.LocalMetadata.Images _fileSystem = fileSystem; } - public string Name - { - get { return "Internal Images"; } - } + public string Name => "Internal Images"; public bool Supports(BaseItem item) { @@ -51,15 +46,8 @@ namespace MediaBrowser.LocalMetadata.Images return true; } - - public int Order - { - get - { - // Make sure this is last so that all other locations are scanned first - return 1000; - } - } + // Make sure this is last so that all other locations are scanned first + public int Order => 1000; public List<LocalImageInfo> GetImages(BaseItem item, IDirectoryService directoryService) { diff --git a/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs b/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs index 890ceee31..0a4928ed7 100644 --- a/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs +++ b/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs @@ -1,15 +1,14 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Entities.Movies; namespace MediaBrowser.LocalMetadata.Images { @@ -22,15 +21,9 @@ namespace MediaBrowser.LocalMetadata.Images _fileSystem = fileSystem; } - public string Name - { - get { return "Local Images"; } - } + public string Name => "Local Images"; - public int Order - { - get { return 0; } - } + public int Order => 0; public bool Supports(BaseItem item) { diff --git a/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj b/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj index b5eb9c2ee..867b82ede 100644 --- a/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj +++ b/MediaBrowser.LocalMetadata/MediaBrowser.LocalMetadata.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Controller\MediaBrowser.Controller.csproj" /> diff --git a/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs index c3960bc8b..e40a55e56 100644 --- a/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs +++ b/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.IO; @@ -10,8 +10,8 @@ using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Parsers { @@ -51,7 +51,7 @@ namespace MediaBrowser.LocalMetadata.Parsers /// <param name="item">The item.</param> /// <param name="metadataFile">The metadata file.</param> /// <param name="cancellationToken">The cancellation token.</param> - /// <exception cref="System.ArgumentNullException"></exception> + /// <exception cref="ArgumentNullException"></exception> public void Fetch(MetadataResult<T> item, string metadataFile, CancellationToken cancellationToken) { if (item == null) @@ -61,7 +61,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (string.IsNullOrEmpty(metadataFile)) { - throw new ArgumentException("The metadata file was empty or null.",nameof(metadataFile)); + throw new ArgumentException("The metadata file was empty or null.", nameof(metadataFile)); } var settings = XmlReaderSettingsFactory.Create(false); @@ -102,7 +102,7 @@ namespace MediaBrowser.LocalMetadata.Parsers { item.ResetPeople(); - using (Stream fileStream = FileSystem.OpenRead(metadataFile)) + using (var fileStream = FileSystem.OpenRead(metadataFile)) { using (var streamReader = new StreamReader(fileStream, encoding)) { @@ -151,8 +151,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - DateTime added; - if (DateTime.TryParse(val, out added)) + if (DateTime.TryParse(val, out var added)) { item.DateCreated = added.ToUniversalTime(); } @@ -185,8 +184,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrEmpty(text)) { - float value; - if (float.TryParse(text, NumberStyles.Any, _usCulture, out value)) + if (float.TryParse(text, NumberStyles.Any, _usCulture, out var value)) { item.CriticRating = value; } @@ -261,9 +259,7 @@ namespace MediaBrowser.LocalMetadata.Parsers { item.LockedFields = val.Split('|').Select(i => { - MetadataFields field; - - if (Enum.TryParse<MetadataFields>(i, true, out field)) + if (Enum.TryParse(i, true, out MetadataFields field)) { return (MetadataFields?)field; } @@ -337,8 +333,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrWhiteSpace(text)) { - int runtime; - if (int.TryParse(text.Split(' ')[0], NumberStyles.Integer, _usCulture, out runtime)) + if (int.TryParse(text.Split(' ')[0], NumberStyles.Integer, _usCulture, out var runtime)) { item.RunTimeTicks = TimeSpan.FromMinutes(runtime).Ticks; } @@ -384,7 +379,7 @@ namespace MediaBrowser.LocalMetadata.Parsers case "Director": { - foreach (var p in SplitNames(reader.ReadElementContentAsString()).Select(v => new Controller.Entities.PersonInfo { Name = v.Trim(), Type = PersonType.Director })) + foreach (var p in SplitNames(reader.ReadElementContentAsString()).Select(v => new PersonInfo { Name = v.Trim(), Type = PersonType.Director })) { if (string.IsNullOrWhiteSpace(p.Name)) { @@ -396,7 +391,7 @@ namespace MediaBrowser.LocalMetadata.Parsers } case "Writer": { - foreach (var p in SplitNames(reader.ReadElementContentAsString()).Select(v => new Controller.Entities.PersonInfo { Name = v.Trim(), Type = PersonType.Writer })) + foreach (var p in SplitNames(reader.ReadElementContentAsString()).Select(v => new PersonInfo { Name = v.Trim(), Type = PersonType.Writer })) { if (string.IsNullOrWhiteSpace(p.Name)) { @@ -421,7 +416,7 @@ namespace MediaBrowser.LocalMetadata.Parsers else { // Old-style piped string - foreach (var p in SplitNames(actors).Select(v => new Controller.Entities.PersonInfo { Name = v.Trim(), Type = PersonType.Actor })) + foreach (var p in SplitNames(actors).Select(v => new PersonInfo { Name = v.Trim(), Type = PersonType.Actor })) { if (string.IsNullOrWhiteSpace(p.Name)) { @@ -435,7 +430,7 @@ namespace MediaBrowser.LocalMetadata.Parsers case "GuestStars": { - foreach (var p in SplitNames(reader.ReadElementContentAsString()).Select(v => new Controller.Entities.PersonInfo { Name = v.Trim(), Type = PersonType.GuestStar })) + foreach (var p in SplitNames(reader.ReadElementContentAsString()).Select(v => new PersonInfo { Name = v.Trim(), Type = PersonType.GuestStar })) { if (string.IsNullOrWhiteSpace(p.Name)) { @@ -494,8 +489,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - int productionYear; - if (int.TryParse(val, out productionYear) && productionYear > 1850) + if (int.TryParse(val, out var productionYear) && productionYear > 1850) { item.ProductionYear = productionYear; } @@ -512,9 +506,8 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrWhiteSpace(rating)) { - float val; // All external meta is saving this as '.' for decimal I believe...but just to be sure - if (float.TryParse(rating.Replace(',', '.'), NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out val)) + if (float.TryParse(rating.Replace(',', '.'), NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out var val)) { item.CommunityRating = val; } @@ -530,9 +523,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrWhiteSpace(firstAired)) { - DateTime airDate; - - if (DateTime.TryParseExact(firstAired, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out airDate) && airDate.Year > 1850) + if (DateTime.TryParseExact(firstAired, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out var airDate) && airDate.Year > 1850) { item.PremiereDate = airDate.ToUniversalTime(); item.ProductionYear = airDate.Year; @@ -549,9 +540,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrWhiteSpace(firstAired)) { - DateTime airDate; - - if (DateTime.TryParseExact(firstAired, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out airDate) && airDate.Year > 1850) + if (DateTime.TryParseExact(firstAired, "yyyy-MM-dd", CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out var airDate) && airDate.Year > 1850) { item.EndDate = airDate.ToUniversalTime(); } @@ -687,8 +676,7 @@ namespace MediaBrowser.LocalMetadata.Parsers default: { string readerName = reader.Name; - string providerIdValue; - if (_validProviderIds.TryGetValue(readerName, out providerIdValue)) + if (_validProviderIds.TryGetValue(readerName, out string providerIdValue)) { var id = reader.ReadElementContentAsString(); if (!string.IsNullOrWhiteSpace(id)) @@ -1127,8 +1115,7 @@ namespace MediaBrowser.LocalMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - int intVal; - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out intVal)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var intVal)) { sortOrder = intVal; } diff --git a/MediaBrowser.LocalMetadata/Parsers/BoxSetXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/BoxSetXmlParser.cs index e5b4190a4..e595e9d06 100644 --- a/MediaBrowser.LocalMetadata/Parsers/BoxSetXmlParser.cs +++ b/MediaBrowser.LocalMetadata/Parsers/BoxSetXmlParser.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; using System.Collections.Generic; using System.Xml; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Parsers { diff --git a/MediaBrowser.LocalMetadata/Parsers/GameSystemXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/GameSystemXmlParser.cs index 0139ce917..a4997270f 100644 --- a/MediaBrowser.LocalMetadata/Parsers/GameSystemXmlParser.cs +++ b/MediaBrowser.LocalMetadata/Parsers/GameSystemXmlParser.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using System.Threading; using System.Threading.Tasks; using System.Xml; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Parsers { diff --git a/MediaBrowser.LocalMetadata/Parsers/GameXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/GameXmlParser.cs index 939e2d1df..df7c51f27 100644 --- a/MediaBrowser.LocalMetadata/Parsers/GameXmlParser.cs +++ b/MediaBrowser.LocalMetadata/Parsers/GameXmlParser.cs @@ -1,4 +1,4 @@ -using System.Globalization; +using System.Globalization; using System.Threading; using System.Threading.Tasks; using System.Xml; @@ -6,8 +6,8 @@ using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Parsers { @@ -63,9 +63,7 @@ namespace MediaBrowser.LocalMetadata.Parsers var val = reader.ReadElementContentAsString(); if (!string.IsNullOrWhiteSpace(val)) { - int num; - - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out num)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var num)) { item.PlayersSupported = num; } diff --git a/MediaBrowser.LocalMetadata/Parsers/PlaylistXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/PlaylistXmlParser.cs index dcf88e90e..ff69cb023 100644 --- a/MediaBrowser.LocalMetadata/Parsers/PlaylistXmlParser.cs +++ b/MediaBrowser.LocalMetadata/Parsers/PlaylistXmlParser.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Playlists; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; -using System; using System.Collections.Generic; -using System.Linq; using System.Xml; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Playlists; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; -using MediaBrowser.Model.Extensions; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Parsers { diff --git a/MediaBrowser.LocalMetadata/Providers/BoxSetXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/BoxSetXmlProvider.cs index 2629547f8..539f818c6 100644 --- a/MediaBrowser.LocalMetadata/Providers/BoxSetXmlProvider.cs +++ b/MediaBrowser.LocalMetadata/Providers/BoxSetXmlProvider.cs @@ -1,13 +1,11 @@ -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Providers; -using MediaBrowser.LocalMetadata.Parsers; -using Microsoft.Extensions.Logging; using System.IO; using System.Threading; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Providers; +using MediaBrowser.LocalMetadata.Parsers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Providers { diff --git a/MediaBrowser.LocalMetadata/Providers/GameSystemXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/GameSystemXmlProvider.cs index 4ca7224ca..62f31d4fa 100644 --- a/MediaBrowser.LocalMetadata/Providers/GameSystemXmlProvider.cs +++ b/MediaBrowser.LocalMetadata/Providers/GameSystemXmlProvider.cs @@ -1,13 +1,11 @@ -using System.IO; +using System.IO; using System.Threading; - -using MediaBrowser.Model.IO; using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.IO; using MediaBrowser.Controller.Providers; using MediaBrowser.LocalMetadata.Parsers; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Providers { diff --git a/MediaBrowser.LocalMetadata/Providers/GameXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/GameXmlProvider.cs index 0ba52f84d..537bd073c 100644 --- a/MediaBrowser.LocalMetadata/Providers/GameXmlProvider.cs +++ b/MediaBrowser.LocalMetadata/Providers/GameXmlProvider.cs @@ -1,13 +1,11 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.LocalMetadata.Parsers; -using Microsoft.Extensions.Logging; using System.IO; using System.Threading; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.LocalMetadata.Parsers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Providers { diff --git a/MediaBrowser.LocalMetadata/Providers/PlaylistXmlProvider.cs b/MediaBrowser.LocalMetadata/Providers/PlaylistXmlProvider.cs index ce37adda3..4180a4f15 100644 --- a/MediaBrowser.LocalMetadata/Providers/PlaylistXmlProvider.cs +++ b/MediaBrowser.LocalMetadata/Providers/PlaylistXmlProvider.cs @@ -1,13 +1,11 @@ -using MediaBrowser.Controller.Playlists; +using System.Threading; +using MediaBrowser.Controller.Playlists; using MediaBrowser.Controller.Providers; using MediaBrowser.LocalMetadata.Parsers; -using Microsoft.Extensions.Logging; -using System.IO; -using System.Threading; using MediaBrowser.LocalMetadata.Savers; -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Providers { diff --git a/MediaBrowser.LocalMetadata/Savers/BaseXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/BaseXmlSaver.cs index 9666c8266..2eac35f28 100644 --- a/MediaBrowser.LocalMetadata/Savers/BaseXmlSaver.cs +++ b/MediaBrowser.LocalMetadata/Savers/BaseXmlSaver.cs @@ -1,27 +1,21 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; -using System.Security; using System.Text; using System.Threading; using System.Xml; -using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.Playlists; -using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Savers { @@ -48,21 +42,9 @@ namespace MediaBrowser.LocalMetadata.Savers protected ILogger Logger { get; private set; } protected IXmlReaderSettingsFactory XmlReaderSettingsFactory { get; private set; } - protected ItemUpdateType MinimumUpdateType - { - get - { - return ItemUpdateType.MetadataDownload; - } - } + protected ItemUpdateType MinimumUpdateType => ItemUpdateType.MetadataDownload; - public string Name - { - get - { - return XmlProviderUtils.Name; - } - } + public string Name => XmlProviderUtils.Name; public string GetSavePath(BaseItem item) { @@ -148,7 +130,7 @@ namespace MediaBrowser.LocalMetadata.Savers CloseOutput = false }; - using (XmlWriter writer = XmlWriter.Create(stream, settings)) + using (var writer = XmlWriter.Create(stream, settings)) { var root = GetRootElementName(item); diff --git a/MediaBrowser.LocalMetadata/Savers/BoxSetXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/BoxSetXmlSaver.cs index 1995d8c38..b4d5440a5 100644 --- a/MediaBrowser.LocalMetadata/Savers/BoxSetXmlSaver.cs +++ b/MediaBrowser.LocalMetadata/Savers/BoxSetXmlSaver.cs @@ -1,17 +1,12 @@ -using MediaBrowser.Controller.Configuration; +using System.IO; +using System.Xml; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Library; -using System.Collections.Generic; -using System.IO; -using System.Text; -using System.Threading; -using System.Xml; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Savers { diff --git a/MediaBrowser.LocalMetadata/Savers/GameSystemXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/GameSystemXmlSaver.cs index da0d82490..cf123171a 100644 --- a/MediaBrowser.LocalMetadata/Savers/GameSystemXmlSaver.cs +++ b/MediaBrowser.LocalMetadata/Savers/GameSystemXmlSaver.cs @@ -1,12 +1,11 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using System.Collections.Generic; using System.IO; using System.Xml; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Savers { diff --git a/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs index 62d4993b3..3b7929618 100644 --- a/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs +++ b/MediaBrowser.LocalMetadata/Savers/GameXmlSaver.cs @@ -1,13 +1,12 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using System.Collections.Generic; using System.Globalization; using System.IO; using System.Xml; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Savers { diff --git a/MediaBrowser.LocalMetadata/Savers/PersonXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/PersonXmlSaver.cs index a84fcd57e..7dd2c589f 100644 --- a/MediaBrowser.LocalMetadata/Savers/PersonXmlSaver.cs +++ b/MediaBrowser.LocalMetadata/Savers/PersonXmlSaver.cs @@ -1,13 +1,3 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using System.Collections.Generic; -using System.IO; -using System.Xml; -using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Xml; - namespace MediaBrowser.LocalMetadata.Savers { ///// <summary> diff --git a/MediaBrowser.LocalMetadata/Savers/PlaylistXmlSaver.cs b/MediaBrowser.LocalMetadata/Savers/PlaylistXmlSaver.cs index 0c03bcacd..09bb6d8f7 100644 --- a/MediaBrowser.LocalMetadata/Savers/PlaylistXmlSaver.cs +++ b/MediaBrowser.LocalMetadata/Savers/PlaylistXmlSaver.cs @@ -1,13 +1,12 @@ -using MediaBrowser.Controller.Configuration; +using System.IO; +using System.Xml; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Playlists; -using System.Collections.Generic; -using System.IO; -using System.Xml; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.LocalMetadata.Savers { diff --git a/MediaBrowser.MediaEncoding/BdInfo/BdInfoExaminer.cs b/MediaBrowser.MediaEncoding/BdInfo/BdInfoExaminer.cs index da96f3855..ac0dd36ee 100644 --- a/MediaBrowser.MediaEncoding/BdInfo/BdInfoExaminer.cs +++ b/MediaBrowser.MediaEncoding/BdInfo/BdInfoExaminer.cs @@ -1,10 +1,10 @@ -using BDInfo; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.MediaInfo; using System; using System.Collections.Generic; using System.Linq; +using BDInfo; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Text; namespace MediaBrowser.MediaEncoding.BdInfo @@ -44,7 +44,7 @@ namespace MediaBrowser.MediaEncoding.BdInfo var outputStream = new BlurayDiscInfo { - MediaStreams = new MediaStream[] {} + MediaStreams = new MediaStream[] { } }; if (playlist == null) @@ -190,12 +190,12 @@ namespace MediaBrowser.MediaEncoding.BdInfo private void AddSubtitleStream(List<MediaStream> streams, TSGraphicsStream textStream) { streams.Add(new MediaStream - { - Language = textStream.LanguageCode, - Codec = textStream.CodecShortName, - Type = MediaStreamType.Subtitle, - Index = streams.Count - }); + { + Language = textStream.LanguageCode, + Codec = textStream.CodecShortName, + Type = MediaStreamType.Subtitle, + Index = streams.Count + }); } } } diff --git a/MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationFactory.cs b/MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationFactory.cs index 16c67655a..1af4146bc 100644 --- a/MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationFactory.cs +++ b/MediaBrowser.MediaEncoding/Configuration/EncodingConfigurationFactory.cs @@ -1,9 +1,7 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Model.Configuration; using System.Collections.Generic; using System.IO; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.IO; namespace MediaBrowser.MediaEncoding.Configuration diff --git a/MediaBrowser.MediaEncoding/Encoder/AudioEncoder.cs b/MediaBrowser.MediaEncoding/Encoder/AudioEncoder.cs index 2a874eba1..d5773fe31 100644 --- a/MediaBrowser.MediaEncoding/Encoder/AudioEncoder.cs +++ b/MediaBrowser.MediaEncoding/Encoder/AudioEncoder.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using System; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Session; +using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.IO; using Microsoft.Extensions.Logging; -using System; -using MediaBrowser.Model.Diagnostics; namespace MediaBrowser.MediaEncoding.Encoder { @@ -53,10 +53,6 @@ namespace MediaBrowser.MediaEncoding.Encoder return null; } - protected override bool IsVideoEncoder - { - get { return false; } - } - + protected override bool IsVideoEncoder => false; } } diff --git a/MediaBrowser.MediaEncoding/Encoder/BaseEncoder.cs b/MediaBrowser.MediaEncoding/Encoder/BaseEncoder.cs index 187f350b8..ed4c445cd 100644 --- a/MediaBrowser.MediaEncoding/Encoder/BaseEncoder.cs +++ b/MediaBrowser.MediaEncoding/Encoder/BaseEncoder.cs @@ -1,23 +1,20 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Globalization; +using System.IO; +using System.Text; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Session; using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.MediaInfo; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Text; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.Diagnostics; -using MediaBrowser.Model.Dlna; +using Microsoft.Extensions.Logging; namespace MediaBrowser.MediaEncoding.Encoder { diff --git a/MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs b/MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs index 578e9f264..262772959 100644 --- a/MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs +++ b/MediaBrowser.MediaEncoding/Encoder/EncoderValidator.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.Linq; diff --git a/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs b/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs index 1edc5c201..df78d117a 100644 --- a/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs +++ b/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Threading.Tasks; using MediaBrowser.Controller.Library; @@ -20,8 +20,8 @@ namespace MediaBrowser.MediaEncoding.Encoder public EncodingJobOptions Options { - get { return (EncodingJobOptions) BaseRequest; } - set { BaseRequest = value; } + get => (EncodingJobOptions)BaseRequest; + set => BaseRequest = value; } public string Id { get; set; } diff --git a/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs b/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs index 34bc8d1b9..95454c447 100644 --- a/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs +++ b/MediaBrowser.MediaEncoding/Encoder/EncodingJobFactory.cs @@ -1,18 +1,16 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Dlna; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.MediaInfo; using System; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.MediaEncoding; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Entities; +using Microsoft.Extensions.Logging; namespace MediaBrowser.MediaEncoding.Encoder { diff --git a/MediaBrowser.MediaEncoding/Encoder/EncodingUtils.cs b/MediaBrowser.MediaEncoding/Encoder/EncodingUtils.cs index dc3cb5f5e..44e62446b 100644 --- a/MediaBrowser.MediaEncoding/Encoder/EncodingUtils.cs +++ b/MediaBrowser.MediaEncoding/Encoder/EncodingUtils.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.MediaInfo; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.MediaEncoding.Encoder { diff --git a/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs b/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs index b19271d11..63642b571 100644 --- a/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs +++ b/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs @@ -1,3 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; @@ -5,24 +15,13 @@ using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Session; using MediaBrowser.MediaEncoding.Probing; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Extensions; -using MediaBrowser.Common.Net; -using MediaBrowser.Model.Diagnostics; -using MediaBrowser.Model.System; using Microsoft.Extensions.Logging; namespace MediaBrowser.MediaEncoding.Encoder @@ -416,10 +415,7 @@ namespace MediaBrowser.MediaEncoding.Encoder /// Gets the encoder path. /// </summary> /// <value>The encoder path.</value> - public string EncoderPath - { - get { return FFMpegPath; } - } + public string EncoderPath => FFMpegPath; /// <summary> /// Gets the media info. @@ -461,7 +457,7 @@ namespace MediaBrowser.MediaEncoding.Encoder /// <param name="inputFiles">The input files.</param> /// <param name="protocol">The protocol.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentException">Unrecognized InputType</exception> + /// <exception cref="ArgumentException">Unrecognized InputType</exception> public string GetInputArgument(string[] inputFiles, MediaProtocol protocol) { return EncodingUtils.GetInputArgument(inputFiles.ToList(), protocol); diff --git a/MediaBrowser.MediaEncoding/Encoder/VideoEncoder.cs b/MediaBrowser.MediaEncoding/Encoder/VideoEncoder.cs index 732b5bf84..bf23a73bd 100644 --- a/MediaBrowser.MediaEncoding/Encoder/VideoEncoder.cs +++ b/MediaBrowser.MediaEncoding/Encoder/VideoEncoder.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using System; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Session; -using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.IO; using Microsoft.Extensions.Logging; -using System; -using System.IO; -using System.Threading.Tasks; -using MediaBrowser.Model.Diagnostics; namespace MediaBrowser.MediaEncoding.Encoder { @@ -57,10 +54,6 @@ namespace MediaBrowser.MediaEncoding.Encoder return null; } - protected override bool IsVideoEncoder - { - get { return true; } - } - + protected override bool IsVideoEncoder => true; } } diff --git a/MediaBrowser.MediaEncoding/MediaBrowser.MediaEncoding.csproj b/MediaBrowser.MediaEncoding/MediaBrowser.MediaEncoding.csproj index d93394957..c5ed65734 100644 --- a/MediaBrowser.MediaEncoding/MediaBrowser.MediaEncoding.csproj +++ b/MediaBrowser.MediaEncoding/MediaBrowser.MediaEncoding.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>netstandard2.0</TargetFramework> diff --git a/MediaBrowser.MediaEncoding/MediaBrowser.MediaEncoding.nuget.targets b/MediaBrowser.MediaEncoding/MediaBrowser.MediaEncoding.nuget.targets index e69ce0e64..f793e09bc 100644 --- a/MediaBrowser.MediaEncoding/MediaBrowser.MediaEncoding.nuget.targets +++ b/MediaBrowser.MediaEncoding/MediaBrowser.MediaEncoding.nuget.targets @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8" standalone="no"?> +<?xml version="1.0" encoding="utf-8" standalone="no"?> <Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <Target Name="EmitMSBuildWarning" BeforeTargets="Build"> <Warning Text="Packages containing MSBuild targets and props files cannot be fully installed in projects targeting multiple frameworks. The MSBuild targets and props files have been ignored." /> diff --git a/MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs b/MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs index 12d906bb2..e4eabaf38 100644 --- a/MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs +++ b/MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; namespace MediaBrowser.MediaEncoding.Probing @@ -52,9 +52,7 @@ namespace MediaBrowser.MediaEncoding.Probing return null; } - string val; - - tags.TryGetValue(key, out val); + tags.TryGetValue(key, out var val); return val; } @@ -70,9 +68,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (!string.IsNullOrEmpty(val)) { - int i; - - if (int.TryParse(val, out i)) + if (int.TryParse(val, out var i)) { return i; } @@ -93,9 +89,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (!string.IsNullOrEmpty(val)) { - DateTime i; - - if (DateTime.TryParse(val, out i)) + if (DateTime.TryParse(val, out var i)) { return i.ToUniversalTime(); } diff --git a/MediaBrowser.MediaEncoding/Probing/InternalMediaInfoResult.cs b/MediaBrowser.MediaEncoding/Probing/InternalMediaInfoResult.cs index 350a2e3e5..cc9d27608 100644 --- a/MediaBrowser.MediaEncoding/Probing/InternalMediaInfoResult.cs +++ b/MediaBrowser.MediaEncoding/Probing/InternalMediaInfoResult.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace MediaBrowser.MediaEncoding.Probing { diff --git a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs index 2d3352f64..5099ccb2a 100644 --- a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs +++ b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.IO; @@ -52,8 +52,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (!string.IsNullOrEmpty(data.format.bit_rate)) { - int value; - if (int.TryParse(data.format.bit_rate, NumberStyles.Any, _usCulture, out value)) + if (int.TryParse(data.format.bit_rate, NumberStyles.Any, _usCulture, out var value)) { info.Bitrate = value; } @@ -300,7 +299,7 @@ namespace MediaBrowser.MediaEncoding.Probing private void ReadFromDictNode(XmlReader reader, MediaInfo info) { string currentKey = null; - List<NameValuePair> pairs = new List<NameValuePair>(); + var pairs = new List<NameValuePair>(); reader.MoveToContent(); reader.Read(); @@ -360,7 +359,7 @@ namespace MediaBrowser.MediaEncoding.Probing private List<NameValuePair> ReadValueArray(XmlReader reader) { - List<NameValuePair> pairs = new List<NameValuePair>(); + var pairs = new List<NameValuePair>(); reader.MoveToContent(); reader.Read(); @@ -579,8 +578,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (!string.IsNullOrEmpty(streamInfo.sample_rate)) { - int value; - if (int.TryParse(streamInfo.sample_rate, NumberStyles.Any, _usCulture, out value)) + if (int.TryParse(streamInfo.sample_rate, NumberStyles.Any, _usCulture, out var value)) { stream.SampleRate = value; } @@ -669,8 +667,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (!string.IsNullOrEmpty(streamInfo.bit_rate)) { - int value; - if (int.TryParse(streamInfo.bit_rate, NumberStyles.Any, _usCulture, out value)) + if (int.TryParse(streamInfo.bit_rate, NumberStyles.Any, _usCulture, out var value)) { bitrate = value; } @@ -679,8 +676,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (bitrate == 0 && formatInfo != null && !string.IsNullOrEmpty(formatInfo.bit_rate) && stream.Type == MediaStreamType.Video) { // If the stream info doesn't have a bitrate get the value from the media format info - int value; - if (int.TryParse(formatInfo.bit_rate, NumberStyles.Any, _usCulture, out value)) + if (int.TryParse(formatInfo.bit_rate, NumberStyles.Any, _usCulture, out var value)) { bitrate = value; } @@ -732,9 +728,7 @@ namespace MediaBrowser.MediaEncoding.Probing return null; } - string val; - - tags.TryGetValue(key, out val); + tags.TryGetValue(key, out var val); return val; } @@ -752,13 +746,10 @@ namespace MediaBrowser.MediaEncoding.Probing { var original = info.display_aspect_ratio; - int height; - int width; - var parts = (original ?? string.Empty).Split(':'); if (!(parts.Length == 2 && - int.TryParse(parts[0], NumberStyles.Any, _usCulture, out width) && - int.TryParse(parts[1], NumberStyles.Any, _usCulture, out height) && + int.TryParse(parts[0], NumberStyles.Any, _usCulture, out var width) && + int.TryParse(parts[1], NumberStyles.Any, _usCulture, out var height) && width > 0 && height > 0)) { @@ -881,7 +872,7 @@ namespace MediaBrowser.MediaEncoding.Probing } } - private void SetSize(InternalMediaInfoResult data, Model.MediaInfo.MediaInfo info) + private void SetSize(InternalMediaInfoResult data, MediaInfo info) { if (data.format != null) { @@ -901,7 +892,7 @@ namespace MediaBrowser.MediaEncoding.Probing var composer = FFProbeHelpers.GetDictionaryValue(tags, "composer"); if (!string.IsNullOrWhiteSpace(composer)) { - List<BaseItemPerson> peoples = new List<BaseItemPerson>(); + var peoples = new List<BaseItemPerson>(); foreach (var person in Split(composer, false)) { peoples.Add(new BaseItemPerson { Name = person, Type = PersonType.Composer }); @@ -932,7 +923,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (!string.IsNullOrWhiteSpace(writer)) { - List<BaseItemPerson> peoples = new List<BaseItemPerson>(); + var peoples = new List<BaseItemPerson>(); foreach (var person in Split(writer, false)) { peoples.Add(new BaseItemPerson { Name = person, Type = PersonType.Writer }); @@ -955,7 +946,7 @@ namespace MediaBrowser.MediaEncoding.Probing var artist = FFProbeHelpers.GetDictionaryValue(tags, "artist"); if (string.IsNullOrWhiteSpace(artist)) { - audio.Artists = new string[] {}; + audio.Artists = new string[] { }; } else { @@ -977,7 +968,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (string.IsNullOrWhiteSpace(albumArtist)) { - audio.AlbumArtists = new string[] {}; + audio.AlbumArtists = new string[] { }; } else { @@ -1125,7 +1116,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (!string.IsNullOrEmpty(val)) { var studios = Split(val, true); - List<string> studioList = new List<string>(); + var studioList = new List<string>(); foreach (var studio in studios) { @@ -1160,7 +1151,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (!string.IsNullOrEmpty(val)) { - List<string> genres = new List<string>(info.Genres); + var genres = new List<string>(info.Genres); foreach (var genre in Split(val, true)) { genres.Add(genre); @@ -1187,9 +1178,7 @@ namespace MediaBrowser.MediaEncoding.Probing { disc = disc.Split('/')[0]; - int num; - - if (int.TryParse(disc, out num)) + if (int.TryParse(disc, out var num)) { return num; } @@ -1204,8 +1193,7 @@ namespace MediaBrowser.MediaEncoding.Probing if (chapter.tags != null) { - string name; - if (chapter.tags.TryGetValue("title", out name)) + if (chapter.tags.TryGetValue("title", out string name)) { info.Name = name; } @@ -1213,9 +1201,8 @@ namespace MediaBrowser.MediaEncoding.Probing // Limit accuracy to milliseconds to match xml saving var secondsString = chapter.start_time; - double seconds; - if (double.TryParse(secondsString, NumberStyles.Any, CultureInfo.InvariantCulture, out seconds)) + if (double.TryParse(secondsString, NumberStyles.Any, CultureInfo.InvariantCulture, out var seconds)) { var ms = Math.Round(TimeSpan.FromSeconds(seconds).TotalMilliseconds); info.StartPositionTicks = TimeSpan.FromMilliseconds(ms).Ticks; @@ -1269,9 +1256,7 @@ namespace MediaBrowser.MediaEncoding.Probing var year = FFProbeHelpers.GetDictionaryValue(data.format.tags, "WM/OriginalReleaseTime"); if (!string.IsNullOrWhiteSpace(year)) { - int val; - - if (int.TryParse(year, NumberStyles.Integer, _usCulture, out val)) + if (int.TryParse(year, NumberStyles.Integer, _usCulture, out var val)) { video.ProductionYear = val; } @@ -1280,11 +1265,9 @@ namespace MediaBrowser.MediaEncoding.Probing var premiereDateString = FFProbeHelpers.GetDictionaryValue(data.format.tags, "WM/MediaOriginalBroadcastDateTime"); if (!string.IsNullOrWhiteSpace(premiereDateString)) { - DateTime val; - // Credit to MCEBuddy: https://mcebuddy2x.codeplex.com/ // DateTime is reported along with timezone info (typically Z i.e. UTC hence assume None) - if (DateTime.TryParse(year, null, DateTimeStyles.None, out val)) + if (DateTime.TryParse(year, null, DateTimeStyles.None, out var val)) { video.PremiereDate = val.ToUniversalTime(); } diff --git a/MediaBrowser.MediaEncoding/Subtitles/AssParser.cs b/MediaBrowser.MediaEncoding/Subtitles/AssParser.cs index 73df2b1e0..605504418 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/AssParser.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/AssParser.cs @@ -1,4 +1,3 @@ -using MediaBrowser.Model.Extensions; using System; using System.Collections.Generic; using System.Globalization; @@ -6,6 +5,7 @@ using System.IO; using System.Linq; using System.Text.RegularExpressions; using System.Threading; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.MediaEncoding.Subtitles @@ -17,13 +17,13 @@ namespace MediaBrowser.MediaEncoding.Subtitles public SubtitleTrackInfo Parse(Stream stream, CancellationToken cancellationToken) { var trackInfo = new SubtitleTrackInfo(); - List<SubtitleTrackEvent> trackEvents = new List<SubtitleTrackEvent>(); + var trackEvents = new List<SubtitleTrackEvent>(); var eventIndex = 1; using (var reader = new StreamReader(stream)) { string line; while (reader.ReadLine() != "[Events]") - {} + { } var headers = ParseFieldHeaders(reader.ReadLine()); while ((line = reader.ReadLine()) != null) @@ -34,9 +34,9 @@ namespace MediaBrowser.MediaEncoding.Subtitles { continue; } - if(line.StartsWith("[")) + if (line.StartsWith("[")) break; - if(string.IsNullOrEmpty(line)) + if (string.IsNullOrEmpty(line)) continue; var subEvent = new SubtitleTrackEvent { Id = eventIndex.ToString(_usCulture) }; eventIndex++; @@ -61,13 +61,13 @@ namespace MediaBrowser.MediaEncoding.Subtitles long GetTicks(string time) { - TimeSpan span; - return TimeSpan.TryParseExact(time, @"h\:mm\:ss\.ff", _usCulture, out span) - ? span.Ticks: 0; + return TimeSpan.TryParseExact(time, @"h\:mm\:ss\.ff", _usCulture, out var span) + ? span.Ticks : 0; } - private Dictionary<string,int> ParseFieldHeaders(string line) { - var fields = line.Substring(8).Split(',').Select(x=>x.Trim()).ToList(); + private Dictionary<string, int> ParseFieldHeaders(string line) + { + var fields = line.Substring(8).Split(',').Select(x => x.Trim()).ToList(); var result = new Dictionary<string, int> { {"Start", fields.IndexOf("Start")}, diff --git a/MediaBrowser.MediaEncoding/Subtitles/ConfigurationExtension.cs b/MediaBrowser.MediaEncoding/Subtitles/ConfigurationExtension.cs index 973c653a4..92544f4f6 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/ConfigurationExtension.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/ConfigurationExtension.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using MediaBrowser.Common.Configuration; using MediaBrowser.Model.Providers; diff --git a/MediaBrowser.MediaEncoding/Subtitles/ISubtitleParser.cs b/MediaBrowser.MediaEncoding/Subtitles/ISubtitleParser.cs index 75de81f46..f0d107196 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/ISubtitleParser.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/ISubtitleParser.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; using System.Threading; using MediaBrowser.Model.MediaInfo; diff --git a/MediaBrowser.MediaEncoding/Subtitles/ISubtitleWriter.cs b/MediaBrowser.MediaEncoding/Subtitles/ISubtitleWriter.cs index e28da9185..3401c2d67 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/ISubtitleWriter.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/ISubtitleWriter.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; using System.Threading; using MediaBrowser.Model.MediaInfo; diff --git a/MediaBrowser.MediaEncoding/Subtitles/JsonWriter.cs b/MediaBrowser.MediaEncoding/Subtitles/JsonWriter.cs index 474f712f9..8995fcfe1 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/JsonWriter.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/JsonWriter.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Serialization; using System.IO; using System.Text; using System.Threading; +using MediaBrowser.Model.MediaInfo; +using MediaBrowser.Model.Serialization; namespace MediaBrowser.MediaEncoding.Subtitles { diff --git a/MediaBrowser.MediaEncoding/Subtitles/OpenSubtitleDownloader.cs b/MediaBrowser.MediaEncoding/Subtitles/OpenSubtitleDownloader.cs index 1c1906de7..a1d925881 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/OpenSubtitleDownloader.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/OpenSubtitleDownloader.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.IO; @@ -83,10 +83,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles return _encryption.DecryptString(password.Substring(2)); } - public string Name - { - get { return "Open Subtitles"; } - } + public string Name => "Open Subtitles"; private SubtitleOptions GetOptions() { diff --git a/MediaBrowser.MediaEncoding/Subtitles/ParserValues.cs b/MediaBrowser.MediaEncoding/Subtitles/ParserValues.cs index b8c2fef1e..bf8808eb8 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/ParserValues.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/ParserValues.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.MediaEncoding.Subtitles +namespace MediaBrowser.MediaEncoding.Subtitles { public class ParserValues { diff --git a/MediaBrowser.MediaEncoding/Subtitles/SrtParser.cs b/MediaBrowser.MediaEncoding/Subtitles/SrtParser.cs index e9f9c6f58..0606dbdb2 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/SrtParser.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/SrtParser.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Model.Extensions; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Text.RegularExpressions; using System.Threading; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.MediaInfo; +using Microsoft.Extensions.Logging; namespace MediaBrowser.MediaEncoding.Subtitles { @@ -24,8 +24,8 @@ namespace MediaBrowser.MediaEncoding.Subtitles public SubtitleTrackInfo Parse(Stream stream, CancellationToken cancellationToken) { var trackInfo = new SubtitleTrackInfo(); - List<SubtitleTrackEvent> trackEvents = new List<SubtitleTrackEvent>(); - using ( var reader = new StreamReader(stream)) + var trackEvents = new List<SubtitleTrackEvent>(); + using (var reader = new StreamReader(stream)) { string line; while ((line = reader.ReadLine()) != null) @@ -36,7 +36,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles { continue; } - var subEvent = new SubtitleTrackEvent {Id = line}; + var subEvent = new SubtitleTrackEvent { Id = line }; line = reader.ReadLine(); if (string.IsNullOrWhiteSpace(line)) @@ -81,9 +81,9 @@ namespace MediaBrowser.MediaEncoding.Subtitles return trackInfo; } - long GetTicks(string time) { - TimeSpan span; - return TimeSpan.TryParseExact(time, @"hh\:mm\:ss\.fff", _usCulture, out span) + long GetTicks(string time) + { + return TimeSpan.TryParseExact(time, @"hh\:mm\:ss\.fff", _usCulture, out var span) ? span.Ticks : (TimeSpan.TryParseExact(time, @"hh\:mm\:ss\,fff", _usCulture, out span) ? span.Ticks : 0); diff --git a/MediaBrowser.MediaEncoding/Subtitles/SrtWriter.cs b/MediaBrowser.MediaEncoding/Subtitles/SrtWriter.cs index c05929fde..6f96a641e 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/SrtWriter.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/SrtWriter.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Globalization; using System.IO; using System.Text; diff --git a/MediaBrowser.MediaEncoding/Subtitles/SsaParser.cs b/MediaBrowser.MediaEncoding/Subtitles/SsaParser.cs index 022fca1c8..2c18a02ef 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/SsaParser.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/SsaParser.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Model.Extensions; using System; +using System.Collections.Generic; using System.IO; using System.Text; using System.Threading; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.MediaInfo; -using System.Collections.Generic; namespace MediaBrowser.MediaEncoding.Subtitles { @@ -16,7 +16,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles public SubtitleTrackInfo Parse(Stream stream, CancellationToken cancellationToken) { var trackInfo = new SubtitleTrackInfo(); - List<SubtitleTrackEvent> trackEvents = new List<SubtitleTrackEvent>(); + var trackEvents = new List<SubtitleTrackEvent>(); using (var reader = new StreamReader(stream)) { @@ -132,7 +132,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles } //if (header.Length > 0) - //subtitle.Header = header.ToString(); + //subtitle.Header = header.ToString(); //subtitle.Renumber(1); } @@ -288,8 +288,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles private static bool IsInteger(string s) { - int i; - if (int.TryParse(s, out i)) + if (int.TryParse(s, out var i)) return true; return false; } diff --git a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs index 202623c8b..4f424d39b 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Concurrent; using System.Globalization; using System.IO; @@ -12,10 +12,10 @@ using MediaBrowser.Common.Net; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Model.IO; using MediaBrowser.Model.Diagnostics; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Text; @@ -60,13 +60,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles _textEncoding = textEncoding; } - private string SubtitleCachePath - { - get - { - return Path.Combine(_appPaths.DataPath, "subtitles"); - } - } + private string SubtitleCachePath => Path.Combine(_appPaths.DataPath, "subtitles"); private Stream ConvertSubtitles(Stream stream, string inputFormat, @@ -414,7 +408,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles /// <param name="outputPath">The output path.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// inputPath /// or /// outputPath @@ -531,7 +525,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles /// <param name="outputPath">The output path.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentException">Must use inputPath list overload</exception> + /// <exception cref="ArgumentException">Must use inputPath list overload</exception> private async Task ExtractTextSubtitle( string[] inputFiles, MediaProtocol protocol, @@ -740,7 +734,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles { if (protocol == MediaProtocol.Http) { - HttpRequestOptions opts = new HttpRequestOptions() + var opts = new HttpRequestOptions() { Url = path, CancellationToken = cancellationToken diff --git a/MediaBrowser.MediaEncoding/Subtitles/TtmlWriter.cs b/MediaBrowser.MediaEncoding/Subtitles/TtmlWriter.cs index f0cf3b31a..cdaf94964 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/TtmlWriter.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/TtmlWriter.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Text; using System.Text.RegularExpressions; diff --git a/MediaBrowser.MediaEncoding/Subtitles/VttWriter.cs b/MediaBrowser.MediaEncoding/Subtitles/VttWriter.cs index 092add992..2e328ba63 100644 --- a/MediaBrowser.MediaEncoding/Subtitles/VttWriter.cs +++ b/MediaBrowser.MediaEncoding/Subtitles/VttWriter.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Text; using System.Text.RegularExpressions; @@ -19,8 +19,8 @@ namespace MediaBrowser.MediaEncoding.Subtitles { cancellationToken.ThrowIfCancellationRequested(); - TimeSpan startTime = TimeSpan.FromTicks(trackEvent.StartPositionTicks); - TimeSpan endTime = TimeSpan.FromTicks(trackEvent.EndPositionTicks); + var startTime = TimeSpan.FromTicks(trackEvent.StartPositionTicks); + var endTime = TimeSpan.FromTicks(trackEvent.EndPositionTicks); // make sure the start and end times are different and seqential if (endTime.TotalMilliseconds <= startTime.TotalMilliseconds) diff --git a/MediaBrowser.MediaEncoding/packages.config b/MediaBrowser.MediaEncoding/packages.config index 6b8deb9c9..bbeaf5f00 100644 --- a/MediaBrowser.MediaEncoding/packages.config +++ b/MediaBrowser.MediaEncoding/packages.config @@ -1,3 +1,3 @@ -<?xml version="1.0" encoding="utf-8"?> +<?xml version="1.0" encoding="utf-8"?> <packages> </packages>
\ No newline at end of file diff --git a/MediaBrowser.Model/Activity/ActivityLogEntry.cs b/MediaBrowser.Model/Activity/ActivityLogEntry.cs index a61ebc268..186fd89ee 100644 --- a/MediaBrowser.Model/Activity/ActivityLogEntry.cs +++ b/MediaBrowser.Model/Activity/ActivityLogEntry.cs @@ -1,5 +1,5 @@ -using Microsoft.Extensions.Logging; using System; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Model.Activity { diff --git a/MediaBrowser.Model/Activity/IActivityManager.cs b/MediaBrowser.Model/Activity/IActivityManager.cs index 7fff26987..897d93d79 100644 --- a/MediaBrowser.Model/Activity/IActivityManager.cs +++ b/MediaBrowser.Model/Activity/IActivityManager.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Events; using MediaBrowser.Model.Querying; diff --git a/MediaBrowser.Model/Activity/IActivityRepository.cs b/MediaBrowser.Model/Activity/IActivityRepository.cs index 5a2c52400..f0e3b902c 100644 --- a/MediaBrowser.Model/Activity/IActivityRepository.cs +++ b/MediaBrowser.Model/Activity/IActivityRepository.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Querying; namespace MediaBrowser.Model.Activity diff --git a/MediaBrowser.Model/ApiClient/ServerDiscoveryInfo.cs b/MediaBrowser.Model/ApiClient/ServerDiscoveryInfo.cs index e2f780605..d1f3577f7 100644 --- a/MediaBrowser.Model/ApiClient/ServerDiscoveryInfo.cs +++ b/MediaBrowser.Model/ApiClient/ServerDiscoveryInfo.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.ApiClient { public class ServerDiscoveryInfo diff --git a/MediaBrowser.Model/Branding/BrandingOptions.cs b/MediaBrowser.Model/Branding/BrandingOptions.cs index 3b207d345..f83558df5 100644 --- a/MediaBrowser.Model/Branding/BrandingOptions.cs +++ b/MediaBrowser.Model/Branding/BrandingOptions.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Branding { public class BrandingOptions diff --git a/MediaBrowser.Model/Channels/ChannelFeatures.cs b/MediaBrowser.Model/Channels/ChannelFeatures.cs index 259370b7e..ee1d11bc0 100644 --- a/MediaBrowser.Model/Channels/ChannelFeatures.cs +++ b/MediaBrowser.Model/Channels/ChannelFeatures.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Channels { diff --git a/MediaBrowser.Model/Channels/ChannelFolderType.cs b/MediaBrowser.Model/Channels/ChannelFolderType.cs index 7c97afd02..6039eb929 100644 --- a/MediaBrowser.Model/Channels/ChannelFolderType.cs +++ b/MediaBrowser.Model/Channels/ChannelFolderType.cs @@ -14,4 +14,4 @@ namespace MediaBrowser.Model.Channels Season = 5 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Channels/ChannelInfo.cs b/MediaBrowser.Model/Channels/ChannelInfo.cs index 36e3c17d9..9b2d31bf3 100644 --- a/MediaBrowser.Model/Channels/ChannelInfo.cs +++ b/MediaBrowser.Model/Channels/ChannelInfo.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Channels { public class ChannelInfo diff --git a/MediaBrowser.Model/Channels/ChannelItemSortField.cs b/MediaBrowser.Model/Channels/ChannelItemSortField.cs index 6b5015b77..af75e3edd 100644 --- a/MediaBrowser.Model/Channels/ChannelItemSortField.cs +++ b/MediaBrowser.Model/Channels/ChannelItemSortField.cs @@ -10,4 +10,4 @@ namespace MediaBrowser.Model.Channels PlayCount = 5, CommunityPlayCount = 6 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Channels/ChannelMediaContentType.cs b/MediaBrowser.Model/Channels/ChannelMediaContentType.cs index efb5021c0..010ff8048 100644 --- a/MediaBrowser.Model/Channels/ChannelMediaContentType.cs +++ b/MediaBrowser.Model/Channels/ChannelMediaContentType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Channels +namespace MediaBrowser.Model.Channels { public enum ChannelMediaContentType { @@ -20,4 +20,4 @@ GameExtra = 8 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Channels/ChannelMediaType.cs b/MediaBrowser.Model/Channels/ChannelMediaType.cs index 102cb6644..a3fa5cdf9 100644 --- a/MediaBrowser.Model/Channels/ChannelMediaType.cs +++ b/MediaBrowser.Model/Channels/ChannelMediaType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Channels +namespace MediaBrowser.Model.Channels { public enum ChannelMediaType { @@ -8,4 +8,4 @@ Photo = 2 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Channels/ChannelQuery.cs b/MediaBrowser.Model/Channels/ChannelQuery.cs index 9651cb6c2..32b368922 100644 --- a/MediaBrowser.Model/Channels/ChannelQuery.cs +++ b/MediaBrowser.Model/Channels/ChannelQuery.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Model.Channels { diff --git a/MediaBrowser.Model/Collections/CollectionCreationResult.cs b/MediaBrowser.Model/Collections/CollectionCreationResult.cs index 689625ac3..2691f7970 100644 --- a/MediaBrowser.Model/Collections/CollectionCreationResult.cs +++ b/MediaBrowser.Model/Collections/CollectionCreationResult.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Collections { diff --git a/MediaBrowser.Model/Configuration/AccessSchedule.cs b/MediaBrowser.Model/Configuration/AccessSchedule.cs index 3a66cf5bb..d34e27383 100644 --- a/MediaBrowser.Model/Configuration/AccessSchedule.cs +++ b/MediaBrowser.Model/Configuration/AccessSchedule.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Configuration { public class AccessSchedule diff --git a/MediaBrowser.Model/Configuration/BaseApplicationConfiguration.cs b/MediaBrowser.Model/Configuration/BaseApplicationConfiguration.cs index 76b5924e9..ce4ef1cfe 100644 --- a/MediaBrowser.Model/Configuration/BaseApplicationConfiguration.cs +++ b/MediaBrowser.Model/Configuration/BaseApplicationConfiguration.cs @@ -1,5 +1,3 @@ -using MediaBrowser.Model.Updates; - namespace MediaBrowser.Model.Configuration { /// <summary> diff --git a/MediaBrowser.Model/Configuration/DynamicDayOfWeek.cs b/MediaBrowser.Model/Configuration/DynamicDayOfWeek.cs index 1c7de11fd..73dda5a77 100644 --- a/MediaBrowser.Model/Configuration/DynamicDayOfWeek.cs +++ b/MediaBrowser.Model/Configuration/DynamicDayOfWeek.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Configuration { public enum DynamicDayOfWeek diff --git a/MediaBrowser.Model/Configuration/EncodingOptions.cs b/MediaBrowser.Model/Configuration/EncodingOptions.cs index fbc5e1b37..8584bd3dd 100644 --- a/MediaBrowser.Model/Configuration/EncodingOptions.cs +++ b/MediaBrowser.Model/Configuration/EncodingOptions.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Configuration { public class EncodingOptions diff --git a/MediaBrowser.Model/Configuration/FanartOptions.cs b/MediaBrowser.Model/Configuration/FanartOptions.cs index 6924b25d7..9c8be39be 100644 --- a/MediaBrowser.Model/Configuration/FanartOptions.cs +++ b/MediaBrowser.Model/Configuration/FanartOptions.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Configuration { public class FanartOptions diff --git a/MediaBrowser.Model/Configuration/ImageOption.cs b/MediaBrowser.Model/Configuration/ImageOption.cs index ade0af83e..3b985bb1b 100644 --- a/MediaBrowser.Model/Configuration/ImageOption.cs +++ b/MediaBrowser.Model/Configuration/ImageOption.cs @@ -26,4 +26,4 @@ namespace MediaBrowser.Model.Configuration Limit = 1; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Configuration/ImageSavingConvention.cs b/MediaBrowser.Model/Configuration/ImageSavingConvention.cs index 611678e67..7206fa5fc 100644 --- a/MediaBrowser.Model/Configuration/ImageSavingConvention.cs +++ b/MediaBrowser.Model/Configuration/ImageSavingConvention.cs @@ -1,8 +1,8 @@ -namespace MediaBrowser.Model.Configuration +namespace MediaBrowser.Model.Configuration { public enum ImageSavingConvention { Legacy, Compatible } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Configuration/LibraryOptions.cs b/MediaBrowser.Model/Configuration/LibraryOptions.cs index cc70cc888..ba33bee87 100644 --- a/MediaBrowser.Model/Configuration/LibraryOptions.cs +++ b/MediaBrowser.Model/Configuration/LibraryOptions.cs @@ -1,6 +1,6 @@ -using System; -using MediaBrowser.Model.Entities; +using System; using System.Collections.Generic; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Configuration { @@ -100,7 +100,7 @@ namespace MediaBrowser.Model.Configuration public ImageOption GetImageOptions(ImageType type) { - foreach (ImageOption i in ImageOptions) + foreach (var i in ImageOptions) { if (i.Type == type) { @@ -108,10 +108,9 @@ namespace MediaBrowser.Model.Configuration } } - ImageOption[] options; - if (DefaultImageOptions.TryGetValue(Type, out options)) + if (DefaultImageOptions.TryGetValue(Type, out ImageOption[] options)) { - foreach (ImageOption i in options) + foreach (var i in options) { if (i.Type == type) { diff --git a/MediaBrowser.Model/Configuration/MetadataConfiguration.cs b/MediaBrowser.Model/Configuration/MetadataConfiguration.cs index d1658e5d6..87e02d054 100644 --- a/MediaBrowser.Model/Configuration/MetadataConfiguration.cs +++ b/MediaBrowser.Model/Configuration/MetadataConfiguration.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Configuration { public class MetadataConfiguration diff --git a/MediaBrowser.Model/Configuration/MetadataOptions.cs b/MediaBrowser.Model/Configuration/MetadataOptions.cs index dde2bd090..c095b8cdd 100644 --- a/MediaBrowser.Model/Configuration/MetadataOptions.cs +++ b/MediaBrowser.Model/Configuration/MetadataOptions.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Configuration { diff --git a/MediaBrowser.Model/Configuration/MetadataPlugin.cs b/MediaBrowser.Model/Configuration/MetadataPlugin.cs index f3e0ce106..d6f863e55 100644 --- a/MediaBrowser.Model/Configuration/MetadataPlugin.cs +++ b/MediaBrowser.Model/Configuration/MetadataPlugin.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Configuration +namespace MediaBrowser.Model.Configuration { public class MetadataPlugin { diff --git a/MediaBrowser.Model/Configuration/MetadataPluginType.cs b/MediaBrowser.Model/Configuration/MetadataPluginType.cs index 5ba0b395e..985107ac9 100644 --- a/MediaBrowser.Model/Configuration/MetadataPluginType.cs +++ b/MediaBrowser.Model/Configuration/MetadataPluginType.cs @@ -13,4 +13,4 @@ namespace MediaBrowser.Model.Configuration MetadataSaver, SubtitleFetcher } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Configuration/ServerConfiguration.cs b/MediaBrowser.Model/Configuration/ServerConfiguration.cs index 565d5f74b..ed5800329 100644 --- a/MediaBrowser.Model/Configuration/ServerConfiguration.cs +++ b/MediaBrowser.Model/Configuration/ServerConfiguration.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; using System; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.Configuration { diff --git a/MediaBrowser.Model/Configuration/SubtitlePlaybackMode.cs b/MediaBrowser.Model/Configuration/SubtitlePlaybackMode.cs index fbee912d9..fc429934f 100644 --- a/MediaBrowser.Model/Configuration/SubtitlePlaybackMode.cs +++ b/MediaBrowser.Model/Configuration/SubtitlePlaybackMode.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Configuration +namespace MediaBrowser.Model.Configuration { public enum SubtitlePlaybackMode { @@ -8,4 +8,4 @@ None = 3, Smart = 4 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Configuration/UnratedItem.cs b/MediaBrowser.Model/Configuration/UnratedItem.cs index 1082d684b..2d0bce47f 100644 --- a/MediaBrowser.Model/Configuration/UnratedItem.cs +++ b/MediaBrowser.Model/Configuration/UnratedItem.cs @@ -13,4 +13,4 @@ namespace MediaBrowser.Model.Configuration ChannelContent, Other } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Configuration/UserConfiguration.cs b/MediaBrowser.Model/Configuration/UserConfiguration.cs index 39b956138..689459eba 100644 --- a/MediaBrowser.Model/Configuration/UserConfiguration.cs +++ b/MediaBrowser.Model/Configuration/UserConfiguration.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Configuration { diff --git a/MediaBrowser.Model/Configuration/XbmcMetadataOptions.cs b/MediaBrowser.Model/Configuration/XbmcMetadataOptions.cs index de8a59a3d..19e6be166 100644 --- a/MediaBrowser.Model/Configuration/XbmcMetadataOptions.cs +++ b/MediaBrowser.Model/Configuration/XbmcMetadataOptions.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Configuration { public class XbmcMetadataOptions diff --git a/MediaBrowser.Model/Connect/ConnectAuthorization.cs b/MediaBrowser.Model/Connect/ConnectAuthorization.cs index a949612ab..cdb3172d9 100644 --- a/MediaBrowser.Model/Connect/ConnectAuthorization.cs +++ b/MediaBrowser.Model/Connect/ConnectAuthorization.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Connect { diff --git a/MediaBrowser.Model/Connect/ConnectUser.cs b/MediaBrowser.Model/Connect/ConnectUser.cs index da290da12..4c536c6b0 100644 --- a/MediaBrowser.Model/Connect/ConnectUser.cs +++ b/MediaBrowser.Model/Connect/ConnectUser.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Connect { public class ConnectUser diff --git a/MediaBrowser.Model/Connect/ConnectUserQuery.cs b/MediaBrowser.Model/Connect/ConnectUserQuery.cs index a7dc649a8..4f04934d6 100644 --- a/MediaBrowser.Model/Connect/ConnectUserQuery.cs +++ b/MediaBrowser.Model/Connect/ConnectUserQuery.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Connect { public class ConnectUserQuery diff --git a/MediaBrowser.Model/Connect/UserLinkType.cs b/MediaBrowser.Model/Connect/UserLinkType.cs index 4ac5bfde1..19b4b67e6 100644 --- a/MediaBrowser.Model/Connect/UserLinkType.cs +++ b/MediaBrowser.Model/Connect/UserLinkType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Connect { public enum UserLinkType diff --git a/MediaBrowser.Model/Cryptography/ICryptoProvider.cs b/MediaBrowser.Model/Cryptography/ICryptoProvider.cs index 7a82dee52..b027d2ad0 100644 --- a/MediaBrowser.Model/Cryptography/ICryptoProvider.cs +++ b/MediaBrowser.Model/Cryptography/ICryptoProvider.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; namespace MediaBrowser.Model.Cryptography @@ -10,4 +10,4 @@ namespace MediaBrowser.Model.Cryptography byte[] ComputeMD5(byte[] bytes); byte[] ComputeSHA1(byte[] bytes); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Devices/ContentUploadHistory.cs b/MediaBrowser.Model/Devices/ContentUploadHistory.cs index 2b344df24..5dd9bf2d0 100644 --- a/MediaBrowser.Model/Devices/ContentUploadHistory.cs +++ b/MediaBrowser.Model/Devices/ContentUploadHistory.cs @@ -1,5 +1,3 @@ -using System.Collections.Generic; - namespace MediaBrowser.Model.Devices { public class ContentUploadHistory diff --git a/MediaBrowser.Model/Devices/DeviceInfo.cs b/MediaBrowser.Model/Devices/DeviceInfo.cs index a588ce029..214c49e5e 100644 --- a/MediaBrowser.Model/Devices/DeviceInfo.cs +++ b/MediaBrowser.Model/Devices/DeviceInfo.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Session; using System; +using MediaBrowser.Model.Session; namespace MediaBrowser.Model.Devices { diff --git a/MediaBrowser.Model/Devices/DeviceQuery.cs b/MediaBrowser.Model/Devices/DeviceQuery.cs index 2838239e4..48d7ec142 100644 --- a/MediaBrowser.Model/Devices/DeviceQuery.cs +++ b/MediaBrowser.Model/Devices/DeviceQuery.cs @@ -1,4 +1,3 @@ - using System; namespace MediaBrowser.Model.Devices diff --git a/MediaBrowser.Model/Devices/DevicesOptions.cs b/MediaBrowser.Model/Devices/DevicesOptions.cs index 8e478d005..5bbd33b73 100644 --- a/MediaBrowser.Model/Devices/DevicesOptions.cs +++ b/MediaBrowser.Model/Devices/DevicesOptions.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Devices { diff --git a/MediaBrowser.Model/Devices/LocalFileInfo.cs b/MediaBrowser.Model/Devices/LocalFileInfo.cs index e7a78bf8b..cc5c9250b 100644 --- a/MediaBrowser.Model/Devices/LocalFileInfo.cs +++ b/MediaBrowser.Model/Devices/LocalFileInfo.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Devices { public class LocalFileInfo diff --git a/MediaBrowser.Model/Diagnostics/IProcess.cs b/MediaBrowser.Model/Diagnostics/IProcess.cs index 7cd26af00..cade631c9 100644 --- a/MediaBrowser.Model/Diagnostics/IProcess.cs +++ b/MediaBrowser.Model/Diagnostics/IProcess.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Threading.Tasks; diff --git a/MediaBrowser.Model/Diagnostics/IProcessFactory.cs b/MediaBrowser.Model/Diagnostics/IProcessFactory.cs index c4ad02fab..a11be8f4e 100644 --- a/MediaBrowser.Model/Diagnostics/IProcessFactory.cs +++ b/MediaBrowser.Model/Diagnostics/IProcessFactory.cs @@ -1,5 +1,3 @@ -using System; - namespace MediaBrowser.Model.Diagnostics { public interface IProcessFactory diff --git a/MediaBrowser.Model/Dlna/AudioOptions.cs b/MediaBrowser.Model/Dlna/AudioOptions.cs index 9480311b5..33e2982e9 100644 --- a/MediaBrowser.Model/Dlna/AudioOptions.cs +++ b/MediaBrowser.Model/Dlna/AudioOptions.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Model.Dto; -using System.Collections.Generic; using System; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.Dlna { @@ -84,4 +83,4 @@ namespace MediaBrowser.Model.Dlna return null; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/CodecProfile.cs b/MediaBrowser.Model/Dlna/CodecProfile.cs index c40408e9b..9ea248908 100644 --- a/MediaBrowser.Model/Dlna/CodecProfile.cs +++ b/MediaBrowser.Model/Dlna/CodecProfile.cs @@ -1,7 +1,5 @@ -using MediaBrowser.Model.Extensions; -using System.Collections.Generic; using System.Xml.Serialization; -using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Extensions; namespace MediaBrowser.Model.Dlna { @@ -22,7 +20,7 @@ namespace MediaBrowser.Model.Dlna public CodecProfile() { - Conditions = new ProfileCondition[] {}; + Conditions = new ProfileCondition[] { }; ApplyConditions = new ProfileCondition[] { }; } diff --git a/MediaBrowser.Model/Dlna/CodecType.cs b/MediaBrowser.Model/Dlna/CodecType.cs index 415cae7ac..d777be4c2 100644 --- a/MediaBrowser.Model/Dlna/CodecType.cs +++ b/MediaBrowser.Model/Dlna/CodecType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public enum CodecType { @@ -6,4 +6,4 @@ VideoAudio = 1, Audio = 2 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/ConditionProcessor.cs b/MediaBrowser.Model/Dlna/ConditionProcessor.cs index 5bcee6de2..dc0c5f139 100644 --- a/MediaBrowser.Model/Dlna/ConditionProcessor.cs +++ b/MediaBrowser.Model/Dlna/ConditionProcessor.cs @@ -1,8 +1,7 @@ -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.MediaInfo; using System; -using System.Collections.Generic; using System.Globalization; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.Model.Dlna { @@ -24,7 +23,7 @@ namespace MediaBrowser.Model.Dlna int? numVideoStreams, int? numAudioStreams, string videoCodecTag, - bool? isAvc ) + bool? isAvc) { switch (condition.Property) { @@ -130,8 +129,7 @@ namespace MediaBrowser.Model.Dlna return !condition.IsRequired; } - int expected; - if (int.TryParse(condition.Value, NumberStyles.Any, CultureInfo.InvariantCulture, out expected)) + if (int.TryParse(condition.Value, NumberStyles.Any, CultureInfo.InvariantCulture, out var expected)) { switch (condition.Condition) { @@ -185,8 +183,7 @@ namespace MediaBrowser.Model.Dlna return !condition.IsRequired; } - bool expected; - if (bool.TryParse(condition.Value, out expected)) + if (bool.TryParse(condition.Value, out var expected)) { switch (condition.Condition) { @@ -210,8 +207,7 @@ namespace MediaBrowser.Model.Dlna return !condition.IsRequired; } - float expected; - if (float.TryParse(condition.Value, NumberStyles.Any, CultureInfo.InvariantCulture, out expected)) + if (float.TryParse(condition.Value, NumberStyles.Any, CultureInfo.InvariantCulture, out var expected)) { switch (condition.Condition) { @@ -239,8 +235,7 @@ namespace MediaBrowser.Model.Dlna return !condition.IsRequired; } - double expected; - if (double.TryParse(condition.Value, NumberStyles.Any, CultureInfo.InvariantCulture, out expected)) + if (double.TryParse(condition.Value, NumberStyles.Any, CultureInfo.InvariantCulture, out var expected)) { switch (condition.Condition) { @@ -268,7 +263,7 @@ namespace MediaBrowser.Model.Dlna return !condition.IsRequired; } - TransportStreamTimestamp expected = (TransportStreamTimestamp)Enum.Parse(typeof(TransportStreamTimestamp), condition.Value, true); + var expected = (TransportStreamTimestamp)Enum.Parse(typeof(TransportStreamTimestamp), condition.Value, true); switch (condition.Condition) { diff --git a/MediaBrowser.Model/Dlna/ContainerProfile.cs b/MediaBrowser.Model/Dlna/ContainerProfile.cs index ccad4cead..073324c26 100644 --- a/MediaBrowser.Model/Dlna/ContainerProfile.cs +++ b/MediaBrowser.Model/Dlna/ContainerProfile.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Xml.Serialization; using MediaBrowser.Model.Extensions; diff --git a/MediaBrowser.Model/Dlna/ContentFeatureBuilder.cs b/MediaBrowser.Model/Dlna/ContentFeatureBuilder.cs index 88d7573e6..901d81c5f 100644 --- a/MediaBrowser.Model/Dlna/ContentFeatureBuilder.cs +++ b/MediaBrowser.Model/Dlna/ContentFeatureBuilder.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.MediaInfo; using System; using System.Collections.Generic; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.Model.Dlna { @@ -24,7 +24,7 @@ namespace MediaBrowser.Model.Dlna // 0 = native, 1 = transcoded var orgCi = isDirectStream ? ";DLNA.ORG_CI=0" : ";DLNA.ORG_CI=1"; - DlnaFlags flagValue = DlnaFlags.BackgroundTransferMode | + var flagValue = DlnaFlags.BackgroundTransferMode | DlnaFlags.InteractiveTransferMode | DlnaFlags.DlnaV15; @@ -66,7 +66,7 @@ namespace MediaBrowser.Model.Dlna // 0 = native, 1 = transcoded string orgCi = isDirectStream ? ";DLNA.ORG_CI=0" : ";DLNA.ORG_CI=1"; - DlnaFlags flagValue = DlnaFlags.StreamingTransferMode | + var flagValue = DlnaFlags.StreamingTransferMode | DlnaFlags.BackgroundTransferMode | DlnaFlags.InteractiveTransferMode | DlnaFlags.DlnaV15; @@ -131,7 +131,7 @@ namespace MediaBrowser.Model.Dlna // 0 = native, 1 = transcoded string orgCi = isDirectStream ? ";DLNA.ORG_CI=0" : ";DLNA.ORG_CI=1"; - DlnaFlags flagValue = DlnaFlags.StreamingTransferMode | + var flagValue = DlnaFlags.StreamingTransferMode | DlnaFlags.BackgroundTransferMode | DlnaFlags.InteractiveTransferMode | DlnaFlags.DlnaV15; @@ -168,7 +168,7 @@ namespace MediaBrowser.Model.Dlna videoCodecTag, isAvc); - List<string> orgPnValues = new List<string>(); + var orgPnValues = new List<string>(); if (mediaProfile != null && !string.IsNullOrEmpty(mediaProfile.OrgPn)) { @@ -183,7 +183,7 @@ namespace MediaBrowser.Model.Dlna } } - List<string> contentFeatureList = new List<string>(); + var contentFeatureList = new List<string>(); foreach (string orgPn in orgPnValues) { diff --git a/MediaBrowser.Model/Dlna/DeviceIdentification.cs b/MediaBrowser.Model/Dlna/DeviceIdentification.cs index 97f4409da..84573521a 100644 --- a/MediaBrowser.Model/Dlna/DeviceIdentification.cs +++ b/MediaBrowser.Model/Dlna/DeviceIdentification.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public class DeviceIdentification { @@ -55,7 +55,7 @@ public DeviceIdentification() { - Headers = new HttpHeaderInfo[] {}; + Headers = new HttpHeaderInfo[] { }; } } } diff --git a/MediaBrowser.Model/Dlna/DeviceProfile.cs b/MediaBrowser.Model/Dlna/DeviceProfile.cs index 4bf7d6b8d..6894f45ed 100644 --- a/MediaBrowser.Model/Dlna/DeviceProfile.cs +++ b/MediaBrowser.Model/Dlna/DeviceProfile.cs @@ -1,8 +1,7 @@ -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.MediaInfo; -using System.Collections.Generic; -using System.Xml.Serialization; using System; +using System.Xml.Serialization; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.Model.Dlna { @@ -22,7 +21,7 @@ namespace MediaBrowser.Model.Dlna /// Gets or sets the identification. /// </summary> /// <value>The identification.</value> - public MediaBrowser.Model.Dlna.DeviceIdentification Identification { get; set; } + public DeviceIdentification Identification { get; set; } public string FriendlyName { get; set; } public string Manufacturer { get; set; } @@ -239,7 +238,7 @@ namespace MediaBrowser.Model.Dlna var conditionProcessor = new ConditionProcessor(); var anyOff = false; - foreach (ProfileCondition c in i.Conditions) + foreach (var c in i.Conditions) { if (!conditionProcessor.IsImageConditionSatisfied(GetModelProfileCondition(c), width, height)) { diff --git a/MediaBrowser.Model/Dlna/DeviceProfileInfo.cs b/MediaBrowser.Model/Dlna/DeviceProfileInfo.cs index b2afdf292..c78f0d9b2 100644 --- a/MediaBrowser.Model/Dlna/DeviceProfileInfo.cs +++ b/MediaBrowser.Model/Dlna/DeviceProfileInfo.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Dlna { public class DeviceProfileInfo diff --git a/MediaBrowser.Model/Dlna/DeviceProfileType.cs b/MediaBrowser.Model/Dlna/DeviceProfileType.cs index f881a4539..2449fa434 100644 --- a/MediaBrowser.Model/Dlna/DeviceProfileType.cs +++ b/MediaBrowser.Model/Dlna/DeviceProfileType.cs @@ -1,8 +1,8 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public enum DeviceProfileType { System = 0, User = 1 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/DirectPlayProfile.cs b/MediaBrowser.Model/Dlna/DirectPlayProfile.cs index 4279b545d..5a54847d7 100644 --- a/MediaBrowser.Model/Dlna/DirectPlayProfile.cs +++ b/MediaBrowser.Model/Dlna/DirectPlayProfile.cs @@ -1,5 +1,3 @@ -using System; -using System.Collections.Generic; using System.Xml.Serialization; namespace MediaBrowser.Model.Dlna diff --git a/MediaBrowser.Model/Dlna/DlnaFlags.cs b/MediaBrowser.Model/Dlna/DlnaFlags.cs index 28c93464d..d076e73ec 100644 --- a/MediaBrowser.Model/Dlna/DlnaFlags.cs +++ b/MediaBrowser.Model/Dlna/DlnaFlags.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Dlna { diff --git a/MediaBrowser.Model/Dlna/DlnaMaps.cs b/MediaBrowser.Model/Dlna/DlnaMaps.cs index 8dadc32d6..880d05724 100644 --- a/MediaBrowser.Model/Dlna/DlnaMaps.cs +++ b/MediaBrowser.Model/Dlna/DlnaMaps.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public class DlnaMaps { diff --git a/MediaBrowser.Model/Dlna/DlnaProfileType.cs b/MediaBrowser.Model/Dlna/DlnaProfileType.cs index 1bad14081..6a23bbb04 100644 --- a/MediaBrowser.Model/Dlna/DlnaProfileType.cs +++ b/MediaBrowser.Model/Dlna/DlnaProfileType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public enum DlnaProfileType { @@ -6,4 +6,4 @@ Video = 1, Photo = 2 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/EncodingContext.cs b/MediaBrowser.Model/Dlna/EncodingContext.cs index f83d8ddc8..7352bdd19 100644 --- a/MediaBrowser.Model/Dlna/EncodingContext.cs +++ b/MediaBrowser.Model/Dlna/EncodingContext.cs @@ -5,4 +5,4 @@ namespace MediaBrowser.Model.Dlna Streaming = 0, Static = 1 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/HeaderMatchType.cs b/MediaBrowser.Model/Dlna/HeaderMatchType.cs index 7a0d5c24f..b0a1438f6 100644 --- a/MediaBrowser.Model/Dlna/HeaderMatchType.cs +++ b/MediaBrowser.Model/Dlna/HeaderMatchType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public enum HeaderMatchType { @@ -6,4 +6,4 @@ Regex = 1, Substring = 2 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/HttpHeaderInfo.cs b/MediaBrowser.Model/Dlna/HttpHeaderInfo.cs index b4fa4e0af..d15727504 100644 --- a/MediaBrowser.Model/Dlna/HttpHeaderInfo.cs +++ b/MediaBrowser.Model/Dlna/HttpHeaderInfo.cs @@ -1,5 +1,4 @@ -using System.Xml.Serialization; -using MediaBrowser.Model.Dlna; +using System.Xml.Serialization; namespace MediaBrowser.Model.Dlna { @@ -14,4 +13,4 @@ namespace MediaBrowser.Model.Dlna [XmlAttribute("match")] public HeaderMatchType Match { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/IDeviceDiscovery.cs b/MediaBrowser.Model/Dlna/IDeviceDiscovery.cs index 70191ff23..3de3fe761 100644 --- a/MediaBrowser.Model/Dlna/IDeviceDiscovery.cs +++ b/MediaBrowser.Model/Dlna/IDeviceDiscovery.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Events; namespace MediaBrowser.Model.Dlna diff --git a/MediaBrowser.Model/Dlna/ITranscoderSupport.cs b/MediaBrowser.Model/Dlna/ITranscoderSupport.cs index 14723bd27..c0ff54c3f 100644 --- a/MediaBrowser.Model/Dlna/ITranscoderSupport.cs +++ b/MediaBrowser.Model/Dlna/ITranscoderSupport.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public interface ITranscoderSupport { diff --git a/MediaBrowser.Model/Dlna/MediaFormatProfile.cs b/MediaBrowser.Model/Dlna/MediaFormatProfile.cs index f3d04335f..7c56fc5f4 100644 --- a/MediaBrowser.Model/Dlna/MediaFormatProfile.cs +++ b/MediaBrowser.Model/Dlna/MediaFormatProfile.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Dlna { public enum MediaFormatProfile diff --git a/MediaBrowser.Model/Dlna/MediaFormatProfileResolver.cs b/MediaBrowser.Model/Dlna/MediaFormatProfileResolver.cs index 81d58336b..672784589 100644 --- a/MediaBrowser.Model/Dlna/MediaFormatProfileResolver.cs +++ b/MediaBrowser.Model/Dlna/MediaFormatProfileResolver.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.MediaInfo; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.MediaInfo; namespace MediaBrowser.Model.Dlna { @@ -91,7 +91,7 @@ namespace MediaBrowser.Model.Dlna if (StringHelper.EqualsIgnoreCase(videoCodec, "mpeg2video")) { - List<MediaFormatProfile> list = new List<MediaFormatProfile>(); + var list = new List<MediaFormatProfile>(); list.Add(ValueOf("MPEG_TS_SD_NA" + suffix)); list.Add(ValueOf("MPEG_TS_SD_EU" + suffix)); @@ -167,7 +167,7 @@ namespace MediaBrowser.Model.Dlna return new MediaFormatProfile[] { ValueOf(string.Format("MPEG4_P2_TS_ASP_AC3{0}", suffix)) }; } - return new MediaFormatProfile[]{}; + return new MediaFormatProfile[] { }; } private MediaFormatProfile ValueOf(string value) diff --git a/MediaBrowser.Model/Dlna/PlaybackErrorCode.cs b/MediaBrowser.Model/Dlna/PlaybackErrorCode.cs index 4ed412985..5080bc286 100644 --- a/MediaBrowser.Model/Dlna/PlaybackErrorCode.cs +++ b/MediaBrowser.Model/Dlna/PlaybackErrorCode.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Dlna { public enum PlaybackErrorCode diff --git a/MediaBrowser.Model/Dlna/ProfileCondition.cs b/MediaBrowser.Model/Dlna/ProfileCondition.cs index 39f99b92e..b83566f6e 100644 --- a/MediaBrowser.Model/Dlna/ProfileCondition.cs +++ b/MediaBrowser.Model/Dlna/ProfileCondition.cs @@ -1,4 +1,4 @@ -using System.Xml.Serialization; +using System.Xml.Serialization; namespace MediaBrowser.Model.Dlna { @@ -35,4 +35,4 @@ namespace MediaBrowser.Model.Dlna IsRequired = isRequired; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/ProfileConditionType.cs b/MediaBrowser.Model/Dlna/ProfileConditionType.cs index b0a94c5b3..262841262 100644 --- a/MediaBrowser.Model/Dlna/ProfileConditionType.cs +++ b/MediaBrowser.Model/Dlna/ProfileConditionType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public enum ProfileConditionType { @@ -8,4 +8,4 @@ GreaterThanEqual = 3, EqualsAny = 4 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/ProfileConditionValue.cs b/MediaBrowser.Model/Dlna/ProfileConditionValue.cs index a96e9ac36..bae46bdcf 100644 --- a/MediaBrowser.Model/Dlna/ProfileConditionValue.cs +++ b/MediaBrowser.Model/Dlna/ProfileConditionValue.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public enum ProfileConditionValue { @@ -26,4 +26,4 @@ AudioSampleRate = 22, AudioBitDepth = 23 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/ResolutionConfiguration.cs b/MediaBrowser.Model/Dlna/ResolutionConfiguration.cs index 8efdb0660..6b1f85440 100644 --- a/MediaBrowser.Model/Dlna/ResolutionConfiguration.cs +++ b/MediaBrowser.Model/Dlna/ResolutionConfiguration.cs @@ -11,4 +11,4 @@ namespace MediaBrowser.Model.Dlna MaxBitrate = maxBitrate; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/ResolutionNormalizer.cs b/MediaBrowser.Model/Dlna/ResolutionNormalizer.cs index 4cde26a03..cf92633c3 100644 --- a/MediaBrowser.Model/Dlna/ResolutionNormalizer.cs +++ b/MediaBrowser.Model/Dlna/ResolutionNormalizer.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Extensions; namespace MediaBrowser.Model.Dlna diff --git a/MediaBrowser.Model/Dlna/ResolutionOptions.cs b/MediaBrowser.Model/Dlna/ResolutionOptions.cs index 6b711cfa0..30c078b55 100644 --- a/MediaBrowser.Model/Dlna/ResolutionOptions.cs +++ b/MediaBrowser.Model/Dlna/ResolutionOptions.cs @@ -5,4 +5,4 @@ namespace MediaBrowser.Model.Dlna public int? MaxWidth { get; set; } public int? MaxHeight { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/ResponseProfile.cs b/MediaBrowser.Model/Dlna/ResponseProfile.cs index 742253fa3..8c6b0806f 100644 --- a/MediaBrowser.Model/Dlna/ResponseProfile.cs +++ b/MediaBrowser.Model/Dlna/ResponseProfile.cs @@ -1,6 +1,4 @@ -using System.Collections.Generic; using System.Xml.Serialization; -using MediaBrowser.Model.Dlna; namespace MediaBrowser.Model.Dlna { @@ -28,7 +26,7 @@ namespace MediaBrowser.Model.Dlna public ResponseProfile() { - Conditions = new ProfileCondition[] {}; + Conditions = new ProfileCondition[] { }; } public string[] GetContainers() diff --git a/MediaBrowser.Model/Dlna/SearchCriteria.cs b/MediaBrowser.Model/Dlna/SearchCriteria.cs index 50ee4a378..4f47c2821 100644 --- a/MediaBrowser.Model/Dlna/SearchCriteria.cs +++ b/MediaBrowser.Model/Dlna/SearchCriteria.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Extensions; using System; using System.Text.RegularExpressions; +using MediaBrowser.Model.Extensions; namespace MediaBrowser.Model.Dlna { diff --git a/MediaBrowser.Model/Dlna/SearchType.cs b/MediaBrowser.Model/Dlna/SearchType.cs index 27b207879..05c59f5de 100644 --- a/MediaBrowser.Model/Dlna/SearchType.cs +++ b/MediaBrowser.Model/Dlna/SearchType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public enum SearchType { @@ -9,4 +9,4 @@ Playlist = 4, MusicAlbum = 5 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/SortCriteria.cs b/MediaBrowser.Model/Dlna/SortCriteria.cs index ecaf32614..b5c1ac408 100644 --- a/MediaBrowser.Model/Dlna/SortCriteria.cs +++ b/MediaBrowser.Model/Dlna/SortCriteria.cs @@ -1,13 +1,10 @@ -using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Dlna { public class SortCriteria { - public SortOrder SortOrder - { - get { return SortOrder.Ascending; } - } + public SortOrder SortOrder => SortOrder.Ascending; public SortCriteria(string value) { diff --git a/MediaBrowser.Model/Dlna/StreamBuilder.cs b/MediaBrowser.Model/Dlna/StreamBuilder.cs index c571d8384..ec05e2eb7 100644 --- a/MediaBrowser.Model/Dlna/StreamBuilder.cs +++ b/MediaBrowser.Model/Dlna/StreamBuilder.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Extensions; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Session; using System; using System.Collections.Generic; using System.Globalization; using System.Linq; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.MediaInfo; +using MediaBrowser.Model.Session; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Model.Dlna { @@ -77,7 +77,7 @@ namespace MediaBrowser.Model.Dlna var streams = new List<StreamInfo>(); foreach (MediaSourceInfo i in mediaSources) { - StreamInfo streamInfo = BuildVideoItem(i, options); + var streamInfo = BuildVideoItem(i, options); if (streamInfo != null) { streams.Add(streamInfo); @@ -284,7 +284,7 @@ namespace MediaBrowser.Model.Dlna { var transcodeReasons = new List<TranscodeReason>(); - StreamInfo playlistItem = new StreamInfo + var playlistItem = new StreamInfo { ItemId = options.ItemId, MediaType = DlnaProfileType.Audio, @@ -308,14 +308,14 @@ namespace MediaBrowser.Model.Dlna return playlistItem; } - MediaStream audioStream = item.GetDefaultAudioStream(null); + var audioStream = item.GetDefaultAudioStream(null); var directPlayInfo = GetAudioDirectPlayMethods(item, audioStream, options); var directPlayMethods = directPlayInfo.Item1; transcodeReasons.AddRange(directPlayInfo.Item2); - ConditionProcessor conditionProcessor = new ConditionProcessor(); + var conditionProcessor = new ConditionProcessor(); int? inputAudioChannels = audioStream == null ? null : audioStream.Channels; int? inputAudioBitrate = audioStream == null ? null : audioStream.BitDepth; @@ -328,7 +328,7 @@ namespace MediaBrowser.Model.Dlna // Make sure audio codec profiles are satisfied var conditions = new List<ProfileCondition>(); - foreach (CodecProfile i in options.Profile.CodecProfiles) + foreach (var i in options.Profile.CodecProfiles) { if (i.Type == CodecType.Audio && i.ContainsAnyCodec(audioCodec, item.Container)) { @@ -383,7 +383,7 @@ namespace MediaBrowser.Model.Dlna } TranscodingProfile transcodingProfile = null; - foreach (TranscodingProfile i in options.Profile.TranscodingProfiles) + foreach (var i in options.Profile.TranscodingProfiles) { if (i.Type == playlistItem.MediaType && i.Context == options.Context) { @@ -405,7 +405,7 @@ namespace MediaBrowser.Model.Dlna SetStreamInfoOptionsFromTranscodingProfile(playlistItem, transcodingProfile); var audioCodecProfiles = new List<CodecProfile>(); - foreach (CodecProfile i in options.Profile.CodecProfiles) + foreach (var i in options.Profile.CodecProfiles) { if (i.Type == CodecType.Audio && i.ContainsAnyCodec(transcodingProfile.AudioCodec, transcodingProfile.Container)) { @@ -416,10 +416,10 @@ namespace MediaBrowser.Model.Dlna } var audioTranscodingConditions = new List<ProfileCondition>(); - foreach (CodecProfile i in audioCodecProfiles) + foreach (var i in audioCodecProfiles) { bool applyConditions = true; - foreach (ProfileCondition applyCondition in i.ApplyConditions) + foreach (var applyCondition in i.ApplyConditions) { if (!conditionProcessor.IsAudioConditionSatisfied(applyCondition, inputAudioChannels, inputAudioBitrate, inputAudioSampleRate, inputAudioBitDepth)) { @@ -478,7 +478,7 @@ namespace MediaBrowser.Model.Dlna var transcodeReasons = new List<TranscodeReason>(); DirectPlayProfile directPlayProfile = null; - foreach (DirectPlayProfile i in options.Profile.DirectPlayProfiles) + foreach (var i in options.Profile.DirectPlayProfiles) { if (i.Type == DlnaProfileType.Audio && IsAudioDirectPlaySupported(i, item, audioStream)) { @@ -607,7 +607,7 @@ namespace MediaBrowser.Model.Dlna { int highestScore = -1; - foreach (MediaStream stream in item.MediaStreams) + foreach (var stream in item.MediaStreams) { if (stream.Type == MediaStreamType.Subtitle && stream.Score.HasValue) { @@ -619,7 +619,7 @@ namespace MediaBrowser.Model.Dlna } var topStreams = new List<MediaStream>(); - foreach (MediaStream stream in item.MediaStreams) + foreach (var stream in item.MediaStreams) { if (stream.Type == MediaStreamType.Subtitle && stream.Score.HasValue && stream.Score.Value == highestScore) { @@ -630,9 +630,9 @@ namespace MediaBrowser.Model.Dlna // If multiple streams have an equal score, try to pick the most efficient one if (topStreams.Count > 1) { - foreach (MediaStream stream in topStreams) + foreach (var stream in topStreams) { - foreach (SubtitleProfile profile in subtitleProfiles) + foreach (var profile in subtitleProfiles) { if (profile.Method == SubtitleDeliveryMethod.External && StringHelper.EqualsIgnoreCase(profile.Format, stream.Codec)) { @@ -688,8 +688,7 @@ namespace MediaBrowser.Model.Dlna if (!string.IsNullOrEmpty(transcodingProfile.MaxAudioChannels)) { - int transcodingMaxAudioChannels; - if (int.TryParse(transcodingProfile.MaxAudioChannels, NumberStyles.Any, CultureInfo.InvariantCulture, out transcodingMaxAudioChannels)) + if (int.TryParse(transcodingProfile.MaxAudioChannels, NumberStyles.Any, CultureInfo.InvariantCulture, out var transcodingMaxAudioChannels)) { playlistItem.TranscodingMaxAudioChannels = transcodingMaxAudioChannels; } @@ -705,7 +704,7 @@ namespace MediaBrowser.Model.Dlna var transcodeReasons = new List<TranscodeReason>(); - StreamInfo playlistItem = new StreamInfo + var playlistItem = new StreamInfo { ItemId = options.ItemId, MediaType = DlnaProfileType.Video, @@ -716,15 +715,15 @@ namespace MediaBrowser.Model.Dlna }; playlistItem.SubtitleStreamIndex = options.SubtitleStreamIndex ?? GetDefaultSubtitleStreamIndex(item, options.Profile.SubtitleProfiles); - MediaStream subtitleStream = playlistItem.SubtitleStreamIndex.HasValue ? item.GetMediaStream(MediaStreamType.Subtitle, playlistItem.SubtitleStreamIndex.Value) : null; + var subtitleStream = playlistItem.SubtitleStreamIndex.HasValue ? item.GetMediaStream(MediaStreamType.Subtitle, playlistItem.SubtitleStreamIndex.Value) : null; - MediaStream audioStream = item.GetDefaultAudioStream(options.AudioStreamIndex ?? item.DefaultAudioStreamIndex); + var audioStream = item.GetDefaultAudioStream(options.AudioStreamIndex ?? item.DefaultAudioStreamIndex); if (audioStream != null) { playlistItem.AudioStreamIndex = audioStream.Index; } - MediaStream videoStream = item.VideoStream; + var videoStream = item.VideoStream; // TODO: This doesn't accout for situation of device being able to handle media bitrate, but wifi connection not fast enough var directPlayEligibilityResult = IsEligibleForDirectPlay(item, GetBitrateForDirectPlayCheck(item, options, true) ?? 0, subtitleStream, options, PlayMethod.DirectPlay); @@ -751,7 +750,7 @@ namespace MediaBrowser.Model.Dlna if (subtitleStream != null) { - SubtitleProfile subtitleProfile = GetSubtitleProfile(item, subtitleStream, options.Profile.SubtitleProfiles, directPlay.Value, _transcoderSupport, item.Container, null); + var subtitleProfile = GetSubtitleProfile(item, subtitleStream, options.Profile.SubtitleProfiles, directPlay.Value, _transcoderSupport, item.Container, null); playlistItem.SubtitleDeliveryMethod = subtitleProfile.Method; playlistItem.SubtitleFormat = subtitleProfile.Format; @@ -775,7 +774,7 @@ namespace MediaBrowser.Model.Dlna // Can't direct play, find the transcoding profile TranscodingProfile transcodingProfile = null; - foreach (TranscodingProfile i in options.Profile.TranscodingProfiles) + foreach (var i in options.Profile.TranscodingProfiles) { if (i.Type == playlistItem.MediaType && i.Context == options.Context) { @@ -793,7 +792,7 @@ namespace MediaBrowser.Model.Dlna if (subtitleStream != null) { - SubtitleProfile subtitleProfile = GetSubtitleProfile(item, subtitleStream, options.Profile.SubtitleProfiles, PlayMethod.Transcode, _transcoderSupport, transcodingProfile.Container, transcodingProfile.Protocol); + var subtitleProfile = GetSubtitleProfile(item, subtitleStream, options.Profile.SubtitleProfiles, PlayMethod.Transcode, _transcoderSupport, transcodingProfile.Container, transcodingProfile.Protocol); playlistItem.SubtitleDeliveryMethod = subtitleProfile.Method; playlistItem.SubtitleFormat = subtitleProfile.Format; @@ -804,10 +803,10 @@ namespace MediaBrowser.Model.Dlna SetStreamInfoOptionsFromTranscodingProfile(playlistItem, transcodingProfile); - ConditionProcessor conditionProcessor = new ConditionProcessor(); + var conditionProcessor = new ConditionProcessor(); var isFirstAppliedCodecProfile = true; - foreach (CodecProfile i in options.Profile.CodecProfiles) + foreach (var i in options.Profile.CodecProfiles) { if (i.Type == CodecType.Video && i.ContainsAnyCodec(transcodingProfile.VideoCodec, transcodingProfile.Container)) { @@ -863,7 +862,7 @@ namespace MediaBrowser.Model.Dlna playlistItem.AudioBitrate = Math.Min(playlistItem.AudioBitrate ?? audioBitrate, audioBitrate); isFirstAppliedCodecProfile = true; - foreach (CodecProfile i in options.Profile.CodecProfiles) + foreach (var i in options.Profile.CodecProfiles) { if (i.Type == CodecType.VideoAudio && i.ContainsAnyCodec(transcodingProfile.AudioCodec, transcodingProfile.Container)) { @@ -1011,7 +1010,7 @@ namespace MediaBrowser.Model.Dlna // See if it can be direct played DirectPlayProfile directPlay = null; - foreach (DirectPlayProfile i in profile.DirectPlayProfiles) + foreach (var i in profile.DirectPlayProfiles) { if (i.Type == DlnaProfileType.Video && IsVideoDirectPlaySupported(i, mediaSource, videoStream, audioStream)) { @@ -1032,19 +1031,19 @@ namespace MediaBrowser.Model.Dlna string container = mediaSource.Container; var conditions = new List<ProfileCondition>(); - foreach (ContainerProfile i in profile.ContainerProfiles) + foreach (var i in profile.ContainerProfiles) { if (i.Type == DlnaProfileType.Video && i.ContainsContainer(container)) { - foreach (ProfileCondition c in i.Conditions) + foreach (var c in i.Conditions) { conditions.Add(c); } } } - ConditionProcessor conditionProcessor = new ConditionProcessor(); + var conditionProcessor = new ConditionProcessor(); int? width = videoStream == null ? null : videoStream.Width; int? height = videoStream == null ? null : videoStream.Height; @@ -1090,7 +1089,7 @@ namespace MediaBrowser.Model.Dlna string videoCodec = videoStream == null ? null : videoStream.Codec; conditions = new List<ProfileCondition>(); - foreach (CodecProfile i in profile.CodecProfiles) + foreach (var i in profile.CodecProfiles) { if (i.Type == CodecType.Video && i.ContainsAnyCodec(videoCodec, container)) { @@ -1137,7 +1136,7 @@ namespace MediaBrowser.Model.Dlna conditions = new List<ProfileCondition>(); bool? isSecondaryAudio = audioStream == null ? null : mediaSource.IsSecondaryAudio(audioStream); - foreach (CodecProfile i in profile.CodecProfiles) + foreach (var i in profile.CodecProfiles) { if (i.Type == CodecType.VideoAudio && i.ContainsAnyCodec(audioCodec, container)) { @@ -1206,7 +1205,7 @@ namespace MediaBrowser.Model.Dlna { if (subtitleStream != null) { - SubtitleProfile subtitleProfile = GetSubtitleProfile(item, subtitleStream, options.Profile.SubtitleProfiles, playMethod, _transcoderSupport, item.Container, null); + var subtitleProfile = GetSubtitleProfile(item, subtitleStream, options.Profile.SubtitleProfiles, playMethod, _transcoderSupport, item.Container, null); if (subtitleProfile.Method != SubtitleDeliveryMethod.External && subtitleProfile.Method != SubtitleDeliveryMethod.Embed) { @@ -1230,7 +1229,7 @@ namespace MediaBrowser.Model.Dlna if (!subtitleStream.IsExternal && (playMethod != PlayMethod.Transcode || !string.Equals(transcodingSubProtocol, "hls", StringComparison.OrdinalIgnoreCase))) { // Look for supported embedded subs of the same format - foreach (SubtitleProfile profile in subtitleProfiles) + foreach (var profile in subtitleProfiles) { if (!profile.SupportsLanguage(subtitleStream.Language)) { @@ -1259,7 +1258,7 @@ namespace MediaBrowser.Model.Dlna } // Look for supported embedded subs of a convertible format - foreach (SubtitleProfile profile in subtitleProfiles) + foreach (var profile in subtitleProfiles) { if (!profile.SupportsLanguage(subtitleStream.Language)) { @@ -1328,7 +1327,7 @@ namespace MediaBrowser.Model.Dlna private static SubtitleProfile GetExternalSubtitleProfile(MediaSourceInfo mediaSource, MediaStream subtitleStream, SubtitleProfile[] subtitleProfiles, PlayMethod playMethod, ITranscoderSupport transcoderSupport, bool allowConversion) { - foreach (SubtitleProfile profile in subtitleProfiles) + foreach (var profile in subtitleProfiles) { if (profile.Method != SubtitleDeliveryMethod.External && profile.Method != SubtitleDeliveryMethod.Hls) { @@ -1491,8 +1490,7 @@ namespace MediaBrowser.Model.Dlna continue; } - int num; - if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var num)) { if (condition.Condition == ProfileConditionType.Equals) { @@ -1526,8 +1524,7 @@ namespace MediaBrowser.Model.Dlna } } - int num; - if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var num)) { if (condition.Condition == ProfileConditionType.Equals) { @@ -1551,8 +1548,7 @@ namespace MediaBrowser.Model.Dlna continue; } - bool isAvc; - if (bool.TryParse(value, out isAvc)) + if (bool.TryParse(value, out var isAvc)) { if (isAvc && condition.Condition == ProfileConditionType.Equals) { @@ -1572,8 +1568,7 @@ namespace MediaBrowser.Model.Dlna continue; } - bool isAnamorphic; - if (bool.TryParse(value, out isAnamorphic)) + if (bool.TryParse(value, out var isAnamorphic)) { if (isAnamorphic && condition.Condition == ProfileConditionType.Equals) { @@ -1603,8 +1598,7 @@ namespace MediaBrowser.Model.Dlna } } - bool isInterlaced; - if (bool.TryParse(value, out isInterlaced)) + if (bool.TryParse(value, out var isInterlaced)) { if (!isInterlaced && condition.Condition == ProfileConditionType.Equals) { @@ -1645,8 +1639,7 @@ namespace MediaBrowser.Model.Dlna } } - int num; - if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var num)) { if (condition.Condition == ProfileConditionType.Equals) { @@ -1680,8 +1673,7 @@ namespace MediaBrowser.Model.Dlna } } - int num; - if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var num)) { if (condition.Condition == ProfileConditionType.Equals) { @@ -1727,8 +1719,7 @@ namespace MediaBrowser.Model.Dlna continue; } - int num; - if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var num)) { if (condition.Condition == ProfileConditionType.Equals) { @@ -1752,8 +1743,7 @@ namespace MediaBrowser.Model.Dlna continue; } - int num; - if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var num)) { if (condition.Condition == ProfileConditionType.Equals) { @@ -1777,8 +1767,7 @@ namespace MediaBrowser.Model.Dlna continue; } - float num; - if (float.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) + if (float.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var num)) { if (condition.Condition == ProfileConditionType.Equals) { @@ -1802,8 +1791,7 @@ namespace MediaBrowser.Model.Dlna continue; } - int num; - if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var num)) { if (condition.Condition == ProfileConditionType.Equals) { @@ -1827,8 +1815,7 @@ namespace MediaBrowser.Model.Dlna continue; } - int num; - if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var num)) { if (condition.Condition == ProfileConditionType.Equals) { diff --git a/MediaBrowser.Model/Dlna/StreamInfo.cs b/MediaBrowser.Model/Dlna/StreamInfo.cs index ec76d93f0..522c10980 100644 --- a/MediaBrowser.Model/Dlna/StreamInfo.cs +++ b/MediaBrowser.Model/Dlna/StreamInfo.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Model.Drawing; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Session; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; namespace MediaBrowser.Model.Dlna { @@ -56,8 +56,7 @@ namespace MediaBrowser.Model.Dlna public string GetOption(string name) { - string value; - if (StreamOptions.TryGetValue(name, out value)) + if (StreamOptions.TryGetValue(name, out var value)) { return value; } @@ -127,22 +126,11 @@ namespace MediaBrowser.Model.Dlna public Dictionary<string, string> StreamOptions { get; private set; } - public string MediaSourceId - { - get - { - return MediaSource == null ? null : MediaSource.Id; - } - } + public string MediaSourceId => MediaSource == null ? null : MediaSource.Id; - public bool IsDirectStream - { - get - { - return PlayMethod == PlayMethod.DirectStream || - PlayMethod == PlayMethod.DirectPlay; - } - } + public bool IsDirectStream => + PlayMethod == PlayMethod.DirectStream || + PlayMethod == PlayMethod.DirectPlay; public string ToUrl(string baseUrl, string accessToken) { @@ -156,7 +144,7 @@ namespace MediaBrowser.Model.Dlna throw new ArgumentNullException(nameof(baseUrl)); } - List<string> list = new List<string>(); + var list = new List<string>(); foreach (NameValuePair pair in BuildParams(this, accessToken)) { if (string.IsNullOrEmpty(pair.Value)) @@ -222,7 +210,7 @@ namespace MediaBrowser.Model.Dlna private static List<NameValuePair> BuildParams(StreamInfo item, string accessToken) { - List<NameValuePair> list = new List<NameValuePair>(); + var list = new List<NameValuePair>(); string audioCodecs = item.AudioCodecs.Length == 0 ? string.Empty : @@ -357,8 +345,8 @@ namespace MediaBrowser.Model.Dlna public List<SubtitleStreamInfo> GetExternalSubtitles(ITranscoderSupport transcoderSupport, bool includeSelectedTrackOnly, bool enableAllProfiles, string baseUrl, string accessToken) { - List<SubtitleStreamInfo> list = GetSubtitleProfiles(transcoderSupport, includeSelectedTrackOnly, enableAllProfiles, baseUrl, accessToken); - List<SubtitleStreamInfo> newList = new List<SubtitleStreamInfo>(); + var list = GetSubtitleProfiles(transcoderSupport, includeSelectedTrackOnly, enableAllProfiles, baseUrl, accessToken); + var newList = new List<SubtitleStreamInfo>(); // First add the selected track foreach (SubtitleStreamInfo stream in list) @@ -379,7 +367,7 @@ namespace MediaBrowser.Model.Dlna public List<SubtitleStreamInfo> GetSubtitleProfiles(ITranscoderSupport transcoderSupport, bool includeSelectedTrackOnly, bool enableAllProfiles, string baseUrl, string accessToken) { - List<SubtitleStreamInfo> list = new List<SubtitleStreamInfo>(); + var list = new List<SubtitleStreamInfo>(); // HLS will preserve timestamps so we can just grab the full subtitle stream long startPositionTicks = StringHelper.EqualsIgnoreCase(SubProtocol, "hls") @@ -389,7 +377,7 @@ namespace MediaBrowser.Model.Dlna // First add the selected track if (SubtitleStreamIndex.HasValue) { - foreach (MediaStream stream in MediaSource.MediaStreams) + foreach (var stream in MediaSource.MediaStreams) { if (stream.Type == MediaStreamType.Subtitle && stream.Index == SubtitleStreamIndex.Value) { @@ -400,7 +388,7 @@ namespace MediaBrowser.Model.Dlna if (!includeSelectedTrackOnly) { - foreach (MediaStream stream in MediaSource.MediaStreams) + foreach (var stream in MediaSource.MediaStreams) { if (stream.Type == MediaStreamType.Subtitle && (!SubtitleStreamIndex.HasValue || stream.Index != SubtitleStreamIndex.Value)) { @@ -416,16 +404,16 @@ namespace MediaBrowser.Model.Dlna { if (enableAllProfiles) { - foreach (SubtitleProfile profile in DeviceProfile.SubtitleProfiles) + foreach (var profile in DeviceProfile.SubtitleProfiles) { - SubtitleStreamInfo info = GetSubtitleStreamInfo(stream, baseUrl, accessToken, startPositionTicks, new[] { profile }, transcoderSupport); + var info = GetSubtitleStreamInfo(stream, baseUrl, accessToken, startPositionTicks, new[] { profile }, transcoderSupport); list.Add(info); } } else { - SubtitleStreamInfo info = GetSubtitleStreamInfo(stream, baseUrl, accessToken, startPositionTicks, DeviceProfile.SubtitleProfiles, transcoderSupport); + var info = GetSubtitleStreamInfo(stream, baseUrl, accessToken, startPositionTicks, DeviceProfile.SubtitleProfiles, transcoderSupport); list.Add(info); } @@ -433,8 +421,8 @@ namespace MediaBrowser.Model.Dlna private SubtitleStreamInfo GetSubtitleStreamInfo(MediaStream stream, string baseUrl, string accessToken, long startPositionTicks, SubtitleProfile[] subtitleProfiles, ITranscoderSupport transcoderSupport) { - SubtitleProfile subtitleProfile = StreamBuilder.GetSubtitleProfile(MediaSource, stream, subtitleProfiles, PlayMethod, transcoderSupport, Container, SubProtocol); - SubtitleStreamInfo info = new SubtitleStreamInfo + var subtitleProfile = StreamBuilder.GetSubtitleProfile(MediaSource, stream, subtitleProfiles, PlayMethod, transcoderSupport, Container, SubProtocol); + var info = new SubtitleStreamInfo { IsForced = stream.IsForced, Language = stream.Language, @@ -513,7 +501,7 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream stream = TargetAudioStream; + var stream = TargetAudioStream; return stream == null ? null : stream.SampleRate; } } @@ -595,7 +583,7 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream stream = TargetVideoStream; + var stream = TargetVideoStream; return MaxFramerate.HasValue && !IsDirectStream ? MaxFramerate : stream == null ? null : stream.AverageFrameRate ?? stream.RealFrameRate; @@ -633,8 +621,7 @@ namespace MediaBrowser.Model.Dlna return null; } - int result; - if (int.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out result)) + if (int.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -650,8 +637,7 @@ namespace MediaBrowser.Model.Dlna return null; } - int result; - if (int.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out result)) + if (int.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -667,8 +653,7 @@ namespace MediaBrowser.Model.Dlna return null; } - double result; - if (double.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out result)) + if (double.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -684,8 +669,7 @@ namespace MediaBrowser.Model.Dlna return null; } - int result; - if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out result)) + if (int.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var result)) { return result; } @@ -700,7 +684,7 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream stream = TargetVideoStream; + var stream = TargetVideoStream; return !IsDirectStream ? null : stream == null ? null : stream.PacketLength; @@ -738,7 +722,7 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream stream = TargetVideoStream; + var stream = TargetVideoStream; return !IsDirectStream ? null : stream == null ? null : stream.CodecTag; @@ -752,7 +736,7 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream stream = TargetAudioStream; + var stream = TargetAudioStream; return AudioBitrate.HasValue && !IsDirectStream ? AudioBitrate : stream == null ? null : stream.BitRate; @@ -792,8 +776,7 @@ namespace MediaBrowser.Model.Dlna return defaultValue; } - int result; - if (int.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out result)) + if (int.TryParse(value, NumberStyles.Integer, CultureInfo.InvariantCulture, out var result)) { return Math.Min(result, defaultValue ?? result); } @@ -808,7 +791,7 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream stream = TargetAudioStream; + var stream = TargetAudioStream; string inputCodec = stream == null ? null : stream.Codec; @@ -833,7 +816,7 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream stream = TargetVideoStream; + var stream = TargetVideoStream; string inputCodec = stream == null ? null : stream.Codec; @@ -889,7 +872,7 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream stream = TargetVideoStream; + var stream = TargetVideoStream; return VideoBitrate.HasValue && !IsDirectStream ? VideoBitrate @@ -901,7 +884,7 @@ namespace MediaBrowser.Model.Dlna { get { - TransportStreamTimestamp defaultValue = StringHelper.EqualsIgnoreCase(Container, "m2ts") + var defaultValue = StringHelper.EqualsIgnoreCase(Container, "m2ts") ? TransportStreamTimestamp.Valid : TransportStreamTimestamp.None; @@ -911,13 +894,7 @@ namespace MediaBrowser.Model.Dlna } } - public int? TargetTotalBitrate - { - get - { - return (TargetAudioBitrate ?? 0) + (TargetVideoBitrate ?? 0); - } - } + public int? TargetTotalBitrate => (TargetAudioBitrate ?? 0) + (TargetVideoBitrate ?? 0); public bool? IsTargetAnamorphic { @@ -972,11 +949,11 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream videoStream = TargetVideoStream; + var videoStream = TargetVideoStream; if (videoStream != null && videoStream.Width.HasValue && videoStream.Height.HasValue) { - ImageSize size = new ImageSize + var size = new ImageSize { Width = videoStream.Width.Value, Height = videoStream.Height.Value @@ -985,7 +962,7 @@ namespace MediaBrowser.Model.Dlna double? maxWidth = MaxWidth.HasValue ? (double)MaxWidth.Value : (double?)null; double? maxHeight = MaxHeight.HasValue ? (double)MaxHeight.Value : (double?)null; - ImageSize newSize = DrawingUtils.Resize(size, + var newSize = DrawingUtils.Resize(size, 0, 0, maxWidth ?? 0, @@ -1002,11 +979,11 @@ namespace MediaBrowser.Model.Dlna { get { - MediaStream videoStream = TargetVideoStream; + var videoStream = TargetVideoStream; if (videoStream != null && videoStream.Width.HasValue && videoStream.Height.HasValue) { - ImageSize size = new ImageSize + var size = new ImageSize { Width = videoStream.Width.Value, Height = videoStream.Height.Value @@ -1015,7 +992,7 @@ namespace MediaBrowser.Model.Dlna double? maxWidth = MaxWidth.HasValue ? (double)MaxWidth.Value : (double?)null; double? maxHeight = MaxHeight.HasValue ? (double)MaxHeight.Value : (double?)null; - ImageSize newSize = DrawingUtils.Resize(size, + var newSize = DrawingUtils.Resize(size, 0, 0, maxWidth ?? 0, @@ -1076,9 +1053,9 @@ namespace MediaBrowser.Model.Dlna public List<MediaStream> GetSelectableStreams(MediaStreamType type) { - List<MediaStream> list = new List<MediaStream>(); + var list = new List<MediaStream>(); - foreach (MediaStream stream in MediaSource.MediaStreams) + foreach (var stream in MediaSource.MediaStreams) { if (type == stream.Type) { diff --git a/MediaBrowser.Model/Dlna/SubtitleDeliveryMethod.cs b/MediaBrowser.Model/Dlna/SubtitleDeliveryMethod.cs index b4e13c5ba..925c1f9fc 100644 --- a/MediaBrowser.Model/Dlna/SubtitleDeliveryMethod.cs +++ b/MediaBrowser.Model/Dlna/SubtitleDeliveryMethod.cs @@ -19,4 +19,4 @@ namespace MediaBrowser.Model.Dlna /// </summary> Hls = 3 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/SubtitleProfile.cs b/MediaBrowser.Model/Dlna/SubtitleProfile.cs index f85ba4a7a..f950b6cb8 100644 --- a/MediaBrowser.Model/Dlna/SubtitleProfile.cs +++ b/MediaBrowser.Model/Dlna/SubtitleProfile.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Extensions; using System.Xml.Serialization; +using MediaBrowser.Model.Extensions; namespace MediaBrowser.Model.Dlna { diff --git a/MediaBrowser.Model/Dlna/SubtitleStreamInfo.cs b/MediaBrowser.Model/Dlna/SubtitleStreamInfo.cs index 7a89308dc..e81c26e69 100644 --- a/MediaBrowser.Model/Dlna/SubtitleStreamInfo.cs +++ b/MediaBrowser.Model/Dlna/SubtitleStreamInfo.cs @@ -12,4 +12,4 @@ namespace MediaBrowser.Model.Dlna public SubtitleDeliveryMethod DeliveryMethod { get; set; } public bool IsExternalUrl { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/TranscodeSeekInfo.cs b/MediaBrowser.Model/Dlna/TranscodeSeekInfo.cs index 564ce5c60..eac5d4b36 100644 --- a/MediaBrowser.Model/Dlna/TranscodeSeekInfo.cs +++ b/MediaBrowser.Model/Dlna/TranscodeSeekInfo.cs @@ -1,8 +1,8 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { public enum TranscodeSeekInfo { Auto = 0, Bytes = 1 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/TranscodingProfile.cs b/MediaBrowser.Model/Dlna/TranscodingProfile.cs index 8453fdf6d..dc2f0c90d 100644 --- a/MediaBrowser.Model/Dlna/TranscodingProfile.cs +++ b/MediaBrowser.Model/Dlna/TranscodingProfile.cs @@ -1,6 +1,4 @@ -using System.Collections.Generic; using System.Xml.Serialization; -using MediaBrowser.Model.Dlna; namespace MediaBrowser.Model.Dlna { diff --git a/MediaBrowser.Model/Dlna/UpnpDeviceInfo.cs b/MediaBrowser.Model/Dlna/UpnpDeviceInfo.cs index f4b9d1e9b..4edbb503b 100644 --- a/MediaBrowser.Model/Dlna/UpnpDeviceInfo.cs +++ b/MediaBrowser.Model/Dlna/UpnpDeviceInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using MediaBrowser.Model.Net; diff --git a/MediaBrowser.Model/Dlna/VideoOptions.cs b/MediaBrowser.Model/Dlna/VideoOptions.cs index 041d2cd5d..9c4a38292 100644 --- a/MediaBrowser.Model/Dlna/VideoOptions.cs +++ b/MediaBrowser.Model/Dlna/VideoOptions.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dlna +namespace MediaBrowser.Model.Dlna { /// <summary> /// Class VideoOptions. @@ -8,4 +8,4 @@ public int? AudioStreamIndex { get; set; } public int? SubtitleStreamIndex { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dlna/XmlAttribute.cs b/MediaBrowser.Model/Dlna/XmlAttribute.cs index e8e13ba0d..aa64177a8 100644 --- a/MediaBrowser.Model/Dlna/XmlAttribute.cs +++ b/MediaBrowser.Model/Dlna/XmlAttribute.cs @@ -1,4 +1,4 @@ -using System.Xml.Serialization; +using System.Xml.Serialization; namespace MediaBrowser.Model.Dlna { @@ -10,4 +10,4 @@ namespace MediaBrowser.Model.Dlna [XmlAttribute("value")] public string Value { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Drawing/DrawingUtils.cs b/MediaBrowser.Model/Drawing/DrawingUtils.cs index e6235cb06..fbd074218 100644 --- a/MediaBrowser.Model/Drawing/DrawingUtils.cs +++ b/MediaBrowser.Model/Drawing/DrawingUtils.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Drawing +namespace MediaBrowser.Model.Drawing { /// <summary> /// Class DrawingUtils diff --git a/MediaBrowser.Model/Drawing/ImageFormat.cs b/MediaBrowser.Model/Drawing/ImageFormat.cs index 0172c9754..3639c1594 100644 --- a/MediaBrowser.Model/Drawing/ImageFormat.cs +++ b/MediaBrowser.Model/Drawing/ImageFormat.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Drawing { /// <summary> diff --git a/MediaBrowser.Model/Drawing/ImageOrientation.cs b/MediaBrowser.Model/Drawing/ImageOrientation.cs index c320a8224..0fce8c3dc 100644 --- a/MediaBrowser.Model/Drawing/ImageOrientation.cs +++ b/MediaBrowser.Model/Drawing/ImageOrientation.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Drawing { public enum ImageOrientation diff --git a/MediaBrowser.Model/Drawing/ImageSize.cs b/MediaBrowser.Model/Drawing/ImageSize.cs index c2b0291bd..87764bbf4 100644 --- a/MediaBrowser.Model/Drawing/ImageSize.cs +++ b/MediaBrowser.Model/Drawing/ImageSize.cs @@ -16,14 +16,8 @@ namespace MediaBrowser.Model.Drawing /// <value>The height.</value> public double Height { - get - { - return _height; - } - set - { - _height = value; - } + get => _height; + set => _height = value; } /// <summary> @@ -32,8 +26,8 @@ namespace MediaBrowser.Model.Drawing /// <value>The width.</value> public double Width { - get { return _width; } - set { _width = value; } + get => _width; + set => _width = value; } public bool Equals(ImageSize size) @@ -75,9 +69,7 @@ namespace MediaBrowser.Model.Drawing if (parts.Length == 2) { - double val; - - if (double.TryParse(parts[0], NumberStyles.Any, CultureInfo.InvariantCulture, out val)) + if (double.TryParse(parts[0], NumberStyles.Any, CultureInfo.InvariantCulture, out var val)) { _width = val; } @@ -90,4 +82,4 @@ namespace MediaBrowser.Model.Drawing } } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dto/BaseItemDto.cs b/MediaBrowser.Model/Dto/BaseItemDto.cs index 7ff883798..3e267a39d 100644 --- a/MediaBrowser.Model/Dto/BaseItemDto.cs +++ b/MediaBrowser.Model/Dto/BaseItemDto.cs @@ -1,11 +1,10 @@ -using MediaBrowser.Model.Drawing; +using System; +using System.Collections.Generic; +using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Library; using MediaBrowser.Model.LiveTv; using MediaBrowser.Model.Providers; -using System; -using System.Collections.Generic; namespace MediaBrowser.Model.Dto { diff --git a/MediaBrowser.Model/Dto/BaseItemPerson.cs b/MediaBrowser.Model/Dto/BaseItemPerson.cs index 35b4e9249..7011ff8ea 100644 --- a/MediaBrowser.Model/Dto/BaseItemPerson.cs +++ b/MediaBrowser.Model/Dto/BaseItemPerson.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Serialization; +using MediaBrowser.Model.Serialization; namespace MediaBrowser.Model.Dto { @@ -42,12 +42,6 @@ namespace MediaBrowser.Model.Dto /// </summary> /// <value><c>true</c> if this instance has primary image; otherwise, <c>false</c>.</value> [IgnoreDataMember] - public bool HasPrimaryImage - { - get - { - return PrimaryImageTag != null; - } - } + public bool HasPrimaryImage => PrimaryImageTag != null; } } diff --git a/MediaBrowser.Model/Dto/GameSystemSummary.cs b/MediaBrowser.Model/Dto/GameSystemSummary.cs index b42e98842..e2400a744 100644 --- a/MediaBrowser.Model/Dto/GameSystemSummary.cs +++ b/MediaBrowser.Model/Dto/GameSystemSummary.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Dto { diff --git a/MediaBrowser.Model/Dto/IHasServerId.cs b/MediaBrowser.Model/Dto/IHasServerId.cs index 0515203da..2cce5df62 100644 --- a/MediaBrowser.Model/Dto/IHasServerId.cs +++ b/MediaBrowser.Model/Dto/IHasServerId.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Dto { public interface IHasServerId diff --git a/MediaBrowser.Model/Dto/IItemDto.cs b/MediaBrowser.Model/Dto/IItemDto.cs index 3e7d1c608..0130adb6f 100644 --- a/MediaBrowser.Model/Dto/IItemDto.cs +++ b/MediaBrowser.Model/Dto/IItemDto.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Dto { /// <summary> diff --git a/MediaBrowser.Model/Dto/ImageByNameInfo.cs b/MediaBrowser.Model/Dto/ImageByNameInfo.cs index b7921d993..2bda8bf20 100644 --- a/MediaBrowser.Model/Dto/ImageByNameInfo.cs +++ b/MediaBrowser.Model/Dto/ImageByNameInfo.cs @@ -1,4 +1,4 @@ - + namespace MediaBrowser.Model.Dto { public class ImageByNameInfo diff --git a/MediaBrowser.Model/Dto/ImageInfo.cs b/MediaBrowser.Model/Dto/ImageInfo.cs index 5eabb16a5..792eaff03 100644 --- a/MediaBrowser.Model/Dto/ImageInfo.cs +++ b/MediaBrowser.Model/Dto/ImageInfo.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Dto { diff --git a/MediaBrowser.Model/Dto/ImageOptions.cs b/MediaBrowser.Model/Dto/ImageOptions.cs index e98d54435..1fd4a5383 100644 --- a/MediaBrowser.Model/Dto/ImageOptions.cs +++ b/MediaBrowser.Model/Dto/ImageOptions.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Drawing; +using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Dto diff --git a/MediaBrowser.Model/Dto/ItemCounts.cs b/MediaBrowser.Model/Dto/ItemCounts.cs index 8ceb3a86b..da941d258 100644 --- a/MediaBrowser.Model/Dto/ItemCounts.cs +++ b/MediaBrowser.Model/Dto/ItemCounts.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Dto +namespace MediaBrowser.Model.Dto { /// <summary> /// Class LibrarySummary diff --git a/MediaBrowser.Model/Dto/ItemIndex.cs b/MediaBrowser.Model/Dto/ItemIndex.cs index 96cef622b..21e14c73e 100644 --- a/MediaBrowser.Model/Dto/ItemIndex.cs +++ b/MediaBrowser.Model/Dto/ItemIndex.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Dto { /// <summary> diff --git a/MediaBrowser.Model/Dto/MediaSourceInfo.cs b/MediaBrowser.Model/Dto/MediaSourceInfo.cs index be9c2dff3..92e40fb01 100644 --- a/MediaBrowser.Model/Dto/MediaSourceInfo.cs +++ b/MediaBrowser.Model/Dto/MediaSourceInfo.cs @@ -1,9 +1,9 @@ -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.MediaInfo; +using System; using System.Collections.Generic; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Session; -using System; namespace MediaBrowser.Model.Dto { @@ -120,7 +120,7 @@ namespace MediaBrowser.Model.Dto { var val = defaultIndex.Value; - foreach (MediaStream i in MediaStreams) + foreach (var i in MediaStreams) { if (i.Type == MediaStreamType.Audio && i.Index == val) { @@ -129,7 +129,7 @@ namespace MediaBrowser.Model.Dto } } - foreach (MediaStream i in MediaStreams) + foreach (var i in MediaStreams) { if (i.Type == MediaStreamType.Audio && i.IsDefault) { @@ -137,7 +137,7 @@ namespace MediaBrowser.Model.Dto } } - foreach (MediaStream i in MediaStreams) + foreach (var i in MediaStreams) { if (i.Type == MediaStreamType.Audio) { @@ -153,7 +153,7 @@ namespace MediaBrowser.Model.Dto { get { - foreach (MediaStream i in MediaStreams) + foreach (var i in MediaStreams) { if (i.Type == MediaStreamType.Video) { @@ -167,7 +167,7 @@ namespace MediaBrowser.Model.Dto public MediaStream GetMediaStream(MediaStreamType type, int index) { - foreach (MediaStream i in MediaStreams) + foreach (var i in MediaStreams) { if (i.Type == type && i.Index == index) { @@ -183,7 +183,7 @@ namespace MediaBrowser.Model.Dto int numMatches = 0; int numStreams = 0; - foreach (MediaStream i in MediaStreams) + foreach (var i in MediaStreams) { numStreams++; if (i.Type == type) @@ -203,7 +203,7 @@ namespace MediaBrowser.Model.Dto public bool? IsSecondaryAudio(MediaStream stream) { // Look for the first audio track marked as default - foreach (MediaStream currentStream in MediaStreams) + foreach (var currentStream in MediaStreams) { if (currentStream.Type == MediaStreamType.Audio && currentStream.IsDefault) { @@ -215,7 +215,7 @@ namespace MediaBrowser.Model.Dto } // Look for the first audio track - foreach (MediaStream currentStream in MediaStreams) + foreach (var currentStream in MediaStreams) { if (currentStream.Type == MediaStreamType.Audio) { diff --git a/MediaBrowser.Model/Dto/MediaSourceType.cs b/MediaBrowser.Model/Dto/MediaSourceType.cs index e04978502..b643cad9a 100644 --- a/MediaBrowser.Model/Dto/MediaSourceType.cs +++ b/MediaBrowser.Model/Dto/MediaSourceType.cs @@ -6,4 +6,4 @@ namespace MediaBrowser.Model.Dto Grouping = 1, Placeholder = 2 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dto/MetadataEditorInfo.cs b/MediaBrowser.Model/Dto/MetadataEditorInfo.cs index b7093da71..46bcb62f4 100644 --- a/MediaBrowser.Model/Dto/MetadataEditorInfo.cs +++ b/MediaBrowser.Model/Dto/MetadataEditorInfo.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Model.Entities; +using System; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; using MediaBrowser.Model.Providers; -using System; namespace MediaBrowser.Model.Dto { diff --git a/MediaBrowser.Model/Dto/NameIdPair.cs b/MediaBrowser.Model/Dto/NameIdPair.cs index 50318ac95..ccd42f17f 100644 --- a/MediaBrowser.Model/Dto/NameIdPair.cs +++ b/MediaBrowser.Model/Dto/NameIdPair.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Dto { diff --git a/MediaBrowser.Model/Dto/NameValuePair.cs b/MediaBrowser.Model/Dto/NameValuePair.cs index 564e32dcd..624763211 100644 --- a/MediaBrowser.Model/Dto/NameValuePair.cs +++ b/MediaBrowser.Model/Dto/NameValuePair.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Dto { public class NameValuePair diff --git a/MediaBrowser.Model/Dto/RatingType.cs b/MediaBrowser.Model/Dto/RatingType.cs index f151adce9..fc1f7ea0f 100644 --- a/MediaBrowser.Model/Dto/RatingType.cs +++ b/MediaBrowser.Model/Dto/RatingType.cs @@ -5,4 +5,4 @@ namespace MediaBrowser.Model.Dto Score, Likes } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dto/RecommendationDto.cs b/MediaBrowser.Model/Dto/RecommendationDto.cs index 79d3d6c6f..0a890573b 100644 --- a/MediaBrowser.Model/Dto/RecommendationDto.cs +++ b/MediaBrowser.Model/Dto/RecommendationDto.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Dto { diff --git a/MediaBrowser.Model/Dto/RecommendationType.cs b/MediaBrowser.Model/Dto/RecommendationType.cs index 1adf9b082..55a0a8091 100644 --- a/MediaBrowser.Model/Dto/RecommendationType.cs +++ b/MediaBrowser.Model/Dto/RecommendationType.cs @@ -14,4 +14,4 @@ namespace MediaBrowser.Model.Dto HasLikedActor = 5 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Dto/UserDto.cs b/MediaBrowser.Model/Dto/UserDto.cs index eb4979632..b00f5919f 100644 --- a/MediaBrowser.Model/Dto/UserDto.cs +++ b/MediaBrowser.Model/Dto/UserDto.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Model.Configuration; +using System; +using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Connect; using MediaBrowser.Model.Users; -using System; namespace MediaBrowser.Model.Dto { diff --git a/MediaBrowser.Model/Dto/UserItemDataDto.cs b/MediaBrowser.Model/Dto/UserItemDataDto.cs index 507dbb06d..fa512e94c 100644 --- a/MediaBrowser.Model/Dto/UserItemDataDto.cs +++ b/MediaBrowser.Model/Dto/UserItemDataDto.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Dto { diff --git a/MediaBrowser.Model/Entities/ChapterInfo.cs b/MediaBrowser.Model/Entities/ChapterInfo.cs index c24ca553b..dfd6fdf4a 100644 --- a/MediaBrowser.Model/Entities/ChapterInfo.cs +++ b/MediaBrowser.Model/Entities/ChapterInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Entities { diff --git a/MediaBrowser.Model/Entities/CollectionType.cs b/MediaBrowser.Model/Entities/CollectionType.cs index f49e73c16..bda166118 100644 --- a/MediaBrowser.Model/Entities/CollectionType.cs +++ b/MediaBrowser.Model/Entities/CollectionType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Entities +namespace MediaBrowser.Model.Entities { public static class CollectionType { @@ -55,4 +55,4 @@ public const string MusicFavoriteAlbums = "MusicFavoriteAlbums"; public const string MusicFavoriteSongs = "MusicFavoriteSongs"; } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Entities/DisplayPreferences.cs b/MediaBrowser.Model/Entities/DisplayPreferences.cs index dc386f775..f9b3ac7b3 100644 --- a/MediaBrowser.Model/Entities/DisplayPreferences.cs +++ b/MediaBrowser.Model/Entities/DisplayPreferences.cs @@ -1,5 +1,3 @@ -using MediaBrowser.Model.Drawing; -using System; using System.Collections.Generic; namespace MediaBrowser.Model.Entities diff --git a/MediaBrowser.Model/Entities/EmptyRequestResult.cs b/MediaBrowser.Model/Entities/EmptyRequestResult.cs index 5c9a725fd..5d29218e3 100644 --- a/MediaBrowser.Model/Entities/EmptyRequestResult.cs +++ b/MediaBrowser.Model/Entities/EmptyRequestResult.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { public class EmptyRequestResult diff --git a/MediaBrowser.Model/Entities/ExtraType.cs b/MediaBrowser.Model/Entities/ExtraType.cs index ab8da58c0..97350b955 100644 --- a/MediaBrowser.Model/Entities/ExtraType.cs +++ b/MediaBrowser.Model/Entities/ExtraType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { public enum ExtraType diff --git a/MediaBrowser.Model/Entities/IHasProviderIds.cs b/MediaBrowser.Model/Entities/IHasProviderIds.cs index 796850dbd..3b8d74cb4 100644 --- a/MediaBrowser.Model/Entities/IHasProviderIds.cs +++ b/MediaBrowser.Model/Entities/IHasProviderIds.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace MediaBrowser.Model.Entities { diff --git a/MediaBrowser.Model/Entities/ImageType.cs b/MediaBrowser.Model/Entities/ImageType.cs index 6e0ba717f..ce3560e78 100644 --- a/MediaBrowser.Model/Entities/ImageType.cs +++ b/MediaBrowser.Model/Entities/ImageType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/IsoType.cs b/MediaBrowser.Model/Entities/IsoType.cs index 567b98ab9..8e4f0d63a 100644 --- a/MediaBrowser.Model/Entities/IsoType.cs +++ b/MediaBrowser.Model/Entities/IsoType.cs @@ -14,4 +14,4 @@ namespace MediaBrowser.Model.Entities /// </summary> BluRay } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Entities/LibraryUpdateInfo.cs b/MediaBrowser.Model/Entities/LibraryUpdateInfo.cs index 2ae7bead2..b83df87e2 100644 --- a/MediaBrowser.Model/Entities/LibraryUpdateInfo.cs +++ b/MediaBrowser.Model/Entities/LibraryUpdateInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Entities { @@ -38,13 +38,7 @@ namespace MediaBrowser.Model.Entities public string[] CollectionFolders { get; set; } - public bool IsEmpty - { - get - { - return FoldersAddedTo.Length == 0 && FoldersRemovedFrom.Length == 0 && ItemsAdded.Length == 0 && ItemsRemoved.Length == 0 && ItemsUpdated.Length == 0 && CollectionFolders.Length == 0; - } - } + public bool IsEmpty => FoldersAddedTo.Length == 0 && FoldersRemovedFrom.Length == 0 && ItemsAdded.Length == 0 && ItemsRemoved.Length == 0 && ItemsUpdated.Length == 0 && CollectionFolders.Length == 0; /// <summary> /// Initializes a new instance of the <see cref="LibraryUpdateInfo"/> class. diff --git a/MediaBrowser.Model/Entities/LocationType.cs b/MediaBrowser.Model/Entities/LocationType.cs index 84de803aa..52c08b28b 100644 --- a/MediaBrowser.Model/Entities/LocationType.cs +++ b/MediaBrowser.Model/Entities/LocationType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/MediaStream.cs b/MediaBrowser.Model/Entities/MediaStream.cs index 454e6ff16..e0c3bead1 100644 --- a/MediaBrowser.Model/Entities/MediaStream.cs +++ b/MediaBrowser.Model/Entities/MediaStream.cs @@ -1,10 +1,9 @@ -using System; -using System.Linq; +using System; using System.Collections.Generic; +using System.Globalization; using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.MediaInfo; -using System.Globalization; namespace MediaBrowser.Model.Entities { @@ -77,7 +76,7 @@ namespace MediaBrowser.Model.Entities // return AddLanguageIfNeeded(Title); //} - List<string> attributes = new List<string>(); + var attributes = new List<string>(); if (!string.IsNullOrEmpty(Language)) { @@ -110,7 +109,7 @@ namespace MediaBrowser.Model.Entities if (Type == MediaStreamType.Video) { - List<string> attributes = new List<string>(); + var attributes = new List<string>(); var resolutionText = GetResolutionText(); @@ -134,7 +133,7 @@ namespace MediaBrowser.Model.Entities // return AddLanguageIfNeeded(Title); //} - List<string> attributes = new List<string>(); + var attributes = new List<string>(); if (!string.IsNullOrEmpty(Language)) { diff --git a/MediaBrowser.Model/Entities/MediaStreamType.cs b/MediaBrowser.Model/Entities/MediaStreamType.cs index 084a411f9..4fc1e5372 100644 --- a/MediaBrowser.Model/Entities/MediaStreamType.cs +++ b/MediaBrowser.Model/Entities/MediaStreamType.cs @@ -22,4 +22,4 @@ namespace MediaBrowser.Model.Entities /// </summary> EmbeddedImage } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Entities/MediaType.cs b/MediaBrowser.Model/Entities/MediaType.cs index 0c9bde6fb..af233e61e 100644 --- a/MediaBrowser.Model/Entities/MediaType.cs +++ b/MediaBrowser.Model/Entities/MediaType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/MediaUrl.cs b/MediaBrowser.Model/Entities/MediaUrl.cs index 2e17bba8a..428c895b6 100644 --- a/MediaBrowser.Model/Entities/MediaUrl.cs +++ b/MediaBrowser.Model/Entities/MediaUrl.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { public class MediaUrl diff --git a/MediaBrowser.Model/Entities/MetadataFields.cs b/MediaBrowser.Model/Entities/MetadataFields.cs index 85f2da31e..a7947a933 100644 --- a/MediaBrowser.Model/Entities/MetadataFields.cs +++ b/MediaBrowser.Model/Entities/MetadataFields.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/MetadataProviders.cs b/MediaBrowser.Model/Entities/MetadataProviders.cs index efd4339d5..399961603 100644 --- a/MediaBrowser.Model/Entities/MetadataProviders.cs +++ b/MediaBrowser.Model/Entities/MetadataProviders.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/PackageReviewInfo.cs b/MediaBrowser.Model/Entities/PackageReviewInfo.cs index 52500a41e..b73ba8dd0 100644 --- a/MediaBrowser.Model/Entities/PackageReviewInfo.cs +++ b/MediaBrowser.Model/Entities/PackageReviewInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Entities { diff --git a/MediaBrowser.Model/Entities/ParentalRating.cs b/MediaBrowser.Model/Entities/ParentalRating.cs index 302c1e299..a22e119fa 100644 --- a/MediaBrowser.Model/Entities/ParentalRating.cs +++ b/MediaBrowser.Model/Entities/ParentalRating.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/PersonType.cs b/MediaBrowser.Model/Entities/PersonType.cs index bc274972d..72e3538fc 100644 --- a/MediaBrowser.Model/Entities/PersonType.cs +++ b/MediaBrowser.Model/Entities/PersonType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/ProviderIdsExtensions.cs b/MediaBrowser.Model/Entities/ProviderIdsExtensions.cs index 3f8873798..a151bb3bb 100644 --- a/MediaBrowser.Model/Entities/ProviderIdsExtensions.cs +++ b/MediaBrowser.Model/Entities/ProviderIdsExtensions.cs @@ -48,8 +48,7 @@ namespace MediaBrowser.Model.Entities return null; } - string id; - instance.ProviderIds.TryGetValue(name, out id); + instance.ProviderIds.TryGetValue(name, out string id); return id; } @@ -100,4 +99,4 @@ namespace MediaBrowser.Model.Entities instance.SetProviderId(provider.ToString(), value); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Entities/ScrollDirection.cs b/MediaBrowser.Model/Entities/ScrollDirection.cs index ed2210300..bc66364f7 100644 --- a/MediaBrowser.Model/Entities/ScrollDirection.cs +++ b/MediaBrowser.Model/Entities/ScrollDirection.cs @@ -14,4 +14,4 @@ namespace MediaBrowser.Model.Entities /// </summary> Vertical } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Entities/SeriesStatus.cs b/MediaBrowser.Model/Entities/SeriesStatus.cs index d04a2856c..cab6a83e8 100644 --- a/MediaBrowser.Model/Entities/SeriesStatus.cs +++ b/MediaBrowser.Model/Entities/SeriesStatus.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/SortOrder.cs b/MediaBrowser.Model/Entities/SortOrder.cs index 5130449ba..558ebeac2 100644 --- a/MediaBrowser.Model/Entities/SortOrder.cs +++ b/MediaBrowser.Model/Entities/SortOrder.cs @@ -14,4 +14,4 @@ namespace MediaBrowser.Model.Entities /// </summary> Descending } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Entities/TrailerType.cs b/MediaBrowser.Model/Entities/TrailerType.cs index 085f461cf..73be5d7ca 100644 --- a/MediaBrowser.Model/Entities/TrailerType.cs +++ b/MediaBrowser.Model/Entities/TrailerType.cs @@ -8,4 +8,4 @@ namespace MediaBrowser.Model.Entities Archive = 4, LocalTrailer = 5 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Entities/UserDataSaveReason.cs b/MediaBrowser.Model/Entities/UserDataSaveReason.cs index d9691f395..bd7471682 100644 --- a/MediaBrowser.Model/Entities/UserDataSaveReason.cs +++ b/MediaBrowser.Model/Entities/UserDataSaveReason.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/Video3DFormat.cs b/MediaBrowser.Model/Entities/Video3DFormat.cs index 722df4281..89923ae52 100644 --- a/MediaBrowser.Model/Entities/Video3DFormat.cs +++ b/MediaBrowser.Model/Entities/Video3DFormat.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { public enum Video3DFormat diff --git a/MediaBrowser.Model/Entities/VideoType.cs b/MediaBrowser.Model/Entities/VideoType.cs index 05c2fa32c..95d69fb7b 100644 --- a/MediaBrowser.Model/Entities/VideoType.cs +++ b/MediaBrowser.Model/Entities/VideoType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Entities { /// <summary> diff --git a/MediaBrowser.Model/Entities/VirtualFolderInfo.cs b/MediaBrowser.Model/Entities/VirtualFolderInfo.cs index c8374f620..6bdbdb489 100644 --- a/MediaBrowser.Model/Entities/VirtualFolderInfo.cs +++ b/MediaBrowser.Model/Entities/VirtualFolderInfo.cs @@ -1,6 +1,5 @@ -using System.Collections.Generic; -using MediaBrowser.Model.Configuration; using System; +using MediaBrowser.Model.Configuration; namespace MediaBrowser.Model.Entities { diff --git a/MediaBrowser.Model/Events/GenericEventArgs.cs b/MediaBrowser.Model/Events/GenericEventArgs.cs index 3c558577a..fc8bc620f 100644 --- a/MediaBrowser.Model/Events/GenericEventArgs.cs +++ b/MediaBrowser.Model/Events/GenericEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Events { diff --git a/MediaBrowser.Model/Extensions/LinqExtensions.cs b/MediaBrowser.Model/Extensions/LinqExtensions.cs index 4e33edb41..f0febf1d0 100644 --- a/MediaBrowser.Model/Extensions/LinqExtensions.cs +++ b/MediaBrowser.Model/Extensions/LinqExtensions.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; // TODO: @bond Remove diff --git a/MediaBrowser.Model/Extensions/ListHelper.cs b/MediaBrowser.Model/Extensions/ListHelper.cs index 68379d463..b5bd07702 100644 --- a/MediaBrowser.Model/Extensions/ListHelper.cs +++ b/MediaBrowser.Model/Extensions/ListHelper.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Extensions { diff --git a/MediaBrowser.Model/Extensions/StringHelper.cs b/MediaBrowser.Model/Extensions/StringHelper.cs index fa79d09db..78e23e767 100644 --- a/MediaBrowser.Model/Extensions/StringHelper.cs +++ b/MediaBrowser.Model/Extensions/StringHelper.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Text; namespace MediaBrowser.Model.Extensions diff --git a/MediaBrowser.Model/Globalization/CountryInfo.cs b/MediaBrowser.Model/Globalization/CountryInfo.cs index 16aea8436..3ae59494f 100644 --- a/MediaBrowser.Model/Globalization/CountryInfo.cs +++ b/MediaBrowser.Model/Globalization/CountryInfo.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Globalization { /// <summary> diff --git a/MediaBrowser.Model/Globalization/CultureDto.cs b/MediaBrowser.Model/Globalization/CultureDto.cs index c0eb8b2ad..f229f2055 100644 --- a/MediaBrowser.Model/Globalization/CultureDto.cs +++ b/MediaBrowser.Model/Globalization/CultureDto.cs @@ -1,4 +1,4 @@ -using global::System; +using global::System; namespace MediaBrowser.Model.Globalization { diff --git a/MediaBrowser.Model/Globalization/ILocalizationManager.cs b/MediaBrowser.Model/Globalization/ILocalizationManager.cs index 9c7a937f3..a2531e504 100644 --- a/MediaBrowser.Model/Globalization/ILocalizationManager.cs +++ b/MediaBrowser.Model/Globalization/ILocalizationManager.cs @@ -1,6 +1,5 @@ -using System.Collections.Generic; -using MediaBrowser.Model.Entities; using System.Globalization; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Globalization { diff --git a/MediaBrowser.Model/Globalization/LocalizatonOption.cs b/MediaBrowser.Model/Globalization/LocalizatonOption.cs index 61749cbc3..7fbc8135d 100644 --- a/MediaBrowser.Model/Globalization/LocalizatonOption.cs +++ b/MediaBrowser.Model/Globalization/LocalizatonOption.cs @@ -5,4 +5,4 @@ namespace MediaBrowser.Model.Globalization public string Name { get; set; } public string Value { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/IO/FileSystemEntryInfo.cs b/MediaBrowser.Model/IO/FileSystemEntryInfo.cs index f17e2e5c3..a197f0fbe 100644 --- a/MediaBrowser.Model/IO/FileSystemEntryInfo.cs +++ b/MediaBrowser.Model/IO/FileSystemEntryInfo.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.IO { /// <summary> diff --git a/MediaBrowser.Model/IO/FileSystemEntryType.cs b/MediaBrowser.Model/IO/FileSystemEntryType.cs index e7c67c606..a4ed2334d 100644 --- a/MediaBrowser.Model/IO/FileSystemEntryType.cs +++ b/MediaBrowser.Model/IO/FileSystemEntryType.cs @@ -22,4 +22,4 @@ namespace MediaBrowser.Model.IO /// </summary> NetworkShare } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/IO/FileSystemMetadata.cs b/MediaBrowser.Model/IO/FileSystemMetadata.cs index 665bc255c..2a6d13959 100644 --- a/MediaBrowser.Model/IO/FileSystemMetadata.cs +++ b/MediaBrowser.Model/IO/FileSystemMetadata.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.IO { diff --git a/MediaBrowser.Model/IO/IFileSystem.cs b/MediaBrowser.Model/IO/IFileSystem.cs index 37fca6ea1..b8a315ccc 100644 --- a/MediaBrowser.Model/IO/IFileSystem.cs +++ b/MediaBrowser.Model/IO/IFileSystem.cs @@ -201,7 +201,7 @@ namespace MediaBrowser.Model.IO /// </summary> IEnumerable<FileSystemMetadata> GetFiles(string path, bool recursive = false); - IEnumerable<FileSystemMetadata> GetFiles(string path, string [] extensions, bool enableCaseSensitiveExtensions, bool recursive); + IEnumerable<FileSystemMetadata> GetFiles(string path, string[] extensions, bool enableCaseSensitiveExtensions, bool recursive); /// <summary> /// Gets the file system entries. diff --git a/MediaBrowser.Model/IO/IIsoManager.cs b/MediaBrowser.Model/IO/IIsoManager.cs index 92c4d5aee..24b6e5f05 100644 --- a/MediaBrowser.Model/IO/IIsoManager.cs +++ b/MediaBrowser.Model/IO/IIsoManager.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Threading; @@ -31,4 +31,4 @@ namespace MediaBrowser.Model.IO /// <param name="mounters">The mounters.</param> void AddParts(IEnumerable<IIsoMounter> mounters); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/IO/IIsoMount.cs b/MediaBrowser.Model/IO/IIsoMount.cs index 4f8f8b5d2..825c0c243 100644 --- a/MediaBrowser.Model/IO/IIsoMount.cs +++ b/MediaBrowser.Model/IO/IIsoMount.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.IO { @@ -19,4 +19,4 @@ namespace MediaBrowser.Model.IO /// <value>The mounted path.</value> string MountedPath { get; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/IO/IShortcutHandler.cs b/MediaBrowser.Model/IO/IShortcutHandler.cs index 16255e51f..2cc18274b 100644 --- a/MediaBrowser.Model/IO/IShortcutHandler.cs +++ b/MediaBrowser.Model/IO/IShortcutHandler.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.IO { public interface IShortcutHandler diff --git a/MediaBrowser.Model/IO/IStreamHelper.cs b/MediaBrowser.Model/IO/IStreamHelper.cs index 7ed6015c0..97d985df6 100644 --- a/MediaBrowser.Model/IO/IStreamHelper.cs +++ b/MediaBrowser.Model/IO/IStreamHelper.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Threading; using System.Threading.Tasks; diff --git a/MediaBrowser.Model/IO/IZipClient.cs b/MediaBrowser.Model/IO/IZipClient.cs index c1dfc6cd6..eaddd6df3 100644 --- a/MediaBrowser.Model/IO/IZipClient.cs +++ b/MediaBrowser.Model/IO/IZipClient.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; namespace MediaBrowser.Model.IO { diff --git a/MediaBrowser.Model/IO/StreamDefaults.cs b/MediaBrowser.Model/IO/StreamDefaults.cs index 1e99ff4b5..bef20e74f 100644 --- a/MediaBrowser.Model/IO/StreamDefaults.cs +++ b/MediaBrowser.Model/IO/StreamDefaults.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.IO { /// <summary> diff --git a/MediaBrowser.Model/Library/PlayAccess.cs b/MediaBrowser.Model/Library/PlayAccess.cs index 6ec845fc7..2fd754f5e 100644 --- a/MediaBrowser.Model/Library/PlayAccess.cs +++ b/MediaBrowser.Model/Library/PlayAccess.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Library { public enum PlayAccess diff --git a/MediaBrowser.Model/Library/UserViewQuery.cs b/MediaBrowser.Model/Library/UserViewQuery.cs index 9801b8e8e..c2e189603 100644 --- a/MediaBrowser.Model/Library/UserViewQuery.cs +++ b/MediaBrowser.Model/Library/UserViewQuery.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Library { diff --git a/MediaBrowser.Model/LiveTv/BaseTimerInfoDto.cs b/MediaBrowser.Model/LiveTv/BaseTimerInfoDto.cs index b5bd6ced0..311b5b0c5 100644 --- a/MediaBrowser.Model/LiveTv/BaseTimerInfoDto.cs +++ b/MediaBrowser.Model/LiveTv/BaseTimerInfoDto.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Model.Dto; using System; -using System.Collections.Generic; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.LiveTv { @@ -124,4 +123,4 @@ namespace MediaBrowser.Model.LiveTv public bool IsPostPaddingRequired { get; set; } public KeepUntil KeepUntil { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/LiveTv/ChannelType.cs b/MediaBrowser.Model/LiveTv/ChannelType.cs index bca16f839..8808aa6d2 100644 --- a/MediaBrowser.Model/LiveTv/ChannelType.cs +++ b/MediaBrowser.Model/LiveTv/ChannelType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.LiveTv { /// <summary> diff --git a/MediaBrowser.Model/LiveTv/DayPattern.cs b/MediaBrowser.Model/LiveTv/DayPattern.cs index 8251795dc..73b15507b 100644 --- a/MediaBrowser.Model/LiveTv/DayPattern.cs +++ b/MediaBrowser.Model/LiveTv/DayPattern.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.LiveTv +namespace MediaBrowser.Model.LiveTv { public enum DayPattern { @@ -6,4 +6,4 @@ Weekdays, Weekends } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/LiveTv/GuideInfo.cs b/MediaBrowser.Model/LiveTv/GuideInfo.cs index c21f6d871..1303c278e 100644 --- a/MediaBrowser.Model/LiveTv/GuideInfo.cs +++ b/MediaBrowser.Model/LiveTv/GuideInfo.cs @@ -16,4 +16,4 @@ namespace MediaBrowser.Model.LiveTv /// <value>The end date.</value> public DateTime EndDate { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/LiveTv/LiveTvChannelQuery.cs b/MediaBrowser.Model/LiveTv/LiveTvChannelQuery.cs index a9546bb95..eedf89db0 100644 --- a/MediaBrowser.Model/LiveTv/LiveTvChannelQuery.cs +++ b/MediaBrowser.Model/LiveTv/LiveTvChannelQuery.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Entities; using System; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.LiveTv { diff --git a/MediaBrowser.Model/LiveTv/LiveTvInfo.cs b/MediaBrowser.Model/LiveTv/LiveTvInfo.cs index 68281d79b..60cb27331 100644 --- a/MediaBrowser.Model/LiveTv/LiveTvInfo.cs +++ b/MediaBrowser.Model/LiveTv/LiveTvInfo.cs @@ -1,4 +1,3 @@ -using System.Collections.Generic; using System; namespace MediaBrowser.Model.LiveTv diff --git a/MediaBrowser.Model/LiveTv/LiveTvOptions.cs b/MediaBrowser.Model/LiveTv/LiveTvOptions.cs index 6a688c7b4..36fe0c3d2 100644 --- a/MediaBrowser.Model/LiveTv/LiveTvOptions.cs +++ b/MediaBrowser.Model/LiveTv/LiveTvOptions.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Dto; using System; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.LiveTv { @@ -76,10 +76,10 @@ namespace MediaBrowser.Model.LiveTv public ListingsProviderInfo() { - NewsCategories = new [] { "news", "journalism", "documentary", "current affairs" }; - SportsCategories = new [] { "sports", "basketball", "baseball", "football" }; - KidsCategories = new [] { "kids", "family", "children", "childrens", "disney" }; - MovieCategories = new [] { "movie" }; + 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 = Array.Empty<NameValuePair>(); diff --git a/MediaBrowser.Model/LiveTv/LiveTvServiceInfo.cs b/MediaBrowser.Model/LiveTv/LiveTvServiceInfo.cs index 4b7ee971c..9ad13391a 100644 --- a/MediaBrowser.Model/LiveTv/LiveTvServiceInfo.cs +++ b/MediaBrowser.Model/LiveTv/LiveTvServiceInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.LiveTv { diff --git a/MediaBrowser.Model/LiveTv/LiveTvServiceStatus.cs b/MediaBrowser.Model/LiveTv/LiveTvServiceStatus.cs index 20fe84500..7578f329a 100644 --- a/MediaBrowser.Model/LiveTv/LiveTvServiceStatus.cs +++ b/MediaBrowser.Model/LiveTv/LiveTvServiceStatus.cs @@ -5,4 +5,4 @@ namespace MediaBrowser.Model.LiveTv Ok = 0, Unavailable = 1 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/LiveTv/LiveTvTunerStatus.cs b/MediaBrowser.Model/LiveTv/LiveTvTunerStatus.cs index 055199fca..f7f521e43 100644 --- a/MediaBrowser.Model/LiveTv/LiveTvTunerStatus.cs +++ b/MediaBrowser.Model/LiveTv/LiveTvTunerStatus.cs @@ -7,4 +7,4 @@ namespace MediaBrowser.Model.LiveTv RecordingTv = 2, LiveTv = 3 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/LiveTv/ProgramAudio.cs b/MediaBrowser.Model/LiveTv/ProgramAudio.cs index 9a272492c..158d67eb9 100644 --- a/MediaBrowser.Model/LiveTv/ProgramAudio.cs +++ b/MediaBrowser.Model/LiveTv/ProgramAudio.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.LiveTv +namespace MediaBrowser.Model.LiveTv { public enum ProgramAudio { @@ -9,4 +9,4 @@ Thx, Atmos } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/LiveTv/RecordingQuery.cs b/MediaBrowser.Model/LiveTv/RecordingQuery.cs index 7d20441a5..f98d7fe86 100644 --- a/MediaBrowser.Model/LiveTv/RecordingQuery.cs +++ b/MediaBrowser.Model/LiveTv/RecordingQuery.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Querying; using System; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Model.LiveTv { diff --git a/MediaBrowser.Model/LiveTv/RecordingStatus.cs b/MediaBrowser.Model/LiveTv/RecordingStatus.cs index 496e6f421..d3270c4d3 100644 --- a/MediaBrowser.Model/LiveTv/RecordingStatus.cs +++ b/MediaBrowser.Model/LiveTv/RecordingStatus.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.LiveTv { public enum RecordingStatus diff --git a/MediaBrowser.Model/LiveTv/SeriesTimerInfoDto.cs b/MediaBrowser.Model/LiveTv/SeriesTimerInfoDto.cs index 593996352..72c7a0c90 100644 --- a/MediaBrowser.Model/LiveTv/SeriesTimerInfoDto.cs +++ b/MediaBrowser.Model/LiveTv/SeriesTimerInfoDto.cs @@ -1,7 +1,6 @@ -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; -using MediaBrowser.Model.Serialization; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.LiveTv { diff --git a/MediaBrowser.Model/LiveTv/SeriesTimerQuery.cs b/MediaBrowser.Model/LiveTv/SeriesTimerQuery.cs index 95260cc0e..a15ba7a12 100644 --- a/MediaBrowser.Model/LiveTv/SeriesTimerQuery.cs +++ b/MediaBrowser.Model/LiveTv/SeriesTimerQuery.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.LiveTv { @@ -16,4 +16,4 @@ namespace MediaBrowser.Model.LiveTv /// <value>The sort order.</value> public SortOrder SortOrder { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/LiveTv/TimerInfoDto.cs b/MediaBrowser.Model/LiveTv/TimerInfoDto.cs index d1aa3118f..208f731c5 100644 --- a/MediaBrowser.Model/LiveTv/TimerInfoDto.cs +++ b/MediaBrowser.Model/LiveTv/TimerInfoDto.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.LiveTv { diff --git a/MediaBrowser.Model/LiveTv/TimerQuery.cs b/MediaBrowser.Model/LiveTv/TimerQuery.cs index c6202680c..1478cc148 100644 --- a/MediaBrowser.Model/LiveTv/TimerQuery.cs +++ b/MediaBrowser.Model/LiveTv/TimerQuery.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.LiveTv +namespace MediaBrowser.Model.LiveTv { public class TimerQuery { @@ -20,4 +20,4 @@ public bool? IsScheduled { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/MediaBrowser.Model.csproj b/MediaBrowser.Model/MediaBrowser.Model.csproj index 4aacc4a49..f17fd7159 100644 --- a/MediaBrowser.Model/MediaBrowser.Model.csproj +++ b/MediaBrowser.Model/MediaBrowser.Model.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <Authors>Jellyfin Contributors</Authors> diff --git a/MediaBrowser.Model/MediaInfo/AudioCodec.cs b/MediaBrowser.Model/MediaInfo/AudioCodec.cs index 93aba2f43..5ed67fd78 100644 --- a/MediaBrowser.Model/MediaInfo/AudioCodec.cs +++ b/MediaBrowser.Model/MediaInfo/AudioCodec.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.MediaInfo +namespace MediaBrowser.Model.MediaInfo { public class AudioCodec { @@ -23,4 +23,4 @@ } } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/MediaInfo/BlurayDiscInfo.cs b/MediaBrowser.Model/MediaInfo/BlurayDiscInfo.cs index 1b573fba7..e728ecdfd 100644 --- a/MediaBrowser.Model/MediaInfo/BlurayDiscInfo.cs +++ b/MediaBrowser.Model/MediaInfo/BlurayDiscInfo.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Entities; -using System.Collections.Generic; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.MediaInfo { diff --git a/MediaBrowser.Model/MediaInfo/Container.cs b/MediaBrowser.Model/MediaInfo/Container.cs index 3762edf9f..f8d56702d 100644 --- a/MediaBrowser.Model/MediaInfo/Container.cs +++ b/MediaBrowser.Model/MediaInfo/Container.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.MediaInfo { public class Container diff --git a/MediaBrowser.Model/MediaInfo/IBlurayExaminer.cs b/MediaBrowser.Model/MediaInfo/IBlurayExaminer.cs index 78d5b197f..27137ab26 100644 --- a/MediaBrowser.Model/MediaInfo/IBlurayExaminer.cs +++ b/MediaBrowser.Model/MediaInfo/IBlurayExaminer.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.MediaInfo { /// <summary> diff --git a/MediaBrowser.Model/MediaInfo/LiveStreamRequest.cs b/MediaBrowser.Model/MediaInfo/LiveStreamRequest.cs index d36aa9944..a5ae7c7a5 100644 --- a/MediaBrowser.Model/MediaInfo/LiveStreamRequest.cs +++ b/MediaBrowser.Model/MediaInfo/LiveStreamRequest.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Dlna; using System; +using MediaBrowser.Model.Dlna; namespace MediaBrowser.Model.MediaInfo { @@ -36,7 +36,7 @@ namespace MediaBrowser.Model.MediaInfo DirectPlayProtocols = new MediaProtocol[] { MediaProtocol.Http }; - VideoOptions videoOptions = options as VideoOptions; + var videoOptions = options as VideoOptions; if (videoOptions != null) { AudioStreamIndex = videoOptions.AudioStreamIndex; diff --git a/MediaBrowser.Model/MediaInfo/LiveStreamResponse.cs b/MediaBrowser.Model/MediaInfo/LiveStreamResponse.cs index e79e37a71..dd4b69469 100644 --- a/MediaBrowser.Model/MediaInfo/LiveStreamResponse.cs +++ b/MediaBrowser.Model/MediaInfo/LiveStreamResponse.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.MediaInfo { diff --git a/MediaBrowser.Model/MediaInfo/MediaInfo.cs b/MediaBrowser.Model/MediaInfo/MediaInfo.cs index eb8a4434e..9d45a2af1 100644 --- a/MediaBrowser.Model/MediaInfo/MediaInfo.cs +++ b/MediaBrowser.Model/MediaInfo/MediaInfo.cs @@ -1,7 +1,7 @@ -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.MediaInfo { diff --git a/MediaBrowser.Model/MediaInfo/MediaProtocol.cs b/MediaBrowser.Model/MediaInfo/MediaProtocol.cs index 5882ecde0..a993f6075 100644 --- a/MediaBrowser.Model/MediaInfo/MediaProtocol.cs +++ b/MediaBrowser.Model/MediaInfo/MediaProtocol.cs @@ -10,4 +10,4 @@ namespace MediaBrowser.Model.MediaInfo Rtp = 5, Ftp = 6 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/MediaInfo/PlaybackInfoRequest.cs b/MediaBrowser.Model/MediaInfo/PlaybackInfoRequest.cs index 91673da9e..e5fad4e11 100644 --- a/MediaBrowser.Model/MediaInfo/PlaybackInfoRequest.cs +++ b/MediaBrowser.Model/MediaInfo/PlaybackInfoRequest.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Dlna; using System; +using MediaBrowser.Model.Dlna; namespace MediaBrowser.Model.MediaInfo { diff --git a/MediaBrowser.Model/MediaInfo/PlaybackInfoResponse.cs b/MediaBrowser.Model/MediaInfo/PlaybackInfoResponse.cs index b38fec7d4..38638af42 100644 --- a/MediaBrowser.Model/MediaInfo/PlaybackInfoResponse.cs +++ b/MediaBrowser.Model/MediaInfo/PlaybackInfoResponse.cs @@ -1,6 +1,5 @@ -using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Dlna; using MediaBrowser.Model.Dto; -using System.Collections.Generic; namespace MediaBrowser.Model.MediaInfo { diff --git a/MediaBrowser.Model/MediaInfo/SubtitleFormat.cs b/MediaBrowser.Model/MediaInfo/SubtitleFormat.cs index 60b0bb54d..208e9bab9 100644 --- a/MediaBrowser.Model/MediaInfo/SubtitleFormat.cs +++ b/MediaBrowser.Model/MediaInfo/SubtitleFormat.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.MediaInfo +namespace MediaBrowser.Model.MediaInfo { public class SubtitleFormat { @@ -10,4 +10,4 @@ public const string SMI = "smi"; public const string TTML = "ttml"; } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/MediaInfo/SubtitleTrackEvent.cs b/MediaBrowser.Model/MediaInfo/SubtitleTrackEvent.cs index b4ab6ed97..4eb000e58 100644 --- a/MediaBrowser.Model/MediaInfo/SubtitleTrackEvent.cs +++ b/MediaBrowser.Model/MediaInfo/SubtitleTrackEvent.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.MediaInfo { public class SubtitleTrackEvent diff --git a/MediaBrowser.Model/MediaInfo/SubtitleTrackInfo.cs b/MediaBrowser.Model/MediaInfo/SubtitleTrackInfo.cs index d3a3bb1d0..962f4d2fe 100644 --- a/MediaBrowser.Model/MediaInfo/SubtitleTrackInfo.cs +++ b/MediaBrowser.Model/MediaInfo/SubtitleTrackInfo.cs @@ -1,5 +1,3 @@ -using System.Collections.Generic; - namespace MediaBrowser.Model.MediaInfo { public class SubtitleTrackInfo diff --git a/MediaBrowser.Model/MediaInfo/TransportStreamTimestamp.cs b/MediaBrowser.Model/MediaInfo/TransportStreamTimestamp.cs index 4c808a8dc..46ce2302e 100644 --- a/MediaBrowser.Model/MediaInfo/TransportStreamTimestamp.cs +++ b/MediaBrowser.Model/MediaInfo/TransportStreamTimestamp.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.MediaInfo +namespace MediaBrowser.Model.MediaInfo { public enum TransportStreamTimestamp { @@ -6,4 +6,4 @@ Zero, Valid } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/MediaInfo/VideoCodec.cs b/MediaBrowser.Model/MediaInfo/VideoCodec.cs index 81755dac9..a26ce1b70 100644 --- a/MediaBrowser.Model/MediaInfo/VideoCodec.cs +++ b/MediaBrowser.Model/MediaInfo/VideoCodec.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.MediaInfo +namespace MediaBrowser.Model.MediaInfo { public class VideoCodec { @@ -11,4 +11,4 @@ public const string MSMPEG4 = "msmpeg4"; public const string VC1 = "vc1"; } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Net/EndPointInfo.cs b/MediaBrowser.Model/Net/EndPointInfo.cs index 5a158e785..b73799ea8 100644 --- a/MediaBrowser.Model/Net/EndPointInfo.cs +++ b/MediaBrowser.Model/Net/EndPointInfo.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Net +namespace MediaBrowser.Model.Net { public class EndPointInfo { diff --git a/MediaBrowser.Model/Net/HttpException.cs b/MediaBrowser.Model/Net/HttpException.cs index 2f45299e3..16253ed6c 100644 --- a/MediaBrowser.Model/Net/HttpException.cs +++ b/MediaBrowser.Model/Net/HttpException.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Net; namespace MediaBrowser.Model.Net diff --git a/MediaBrowser.Model/Net/HttpResponse.cs b/MediaBrowser.Model/Net/HttpResponse.cs index f4bd8e681..286b1c0af 100644 --- a/MediaBrowser.Model/Net/HttpResponse.cs +++ b/MediaBrowser.Model/Net/HttpResponse.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Net; diff --git a/MediaBrowser.Model/Net/IAcceptSocket.cs b/MediaBrowser.Model/Net/IAcceptSocket.cs index af5a1fcfb..2b21d3e66 100644 --- a/MediaBrowser.Model/Net/IAcceptSocket.cs +++ b/MediaBrowser.Model/Net/IAcceptSocket.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Net { diff --git a/MediaBrowser.Model/Net/ISocket.cs b/MediaBrowser.Model/Net/ISocket.cs index 6a6781026..992ccb49b 100644 --- a/MediaBrowser.Model/Net/ISocket.cs +++ b/MediaBrowser.Model/Net/ISocket.cs @@ -1,6 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Text; +using System; using System.Threading; using System.Threading.Tasks; @@ -25,4 +23,4 @@ namespace MediaBrowser.Model.Net /// </summary> Task SendToAsync(byte[] buffer, int offset, int bytes, IpEndPointInfo endPoint, CancellationToken cancellationToken); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Net/ISocketFactory.cs b/MediaBrowser.Model/Net/ISocketFactory.cs index 2100aae2a..69fe134bc 100644 --- a/MediaBrowser.Model/Net/ISocketFactory.cs +++ b/MediaBrowser.Model/Net/ISocketFactory.cs @@ -1,4 +1,3 @@ - using System.IO; namespace MediaBrowser.Model.Net diff --git a/MediaBrowser.Model/Net/IpAddressInfo.cs b/MediaBrowser.Model/Net/IpAddressInfo.cs index c2c228faf..7a278d4d4 100644 --- a/MediaBrowser.Model/Net/IpAddressInfo.cs +++ b/MediaBrowser.Model/Net/IpAddressInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Net { diff --git a/MediaBrowser.Model/Net/IpEndPointInfo.cs b/MediaBrowser.Model/Net/IpEndPointInfo.cs index b5cadc429..f8c125144 100644 --- a/MediaBrowser.Model/Net/IpEndPointInfo.cs +++ b/MediaBrowser.Model/Net/IpEndPointInfo.cs @@ -1,4 +1,3 @@ -using System; using System.Globalization; namespace MediaBrowser.Model.Net diff --git a/MediaBrowser.Model/Net/MimeTypes.cs b/MediaBrowser.Model/Net/MimeTypes.cs index 93e51633e..fe13413e2 100644 --- a/MediaBrowser.Model/Net/MimeTypes.cs +++ b/MediaBrowser.Model/Net/MimeTypes.cs @@ -1,8 +1,8 @@ -using MediaBrowser.Model.Extensions; using System; using System.Collections.Generic; using System.IO; using System.Linq; +using MediaBrowser.Model.Extensions; namespace MediaBrowser.Model.Net { @@ -48,7 +48,7 @@ namespace MediaBrowser.Model.Net private static Dictionary<string, string> GetVideoFileExtensionsDictionary() { - Dictionary<string, string> dict = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase); + var dict = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase); foreach (string ext in VideoFileExtensions) { @@ -65,7 +65,7 @@ namespace MediaBrowser.Model.Net private static Dictionary<string, string> GetMimeTypeLookup() { - Dictionary<string, string> dict = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase); + var dict = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase); dict.Add(".jpg", "image/jpeg"); dict.Add(".jpeg", "image/jpeg"); @@ -132,8 +132,7 @@ namespace MediaBrowser.Model.Net var ext = Path.GetExtension(path) ?? string.Empty; - string result; - if (MimeTypeLookup.TryGetValue(ext, out result)) + if (MimeTypeLookup.TryGetValue(ext, out string result)) { return result; } @@ -339,8 +338,7 @@ namespace MediaBrowser.Model.Net // handle text/html; charset=UTF-8 mimeType = mimeType.Split(';')[0]; - string result; - if (ExtensionLookup.TryGetValue(mimeType, out result)) + if (ExtensionLookup.TryGetValue(mimeType, out string result)) { return result; } diff --git a/MediaBrowser.Model/Net/NetworkShare.cs b/MediaBrowser.Model/Net/NetworkShare.cs index 5ce84eeed..1f61414fc 100644 --- a/MediaBrowser.Model/Net/NetworkShare.cs +++ b/MediaBrowser.Model/Net/NetworkShare.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Net { public class NetworkShare diff --git a/MediaBrowser.Model/Net/NetworkShareType.cs b/MediaBrowser.Model/Net/NetworkShareType.cs index 41dc9003e..bf2d092a6 100644 --- a/MediaBrowser.Model/Net/NetworkShareType.cs +++ b/MediaBrowser.Model/Net/NetworkShareType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Net { /// <summary> diff --git a/MediaBrowser.Model/Net/SocketReceiveResult.cs b/MediaBrowser.Model/Net/SocketReceiveResult.cs index 5a5004de6..8c394f7c7 100644 --- a/MediaBrowser.Model/Net/SocketReceiveResult.cs +++ b/MediaBrowser.Model/Net/SocketReceiveResult.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Net { /// <summary> diff --git a/MediaBrowser.Model/Net/WebSocketMessage.cs b/MediaBrowser.Model/Net/WebSocketMessage.cs index c049a96ef..c763216f1 100644 --- a/MediaBrowser.Model/Net/WebSocketMessage.cs +++ b/MediaBrowser.Model/Net/WebSocketMessage.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Net { /// <summary> diff --git a/MediaBrowser.Model/Notifications/NotificationLevel.cs b/MediaBrowser.Model/Notifications/NotificationLevel.cs index a49ee2fe6..6a838b125 100644 --- a/MediaBrowser.Model/Notifications/NotificationLevel.cs +++ b/MediaBrowser.Model/Notifications/NotificationLevel.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Notifications { public enum NotificationLevel diff --git a/MediaBrowser.Model/Notifications/NotificationOptions.cs b/MediaBrowser.Model/Notifications/NotificationOptions.cs index 158e00b39..f48b5ee7f 100644 --- a/MediaBrowser.Model/Notifications/NotificationOptions.cs +++ b/MediaBrowser.Model/Notifications/NotificationOptions.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Extensions; -using MediaBrowser.Model.Users; using System; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Users; namespace MediaBrowser.Model.Notifications { diff --git a/MediaBrowser.Model/Notifications/NotificationRequest.cs b/MediaBrowser.Model/Notifications/NotificationRequest.cs index 7fa57ca9a..5a2634e73 100644 --- a/MediaBrowser.Model/Notifications/NotificationRequest.cs +++ b/MediaBrowser.Model/Notifications/NotificationRequest.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Notifications { diff --git a/MediaBrowser.Model/Notifications/NotificationType.cs b/MediaBrowser.Model/Notifications/NotificationType.cs index eefd15808..9d16e4a16 100644 --- a/MediaBrowser.Model/Notifications/NotificationType.cs +++ b/MediaBrowser.Model/Notifications/NotificationType.cs @@ -21,4 +21,4 @@ namespace MediaBrowser.Model.Notifications CameraImageUploaded, UserLockedOut } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Notifications/NotificationTypeInfo.cs b/MediaBrowser.Model/Notifications/NotificationTypeInfo.cs index 203712fa8..ff957e644 100644 --- a/MediaBrowser.Model/Notifications/NotificationTypeInfo.cs +++ b/MediaBrowser.Model/Notifications/NotificationTypeInfo.cs @@ -1,5 +1,3 @@ -using System; - namespace MediaBrowser.Model.Notifications { public class NotificationTypeInfo diff --git a/MediaBrowser.Model/Notifications/SendToUserType.cs b/MediaBrowser.Model/Notifications/SendToUserType.cs index 1998d3102..9f63d24bf 100644 --- a/MediaBrowser.Model/Notifications/SendToUserType.cs +++ b/MediaBrowser.Model/Notifications/SendToUserType.cs @@ -6,4 +6,4 @@ namespace MediaBrowser.Model.Notifications Admins = 1, Custom = 2 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Playlists/PlaylistCreationRequest.cs b/MediaBrowser.Model/Playlists/PlaylistCreationRequest.cs index db2724efa..007965c0f 100644 --- a/MediaBrowser.Model/Playlists/PlaylistCreationRequest.cs +++ b/MediaBrowser.Model/Playlists/PlaylistCreationRequest.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Playlists { diff --git a/MediaBrowser.Model/Playlists/PlaylistCreationResult.cs b/MediaBrowser.Model/Playlists/PlaylistCreationResult.cs index bbab8a18d..301ae66a7 100644 --- a/MediaBrowser.Model/Playlists/PlaylistCreationResult.cs +++ b/MediaBrowser.Model/Playlists/PlaylistCreationResult.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Playlists { public class PlaylistCreationResult diff --git a/MediaBrowser.Model/Playlists/PlaylistItemQuery.cs b/MediaBrowser.Model/Playlists/PlaylistItemQuery.cs index 0f6a0c8c5..1f03c14d3 100644 --- a/MediaBrowser.Model/Playlists/PlaylistItemQuery.cs +++ b/MediaBrowser.Model/Playlists/PlaylistItemQuery.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Querying; +using MediaBrowser.Model.Querying; namespace MediaBrowser.Model.Playlists { diff --git a/MediaBrowser.Model/Plugins/BasePluginConfiguration.cs b/MediaBrowser.Model/Plugins/BasePluginConfiguration.cs index 9a8bfadd1..39db22133 100644 --- a/MediaBrowser.Model/Plugins/BasePluginConfiguration.cs +++ b/MediaBrowser.Model/Plugins/BasePluginConfiguration.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Plugins { /// <summary> diff --git a/MediaBrowser.Model/Plugins/IHasWebPages.cs b/MediaBrowser.Model/Plugins/IHasWebPages.cs index 0745c3c60..5bda7e65e 100644 --- a/MediaBrowser.Model/Plugins/IHasWebPages.cs +++ b/MediaBrowser.Model/Plugins/IHasWebPages.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace MediaBrowser.Model.Plugins { diff --git a/MediaBrowser.Model/Plugins/PluginInfo.cs b/MediaBrowser.Model/Plugins/PluginInfo.cs index e7b16b0ec..9ff9ea457 100644 --- a/MediaBrowser.Model/Plugins/PluginInfo.cs +++ b/MediaBrowser.Model/Plugins/PluginInfo.cs @@ -1,5 +1,3 @@ -using System; - namespace MediaBrowser.Model.Plugins { /// <summary> diff --git a/MediaBrowser.Model/Plugins/PluginPageInfo.cs b/MediaBrowser.Model/Plugins/PluginPageInfo.cs index 045a0072c..8ed2064b9 100644 --- a/MediaBrowser.Model/Plugins/PluginPageInfo.cs +++ b/MediaBrowser.Model/Plugins/PluginPageInfo.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Plugins +namespace MediaBrowser.Model.Plugins { public class PluginPageInfo { diff --git a/MediaBrowser.Model/Providers/ExternalIdInfo.cs b/MediaBrowser.Model/Providers/ExternalIdInfo.cs index 2c5cfe91b..bff84c553 100644 --- a/MediaBrowser.Model/Providers/ExternalIdInfo.cs +++ b/MediaBrowser.Model/Providers/ExternalIdInfo.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Providers { public class ExternalIdInfo diff --git a/MediaBrowser.Model/Providers/ExternalUrl.cs b/MediaBrowser.Model/Providers/ExternalUrl.cs index fb744f446..69cead92a 100644 --- a/MediaBrowser.Model/Providers/ExternalUrl.cs +++ b/MediaBrowser.Model/Providers/ExternalUrl.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Providers +namespace MediaBrowser.Model.Providers { public class ExternalUrl { @@ -14,4 +14,4 @@ /// <value>The type of the item.</value> public string Url { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Providers/ImageProviderInfo.cs b/MediaBrowser.Model/Providers/ImageProviderInfo.cs index 199552640..1c4cff373 100644 --- a/MediaBrowser.Model/Providers/ImageProviderInfo.cs +++ b/MediaBrowser.Model/Providers/ImageProviderInfo.cs @@ -1,4 +1,3 @@ -using System.Collections.Generic; using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Providers diff --git a/MediaBrowser.Model/Providers/RemoteImageInfo.cs b/MediaBrowser.Model/Providers/RemoteImageInfo.cs index 90c1ba0af..aacd108ec 100644 --- a/MediaBrowser.Model/Providers/RemoteImageInfo.cs +++ b/MediaBrowser.Model/Providers/RemoteImageInfo.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Providers diff --git a/MediaBrowser.Model/Providers/RemoteImageQuery.cs b/MediaBrowser.Model/Providers/RemoteImageQuery.cs index 8d5231a25..7c9216ce7 100644 --- a/MediaBrowser.Model/Providers/RemoteImageQuery.cs +++ b/MediaBrowser.Model/Providers/RemoteImageQuery.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Providers { @@ -12,4 +12,4 @@ namespace MediaBrowser.Model.Providers public bool IncludeAllLanguages { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Providers/RemoteImageResult.cs b/MediaBrowser.Model/Providers/RemoteImageResult.cs index 7e38badfc..5ca00f770 100644 --- a/MediaBrowser.Model/Providers/RemoteImageResult.cs +++ b/MediaBrowser.Model/Providers/RemoteImageResult.cs @@ -1,5 +1,3 @@ -using System.Collections.Generic; - namespace MediaBrowser.Model.Providers { /// <summary> diff --git a/MediaBrowser.Model/Providers/RemoteSearchResult.cs b/MediaBrowser.Model/Providers/RemoteSearchResult.cs index b63cf2a9f..88e3bc69c 100644 --- a/MediaBrowser.Model/Providers/RemoteSearchResult.cs +++ b/MediaBrowser.Model/Providers/RemoteSearchResult.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Providers { diff --git a/MediaBrowser.Model/Providers/RemoteSubtitleInfo.cs b/MediaBrowser.Model/Providers/RemoteSubtitleInfo.cs index 0a4a52cd5..861aabf72 100644 --- a/MediaBrowser.Model/Providers/RemoteSubtitleInfo.cs +++ b/MediaBrowser.Model/Providers/RemoteSubtitleInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Providers { diff --git a/MediaBrowser.Model/Providers/SubtitleProviderInfo.cs b/MediaBrowser.Model/Providers/SubtitleProviderInfo.cs index ecce18bd5..48a247818 100644 --- a/MediaBrowser.Model/Providers/SubtitleProviderInfo.cs +++ b/MediaBrowser.Model/Providers/SubtitleProviderInfo.cs @@ -5,4 +5,4 @@ namespace MediaBrowser.Model.Providers public string Name { get; set; } public string Id { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Querying/AllThemeMediaResult.cs b/MediaBrowser.Model/Querying/AllThemeMediaResult.cs index 57114cc4a..f843a33e6 100644 --- a/MediaBrowser.Model/Querying/AllThemeMediaResult.cs +++ b/MediaBrowser.Model/Querying/AllThemeMediaResult.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Querying +namespace MediaBrowser.Model.Querying { public class AllThemeMediaResult { @@ -17,4 +17,4 @@ SoundtrackSongsResult = new ThemeMediaResult(); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Querying/EpisodeQuery.cs b/MediaBrowser.Model/Querying/EpisodeQuery.cs index cae87b852..0c8ea7ed4 100644 --- a/MediaBrowser.Model/Querying/EpisodeQuery.cs +++ b/MediaBrowser.Model/Querying/EpisodeQuery.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Querying { public class EpisodeQuery diff --git a/MediaBrowser.Model/Querying/ItemCountsQuery.cs b/MediaBrowser.Model/Querying/ItemCountsQuery.cs index 0bf681537..02b809fa8 100644 --- a/MediaBrowser.Model/Querying/ItemCountsQuery.cs +++ b/MediaBrowser.Model/Querying/ItemCountsQuery.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Querying { /// <summary> diff --git a/MediaBrowser.Model/Querying/ItemFields.cs b/MediaBrowser.Model/Querying/ItemFields.cs index ceccf5ee5..af1aaf486 100644 --- a/MediaBrowser.Model/Querying/ItemFields.cs +++ b/MediaBrowser.Model/Querying/ItemFields.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Querying +namespace MediaBrowser.Model.Querying { /// <summary> /// Used to control the data that gets attached to DtoBaseItems diff --git a/MediaBrowser.Model/Querying/ItemFilter.cs b/MediaBrowser.Model/Querying/ItemFilter.cs index ff28bd08c..b8dcfbdad 100644 --- a/MediaBrowser.Model/Querying/ItemFilter.cs +++ b/MediaBrowser.Model/Querying/ItemFilter.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Querying { /// <summary> diff --git a/MediaBrowser.Model/Querying/ItemSortBy.cs b/MediaBrowser.Model/Querying/ItemSortBy.cs index 66bdc8aa5..1b20f43ac 100644 --- a/MediaBrowser.Model/Querying/ItemSortBy.cs +++ b/MediaBrowser.Model/Querying/ItemSortBy.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Querying { /// <summary> diff --git a/MediaBrowser.Model/Querying/LatestItemsQuery.cs b/MediaBrowser.Model/Querying/LatestItemsQuery.cs index 88b079595..4a5818ac5 100644 --- a/MediaBrowser.Model/Querying/LatestItemsQuery.cs +++ b/MediaBrowser.Model/Querying/LatestItemsQuery.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Querying @@ -70,7 +70,7 @@ namespace MediaBrowser.Model.Querying public LatestItemsQuery() { - EnableImageTypes = new ImageType[] {}; + EnableImageTypes = new ImageType[] { }; } } } diff --git a/MediaBrowser.Model/Querying/MovieRecommendationQuery.cs b/MediaBrowser.Model/Querying/MovieRecommendationQuery.cs index 91417a4a7..52c138355 100644 --- a/MediaBrowser.Model/Querying/MovieRecommendationQuery.cs +++ b/MediaBrowser.Model/Querying/MovieRecommendationQuery.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Querying { public class MovieRecommendationQuery diff --git a/MediaBrowser.Model/Querying/NextUpQuery.cs b/MediaBrowser.Model/Querying/NextUpQuery.cs index 2af8738d7..ff146cede 100644 --- a/MediaBrowser.Model/Querying/NextUpQuery.cs +++ b/MediaBrowser.Model/Querying/NextUpQuery.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Entities; using System; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Querying { @@ -60,7 +60,7 @@ namespace MediaBrowser.Model.Querying public NextUpQuery() { - EnableImageTypes = new ImageType[] {}; + EnableImageTypes = new ImageType[] { }; EnableTotalRecordCount = true; } } diff --git a/MediaBrowser.Model/Querying/QueryFilters.cs b/MediaBrowser.Model/Querying/QueryFilters.cs index f46650a03..2f38299db 100644 --- a/MediaBrowser.Model/Querying/QueryFilters.cs +++ b/MediaBrowser.Model/Querying/QueryFilters.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Dto; using System; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.Querying { diff --git a/MediaBrowser.Model/Querying/QueryResult.cs b/MediaBrowser.Model/Querying/QueryResult.cs index 6f9923d08..e81f2b868 100644 --- a/MediaBrowser.Model/Querying/QueryResult.cs +++ b/MediaBrowser.Model/Querying/QueryResult.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Querying { public class QueryResult<T> diff --git a/MediaBrowser.Model/Querying/SessionQuery.cs b/MediaBrowser.Model/Querying/SessionQuery.cs index fa7df315c..1fac9d639 100644 --- a/MediaBrowser.Model/Querying/SessionQuery.cs +++ b/MediaBrowser.Model/Querying/SessionQuery.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Querying { /// <summary> diff --git a/MediaBrowser.Model/Querying/SimilarItemsQuery.cs b/MediaBrowser.Model/Querying/SimilarItemsQuery.cs index 0dd491550..68f761bd4 100644 --- a/MediaBrowser.Model/Querying/SimilarItemsQuery.cs +++ b/MediaBrowser.Model/Querying/SimilarItemsQuery.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Querying +namespace MediaBrowser.Model.Querying { public class SimilarItemsQuery { diff --git a/MediaBrowser.Model/Querying/ThemeMediaResult.cs b/MediaBrowser.Model/Querying/ThemeMediaResult.cs index eae102bae..bae954d78 100644 --- a/MediaBrowser.Model/Querying/ThemeMediaResult.cs +++ b/MediaBrowser.Model/Querying/ThemeMediaResult.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Dto; using System; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.Querying { diff --git a/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs b/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs index 665b980eb..5eac2860d 100644 --- a/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs +++ b/MediaBrowser.Model/Querying/UpcomingEpisodesQuery.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Model.Querying { @@ -51,7 +51,7 @@ namespace MediaBrowser.Model.Querying public UpcomingEpisodesQuery() { - EnableImageTypes = new ImageType[] {}; + EnableImageTypes = new ImageType[] { }; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Querying/UserQuery.cs b/MediaBrowser.Model/Querying/UserQuery.cs index 48dbd30aa..55cef664e 100644 --- a/MediaBrowser.Model/Querying/UserQuery.cs +++ b/MediaBrowser.Model/Querying/UserQuery.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Querying { public class UserQuery diff --git a/MediaBrowser.Model/Reflection/IAssemblyInfo.cs b/MediaBrowser.Model/Reflection/IAssemblyInfo.cs index e8e9c414c..5c4536c1c 100644 --- a/MediaBrowser.Model/Reflection/IAssemblyInfo.cs +++ b/MediaBrowser.Model/Reflection/IAssemblyInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Reflection; diff --git a/MediaBrowser.Model/Search/SearchHint.cs b/MediaBrowser.Model/Search/SearchHint.cs index 48da8e4bc..8a187f18e 100644 --- a/MediaBrowser.Model/Search/SearchHint.cs +++ b/MediaBrowser.Model/Search/SearchHint.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Search { diff --git a/MediaBrowser.Model/Search/SearchHintResult.cs b/MediaBrowser.Model/Search/SearchHintResult.cs index 372528f82..069e7e025 100644 --- a/MediaBrowser.Model/Search/SearchHintResult.cs +++ b/MediaBrowser.Model/Search/SearchHintResult.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Search { /// <summary> diff --git a/MediaBrowser.Model/Search/SearchQuery.cs b/MediaBrowser.Model/Search/SearchQuery.cs index 9ed2f4ffb..96a8cb00c 100644 --- a/MediaBrowser.Model/Search/SearchQuery.cs +++ b/MediaBrowser.Model/Search/SearchQuery.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Search { diff --git a/MediaBrowser.Model/Serialization/IJsonSerializer.cs b/MediaBrowser.Model/Serialization/IJsonSerializer.cs index 06e48f412..ae0cf6f36 100644 --- a/MediaBrowser.Model/Serialization/IJsonSerializer.cs +++ b/MediaBrowser.Model/Serialization/IJsonSerializer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Threading.Tasks; diff --git a/MediaBrowser.Model/Serialization/IXmlSerializer.cs b/MediaBrowser.Model/Serialization/IXmlSerializer.cs index eb23d784f..902ebd4d1 100644 --- a/MediaBrowser.Model/Serialization/IXmlSerializer.cs +++ b/MediaBrowser.Model/Serialization/IXmlSerializer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; namespace MediaBrowser.Model.Serialization @@ -43,4 +43,4 @@ namespace MediaBrowser.Model.Serialization /// <returns>System.Object.</returns> object DeserializeFromBytes(Type type, byte[] buffer); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Serialization/IgnoreDataMemberAttribute.cs b/MediaBrowser.Model/Serialization/IgnoreDataMemberAttribute.cs index 8e23edc24..b43949fe3 100644 --- a/MediaBrowser.Model/Serialization/IgnoreDataMemberAttribute.cs +++ b/MediaBrowser.Model/Serialization/IgnoreDataMemberAttribute.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Serialization { diff --git a/MediaBrowser.Model/Services/ApiMemberAttribute.cs b/MediaBrowser.Model/Services/ApiMemberAttribute.cs index 9e5faad29..8b155c8ab 100644 --- a/MediaBrowser.Model/Services/ApiMemberAttribute.cs +++ b/MediaBrowser.Model/Services/ApiMemberAttribute.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Services { diff --git a/MediaBrowser.Model/Services/HttpUtility.cs b/MediaBrowser.Model/Services/HttpUtility.cs index 1bf3b28d1..be180334c 100644 --- a/MediaBrowser.Model/Services/HttpUtility.cs +++ b/MediaBrowser.Model/Services/HttpUtility.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections; using System.Collections.Generic; using System.Text; @@ -445,8 +445,8 @@ namespace MediaBrowser.Model.Services if (s.IndexOf('&') == -1) return s; - StringBuilder entity = new StringBuilder(); - StringBuilder output = new StringBuilder(); + var entity = new StringBuilder(); + var output = new StringBuilder(); int len = s.Length; // 0 -> nothing, // 1 -> right after '&' @@ -623,7 +623,7 @@ namespace MediaBrowser.Model.Services if (query[0] == '?') query = query.Substring(1); - QueryParamCollection result = new QueryParamCollection(); + var result = new QueryParamCollection(); ParseQueryString(query, encoding, result); return result; } diff --git a/MediaBrowser.Model/Services/IAsyncStreamWriter.cs b/MediaBrowser.Model/Services/IAsyncStreamWriter.cs index b10e12813..f16a877e6 100644 --- a/MediaBrowser.Model/Services/IAsyncStreamWriter.cs +++ b/MediaBrowser.Model/Services/IAsyncStreamWriter.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; using System.Threading; using System.Threading.Tasks; diff --git a/MediaBrowser.Model/Services/IHasHeaders.cs b/MediaBrowser.Model/Services/IHasHeaders.cs index 35e652b0f..b2d413b70 100644 --- a/MediaBrowser.Model/Services/IHasHeaders.cs +++ b/MediaBrowser.Model/Services/IHasHeaders.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace MediaBrowser.Model.Services { diff --git a/MediaBrowser.Model/Services/IHasRequestFilter.cs b/MediaBrowser.Model/Services/IHasRequestFilter.cs index 90cfc2a31..d4e6aa8e0 100644 --- a/MediaBrowser.Model/Services/IHasRequestFilter.cs +++ b/MediaBrowser.Model/Services/IHasRequestFilter.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Services { public interface IHasRequestFilter diff --git a/MediaBrowser.Model/Services/IHttpRequest.cs b/MediaBrowser.Model/Services/IHttpRequest.cs index e1480f30a..579f80c96 100644 --- a/MediaBrowser.Model/Services/IHttpRequest.cs +++ b/MediaBrowser.Model/Services/IHttpRequest.cs @@ -1,8 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Threading.Tasks; - namespace MediaBrowser.Model.Services { public interface IHttpRequest : IRequest diff --git a/MediaBrowser.Model/Services/IHttpResponse.cs b/MediaBrowser.Model/Services/IHttpResponse.cs index 9d77eefc9..a8b79f394 100644 --- a/MediaBrowser.Model/Services/IHttpResponse.cs +++ b/MediaBrowser.Model/Services/IHttpResponse.cs @@ -1,8 +1,4 @@ -using System; -using System.Collections.Generic; using System.Net; -using System.Text; -using System.Threading.Tasks; namespace MediaBrowser.Model.Services { diff --git a/MediaBrowser.Model/Services/IHttpResult.cs b/MediaBrowser.Model/Services/IHttpResult.cs index b912ef023..bfa30f60d 100644 --- a/MediaBrowser.Model/Services/IHttpResult.cs +++ b/MediaBrowser.Model/Services/IHttpResult.cs @@ -1,8 +1,4 @@ -using System; -using System.Collections.Generic; using System.Net; -using System.Text; -using System.Threading.Tasks; namespace MediaBrowser.Model.Services { diff --git a/MediaBrowser.Model/Services/IRequest.cs b/MediaBrowser.Model/Services/IRequest.cs index 681bab294..ac9b981b9 100644 --- a/MediaBrowser.Model/Services/IRequest.cs +++ b/MediaBrowser.Model/Services/IRequest.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Net; diff --git a/MediaBrowser.Model/Services/IRequiresRequestStream.cs b/MediaBrowser.Model/Services/IRequiresRequestStream.cs index 0b8ac3ed3..2f17c6a9a 100644 --- a/MediaBrowser.Model/Services/IRequiresRequestStream.cs +++ b/MediaBrowser.Model/Services/IRequiresRequestStream.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; namespace MediaBrowser.Model.Services { diff --git a/MediaBrowser.Model/Services/IService.cs b/MediaBrowser.Model/Services/IService.cs index 3e0ff280b..8f2e63e98 100644 --- a/MediaBrowser.Model/Services/IService.cs +++ b/MediaBrowser.Model/Services/IService.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Services { // marker interface diff --git a/MediaBrowser.Model/Services/IStreamWriter.cs b/MediaBrowser.Model/Services/IStreamWriter.cs index 1fc11049e..9d65cff63 100644 --- a/MediaBrowser.Model/Services/IStreamWriter.cs +++ b/MediaBrowser.Model/Services/IStreamWriter.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; namespace MediaBrowser.Model.Services { diff --git a/MediaBrowser.Model/Services/QueryParamCollection.cs b/MediaBrowser.Model/Services/QueryParamCollection.cs index 05ba6f18d..4297b97c6 100644 --- a/MediaBrowser.Model/Services/QueryParamCollection.cs +++ b/MediaBrowser.Model/Services/QueryParamCollection.cs @@ -177,40 +177,8 @@ namespace MediaBrowser.Model.Services /// <returns>The query parameter value or array of values</returns> public string this[string name] { - get { return Get(name); } - set - { - Set(name, value); - //var parameters = this.Where(p => p.Name == name).ToArray(); - //var values = new[] { value }; - - //for (int i = 0; ; i++) - //{ - // if (i < parameters.Length && i < values.Length) - // { - // if (values[i] == null) - // Remove(parameters[i]); - // else if (values[i] is NameValuePair) - // this[IndexOf(parameters[i])] = (NameValuePair)values[i]; - // else - // parameters[i].Value = values[i]; - // } - // else if (i < parameters.Length) - // Remove(parameters[i]); - // else if (i < values.Length) - // { - // if (values[i] != null) - // { - // if (values[i] is NameValuePair) - // Add((NameValuePair)values[i]); - // else - // Add(name, values[i]); - // } - // } - // else - // break; - //} - } + get => Get(name); + set => Set(name, value); } private string GetQueryStringValue(NameValuePair pair) diff --git a/MediaBrowser.Model/Services/RouteAttribute.cs b/MediaBrowser.Model/Services/RouteAttribute.cs index 0dc52af7b..f6316e2b1 100644 --- a/MediaBrowser.Model/Services/RouteAttribute.cs +++ b/MediaBrowser.Model/Services/RouteAttribute.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Services { diff --git a/MediaBrowser.Model/Session/BrowseRequest.cs b/MediaBrowser.Model/Session/BrowseRequest.cs index 0a13c0549..65d58501b 100644 --- a/MediaBrowser.Model/Session/BrowseRequest.cs +++ b/MediaBrowser.Model/Session/BrowseRequest.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Session { /// <summary> @@ -24,4 +23,4 @@ namespace MediaBrowser.Model.Session /// <value>The name of the item.</value> public string ItemName { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/ClientCapabilities.cs b/MediaBrowser.Model/Session/ClientCapabilities.cs index 0ba9988bb..fa74efb1b 100644 --- a/MediaBrowser.Model/Session/ClientCapabilities.cs +++ b/MediaBrowser.Model/Session/ClientCapabilities.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Dlna; using System; +using MediaBrowser.Model.Dlna; namespace MediaBrowser.Model.Session { diff --git a/MediaBrowser.Model/Session/GeneralCommand.cs b/MediaBrowser.Model/Session/GeneralCommand.cs index 5cfe3e67b..74e58e678 100644 --- a/MediaBrowser.Model/Session/GeneralCommand.cs +++ b/MediaBrowser.Model/Session/GeneralCommand.cs @@ -1,5 +1,5 @@ -using System.Collections.Generic; using System; +using System.Collections.Generic; namespace MediaBrowser.Model.Session { diff --git a/MediaBrowser.Model/Session/GeneralCommandType.cs b/MediaBrowser.Model/Session/GeneralCommandType.cs index 9044dc3ec..4bb0c5cc5 100644 --- a/MediaBrowser.Model/Session/GeneralCommandType.cs +++ b/MediaBrowser.Model/Session/GeneralCommandType.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Session +namespace MediaBrowser.Model.Session { /// <summary> /// This exists simply to identify a set of known commands. @@ -43,4 +43,4 @@ PlayMediaSource = 34, PlayTrailers = 35 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/MessageCommand.cs b/MediaBrowser.Model/Session/MessageCommand.cs index b028765ed..1e558ef07 100644 --- a/MediaBrowser.Model/Session/MessageCommand.cs +++ b/MediaBrowser.Model/Session/MessageCommand.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Session { public class MessageCommand @@ -9,4 +8,4 @@ namespace MediaBrowser.Model.Session public long? TimeoutMs { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/PlayCommand.cs b/MediaBrowser.Model/Session/PlayCommand.cs index 3a5a951d7..b7a8f39ba 100644 --- a/MediaBrowser.Model/Session/PlayCommand.cs +++ b/MediaBrowser.Model/Session/PlayCommand.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Session +namespace MediaBrowser.Model.Session { /// <summary> /// Enum PlayCommand @@ -26,4 +26,4 @@ /// </summary> PlayShuffle = 4 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/PlayMethod.cs b/MediaBrowser.Model/Session/PlayMethod.cs index 87b728627..8daf8c953 100644 --- a/MediaBrowser.Model/Session/PlayMethod.cs +++ b/MediaBrowser.Model/Session/PlayMethod.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Session +namespace MediaBrowser.Model.Session { public enum PlayMethod { @@ -6,4 +6,4 @@ DirectStream = 1, DirectPlay = 2 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/PlayRequest.cs b/MediaBrowser.Model/Session/PlayRequest.cs index 2ee489f96..075ae7730 100644 --- a/MediaBrowser.Model/Session/PlayRequest.cs +++ b/MediaBrowser.Model/Session/PlayRequest.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Services; using System; +using MediaBrowser.Model.Services; namespace MediaBrowser.Model.Session { @@ -40,4 +40,4 @@ namespace MediaBrowser.Model.Session public string MediaSourceId { get; set; } public int? StartIndex { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/PlaybackProgressInfo.cs b/MediaBrowser.Model/Session/PlaybackProgressInfo.cs index dfdd42c36..c1d630671 100644 --- a/MediaBrowser.Model/Session/PlaybackProgressInfo.cs +++ b/MediaBrowser.Model/Session/PlaybackProgressInfo.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Dto; using System; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.Session { @@ -112,7 +112,8 @@ namespace MediaBrowser.Model.Session RepeatOne = 2 } - public class QueueItem { + public class QueueItem + { public Guid Id { get; set; } public string PlaylistItemId { get; set; } } diff --git a/MediaBrowser.Model/Session/PlaybackStartInfo.cs b/MediaBrowser.Model/Session/PlaybackStartInfo.cs index f6f496e4e..e531f41b2 100644 --- a/MediaBrowser.Model/Session/PlaybackStartInfo.cs +++ b/MediaBrowser.Model/Session/PlaybackStartInfo.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Session { /// <summary> diff --git a/MediaBrowser.Model/Session/PlaybackStopInfo.cs b/MediaBrowser.Model/Session/PlaybackStopInfo.cs index 6f3351eef..8a85b1998 100644 --- a/MediaBrowser.Model/Session/PlaybackStopInfo.cs +++ b/MediaBrowser.Model/Session/PlaybackStopInfo.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Dto; using System; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.Session { diff --git a/MediaBrowser.Model/Session/PlayerStateInfo.cs b/MediaBrowser.Model/Session/PlayerStateInfo.cs index f78842e29..7e54e16c8 100644 --- a/MediaBrowser.Model/Session/PlayerStateInfo.cs +++ b/MediaBrowser.Model/Session/PlayerStateInfo.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Session +namespace MediaBrowser.Model.Session { public class PlayerStateInfo { @@ -62,4 +62,4 @@ /// <value>The repeat mode.</value> public RepeatMode RepeatMode { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/PlaystateCommand.cs b/MediaBrowser.Model/Session/PlaystateCommand.cs index 3b70d5454..6eb3e53c2 100644 --- a/MediaBrowser.Model/Session/PlaystateCommand.cs +++ b/MediaBrowser.Model/Session/PlaystateCommand.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Session { /// <summary> @@ -40,4 +39,4 @@ namespace MediaBrowser.Model.Session FastForward, PlayPause } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/PlaystateRequest.cs b/MediaBrowser.Model/Session/PlaystateRequest.cs index 8a046b503..08d3f0072 100644 --- a/MediaBrowser.Model/Session/PlaystateRequest.cs +++ b/MediaBrowser.Model/Session/PlaystateRequest.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Session +namespace MediaBrowser.Model.Session { public class PlaystateRequest { @@ -12,4 +12,4 @@ /// <value>The controlling user identifier.</value> public string ControllingUserId { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/SessionUserInfo.cs b/MediaBrowser.Model/Session/SessionUserInfo.cs index 7746bc2d6..42a56b92b 100644 --- a/MediaBrowser.Model/Session/SessionUserInfo.cs +++ b/MediaBrowser.Model/Session/SessionUserInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Session { @@ -18,4 +18,4 @@ namespace MediaBrowser.Model.Session /// <value>The name of the user.</value> public string UserName { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/TranscodingInfo.cs b/MediaBrowser.Model/Session/TranscodingInfo.cs index ed86d2358..5161882fd 100644 --- a/MediaBrowser.Model/Session/TranscodingInfo.cs +++ b/MediaBrowser.Model/Session/TranscodingInfo.cs @@ -1,5 +1,3 @@ -using System.Collections.Generic; - namespace MediaBrowser.Model.Session { public class TranscodingInfo @@ -52,4 +50,4 @@ namespace MediaBrowser.Model.Session SubtitleCodecNotSupported = 21, DirectPlayError = 22 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Session/UserDataChangeInfo.cs b/MediaBrowser.Model/Session/UserDataChangeInfo.cs index c6b03200d..ef0e2c89a 100644 --- a/MediaBrowser.Model/Session/UserDataChangeInfo.cs +++ b/MediaBrowser.Model/Session/UserDataChangeInfo.cs @@ -1,5 +1,4 @@ -using MediaBrowser.Model.Dto; -using System.Collections.Generic; +using MediaBrowser.Model.Dto; namespace MediaBrowser.Model.Session { diff --git a/MediaBrowser.Model/Sync/SyncCategory.cs b/MediaBrowser.Model/Sync/SyncCategory.cs index e0d748685..637c5ba74 100644 --- a/MediaBrowser.Model/Sync/SyncCategory.cs +++ b/MediaBrowser.Model/Sync/SyncCategory.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Sync { public enum SyncCategory diff --git a/MediaBrowser.Model/Sync/SyncJob.cs b/MediaBrowser.Model/Sync/SyncJob.cs index 3b2e30d70..7a1f76fe9 100644 --- a/MediaBrowser.Model/Sync/SyncJob.cs +++ b/MediaBrowser.Model/Sync/SyncJob.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Sync { diff --git a/MediaBrowser.Model/Sync/SyncJobStatus.cs b/MediaBrowser.Model/Sync/SyncJobStatus.cs index 2d1d30802..4ea3d3fa5 100644 --- a/MediaBrowser.Model/Sync/SyncJobStatus.cs +++ b/MediaBrowser.Model/Sync/SyncJobStatus.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Sync { public enum SyncJobStatus diff --git a/MediaBrowser.Model/Sync/SyncTarget.cs b/MediaBrowser.Model/Sync/SyncTarget.cs index 8901f0f27..a94bf9a25 100644 --- a/MediaBrowser.Model/Sync/SyncTarget.cs +++ b/MediaBrowser.Model/Sync/SyncTarget.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Sync { public class SyncTarget diff --git a/MediaBrowser.Model/System/IEnvironmentInfo.cs b/MediaBrowser.Model/System/IEnvironmentInfo.cs index faf9f0a42..3ffcc7de1 100644 --- a/MediaBrowser.Model/System/IEnvironmentInfo.cs +++ b/MediaBrowser.Model/System/IEnvironmentInfo.cs @@ -1,10 +1,10 @@ -using System.Runtime.InteropServices; +using System.Runtime.InteropServices; namespace MediaBrowser.Model.System { public interface IEnvironmentInfo { - MediaBrowser.Model.System.OperatingSystem OperatingSystem { get; } + OperatingSystem OperatingSystem { get; } string OperatingSystemName { get; } string OperatingSystemVersion { get; } Architecture SystemArchitecture { get; } diff --git a/MediaBrowser.Model/System/ISystemEvents.cs b/MediaBrowser.Model/System/ISystemEvents.cs index dec8ed8c0..8c47d6fbf 100644 --- a/MediaBrowser.Model/System/ISystemEvents.cs +++ b/MediaBrowser.Model/System/ISystemEvents.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.System { diff --git a/MediaBrowser.Model/System/LogFile.cs b/MediaBrowser.Model/System/LogFile.cs index ba409c542..913e8e1ea 100644 --- a/MediaBrowser.Model/System/LogFile.cs +++ b/MediaBrowser.Model/System/LogFile.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.System { diff --git a/MediaBrowser.Model/System/PublicSystemInfo.cs b/MediaBrowser.Model/System/PublicSystemInfo.cs index b9a3260b0..bc8983fd1 100644 --- a/MediaBrowser.Model/System/PublicSystemInfo.cs +++ b/MediaBrowser.Model/System/PublicSystemInfo.cs @@ -38,4 +38,4 @@ namespace MediaBrowser.Model.System /// <value>The id.</value> public string Id { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/System/SystemInfo.cs b/MediaBrowser.Model/System/SystemInfo.cs index 5d019932a..b0432ae74 100644 --- a/MediaBrowser.Model/System/SystemInfo.cs +++ b/MediaBrowser.Model/System/SystemInfo.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Updates; using System.Runtime.InteropServices; +using MediaBrowser.Model.Updates; namespace MediaBrowser.Model.System { diff --git a/MediaBrowser.Model/System/WakeOnLanInfo.cs b/MediaBrowser.Model/System/WakeOnLanInfo.cs index cde867176..031458735 100644 --- a/MediaBrowser.Model/System/WakeOnLanInfo.cs +++ b/MediaBrowser.Model/System/WakeOnLanInfo.cs @@ -10,4 +10,4 @@ namespace MediaBrowser.Model.System Port = 9; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Tasks/IConfigurableScheduledTask.cs b/MediaBrowser.Model/Tasks/IConfigurableScheduledTask.cs index ed981a905..9c4b75c54 100644 --- a/MediaBrowser.Model/Tasks/IConfigurableScheduledTask.cs +++ b/MediaBrowser.Model/Tasks/IConfigurableScheduledTask.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Model.Tasks +namespace MediaBrowser.Model.Tasks { public interface IConfigurableScheduledTask { @@ -15,4 +15,4 @@ bool IsLogged { get; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Tasks/IScheduledTask.cs b/MediaBrowser.Model/Tasks/IScheduledTask.cs index 81ba239ad..a615ebb07 100644 --- a/MediaBrowser.Model/Tasks/IScheduledTask.cs +++ b/MediaBrowser.Model/Tasks/IScheduledTask.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; diff --git a/MediaBrowser.Model/Tasks/IScheduledTaskWorker.cs b/MediaBrowser.Model/Tasks/IScheduledTaskWorker.cs index 415207f8f..61e3a65eb 100644 --- a/MediaBrowser.Model/Tasks/IScheduledTaskWorker.cs +++ b/MediaBrowser.Model/Tasks/IScheduledTaskWorker.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Events; namespace MediaBrowser.Model.Tasks @@ -73,4 +73,4 @@ namespace MediaBrowser.Model.Tasks /// </summary> void ReloadTriggerEvents(); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Tasks/ITaskManager.cs b/MediaBrowser.Model/Tasks/ITaskManager.cs index dd29cdb65..a7c2f6d86 100644 --- a/MediaBrowser.Model/Tasks/ITaskManager.cs +++ b/MediaBrowser.Model/Tasks/ITaskManager.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Threading.Tasks; using MediaBrowser.Model.Events; @@ -75,4 +75,4 @@ namespace MediaBrowser.Model.Tasks void RunTaskOnNextStartup(string key); } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Tasks/ITaskTrigger.cs b/MediaBrowser.Model/Tasks/ITaskTrigger.cs index 9db0041b4..c8433ed21 100644 --- a/MediaBrowser.Model/Tasks/ITaskTrigger.cs +++ b/MediaBrowser.Model/Tasks/ITaskTrigger.cs @@ -1,5 +1,4 @@ -using System; -using MediaBrowser.Model.Events; +using System; using Microsoft.Extensions.Logging; namespace MediaBrowser.Model.Tasks diff --git a/MediaBrowser.Model/Tasks/ScheduledTaskHelpers.cs b/MediaBrowser.Model/Tasks/ScheduledTaskHelpers.cs index 2dec79e93..e461e4a4b 100644 --- a/MediaBrowser.Model/Tasks/ScheduledTaskHelpers.cs +++ b/MediaBrowser.Model/Tasks/ScheduledTaskHelpers.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Tasks { /// <summary> diff --git a/MediaBrowser.Model/Tasks/SystemEvent.cs b/MediaBrowser.Model/Tasks/SystemEvent.cs index 4d49a38cc..5a3d8a8eb 100644 --- a/MediaBrowser.Model/Tasks/SystemEvent.cs +++ b/MediaBrowser.Model/Tasks/SystemEvent.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Tasks { /// <summary> diff --git a/MediaBrowser.Model/Tasks/TaskCompletionEventArgs.cs b/MediaBrowser.Model/Tasks/TaskCompletionEventArgs.cs index be9eaa613..05eaff8da 100644 --- a/MediaBrowser.Model/Tasks/TaskCompletionEventArgs.cs +++ b/MediaBrowser.Model/Tasks/TaskCompletionEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Tasks { diff --git a/MediaBrowser.Model/Tasks/TaskCompletionStatus.cs b/MediaBrowser.Model/Tasks/TaskCompletionStatus.cs index 6ba5ba5e4..4d7ff523d 100644 --- a/MediaBrowser.Model/Tasks/TaskCompletionStatus.cs +++ b/MediaBrowser.Model/Tasks/TaskCompletionStatus.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Tasks { /// <summary> diff --git a/MediaBrowser.Model/Tasks/TaskInfo.cs b/MediaBrowser.Model/Tasks/TaskInfo.cs index 8792ce952..8d80e68cf 100644 --- a/MediaBrowser.Model/Tasks/TaskInfo.cs +++ b/MediaBrowser.Model/Tasks/TaskInfo.cs @@ -1,5 +1,3 @@ -using System.Collections.Generic; - namespace MediaBrowser.Model.Tasks { /// <summary> @@ -72,7 +70,7 @@ namespace MediaBrowser.Model.Tasks /// </summary> public TaskInfo() { - Triggers = new TaskTriggerInfo[]{}; + Triggers = new TaskTriggerInfo[] { }; } } } diff --git a/MediaBrowser.Model/Tasks/TaskOptions.cs b/MediaBrowser.Model/Tasks/TaskOptions.cs index caca154a9..a9f03303a 100644 --- a/MediaBrowser.Model/Tasks/TaskOptions.cs +++ b/MediaBrowser.Model/Tasks/TaskOptions.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Tasks { public class TaskOptions diff --git a/MediaBrowser.Model/Tasks/TaskResult.cs b/MediaBrowser.Model/Tasks/TaskResult.cs index 9cc45a16b..eede9069f 100644 --- a/MediaBrowser.Model/Tasks/TaskResult.cs +++ b/MediaBrowser.Model/Tasks/TaskResult.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Tasks { diff --git a/MediaBrowser.Model/Tasks/TaskState.cs b/MediaBrowser.Model/Tasks/TaskState.cs index 889ce6875..91bc7f682 100644 --- a/MediaBrowser.Model/Tasks/TaskState.cs +++ b/MediaBrowser.Model/Tasks/TaskState.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Tasks { /// <summary> diff --git a/MediaBrowser.Model/Tasks/TaskTriggerInfo.cs b/MediaBrowser.Model/Tasks/TaskTriggerInfo.cs index 901a300d0..80101ec48 100644 --- a/MediaBrowser.Model/Tasks/TaskTriggerInfo.cs +++ b/MediaBrowser.Model/Tasks/TaskTriggerInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Tasks { diff --git a/MediaBrowser.Model/Text/ITextEncoding.cs b/MediaBrowser.Model/Text/ITextEncoding.cs index 619d90a2b..1a5918eb7 100644 --- a/MediaBrowser.Model/Text/ITextEncoding.cs +++ b/MediaBrowser.Model/Text/ITextEncoding.cs @@ -1,4 +1,3 @@ -using System.IO; using System.Text; namespace MediaBrowser.Model.Text diff --git a/MediaBrowser.Model/Threading/ITimer.cs b/MediaBrowser.Model/Threading/ITimer.cs index 42090250b..2bec22266 100644 --- a/MediaBrowser.Model/Threading/ITimer.cs +++ b/MediaBrowser.Model/Threading/ITimer.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Threading { diff --git a/MediaBrowser.Model/Threading/ITimerFactory.cs b/MediaBrowser.Model/Threading/ITimerFactory.cs index 5f3df1738..1161958a4 100644 --- a/MediaBrowser.Model/Threading/ITimerFactory.cs +++ b/MediaBrowser.Model/Threading/ITimerFactory.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Threading { diff --git a/MediaBrowser.Model/Updates/CheckForUpdateResult.cs b/MediaBrowser.Model/Updates/CheckForUpdateResult.cs index ff0bba197..4c66c6d49 100644 --- a/MediaBrowser.Model/Updates/CheckForUpdateResult.cs +++ b/MediaBrowser.Model/Updates/CheckForUpdateResult.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Updates { /// <summary> @@ -18,7 +17,7 @@ namespace MediaBrowser.Model.Updates /// <value>The available version.</value> public string AvailableVersion { - get { return Package != null ? Package.versionStr : "0.0.0.1"; } + get => Package != null ? Package.versionStr : "0.0.0.1"; set { } // need this for the serializer } diff --git a/MediaBrowser.Model/Updates/InstallationInfo.cs b/MediaBrowser.Model/Updates/InstallationInfo.cs index 09b4975a8..a3f19e236 100644 --- a/MediaBrowser.Model/Updates/InstallationInfo.cs +++ b/MediaBrowser.Model/Updates/InstallationInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Updates { diff --git a/MediaBrowser.Model/Updates/PackageInfo.cs b/MediaBrowser.Model/Updates/PackageInfo.cs index 464ea295d..ff4ed26d3 100644 --- a/MediaBrowser.Model/Updates/PackageInfo.cs +++ b/MediaBrowser.Model/Updates/PackageInfo.cs @@ -1,5 +1,4 @@ -using System; -using System.Collections.Generic; +using System; namespace MediaBrowser.Model.Updates { diff --git a/MediaBrowser.Model/Updates/PackageTargetSystem.cs b/MediaBrowser.Model/Updates/PackageTargetSystem.cs index c80dddde3..a0646f959 100644 --- a/MediaBrowser.Model/Updates/PackageTargetSystem.cs +++ b/MediaBrowser.Model/Updates/PackageTargetSystem.cs @@ -18,4 +18,4 @@ namespace MediaBrowser.Model.Updates /// </summary> MBClassic } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Updates/PackageVersionClass.cs b/MediaBrowser.Model/Updates/PackageVersionClass.cs index 3f51e1b3c..52f08b73b 100644 --- a/MediaBrowser.Model/Updates/PackageVersionClass.cs +++ b/MediaBrowser.Model/Updates/PackageVersionClass.cs @@ -18,4 +18,4 @@ namespace MediaBrowser.Model.Updates /// </summary> Dev = 2 } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Updates/PackageVersionInfo.cs b/MediaBrowser.Model/Updates/PackageVersionInfo.cs index 3ac518187..be531770d 100644 --- a/MediaBrowser.Model/Updates/PackageVersionInfo.cs +++ b/MediaBrowser.Model/Updates/PackageVersionInfo.cs @@ -1,4 +1,4 @@ -using System; +using System; using MediaBrowser.Model.Serialization; namespace MediaBrowser.Model.Updates @@ -36,10 +36,7 @@ namespace MediaBrowser.Model.Updates /// </summary> /// <value>The version.</value> [IgnoreDataMember] - public Version version - { - get { return _version ?? (_version = new Version(ValueOrDefault(versionStr, "0.0.0.1"))); } - } + public Version version => _version ?? (_version = new Version(ValueOrDefault(versionStr, "0.0.0.1"))); /// <summary> /// Values the or default. @@ -92,4 +89,4 @@ namespace MediaBrowser.Model.Updates public string runtimes { get; set; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Model/Users/ForgotPasswordAction.cs b/MediaBrowser.Model/Users/ForgotPasswordAction.cs index f75b1d74b..2124126c1 100644 --- a/MediaBrowser.Model/Users/ForgotPasswordAction.cs +++ b/MediaBrowser.Model/Users/ForgotPasswordAction.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Users { public enum ForgotPasswordAction diff --git a/MediaBrowser.Model/Users/ForgotPasswordResult.cs b/MediaBrowser.Model/Users/ForgotPasswordResult.cs index 7dbb1e96b..2f9b4cf48 100644 --- a/MediaBrowser.Model/Users/ForgotPasswordResult.cs +++ b/MediaBrowser.Model/Users/ForgotPasswordResult.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Users { diff --git a/MediaBrowser.Model/Users/PinRedeemResult.cs b/MediaBrowser.Model/Users/PinRedeemResult.cs index 6a01bf2d4..35663ba57 100644 --- a/MediaBrowser.Model/Users/PinRedeemResult.cs +++ b/MediaBrowser.Model/Users/PinRedeemResult.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Users { public class PinRedeemResult diff --git a/MediaBrowser.Model/Users/UserAction.cs b/MediaBrowser.Model/Users/UserAction.cs index 5f401b9f0..48b5bbef1 100644 --- a/MediaBrowser.Model/Users/UserAction.cs +++ b/MediaBrowser.Model/Users/UserAction.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace MediaBrowser.Model.Users { diff --git a/MediaBrowser.Model/Users/UserActionType.cs b/MediaBrowser.Model/Users/UserActionType.cs index 493de6272..5d843a738 100644 --- a/MediaBrowser.Model/Users/UserActionType.cs +++ b/MediaBrowser.Model/Users/UserActionType.cs @@ -1,4 +1,3 @@ - namespace MediaBrowser.Model.Users { public enum UserActionType diff --git a/MediaBrowser.Model/Users/UserPolicy.cs b/MediaBrowser.Model/Users/UserPolicy.cs index e3f6d8620..23805b79f 100644 --- a/MediaBrowser.Model/Users/UserPolicy.cs +++ b/MediaBrowser.Model/Users/UserPolicy.cs @@ -1,5 +1,5 @@ -using MediaBrowser.Model.Configuration; using System; +using MediaBrowser.Model.Configuration; namespace MediaBrowser.Model.Users { diff --git a/MediaBrowser.Model/Xml/IXmlReaderSettingsFactory.cs b/MediaBrowser.Model/Xml/IXmlReaderSettingsFactory.cs index b9628ec3e..b39325958 100644 --- a/MediaBrowser.Model/Xml/IXmlReaderSettingsFactory.cs +++ b/MediaBrowser.Model/Xml/IXmlReaderSettingsFactory.cs @@ -1,4 +1,4 @@ -using System.Xml; +using System.Xml; namespace MediaBrowser.Model.Xml { diff --git a/MediaBrowser.Providers/Books/AudioBookMetadataService.cs b/MediaBrowser.Providers/Books/AudioBookMetadataService.cs index 707e942f3..4820e12ab 100644 --- a/MediaBrowser.Providers/Books/AudioBookMetadataService.cs +++ b/MediaBrowser.Providers/Books/AudioBookMetadataService.cs @@ -1,16 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; -using System.Linq; - -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Books { diff --git a/MediaBrowser.Providers/Books/BookMetadataService.cs b/MediaBrowser.Providers/Books/BookMetadataService.cs index a2143982a..358f87a0f 100644 --- a/MediaBrowser.Providers/Books/BookMetadataService.cs +++ b/MediaBrowser.Providers/Books/BookMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Books { diff --git a/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs b/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs index 7cfae3a12..693edb143 100644 --- a/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs +++ b/MediaBrowser.Providers/BoxSets/BoxSetMetadataService.cs @@ -1,15 +1,14 @@ -using MediaBrowser.Controller.Configuration; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Linq; using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; -using System.Collections.Generic; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.BoxSets { @@ -53,36 +52,12 @@ namespace MediaBrowser.Providers.BoxSets { } - protected override bool EnableUpdatingGenresFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingGenresFromChildren => true; - protected override bool EnableUpdatingOfficialRatingFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingOfficialRatingFromChildren => true; - protected override bool EnableUpdatingStudiosFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingStudiosFromChildren => true; - protected override bool EnableUpdatingPremiereDateFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingPremiereDateFromChildren => true; } } diff --git a/MediaBrowser.Providers/BoxSets/MovieDbBoxSetImageProvider.cs b/MediaBrowser.Providers/BoxSets/MovieDbBoxSetImageProvider.cs index 79b9aaf98..c6c1a2a94 100644 --- a/MediaBrowser.Providers/BoxSets/MovieDbBoxSetImageProvider.cs +++ b/MediaBrowser.Providers/BoxSets/MovieDbBoxSetImageProvider.cs @@ -1,4 +1,9 @@ -using MediaBrowser.Common.Net; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Providers; @@ -6,11 +11,6 @@ using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Providers; using MediaBrowser.Providers.Movies; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; namespace MediaBrowser.Providers.BoxSets { @@ -23,15 +23,9 @@ namespace MediaBrowser.Providers.BoxSets _httpClient = httpClient; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "TheMovieDb"; } - } + public static string ProviderName => "TheMovieDb"; public bool Supports(BaseItem item) { @@ -150,10 +144,7 @@ namespace MediaBrowser.Providers.BoxSets .ThenByDescending(i => i.vote_count); } - public int Order - { - get { return 0; } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/BoxSets/MovieDbBoxSetProvider.cs b/MediaBrowser.Providers/BoxSets/MovieDbBoxSetProvider.cs index a196fa398..e06d93520 100644 --- a/MediaBrowser.Providers/BoxSets/MovieDbBoxSetProvider.cs +++ b/MediaBrowser.Providers/BoxSets/MovieDbBoxSetProvider.cs @@ -1,25 +1,23 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Providers.Movies; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Globalization; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.BoxSets { @@ -243,10 +241,7 @@ namespace MediaBrowser.Providers.BoxSets return DownloadInfo(tmdbId, preferredMetadataLanguage, cancellationToken); } - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; private static string GetDataFilePath(IApplicationPaths appPaths, string tmdbId, string preferredLanguage) { diff --git a/MediaBrowser.Providers/Channels/ChannelMetadataService.cs b/MediaBrowser.Providers/Channels/ChannelMetadataService.cs index 6b371fef9..0763a0163 100644 --- a/MediaBrowser.Providers/Channels/ChannelMetadataService.cs +++ b/MediaBrowser.Providers/Channels/ChannelMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Channels; +using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Channels { diff --git a/MediaBrowser.Providers/Chapters/ChapterManager.cs b/MediaBrowser.Providers/Chapters/ChapterManager.cs index 96e068a1f..aaadfce80 100644 --- a/MediaBrowser.Providers/Chapters/ChapterManager.cs +++ b/MediaBrowser.Providers/Chapters/ChapterManager.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Chapters; +using System; +using System.Collections.Generic; +using MediaBrowser.Controller.Chapters; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Persistence; using MediaBrowser.Model.Entities; using Microsoft.Extensions.Logging; -using System; -using System.Collections.Generic; namespace MediaBrowser.Providers.Chapters { diff --git a/MediaBrowser.Providers/Folders/CollectionFolderMetadataService.cs b/MediaBrowser.Providers/Folders/CollectionFolderMetadataService.cs index bf35cd105..2c28b3e35 100644 --- a/MediaBrowser.Providers/Folders/CollectionFolderMetadataService.cs +++ b/MediaBrowser.Providers/Folders/CollectionFolderMetadataService.cs @@ -1,15 +1,12 @@ -using System.Collections.Generic; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Collections; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.IO; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.IO; using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Folders { diff --git a/MediaBrowser.Providers/Folders/FolderMetadataService.cs b/MediaBrowser.Providers/Folders/FolderMetadataService.cs index 514788261..bb1634422 100644 --- a/MediaBrowser.Providers/Folders/FolderMetadataService.cs +++ b/MediaBrowser.Providers/Folders/FolderMetadataService.cs @@ -1,27 +1,18 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Folders { public class FolderMetadataService : MetadataService<Folder, ItemLookupInfo> { - public override int Order - { - get - { - // Make sure the type-specific services get picked first - return 10; - } - } + // Make sure the type-specific services get picked first + public override int Order => 10; protected override void MergeData(MetadataResult<Folder> source, MetadataResult<Folder> target, MetadataFields[] lockedFields, bool replaceData, bool mergeMetadataSettings) { diff --git a/MediaBrowser.Providers/Folders/UserViewMetadataService.cs b/MediaBrowser.Providers/Folders/UserViewMetadataService.cs index 14e0c3de6..8d6e77aeb 100644 --- a/MediaBrowser.Providers/Folders/UserViewMetadataService.cs +++ b/MediaBrowser.Providers/Folders/UserViewMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Folders { diff --git a/MediaBrowser.Providers/GameGenres/GameGenreMetadataService.cs b/MediaBrowser.Providers/GameGenres/GameGenreMetadataService.cs index 8cc11701e..2034848de 100644 --- a/MediaBrowser.Providers/GameGenres/GameGenreMetadataService.cs +++ b/MediaBrowser.Providers/GameGenres/GameGenreMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.GameGenres { diff --git a/MediaBrowser.Providers/Games/GameMetadataService.cs b/MediaBrowser.Providers/Games/GameMetadataService.cs index 4a56cc03b..764394a21 100644 --- a/MediaBrowser.Providers/Games/GameMetadataService.cs +++ b/MediaBrowser.Providers/Games/GameMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Games { diff --git a/MediaBrowser.Providers/Games/GameSystemMetadataService.cs b/MediaBrowser.Providers/Games/GameSystemMetadataService.cs index 25fdfb713..5bca4731c 100644 --- a/MediaBrowser.Providers/Games/GameSystemMetadataService.cs +++ b/MediaBrowser.Providers/Games/GameSystemMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Games { diff --git a/MediaBrowser.Providers/Genres/GenreMetadataService.cs b/MediaBrowser.Providers/Genres/GenreMetadataService.cs index 8d764dbb3..28a46b008 100644 --- a/MediaBrowser.Providers/Genres/GenreMetadataService.cs +++ b/MediaBrowser.Providers/Genres/GenreMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Genres { diff --git a/MediaBrowser.Providers/LiveTv/ProgramMetadataService.cs b/MediaBrowser.Providers/LiveTv/ProgramMetadataService.cs index 722de4dee..6009d3a58 100644 --- a/MediaBrowser.Providers/LiveTv/ProgramMetadataService.cs +++ b/MediaBrowser.Providers/LiveTv/ProgramMetadataService.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.LiveTv { diff --git a/MediaBrowser.Providers/Manager/GenericPriorityQueue.cs b/MediaBrowser.Providers/Manager/GenericPriorityQueue.cs index 49656a410..b87f688e1 100644 --- a/MediaBrowser.Providers/Manager/GenericPriorityQueue.cs +++ b/MediaBrowser.Providers/Manager/GenericPriorityQueue.cs @@ -1,9 +1,7 @@ -using System; +using System; using System.Collections; using System.Collections.Generic; using System.Runtime.CompilerServices; -using System.Text; -using System.Threading.Tasks; namespace Priority_Queue { @@ -43,25 +41,13 @@ namespace Priority_Queue /// Returns the number of nodes in the queue. /// O(1) /// </summary> - public int Count - { - get - { - return _numNodes; - } - } + public int Count => _numNodes; /// <summary> /// Returns the maximum number of items that can be enqueued at once in this queue. Once you hit this number (ie. once Count == MaxSize), /// attempting to enqueue another item will cause undefined behavior. O(1) /// </summary> - public int MaxSize - { - get - { - return _nodes.Length - 1; - } - } + public int MaxSize => _nodes.Length - 1; /// <summary> /// Removes every node from the queue. @@ -146,7 +132,7 @@ namespace Priority_Queue int parent = node.QueueIndex / 2; while (parent >= 1) { - TItem parentNode = _nodes[parent]; + var parentNode = _nodes[parent]; if (HasHigherPriority(parentNode, node)) break; @@ -177,7 +163,7 @@ namespace Priority_Queue break; } - TItem childLeft = _nodes[childLeftIndex]; + var childLeft = _nodes[childLeftIndex]; if (HasHigherPriority(childLeft, newParent)) { newParent = childLeft; @@ -187,7 +173,7 @@ namespace Priority_Queue int childRightIndex = childLeftIndex + 1; if (childRightIndex <= _numNodes) { - TItem childRight = _nodes[childRightIndex]; + var childRight = _nodes[childRightIndex]; if (HasHigherPriority(childRight, newParent)) { newParent = childRight; @@ -248,7 +234,7 @@ namespace Priority_Queue } #endif - TItem returnMe = _nodes[1]; + var returnMe = _nodes[1]; Remove(returnMe); item = returnMe; return true; @@ -330,7 +316,7 @@ namespace Priority_Queue { //Bubble the updated node up or down as appropriate int parentIndex = node.QueueIndex / 2; - TItem parentNode = _nodes[parentIndex]; + var parentNode = _nodes[parentIndex]; if (parentIndex > 0 && HasHigherPriority(node, parentNode)) { @@ -370,7 +356,7 @@ namespace Priority_Queue } //Swap the node with the last node - TItem formerLastNode = _nodes[_numNodes]; + var formerLastNode = _nodes[_numNodes]; Swap(node, formerLastNode); _nodes[_numNodes] = null; _numNodes--; diff --git a/MediaBrowser.Providers/Manager/GenericPriorityQueueNode.cs b/MediaBrowser.Providers/Manager/GenericPriorityQueueNode.cs index ec908095f..b45ae0fd8 100644 --- a/MediaBrowser.Providers/Manager/GenericPriorityQueueNode.cs +++ b/MediaBrowser.Providers/Manager/GenericPriorityQueueNode.cs @@ -1,8 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Threading.Tasks; - namespace Priority_Queue { /// Credit: https://github.com/BlueRaja/High-Speed-Priority-Queue-for-C-Sharp diff --git a/MediaBrowser.Providers/Manager/IFixedSizePriorityQueue.cs b/MediaBrowser.Providers/Manager/IFixedSizePriorityQueue.cs index a49d42aca..509d98e42 100644 --- a/MediaBrowser.Providers/Manager/IFixedSizePriorityQueue.cs +++ b/MediaBrowser.Providers/Manager/IFixedSizePriorityQueue.cs @@ -1,7 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Threading.Tasks; +using System; namespace Priority_Queue { @@ -24,4 +21,4 @@ namespace Priority_Queue /// </summary> int MaxSize { get; } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Providers/Manager/IPriorityQueue.cs b/MediaBrowser.Providers/Manager/IPriorityQueue.cs index efc9fc2ef..dc319a7f8 100644 --- a/MediaBrowser.Providers/Manager/IPriorityQueue.cs +++ b/MediaBrowser.Providers/Manager/IPriorityQueue.cs @@ -1,7 +1,5 @@ -using System; +using System; using System.Collections.Generic; -using System.Text; -using System.Threading.Tasks; namespace Priority_Queue { diff --git a/MediaBrowser.Providers/Manager/ImageSaver.cs b/MediaBrowser.Providers/Manager/ImageSaver.cs index bf5bb5907..d0d00ef12 100644 --- a/MediaBrowser.Providers/Manager/ImageSaver.cs +++ b/MediaBrowser.Providers/Manager/ImageSaver.cs @@ -1,14 +1,3 @@ -using MediaBrowser.Common.Configuration; - -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; using System; using System.Collections.Generic; using System.Globalization; @@ -16,8 +5,17 @@ using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Net; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Manager { @@ -65,7 +63,7 @@ namespace MediaBrowser.Providers.Manager /// <param name="imageIndex">Index of the image.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> - /// <exception cref="System.ArgumentNullException">mimeType</exception> + /// <exception cref="ArgumentNullException">mimeType</exception> public Task SaveImage(BaseItem item, Stream source, string mimeType, ImageType type, int? imageIndex, CancellationToken cancellationToken) { return SaveImage(item, source, mimeType, type, imageIndex, null, cancellationToken); @@ -301,7 +299,7 @@ namespace MediaBrowser.Providers.Manager /// <param name="type">The type.</param> /// <param name="imageIndex">Index of the image.</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// imageIndex /// or /// imageIndex @@ -318,7 +316,7 @@ namespace MediaBrowser.Providers.Manager /// <param name="type">The type.</param> /// <param name="imageIndex">Index of the image.</param> /// <param name="path">The path.</param> - /// <exception cref="System.ArgumentNullException">imageIndex + /// <exception cref="ArgumentNullException">imageIndex /// or /// imageIndex</exception> private void SetImagePath(BaseItem item, ImageType type, int? imageIndex, string path) @@ -335,7 +333,7 @@ namespace MediaBrowser.Providers.Manager /// <param name="mimeType">Type of the MIME.</param> /// <param name="saveLocally">if set to <c>true</c> [save locally].</param> /// <returns>System.String.</returns> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// imageIndex /// or /// imageIndex @@ -492,7 +490,7 @@ namespace MediaBrowser.Providers.Manager /// <param name="imageIndex">Index of the image.</param> /// <param name="mimeType">Type of the MIME.</param> /// <returns>IEnumerable{System.String}.</returns> - /// <exception cref="System.ArgumentNullException">imageIndex</exception> + /// <exception cref="ArgumentNullException">imageIndex</exception> private string[] GetCompatibleSavePaths(BaseItem item, ImageType type, int? imageIndex, string mimeType) { var season = item as Season; diff --git a/MediaBrowser.Providers/Manager/ItemImageProvider.cs b/MediaBrowser.Providers/Manager/ItemImageProvider.cs index fc30374b3..c2e53ae6c 100644 --- a/MediaBrowser.Providers/Manager/ItemImageProvider.cs +++ b/MediaBrowser.Providers/Manager/ItemImageProvider.cs @@ -1,13 +1,3 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.IO; @@ -15,16 +5,19 @@ using System.Linq; using System.Net; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Model.IO; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.LiveTv; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Channels; +using MediaBrowser.Model.Net; +using MediaBrowser.Model.Providers; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Manager { diff --git a/MediaBrowser.Providers/Manager/MetadataService.cs b/MediaBrowser.Providers/Manager/MetadataService.cs index e26004923..1972ad290 100644 --- a/MediaBrowser.Providers/Manager/MetadataService.cs +++ b/MediaBrowser.Providers/Manager/MetadataService.cs @@ -1,19 +1,17 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; -using MediaBrowser.Providers.MediaInfo; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Manager { @@ -417,7 +415,7 @@ namespace MediaBrowser.Providers.Manager var folder = item as Folder; if (folder != null && folder.SupportsDateLastMediaAdded) { - DateTime dateLastMediaAdded = DateTime.MinValue; + var dateLastMediaAdded = DateTime.MinValue; var any = false; foreach (var child in children) @@ -443,34 +441,13 @@ namespace MediaBrowser.Providers.Manager return updateType; } - protected virtual bool EnableUpdatingPremiereDateFromChildren - { - get - { - return false; - } - } - protected virtual bool EnableUpdatingGenresFromChildren - { - get - { - return false; - } - } - protected virtual bool EnableUpdatingStudiosFromChildren - { - get - { - return false; - } - } - protected virtual bool EnableUpdatingOfficialRatingFromChildren - { - get - { - return false; - } - } + protected virtual bool EnableUpdatingPremiereDateFromChildren => false; + + protected virtual bool EnableUpdatingGenresFromChildren => false; + + protected virtual bool EnableUpdatingStudiosFromChildren => false; + + protected virtual bool EnableUpdatingOfficialRatingFromChildren => false; private ItemUpdateType UpdatePremiereDate(TItemType item, IList<BaseItem> children) { @@ -928,13 +905,7 @@ namespace MediaBrowser.Providers.Manager bool replaceData, bool mergeMetadataSettings); - public virtual int Order - { - get - { - return 0; - } - } + public virtual int Order => 0; private bool HasChanged(BaseItem item, IHasItemChangeMonitor changeMonitor, IDirectoryService directoryService) { diff --git a/MediaBrowser.Providers/Manager/ProviderManager.cs b/MediaBrowser.Providers/Manager/ProviderManager.cs index d21d58cf3..65364ad67 100644 --- a/MediaBrowser.Providers/Manager/ProviderManager.cs +++ b/MediaBrowser.Providers/Manager/ProviderManager.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; @@ -968,8 +968,7 @@ namespace MediaBrowser.Providers.Manager { lock (_activeRefreshes) { - double value; - if (_activeRefreshes.TryGetValue(id, out value)) + if (_activeRefreshes.TryGetValue(id, out double value)) { return value; } @@ -1029,7 +1028,6 @@ namespace MediaBrowser.Providers.Manager private async Task StartProcessingRefreshQueue() { - Tuple<Guid, MetadataRefreshOptions> refreshItem; var libraryManager = _libraryManagerFactory(); if (_disposed) @@ -1039,7 +1037,7 @@ namespace MediaBrowser.Providers.Manager var cancellationToken = _disposeCancellationTokenSource.Token; - while (_refreshQueue.TryDequeue(out refreshItem)) + while (_refreshQueue.TryDequeue(out Tuple<Guid, MetadataRefreshOptions> refreshItem)) { if (_disposed) { diff --git a/MediaBrowser.Providers/Manager/ProviderUtils.cs b/MediaBrowser.Providers/Manager/ProviderUtils.cs index f83d87ad5..2031449d9 100644 --- a/MediaBrowser.Providers/Manager/ProviderUtils.cs +++ b/MediaBrowser.Providers/Manager/ProviderUtils.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Providers.Manager { diff --git a/MediaBrowser.Providers/Manager/SimplePriorityQueue.cs b/MediaBrowser.Providers/Manager/SimplePriorityQueue.cs index 36f2605fa..d064312cf 100644 --- a/MediaBrowser.Providers/Manager/SimplePriorityQueue.cs +++ b/MediaBrowser.Providers/Manager/SimplePriorityQueue.cs @@ -1,8 +1,6 @@ -using System; +using System; using System.Collections; using System.Collections.Generic; -using System.Text; -using System.Threading.Tasks; namespace Priority_Queue { @@ -135,8 +133,7 @@ namespace Priority_Queue return false; } - SimpleNode node; - if (_queue.TryDequeue(out node)) + if (_queue.TryDequeue(out SimpleNode node)) { item = node.Data; return true; @@ -157,7 +154,7 @@ namespace Priority_Queue { lock (_queue) { - SimpleNode node = new SimpleNode(item); + var node = new SimpleNode(item); if (_queue.Count == _queue.MaxSize) { _queue.Resize(_queue.MaxSize * 2 + 1); @@ -213,7 +210,7 @@ namespace Priority_Queue public IEnumerator<TItem> GetEnumerator() { - List<TItem> queueData = new List<TItem>(); + var queueData = new List<TItem>(); lock (_queue) { //Copy to a separate list because we don't want to 'yield return' inside a lock @@ -247,4 +244,4 @@ namespace Priority_Queue /// </summary> /// <typeparam name="TItem">The type to enqueue</typeparam> public class SimplePriorityQueue<TItem> : SimplePriorityQueue<TItem, float> { } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Providers/MediaBrowser.Providers.csproj b/MediaBrowser.Providers/MediaBrowser.Providers.csproj index a318cf38a..e6ef889c3 100644 --- a/MediaBrowser.Providers/MediaBrowser.Providers.csproj +++ b/MediaBrowser.Providers/MediaBrowser.Providers.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Controller\MediaBrowser.Controller.csproj" /> diff --git a/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs b/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs index 2c0d5bcbc..0b902ccec 100644 --- a/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs +++ b/MediaBrowser.Providers/MediaInfo/AudioImageProvider.cs @@ -1,4 +1,9 @@ -using System; +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; @@ -6,13 +11,7 @@ using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Providers.MediaInfo { @@ -120,18 +119,9 @@ namespace MediaBrowser.Providers.MediaInfo return Path.Combine(AudioImagesPath, prefix, filename); } - public string AudioImagesPath - { - get - { - return Path.Combine(_config.ApplicationPaths.CachePath, "extracted-audio-images"); - } - } + public string AudioImagesPath => Path.Combine(_config.ApplicationPaths.CachePath, "extracted-audio-images"); - public string Name - { - get { return "Image Extractor"; } - } + public string Name => "Image Extractor"; public bool Supports(BaseItem item) { diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeAudioInfo.cs b/MediaBrowser.Providers/MediaInfo/FFProbeAudioInfo.cs index b3fc2a9d7..207d75524 100644 --- a/MediaBrowser.Providers/MediaInfo/FFProbeAudioInfo.cs +++ b/MediaBrowser.Providers/MediaInfo/FFProbeAudioInfo.cs @@ -1,21 +1,21 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Persistence; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; -using System.Collections.Generic; -using System.Globalization; -using System.Threading; -using System.Threading.Tasks; -using System.Linq; -using MediaBrowser.Model.Dto; -using System; -using MediaBrowser.Controller.Providers; namespace MediaBrowser.Providers.MediaInfo { diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs b/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs index 2827a3cc7..5e9824ed1 100644 --- a/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs +++ b/MediaBrowser.Providers/MediaInfo/FFProbeProvider.cs @@ -1,4 +1,9 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Channels; using MediaBrowser.Controller.Chapters; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; @@ -6,22 +11,16 @@ using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.Subtitles; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Globalization; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Serialization; -using System; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Controller.Channels; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.MediaInfo { @@ -54,10 +53,7 @@ namespace MediaBrowser.Providers.MediaInfo private readonly IChannelManager _channelManager; private readonly IMediaSourceManager _mediaSourceManager; - public string Name - { - get { return "ffprobe"; } - } + public string Name => "ffprobe"; public bool HasChanged(BaseItem item, IDirectoryService directoryService) { @@ -227,14 +223,7 @@ namespace MediaBrowser.Providers.MediaInfo return prober.Probe(item, options, cancellationToken); } - - public int Order - { - get - { - // Run last - return 100; - } - } + // Run last + public int Order => 100; } } diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs index 29c94ccd9..80c93f157 100644 --- a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs +++ b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs @@ -1,6 +1,12 @@ -using DvdLib.Ifo; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using DvdLib.Ifo; using MediaBrowser.Common.Configuration; -using MediaBrowser.Model.Dlna; using MediaBrowser.Controller.Chapters; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; @@ -12,21 +18,15 @@ using MediaBrowser.Controller.Persistence; using MediaBrowser.Controller.Providers; using MediaBrowser.Controller.Subtitles; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Dlna; +using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Globalization; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.MediaInfo; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Dto; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.MediaInfo { @@ -251,12 +251,10 @@ namespace MediaBrowser.Providers.MediaInfo foreach (var chapter in chapters) { - TimeSpan time; - // Check if the name is empty and/or if the name is a time // Some ripping programs do that. if (string.IsNullOrWhiteSpace(chapter.Name) || - TimeSpan.TryParse(chapter.Name, out time)) + TimeSpan.TryParse(chapter.Name, out var time)) { chapter.Name = string.Format(_localization.GetLocalizedString("ChapterNameValue"), index.ToString(CultureInfo.InvariantCulture)); } diff --git a/MediaBrowser.Providers/MediaInfo/SubtitleDownloader.cs b/MediaBrowser.Providers/MediaInfo/SubtitleDownloader.cs index 4c66f2b0a..77c0e9b4e 100644 --- a/MediaBrowser.Providers/MediaInfo/SubtitleDownloader.cs +++ b/MediaBrowser.Providers/MediaInfo/SubtitleDownloader.cs @@ -1,16 +1,16 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Controller.Subtitles; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Controller.Subtitles; +using MediaBrowser.Model.Entities; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.MediaInfo { diff --git a/MediaBrowser.Providers/MediaInfo/SubtitleResolver.cs b/MediaBrowser.Providers/MediaInfo/SubtitleResolver.cs index a06509b56..2ce10b656 100644 --- a/MediaBrowser.Providers/MediaInfo/SubtitleResolver.cs +++ b/MediaBrowser.Providers/MediaInfo/SubtitleResolver.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Model.Extensions; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using System; using System.Collections.Generic; using System.IO; using System.Linq; -using MediaBrowser.Model.IO; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; namespace MediaBrowser.Providers.MediaInfo { diff --git a/MediaBrowser.Providers/MediaInfo/SubtitleScheduledTask.cs b/MediaBrowser.Providers/MediaInfo/SubtitleScheduledTask.cs index 02fb50ae9..b7598ef22 100644 --- a/MediaBrowser.Providers/MediaInfo/SubtitleScheduledTask.cs +++ b/MediaBrowser.Providers/MediaInfo/SubtitleScheduledTask.cs @@ -1,23 +1,19 @@ -using MediaBrowser.Common.Configuration; -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.Subtitles; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.Linq; using System.Threading; using System.Threading.Tasks; -using System.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Subtitles; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Tasks; -using MediaBrowser.Model.Extensions; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.MediaInfo { @@ -40,20 +36,11 @@ namespace MediaBrowser.Providers.MediaInfo _json = json; } - public string Name - { - get { return "Download missing subtitles"; } - } + public string Name => "Download missing subtitles"; - public string Description - { - get { return "Searches the internet for missing subtitles based on metadata configuration."; } - } + public string Description => "Searches the internet for missing subtitles based on metadata configuration."; - public string Category - { - get { return "Library"; } - } + public string Category => "Library"; private SubtitleOptions GetOptions() { @@ -217,9 +204,6 @@ namespace MediaBrowser.Providers.MediaInfo }; } - public string Key - { - get { return "DownloadSubtitles"; } - } + public string Key => "DownloadSubtitles"; } } diff --git a/MediaBrowser.Providers/MediaInfo/VideoImageProvider.cs b/MediaBrowser.Providers/MediaInfo/VideoImageProvider.cs index baf913a77..d80084acf 100644 --- a/MediaBrowser.Providers/MediaInfo/VideoImageProvider.cs +++ b/MediaBrowser.Providers/MediaInfo/VideoImageProvider.cs @@ -1,18 +1,16 @@ -using MediaBrowser.Controller.Configuration; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Library; using MediaBrowser.Controller.MediaEncoding; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Drawing; using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.MediaInfo; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.MediaInfo { @@ -122,10 +120,7 @@ namespace MediaBrowser.Providers.MediaInfo }; } - public string Name - { - get { return "Screen Grabber"; } - } + public string Name => "Screen Grabber"; public bool Supports(BaseItem item) { @@ -147,14 +142,7 @@ namespace MediaBrowser.Providers.MediaInfo return false; } - - public int Order - { - get - { - // Make sure this comes after internet image providers - return 100; - } - } + // Make sure this comes after internet image providers + public int Order => 100; } } diff --git a/MediaBrowser.Providers/Movies/FanartMovieImageProvider.cs b/MediaBrowser.Providers/Movies/FanartMovieImageProvider.cs index b56167320..63d99db9b 100644 --- a/MediaBrowser.Providers/Movies/FanartMovieImageProvider.cs +++ b/MediaBrowser.Providers/Movies/FanartMovieImageProvider.cs @@ -1,4 +1,11 @@ -using System.Net; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Net; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; @@ -7,24 +14,12 @@ using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Net; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Providers.Music; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Text.RegularExpressions; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; -using MediaBrowser.Controller.LiveTv; using MediaBrowser.Providers.TV; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Providers.Movies { @@ -50,15 +45,9 @@ namespace MediaBrowser.Providers.Movies Current = this; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "FanArt"; } - } + public static string ProviderName => "FanArt"; public bool Supports(BaseItem item) { @@ -179,7 +168,6 @@ namespace MediaBrowser.Providers.Movies if (!string.IsNullOrEmpty(url)) { var likesString = i.likes; - int likes; var info = new RemoteImageInfo { @@ -192,7 +180,7 @@ namespace MediaBrowser.Providers.Movies Language = i.lang }; - if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out likes)) + if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out var likes)) { info.CommunityRating = likes; } @@ -204,10 +192,7 @@ namespace MediaBrowser.Providers.Movies }).Where(i => i != null)); } - public int Order - { - get { return 1; } - } + public int Order => 1; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Movies/GenericMovieDbInfo.cs b/MediaBrowser.Providers/Movies/GenericMovieDbInfo.cs index 039f2efaf..10d3e5e9d 100644 --- a/MediaBrowser.Providers/Movies/GenericMovieDbInfo.cs +++ b/MediaBrowser.Providers/Movies/GenericMovieDbInfo.cs @@ -1,22 +1,19 @@ -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.Globalization; -using System.IO; using System.Linq; using System.Net; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Movies { @@ -164,10 +161,9 @@ namespace MediaBrowser.Providers.Movies } } - float rating; string voteAvg = movieData.vote_average.ToString(CultureInfo.InvariantCulture); - if (float.TryParse(voteAvg, NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out rating)) + if (float.TryParse(voteAvg, NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out var rating)) { movie.CommunityRating = rating; } @@ -198,10 +194,8 @@ namespace MediaBrowser.Providers.Movies if (!string.IsNullOrWhiteSpace(movieData.release_date)) { - DateTime r; - // These dates are always in this exact format - if (DateTime.TryParse(movieData.release_date, _usCulture, DateTimeStyles.None, out r)) + if (DateTime.TryParse(movieData.release_date, _usCulture, DateTimeStyles.None, out var r)) { movie.PremiereDate = r.ToUniversalTime(); movie.ProductionYear = movie.PremiereDate.Value.Year; diff --git a/MediaBrowser.Providers/Movies/MovieDbImageProvider.cs b/MediaBrowser.Providers/Movies/MovieDbImageProvider.cs index ae466c47e..b9c5d7ce5 100644 --- a/MediaBrowser.Providers/Movies/MovieDbImageProvider.cs +++ b/MediaBrowser.Providers/Movies/MovieDbImageProvider.cs @@ -1,20 +1,18 @@ -using System.Globalization; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.IO; namespace MediaBrowser.Providers.Movies { @@ -31,15 +29,9 @@ namespace MediaBrowser.Providers.Movies _fileSystem = fileSystem; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "TheMovieDb"; } - } + public static string ProviderName => "TheMovieDb"; public bool Supports(BaseItem item) { @@ -201,10 +193,7 @@ namespace MediaBrowser.Providers.Movies return null; } - public int Order - { - get { return 0; } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Movies/MovieDbProvider.cs b/MediaBrowser.Providers/Movies/MovieDbProvider.cs index 00848c20e..aaed69459 100644 --- a/MediaBrowser.Providers/Movies/MovieDbProvider.cs +++ b/MediaBrowser.Providers/Movies/MovieDbProvider.cs @@ -1,14 +1,3 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Providers; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.Globalization; @@ -16,13 +5,21 @@ using System.IO; using System.Net; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; using MediaBrowser.Common; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Net; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.Providers; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Movies { @@ -89,10 +86,8 @@ namespace MediaBrowser.Providers.Movies if (!string.IsNullOrWhiteSpace(obj.release_date)) { - DateTime r; - // These dates are always in this exact format - if (DateTime.TryParse(obj.release_date, _usCulture, DateTimeStyles.None, out r)) + if (DateTime.TryParse(obj.release_date, _usCulture, DateTimeStyles.None, out var r)) { remoteResult.PremiereDate = r.ToUniversalTime(); remoteResult.ProductionYear = remoteResult.PremiereDate.Value.Year; @@ -125,10 +120,7 @@ namespace MediaBrowser.Providers.Movies return movieDb.GetMetadata(id, cancellationToken); } - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; /// <summary> /// The _TMDB settings task @@ -636,13 +628,7 @@ namespace MediaBrowser.Providers.Movies } } - public int Order - { - get - { - return 1; - } - } + public int Order => 1; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Movies/MovieDbSearch.cs b/MediaBrowser.Providers/Movies/MovieDbSearch.cs index f92417b16..47d3d21bd 100644 --- a/MediaBrowser.Providers/Movies/MovieDbSearch.cs +++ b/MediaBrowser.Providers/Movies/MovieDbSearch.cs @@ -1,10 +1,3 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Providers; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.Globalization; @@ -12,6 +5,13 @@ using System.Linq; using System.Net; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Providers; +using MediaBrowser.Model.Serialization; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Movies { @@ -180,10 +180,8 @@ namespace MediaBrowser.Providers.Movies if (!string.IsNullOrWhiteSpace(i.release_date)) { - DateTime r; - - // These dates are always in this exact format - if (DateTime.TryParseExact(i.release_date, "yyyy-MM-dd", EnUs, DateTimeStyles.None, out r)) + // These dates are always in this exact format + if (DateTime.TryParseExact(i.release_date, "yyyy-MM-dd", EnUs, DateTimeStyles.None, out var r)) { remoteResult.PremiereDate = r.ToUniversalTime(); remoteResult.ProductionYear = remoteResult.PremiereDate.Value.Year; @@ -235,10 +233,8 @@ namespace MediaBrowser.Providers.Movies if (!string.IsNullOrWhiteSpace(i.first_air_date)) { - DateTime r; - - // These dates are always in this exact format - if (DateTime.TryParseExact(i.first_air_date, "yyyy-MM-dd", EnUs, DateTimeStyles.None, out r)) + // These dates are always in this exact format + if (DateTime.TryParseExact(i.first_air_date, "yyyy-MM-dd", EnUs, DateTimeStyles.None, out var r)) { remoteResult.PremiereDate = r.ToUniversalTime(); remoteResult.ProductionYear = remoteResult.PremiereDate.Value.Year; diff --git a/MediaBrowser.Providers/Movies/MovieDbTrailerProvider.cs b/MediaBrowser.Providers/Movies/MovieDbTrailerProvider.cs index 6d1259d20..2a3cdf097 100644 --- a/MediaBrowser.Providers/Movies/MovieDbTrailerProvider.cs +++ b/MediaBrowser.Providers/Movies/MovieDbTrailerProvider.cs @@ -1,10 +1,10 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Providers; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Providers; namespace MediaBrowser.Providers.Movies { @@ -27,18 +27,9 @@ namespace MediaBrowser.Providers.Movies return MovieDbProvider.Current.GetItemMetadata<Trailer>(info, cancellationToken); } - public string Name - { - get { return MovieDbProvider.Current.Name; } - } + public string Name => MovieDbProvider.Current.Name; - public int Order - { - get - { - return 0; - } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Movies/MovieExternalIds.cs b/MediaBrowser.Providers/Movies/MovieExternalIds.cs index 208d412f6..3783c5032 100644 --- a/MediaBrowser.Providers/Movies/MovieExternalIds.cs +++ b/MediaBrowser.Providers/Movies/MovieExternalIds.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.LiveTv; @@ -11,20 +11,11 @@ namespace MediaBrowser.Providers.Movies { public const string BaseMovieDbUrl = "https://www.themoviedb.org/"; - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; - public string Key - { - get { return MetadataProviders.Tmdb.ToString(); } - } + public string Key => MetadataProviders.Tmdb.ToString(); - public string UrlFormatString - { - get { return BaseMovieDbUrl + "movie/{0}"; } - } + public string UrlFormatString => BaseMovieDbUrl + "movie/{0}"; public bool Supports(IHasProviderIds item) { @@ -41,20 +32,11 @@ namespace MediaBrowser.Providers.Movies public class MovieDbSeriesExternalId : IExternalId { - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; - public string Key - { - get { return MetadataProviders.Tmdb.ToString(); } - } + public string Key => MetadataProviders.Tmdb.ToString(); - public string UrlFormatString - { - get { return MovieDbMovieExternalId.BaseMovieDbUrl + "tv/{0}"; } - } + public string UrlFormatString => MovieDbMovieExternalId.BaseMovieDbUrl + "tv/{0}"; public bool Supports(IHasProviderIds item) { @@ -64,20 +46,11 @@ namespace MediaBrowser.Providers.Movies public class MovieDbMovieCollectionExternalId : IExternalId { - public string Name - { - get { return "TheMovieDb Collection"; } - } + public string Name => "TheMovieDb Collection"; - public string Key - { - get { return MetadataProviders.TmdbCollection.ToString(); } - } + public string Key => MetadataProviders.TmdbCollection.ToString(); - public string UrlFormatString - { - get { return MovieDbMovieExternalId.BaseMovieDbUrl + "collection/{0}"; } - } + public string UrlFormatString => MovieDbMovieExternalId.BaseMovieDbUrl + "collection/{0}"; public bool Supports(IHasProviderIds item) { @@ -87,20 +60,11 @@ namespace MediaBrowser.Providers.Movies public class MovieDbPersonExternalId : IExternalId { - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; - public string Key - { - get { return MetadataProviders.Tmdb.ToString(); } - } + public string Key => MetadataProviders.Tmdb.ToString(); - public string UrlFormatString - { - get { return MovieDbMovieExternalId.BaseMovieDbUrl + "person/{0}"; } - } + public string UrlFormatString => MovieDbMovieExternalId.BaseMovieDbUrl + "person/{0}"; public bool Supports(IHasProviderIds item) { @@ -110,20 +74,11 @@ namespace MediaBrowser.Providers.Movies public class MovieDbCollectionExternalId : IExternalId { - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; - public string Key - { - get { return MetadataProviders.Tmdb.ToString(); } - } + public string Key => MetadataProviders.Tmdb.ToString(); - public string UrlFormatString - { - get { return MovieDbMovieExternalId.BaseMovieDbUrl + "collection/{0}"; } - } + public string UrlFormatString => MovieDbMovieExternalId.BaseMovieDbUrl + "collection/{0}"; public bool Supports(IHasProviderIds item) { @@ -133,20 +88,11 @@ namespace MediaBrowser.Providers.Movies public class ImdbExternalId : IExternalId { - public string Name - { - get { return "IMDb"; } - } + public string Name => "IMDb"; - public string Key - { - get { return MetadataProviders.Imdb.ToString(); } - } + public string Key => MetadataProviders.Imdb.ToString(); - public string UrlFormatString - { - get { return "https://www.imdb.com/title/{0}"; } - } + public string UrlFormatString => "https://www.imdb.com/title/{0}"; public bool Supports(IHasProviderIds item) { @@ -164,20 +110,11 @@ namespace MediaBrowser.Providers.Movies public class ImdbPersonExternalId : IExternalId { - public string Name - { - get { return "IMDb"; } - } + public string Name => "IMDb"; - public string Key - { - get { return MetadataProviders.Imdb.ToString(); } - } + public string Key => MetadataProviders.Imdb.ToString(); - public string UrlFormatString - { - get { return "https://www.imdb.com/name/{0}"; } - } + public string UrlFormatString => "https://www.imdb.com/name/{0}"; public bool Supports(IHasProviderIds item) { diff --git a/MediaBrowser.Providers/Movies/MovieMetadataService.cs b/MediaBrowser.Providers/Movies/MovieMetadataService.cs index 958153334..41806e49b 100644 --- a/MediaBrowser.Providers/Movies/MovieMetadataService.cs +++ b/MediaBrowser.Providers/Movies/MovieMetadataService.cs @@ -1,15 +1,12 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Movies { diff --git a/MediaBrowser.Providers/Movies/TmdbSettings.cs b/MediaBrowser.Providers/Movies/TmdbSettings.cs index facc4a31b..119bbfca6 100644 --- a/MediaBrowser.Providers/Movies/TmdbSettings.cs +++ b/MediaBrowser.Providers/Movies/TmdbSettings.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace MediaBrowser.Providers.Movies { diff --git a/MediaBrowser.Providers/Music/AlbumMetadataService.cs b/MediaBrowser.Providers/Music/AlbumMetadataService.cs index a035dd758..33a6c2fa3 100644 --- a/MediaBrowser.Providers/Music/AlbumMetadataService.cs +++ b/MediaBrowser.Providers/Music/AlbumMetadataService.cs @@ -1,17 +1,15 @@ -using MediaBrowser.Controller.Configuration; +using System; +using System.Collections.Generic; +using System.Linq; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Entities; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Music { @@ -52,29 +50,11 @@ namespace MediaBrowser.Providers.Music return updateType; } - protected override bool EnableUpdatingPremiereDateFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingPremiereDateFromChildren => true; - protected override bool EnableUpdatingGenresFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingGenresFromChildren => true; - protected override bool EnableUpdatingStudiosFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingStudiosFromChildren => true; private ItemUpdateType SetAlbumArtistFromSongs(MusicAlbum item, IEnumerable<Audio> songs) { diff --git a/MediaBrowser.Providers/Music/ArtistMetadataService.cs b/MediaBrowser.Providers/Music/ArtistMetadataService.cs index 7dc4a8dfe..5b8782554 100644 --- a/MediaBrowser.Providers/Music/ArtistMetadataService.cs +++ b/MediaBrowser.Providers/Music/ArtistMetadataService.cs @@ -1,16 +1,13 @@ -using MediaBrowser.Controller.Configuration; +using System.Collections.Generic; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading.Tasks; using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Entities; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Music { @@ -19,7 +16,7 @@ namespace MediaBrowser.Providers.Music protected override IList<BaseItem> GetChildrenForMetadataUpdates(MusicArtist item) { return item.IsAccessedByName ? - item.GetTaggedItems(new Controller.Entities.InternalItemsQuery + item.GetTaggedItems(new InternalItemsQuery { Recursive = true, IsFolder = false @@ -27,13 +24,7 @@ namespace MediaBrowser.Providers.Music item.GetRecursiveChildren(i => i is IHasArtist && !i.IsFolder); } - protected override bool EnableUpdatingGenresFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingGenresFromChildren => true; protected override void MergeData(MetadataResult<MusicArtist> source, MetadataResult<MusicArtist> target, MetadataFields[] lockedFields, bool replaceData, bool mergeMetadataSettings) { diff --git a/MediaBrowser.Providers/Music/AudioDbAlbumImageProvider.cs b/MediaBrowser.Providers/Music/AudioDbAlbumImageProvider.cs index 7e16b2e10..c2a8431cd 100644 --- a/MediaBrowser.Providers/Music/AudioDbAlbumImageProvider.cs +++ b/MediaBrowser.Providers/Music/AudioDbAlbumImageProvider.cs @@ -1,4 +1,7 @@ -using MediaBrowser.Common.Net; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; @@ -6,9 +9,6 @@ using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; namespace MediaBrowser.Providers.Music { @@ -91,19 +91,9 @@ namespace MediaBrowser.Providers.Music }); } - public string Name - { - get { return "TheAudioDB"; } - } - - public int Order - { - get - { - // After embedded and fanart - return 2; - } - } + public string Name => "TheAudioDB"; + // After embedded and fanart + public int Order => 2; public bool Supports(BaseItem item) { diff --git a/MediaBrowser.Providers/Music/AudioDbAlbumProvider.cs b/MediaBrowser.Providers/Music/AudioDbAlbumProvider.cs index 618e520bf..3c4855806 100644 --- a/MediaBrowser.Providers/Music/AudioDbAlbumProvider.cs +++ b/MediaBrowser.Providers/Music/AudioDbAlbumProvider.cs @@ -1,21 +1,19 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; namespace MediaBrowser.Providers.Music { @@ -84,7 +82,7 @@ namespace MediaBrowser.Providers.Music if (!string.IsNullOrEmpty(result.strGenre)) { - item.Genres = new [] { result.strGenre }; + item.Genres = new[] { result.strGenre }; } item.SetProviderId(MetadataProviders.AudioDbArtist, result.idArtist); @@ -128,10 +126,7 @@ namespace MediaBrowser.Providers.Music item.Overview = (overview ?? string.Empty).StripHtml(); } - public string Name - { - get { return "TheAudioDB"; } - } + public string Name => "TheAudioDB"; internal Task EnsureInfo(string musicBrainzReleaseGroupId, CancellationToken cancellationToken) { @@ -197,15 +192,8 @@ namespace MediaBrowser.Providers.Music return Path.Combine(dataPath, "album.json"); } - - public int Order - { - get - { - // After music brainz - return 1; - } - } + // After music brainz + public int Order => 1; public class Album { diff --git a/MediaBrowser.Providers/Music/AudioDbArtistImageProvider.cs b/MediaBrowser.Providers/Music/AudioDbArtistImageProvider.cs index 7fc62f75b..c59e9551c 100644 --- a/MediaBrowser.Providers/Music/AudioDbArtistImageProvider.cs +++ b/MediaBrowser.Providers/Music/AudioDbArtistImageProvider.cs @@ -1,4 +1,7 @@ -using MediaBrowser.Common.Net; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Audio; @@ -6,9 +9,6 @@ using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; namespace MediaBrowser.Providers.Music { @@ -133,23 +133,13 @@ namespace MediaBrowser.Providers.Music }); } - public string Name - { - get { return "TheAudioDB"; } - } + public string Name => "TheAudioDB"; public bool Supports(BaseItem item) { return item is MusicArtist; } - - public int Order - { - get - { - // After fanart - return 1; - } - } + // After fanart + public int Order => 1; } } diff --git a/MediaBrowser.Providers/Music/AudioDbArtistProvider.cs b/MediaBrowser.Providers/Music/AudioDbArtistProvider.cs index 1769bc1ae..03eefc2eb 100644 --- a/MediaBrowser.Providers/Music/AudioDbArtistProvider.cs +++ b/MediaBrowser.Providers/Music/AudioDbArtistProvider.cs @@ -1,20 +1,18 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Collections.Generic; +using System.IO; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.IO; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; namespace MediaBrowser.Providers.Music { @@ -116,10 +114,7 @@ namespace MediaBrowser.Providers.Music item.Overview = (overview ?? string.Empty).StripHtml(); } - public string Name - { - get { return "TheAudioDB"; } - } + public string Name => "TheAudioDB"; internal Task EnsureArtistInfo(string musicBrainzId, CancellationToken cancellationToken) { @@ -247,15 +242,8 @@ namespace MediaBrowser.Providers.Music { public List<Artist> artists { get; set; } } - - public int Order - { - get - { - // After musicbrainz - return 1; - } - } + // After musicbrainz + public int Order => 1; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Music/AudioDbExternalIds.cs b/MediaBrowser.Providers/Music/AudioDbExternalIds.cs index fcb7c338d..3e1022d7d 100644 --- a/MediaBrowser.Providers/Music/AudioDbExternalIds.cs +++ b/MediaBrowser.Providers/Music/AudioDbExternalIds.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; @@ -6,20 +6,11 @@ namespace MediaBrowser.Providers.Music { public class AudioDbAlbumExternalId : IExternalId { - public string Name - { - get { return "TheAudioDb"; } - } + public string Name => "TheAudioDb"; - public string Key - { - get { return MetadataProviders.AudioDbAlbum.ToString(); } - } + public string Key => MetadataProviders.AudioDbAlbum.ToString(); - public string UrlFormatString - { - get { return "https://www.theaudiodb.com/album/{0}"; } - } + public string UrlFormatString => "https://www.theaudiodb.com/album/{0}"; public bool Supports(IHasProviderIds item) { @@ -29,20 +20,11 @@ namespace MediaBrowser.Providers.Music public class AudioDbOtherAlbumExternalId : IExternalId { - public string Name - { - get { return "TheAudioDb Album"; } - } + public string Name => "TheAudioDb Album"; - public string Key - { - get { return MetadataProviders.AudioDbAlbum.ToString(); } - } + public string Key => MetadataProviders.AudioDbAlbum.ToString(); - public string UrlFormatString - { - get { return "https://www.theaudiodb.com/album/{0}"; } - } + public string UrlFormatString => "https://www.theaudiodb.com/album/{0}"; public bool Supports(IHasProviderIds item) { @@ -52,20 +34,11 @@ namespace MediaBrowser.Providers.Music public class AudioDbArtistExternalId : IExternalId { - public string Name - { - get { return "TheAudioDb"; } - } + public string Name => "TheAudioDb"; - public string Key - { - get { return MetadataProviders.AudioDbArtist.ToString(); } - } + public string Key => MetadataProviders.AudioDbArtist.ToString(); - public string UrlFormatString - { - get { return "https://www.theaudiodb.com/artist/{0}"; } - } + public string UrlFormatString => "https://www.theaudiodb.com/artist/{0}"; public bool Supports(IHasProviderIds item) { @@ -75,20 +48,11 @@ namespace MediaBrowser.Providers.Music public class AudioDbOtherArtistExternalId : IExternalId { - public string Name - { - get { return "TheAudioDb Artist"; } - } + public string Name => "TheAudioDb Artist"; - public string Key - { - get { return MetadataProviders.AudioDbArtist.ToString(); } - } + public string Key => MetadataProviders.AudioDbArtist.ToString(); - public string UrlFormatString - { - get { return "https://www.theaudiodb.com/artist/{0}"; } - } + public string UrlFormatString => "https://www.theaudiodb.com/artist/{0}"; public bool Supports(IHasProviderIds item) { diff --git a/MediaBrowser.Providers/Music/AudioMetadataService.cs b/MediaBrowser.Providers/Music/AudioMetadataService.cs index 6952ee856..1422a4eaa 100644 --- a/MediaBrowser.Providers/Music/AudioMetadataService.cs +++ b/MediaBrowser.Providers/Music/AudioMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; -using System.Linq; using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Music { diff --git a/MediaBrowser.Providers/Music/Extensions.cs b/MediaBrowser.Providers/Music/Extensions.cs index 21675e03b..ea1efe266 100644 --- a/MediaBrowser.Providers/Music/Extensions.cs +++ b/MediaBrowser.Providers/Music/Extensions.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; using System.Linq; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; namespace MediaBrowser.Providers.Music { @@ -47,8 +47,7 @@ namespace MediaBrowser.Providers.Music public static string GetMusicBrainzArtistId(this AlbumInfo info) { - string id; - info.ProviderIds.TryGetValue(MetadataProviders.MusicBrainzAlbumArtist.ToString(), out id); + info.ProviderIds.TryGetValue(MetadataProviders.MusicBrainzAlbumArtist.ToString(), out string id); if (string.IsNullOrEmpty(id)) { @@ -66,8 +65,7 @@ namespace MediaBrowser.Providers.Music public static string GetMusicBrainzArtistId(this ArtistInfo info) { - string id; - info.ProviderIds.TryGetValue(MetadataProviders.MusicBrainzArtist.ToString(), out id); + info.ProviderIds.TryGetValue(MetadataProviders.MusicBrainzArtist.ToString(), out var id); if (string.IsNullOrEmpty(id)) { diff --git a/MediaBrowser.Providers/Music/FanArtAlbumProvider.cs b/MediaBrowser.Providers/Music/FanArtAlbumProvider.cs index f19c982b6..ebb740ffe 100644 --- a/MediaBrowser.Providers/Music/FanArtAlbumProvider.cs +++ b/MediaBrowser.Providers/Music/FanArtAlbumProvider.cs @@ -1,24 +1,21 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; -using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Providers.Music { @@ -38,15 +35,9 @@ namespace MediaBrowser.Providers.Music _jsonSerializer = jsonSerializer; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "FanArt"; } - } + public static string ProviderName => "FanArt"; public bool Supports(BaseItem item) { @@ -172,7 +163,6 @@ namespace MediaBrowser.Providers.Music if (!string.IsNullOrEmpty(url)) { var likesString = i.likes; - int likes; var info = new RemoteImageInfo { @@ -185,7 +175,7 @@ namespace MediaBrowser.Providers.Music Language = i.lang }; - if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out likes)) + if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out var likes)) { info.CommunityRating = likes; } @@ -196,15 +186,8 @@ namespace MediaBrowser.Providers.Music return null; }).Where(i => i != null)); } - - public int Order - { - get - { - // After embedded provider - return 1; - } - } + // After embedded provider + public int Order => 1; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Music/FanArtArtistProvider.cs b/MediaBrowser.Providers/Music/FanArtArtistProvider.cs index 2e246f614..a7456bdc0 100644 --- a/MediaBrowser.Providers/Music/FanArtArtistProvider.cs +++ b/MediaBrowser.Providers/Music/FanArtArtistProvider.cs @@ -1,28 +1,25 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; -using MediaBrowser.Providers.TV; using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; using System.Net; -using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; using MediaBrowser.Model.Net; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Providers.TV; namespace MediaBrowser.Providers.Music { @@ -49,15 +46,9 @@ namespace MediaBrowser.Providers.Music Current = this; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "FanArt"; } - } + public static string ProviderName => "FanArt"; public bool Supports(BaseItem item) { @@ -170,7 +161,6 @@ namespace MediaBrowser.Providers.Music if (!string.IsNullOrEmpty(url)) { var likesString = i.likes; - int likes; var info = new RemoteImageInfo { @@ -183,7 +173,7 @@ namespace MediaBrowser.Providers.Music Language = i.lang }; - if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out likes)) + if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out var likes)) { info.CommunityRating = likes; } @@ -195,10 +185,7 @@ namespace MediaBrowser.Providers.Music }).Where(i => i != null)); } - public int Order - { - get { return 0; } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Music/MovieDbMusicVideoProvider.cs b/MediaBrowser.Providers/Music/MovieDbMusicVideoProvider.cs index 50fb1de1f..506cbfb89 100644 --- a/MediaBrowser.Providers/Music/MovieDbMusicVideoProvider.cs +++ b/MediaBrowser.Providers/Music/MovieDbMusicVideoProvider.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Providers; -using MediaBrowser.Providers.Movies; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Providers; +using MediaBrowser.Providers.Movies; namespace MediaBrowser.Providers.Music { @@ -22,10 +22,7 @@ namespace MediaBrowser.Providers.Music return Task.FromResult((IEnumerable<RemoteSearchResult>)new List<RemoteSearchResult>()); } - public string Name - { - get { return MovieDbProvider.Current.Name; } - } + public string Name => MovieDbProvider.Current.Name; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs b/MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs index 2c94d6a07..3ad968449 100644 --- a/MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs +++ b/MediaBrowser.Providers/Music/MusicBrainzAlbumProvider.cs @@ -1,10 +1,3 @@ -using MediaBrowser.Common; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.Globalization; @@ -15,8 +8,15 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml; +using MediaBrowser.Common; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Music { @@ -216,10 +216,7 @@ namespace MediaBrowser.Providers.Music return result; } - public string Name - { - get { return "MusicBrainz"; } - } + public string Name => "MusicBrainz"; private Task<ReleaseResult> GetReleaseResult(string artistMusicBrainId, string artistName, string albumName, CancellationToken cancellationToken) { @@ -416,8 +413,7 @@ namespace MediaBrowser.Providers.Music case "date": { var val = reader.ReadElementContentAsString(); - DateTime date; - if (DateTime.TryParse(val, out date)) + if (DateTime.TryParse(val, out var date)) { result.Year = date.Year; } @@ -753,10 +749,7 @@ namespace MediaBrowser.Providers.Music return await _httpClient.SendAsync(options, "GET").ConfigureAwait(false); } - public int Order - { - get { return 0; } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Music/MusicBrainzArtistProvider.cs b/MediaBrowser.Providers/Music/MusicBrainzArtistProvider.cs index 54ec1bf03..8d10834c3 100644 --- a/MediaBrowser.Providers/Music/MusicBrainzArtistProvider.cs +++ b/MediaBrowser.Providers/Music/MusicBrainzArtistProvider.cs @@ -1,11 +1,5 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; -using System.Globalization; using System.IO; using System.Linq; using System.Net; @@ -13,7 +7,12 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Extensions; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Xml; namespace MediaBrowser.Providers.Music @@ -284,10 +283,7 @@ namespace MediaBrowser.Providers.Music return WebUtility.UrlEncode(name); } - public string Name - { - get { return "MusicBrainz"; } - } + public string Name => "MusicBrainz"; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Music/MusicExternalIds.cs b/MediaBrowser.Providers/Music/MusicExternalIds.cs index 4d026ea0f..614de11ca 100644 --- a/MediaBrowser.Providers/Music/MusicExternalIds.cs +++ b/MediaBrowser.Providers/Music/MusicExternalIds.cs @@ -1,26 +1,17 @@ -using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using MediaBrowser.Controller.Entities; namespace MediaBrowser.Providers.Music { public class MusicBrainzReleaseGroupExternalId : IExternalId { - public string Name - { - get { return "MusicBrainz Release Group"; } - } + public string Name => "MusicBrainz Release Group"; - public string Key - { - get { return MetadataProviders.MusicBrainzReleaseGroup.ToString(); } - } + public string Key => MetadataProviders.MusicBrainzReleaseGroup.ToString(); - public string UrlFormatString - { - get { return "https://musicbrainz.org/release-group/{0}"; } - } + public string UrlFormatString => "https://musicbrainz.org/release-group/{0}"; public bool Supports(IHasProviderIds item) { @@ -30,20 +21,11 @@ namespace MediaBrowser.Providers.Music public class MusicBrainzAlbumArtistExternalId : IExternalId { - public string Name - { - get { return "MusicBrainz Album Artist"; } - } + public string Name => "MusicBrainz Album Artist"; - public string Key - { - get { return MetadataProviders.MusicBrainzAlbumArtist.ToString(); } - } + public string Key => MetadataProviders.MusicBrainzAlbumArtist.ToString(); - public string UrlFormatString - { - get { return "https://musicbrainz.org/artist/{0}"; } - } + public string UrlFormatString => "https://musicbrainz.org/artist/{0}"; public bool Supports(IHasProviderIds item) { @@ -53,20 +35,11 @@ namespace MediaBrowser.Providers.Music public class MusicBrainzAlbumExternalId : IExternalId { - public string Name - { - get { return "MusicBrainz Album"; } - } + public string Name => "MusicBrainz Album"; - public string Key - { - get { return MetadataProviders.MusicBrainzAlbum.ToString(); } - } + public string Key => MetadataProviders.MusicBrainzAlbum.ToString(); - public string UrlFormatString - { - get { return "https://musicbrainz.org/release/{0}"; } - } + public string UrlFormatString => "https://musicbrainz.org/release/{0}"; public bool Supports(IHasProviderIds item) { @@ -76,20 +49,11 @@ namespace MediaBrowser.Providers.Music public class MusicBrainzArtistExternalId : IExternalId { - public string Name - { - get { return "MusicBrainz"; } - } + public string Name => "MusicBrainz"; - public string Key - { - get { return MetadataProviders.MusicBrainzArtist.ToString(); } - } + public string Key => MetadataProviders.MusicBrainzArtist.ToString(); - public string UrlFormatString - { - get { return "https://musicbrainz.org/artist/{0}"; } - } + public string UrlFormatString => "https://musicbrainz.org/artist/{0}"; public bool Supports(IHasProviderIds item) { @@ -99,20 +63,11 @@ namespace MediaBrowser.Providers.Music public class MusicBrainzOtherArtistExternalId : IExternalId { - public string Name - { - get { return "MusicBrainz Artist"; } - } + public string Name => "MusicBrainz Artist"; - public string Key - { - get { return MetadataProviders.MusicBrainzArtist.ToString(); } - } + public string Key => MetadataProviders.MusicBrainzArtist.ToString(); - public string UrlFormatString - { - get { return "https://musicbrainz.org/artist/{0}"; } - } + public string UrlFormatString => "https://musicbrainz.org/artist/{0}"; public bool Supports(IHasProviderIds item) { @@ -122,20 +77,11 @@ namespace MediaBrowser.Providers.Music public class MusicBrainzTrackId : IExternalId { - public string Name - { - get { return "MusicBrainz Track"; } - } + public string Name => "MusicBrainz Track"; - public string Key - { - get { return MetadataProviders.MusicBrainzTrack.ToString(); } - } + public string Key => MetadataProviders.MusicBrainzTrack.ToString(); - public string UrlFormatString - { - get { return "https://musicbrainz.org/track/{0}"; } - } + public string UrlFormatString => "https://musicbrainz.org/track/{0}"; public bool Supports(IHasProviderIds item) { @@ -145,20 +91,11 @@ namespace MediaBrowser.Providers.Music public class ImvdbId : IExternalId { - public string Name - { - get { return "IMVDb"; } - } + public string Name => "IMVDb"; - public string Key - { - get { return "IMVDb"; } - } + public string Key => "IMVDb"; - public string UrlFormatString - { - get { return null; } - } + public string UrlFormatString => null; public bool Supports(IHasProviderIds item) { diff --git a/MediaBrowser.Providers/Music/MusicVideoMetadataService.cs b/MediaBrowser.Providers/Music/MusicVideoMetadataService.cs index 54d68bfd5..8b01ff342 100644 --- a/MediaBrowser.Providers/Music/MusicVideoMetadataService.cs +++ b/MediaBrowser.Providers/Music/MusicVideoMetadataService.cs @@ -1,16 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; -using System.Linq; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Music { diff --git a/MediaBrowser.Providers/MusicGenres/MusicGenreMetadataService.cs b/MediaBrowser.Providers/MusicGenres/MusicGenreMetadataService.cs index 6c9bc526d..d25ddb220 100644 --- a/MediaBrowser.Providers/MusicGenres/MusicGenreMetadataService.cs +++ b/MediaBrowser.Providers/MusicGenres/MusicGenreMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.Audio; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.MusicGenres { diff --git a/MediaBrowser.Providers/Omdb/OmdbImageProvider.cs b/MediaBrowser.Providers/Omdb/OmdbImageProvider.cs index a138d4b8c..1e0bcacf2 100644 --- a/MediaBrowser.Providers/Omdb/OmdbImageProvider.cs +++ b/MediaBrowser.Providers/Omdb/OmdbImageProvider.cs @@ -1,18 +1,17 @@ -using MediaBrowser.Model.IO; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.LiveTv; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Common; namespace MediaBrowser.Providers.Omdb { @@ -51,7 +50,7 @@ namespace MediaBrowser.Providers.Omdb if (!string.IsNullOrWhiteSpace(imdbId)) { - OmdbProvider.RootObject rootObject = await provider.GetRootObject(imdbId, cancellationToken).ConfigureAwait(false); + var rootObject = await provider.GetRootObject(imdbId, cancellationToken).ConfigureAwait(false); if (!string.IsNullOrEmpty(rootObject.Poster)) { @@ -87,24 +86,14 @@ namespace MediaBrowser.Providers.Omdb }); } - public string Name - { - get { return "The Open Movie Database"; } - } + public string Name => "The Open Movie Database"; public bool Supports(BaseItem item) { return item is Movie || item is Trailer || item is Episode; } - - public int Order - { - get - { - // After other internet providers, because they're better - // But before fallback providers like screengrab - return 90; - } - } + // After other internet providers, because they're better + // But before fallback providers like screengrab + public int Order => 90; } } diff --git a/MediaBrowser.Providers/Omdb/OmdbItemProvider.cs b/MediaBrowser.Providers/Omdb/OmdbItemProvider.cs index 39d9b39ee..44b9dcca1 100644 --- a/MediaBrowser.Providers/Omdb/OmdbItemProvider.cs +++ b/MediaBrowser.Providers/Omdb/OmdbItemProvider.cs @@ -1,24 +1,23 @@ -using MediaBrowser.Model.IO; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Net; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common; using MediaBrowser.Common.Net; 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.LiveTv; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Net; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Common; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Omdb { @@ -43,15 +42,8 @@ namespace MediaBrowser.Providers.Omdb _configurationManager = configurationManager; _appHost = appHost; } - - public int Order - { - get - { - // After primary option - return 2; - } - } + // After primary option + public int Order => 2; public Task<IEnumerable<RemoteSearchResult>> GetSearchResults(SeriesInfo searchInfo, CancellationToken cancellationToken) { @@ -127,7 +119,7 @@ namespace MediaBrowser.Providers.Omdb } } - var url = OmdbProvider.GetOmdbUrl(urlQuery, _appHost, cancellationToken); + var url = OmdbProvider.GetOmdbUrl(urlQuery, _appHost, cancellationToken); using (var response = await OmdbProvider.GetOmdbResponse(_httpClient, url, cancellationToken).ConfigureAwait(false)) { @@ -169,16 +161,14 @@ namespace MediaBrowser.Providers.Omdb item.SetProviderId(MetadataProviders.Imdb, result.imdbID); - int parsedYear; if (result.Year.Length > 0 - && int.TryParse(result.Year.Substring(0, Math.Min(result.Year.Length, 4)), NumberStyles.Integer, CultureInfo.InvariantCulture, out parsedYear)) + && int.TryParse(result.Year.Substring(0, Math.Min(result.Year.Length, 4)), NumberStyles.Integer, CultureInfo.InvariantCulture, out var parsedYear)) { item.ProductionYear = parsedYear; } - DateTime released; if (!string.IsNullOrEmpty(result.Released) - && DateTime.TryParse(result.Released, CultureInfo.InvariantCulture, DateTimeStyles.AllowWhiteSpaces, out released)) + && DateTime.TryParse(result.Released, CultureInfo.InvariantCulture, DateTimeStyles.AllowWhiteSpaces, out var released)) { item.PremiereDate = released; } @@ -204,10 +194,7 @@ namespace MediaBrowser.Providers.Omdb return GetSearchResults(searchInfo, "movie", cancellationToken); } - public string Name - { - get { return "The Open Movie Database"; } - } + public string Name => "The Open Movie Database"; public async Task<MetadataResult<Series>> GetMetadata(SeriesInfo info, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Omdb/OmdbProvider.cs b/MediaBrowser.Providers/Omdb/OmdbProvider.cs index 6aca093ec..c52907745 100644 --- a/MediaBrowser.Providers/Omdb/OmdbProvider.cs +++ b/MediaBrowser.Providers/Omdb/OmdbProvider.cs @@ -1,20 +1,19 @@ -using MediaBrowser.Model.IO; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; -using System.Net; using System.Text; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Common; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Serialization; namespace MediaBrowser.Providers.Omdb { @@ -44,7 +43,7 @@ namespace MediaBrowser.Providers.Omdb throw new ArgumentNullException(nameof(imdbId)); } - T item = itemResult.Item; + var item = itemResult.Item; var result = await GetRootObject(imdbId, cancellationToken).ConfigureAwait(false); @@ -59,10 +58,8 @@ namespace MediaBrowser.Providers.Omdb } } - int year; - if (!string.IsNullOrEmpty(result.Year) && result.Year.Length >= 4 - && int.TryParse(result.Year.Substring(0, 4), NumberStyles.Number, _usCulture, out year) + && int.TryParse(result.Year.Substring(0, 4), NumberStyles.Number, _usCulture, out var year) && year >= 0) { item.ProductionYear = year; @@ -75,19 +72,15 @@ namespace MediaBrowser.Providers.Omdb item.CriticRating = tomatoScore; } - int voteCount; - if (!string.IsNullOrEmpty(result.imdbVotes) - && int.TryParse(result.imdbVotes, NumberStyles.Number, _usCulture, out voteCount) + && int.TryParse(result.imdbVotes, NumberStyles.Number, _usCulture, out var voteCount) && voteCount >= 0) { //item.VoteCount = voteCount; } - float imdbRating; - if (!string.IsNullOrEmpty(result.imdbRating) - && float.TryParse(result.imdbRating, NumberStyles.Any, _usCulture, out imdbRating) + && float.TryParse(result.imdbRating, NumberStyles.Any, _usCulture, out var imdbRating) && imdbRating >= 0) { item.CommunityRating = imdbRating; @@ -114,7 +107,7 @@ namespace MediaBrowser.Providers.Omdb throw new ArgumentNullException(nameof(seriesImdbId)); } - T item = itemResult.Item; + var item = itemResult.Item; var seasonResult = await GetSeasonRootObject(seriesImdbId, seasonNumber, cancellationToken).ConfigureAwait(false); @@ -166,10 +159,8 @@ namespace MediaBrowser.Providers.Omdb } } - int year; - if (!string.IsNullOrEmpty(result.Year) && result.Year.Length >= 4 - && int.TryParse(result.Year.Substring(0, 4), NumberStyles.Number, _usCulture, out year) + && int.TryParse(result.Year.Substring(0, 4), NumberStyles.Number, _usCulture, out var year) && year >= 0) { item.ProductionYear = year; @@ -182,19 +173,15 @@ namespace MediaBrowser.Providers.Omdb item.CriticRating = tomatoScore; } - int voteCount; - if (!string.IsNullOrEmpty(result.imdbVotes) - && int.TryParse(result.imdbVotes, NumberStyles.Number, _usCulture, out voteCount) + && int.TryParse(result.imdbVotes, NumberStyles.Number, _usCulture, out var voteCount) && voteCount >= 0) { //item.VoteCount = voteCount; } - float imdbRating; - if (!string.IsNullOrEmpty(result.imdbRating) - && float.TryParse(result.imdbRating, NumberStyles.Any, _usCulture, out imdbRating) + && float.TryParse(result.imdbRating, NumberStyles.Any, _usCulture, out var imdbRating) && imdbRating >= 0) { item.CommunityRating = imdbRating; @@ -221,7 +208,7 @@ namespace MediaBrowser.Providers.Omdb string resultString; - using (Stream stream = _fileSystem.GetFileStream(path, FileOpenMode.Open, FileAccessMode.Read, FileShareMode.Read)) + using (var stream = _fileSystem.GetFileStream(path, FileOpenMode.Open, FileAccessMode.Read, FileShareMode.Read)) { using (var reader = new StreamReader(stream, new UTF8Encoding(false))) { @@ -240,7 +227,7 @@ namespace MediaBrowser.Providers.Omdb string resultString; - using (Stream stream = _fileSystem.GetFileStream(path, FileOpenMode.Open, FileAccessMode.Read, FileShareMode.Read)) + using (var stream = _fileSystem.GetFileStream(path, FileOpenMode.Open, FileAccessMode.Read, FileShareMode.Read)) { using (var reader = new StreamReader(stream, new UTF8Encoding(false))) { @@ -255,8 +242,7 @@ namespace MediaBrowser.Providers.Omdb internal static bool IsValidSeries(Dictionary<string, string> seriesProviderIds) { - string id; - if (seriesProviderIds.TryGetValue(MetadataProviders.Imdb.ToString(), out id) && !string.IsNullOrEmpty(id)) + if (seriesProviderIds.TryGetValue(MetadataProviders.Imdb.ToString(), out string id) && !string.IsNullOrEmpty(id)) { // This check should ideally never be necessary but we're seeing some cases of this and haven't tracked them down yet. if (!string.IsNullOrWhiteSpace(id)) @@ -395,7 +381,7 @@ namespace MediaBrowser.Providers.Omdb private void ParseAdditionalMetadata<T>(MetadataResult<T> itemResult, RootObject result) where T : BaseItem { - T item = itemResult.Item; + var item = itemResult.Item; var isConfiguredForEnglish = IsConfiguredForEnglish(item) || _configurationManager.Configuration.EnableNewOmdbSupport; @@ -516,8 +502,7 @@ namespace MediaBrowser.Providers.Omdb if (rating != null && rating.Value != null) { var value = rating.Value.TrimEnd('%'); - float score; - if (float.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out score)) + if (float.TryParse(value, NumberStyles.Any, CultureInfo.InvariantCulture, out var score)) { return score; } diff --git a/MediaBrowser.Providers/People/MovieDbPersonImageProvider.cs b/MediaBrowser.Providers/People/MovieDbPersonImageProvider.cs index d4c8289e5..3019ee506 100644 --- a/MediaBrowser.Providers/People/MovieDbPersonImageProvider.cs +++ b/MediaBrowser.Providers/People/MovieDbPersonImageProvider.cs @@ -1,4 +1,9 @@ -using MediaBrowser.Common.Net; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Providers; @@ -6,11 +11,6 @@ using MediaBrowser.Model.Entities; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Providers.Movies; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; namespace MediaBrowser.Providers.People { @@ -27,15 +27,9 @@ namespace MediaBrowser.Providers.People _httpClient = httpClient; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "TheMovieDb"; } - } + public static string ProviderName => "TheMovieDb"; public bool Supports(BaseItem item) { @@ -124,10 +118,7 @@ namespace MediaBrowser.Providers.People return profile.iso_639_1 == null ? null : profile.iso_639_1.ToString(); } - public int Order - { - get { return 0; } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/People/MovieDbPersonProvider.cs b/MediaBrowser.Providers/People/MovieDbPersonProvider.cs index dda1fc511..dc6ce842e 100644 --- a/MediaBrowser.Providers/People/MovieDbPersonProvider.cs +++ b/MediaBrowser.Providers/People/MovieDbPersonProvider.cs @@ -1,13 +1,3 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Extensions; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; -using MediaBrowser.Model.Serialization; -using MediaBrowser.Providers.Movies; using System; using System.Collections.Generic; using System.Globalization; @@ -16,11 +6,19 @@ using System.Linq; using System.Net; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Net; +using MediaBrowser.Model.Providers; +using MediaBrowser.Model.Serialization; +using MediaBrowser.Providers.Movies; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.People { @@ -46,10 +44,7 @@ namespace MediaBrowser.Providers.People Current = this; } - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; public async Task<IEnumerable<RemoteSearchResult>> GetSearchResults(PersonLookupInfo searchInfo, CancellationToken cancellationToken) { @@ -172,9 +167,7 @@ namespace MediaBrowser.Providers.People } item.Overview = info.biography; - DateTime date; - - if (DateTime.TryParseExact(info.birthday, "yyyy-MM-dd", new CultureInfo("en-US"), DateTimeStyles.None, out date)) + if (DateTime.TryParseExact(info.birthday, "yyyy-MM-dd", new CultureInfo("en-US"), DateTimeStyles.None, out var date)) { item.PremiereDate = date.ToUniversalTime(); } @@ -270,7 +263,7 @@ namespace MediaBrowser.Providers.People public class PersonSearchResult { /// <summary> - /// Gets or sets a value indicating whether this <see cref="MovieDbPersonProvider.PersonSearchResult" /> is adult. + /// Gets or sets a value indicating whether this <see cref="PersonSearchResult" /> is adult. /// </summary> /// <value><c>true</c> if adult; otherwise, <c>false</c>.</value> public bool Adult { get; set; } @@ -305,7 +298,7 @@ namespace MediaBrowser.Providers.People /// Gets or sets the results. /// </summary> /// <value>The results.</value> - public List<MovieDbPersonProvider.PersonSearchResult> Results { get; set; } + public List<PersonSearchResult> Results { get; set; } /// <summary> /// Gets or sets the total_ pages. /// </summary> diff --git a/MediaBrowser.Providers/People/PersonMetadataService.cs b/MediaBrowser.Providers/People/PersonMetadataService.cs index e32ecaa64..adbeb94ea 100644 --- a/MediaBrowser.Providers/People/PersonMetadataService.cs +++ b/MediaBrowser.Providers/People/PersonMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.People { diff --git a/MediaBrowser.Providers/People/TvdbPersonImageProvider.cs b/MediaBrowser.Providers/People/TvdbPersonImageProvider.cs index 13cdc79fb..cf2acdf49 100644 --- a/MediaBrowser.Providers/People/TvdbPersonImageProvider.cs +++ b/MediaBrowser.Providers/People/TvdbPersonImageProvider.cs @@ -1,12 +1,3 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; -using MediaBrowser.Providers.TV; using System; using System.Collections.Generic; using System.IO; @@ -15,9 +6,18 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dto; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Xml; +using MediaBrowser.Providers.TV; namespace MediaBrowser.Providers.People { @@ -38,15 +38,9 @@ namespace MediaBrowser.Providers.People _xmlSettings = xmlSettings; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "TheTVDB"; } - } + public static string ProviderName => "TheTVDB"; public bool Supports(BaseItem item) { @@ -224,10 +218,7 @@ namespace MediaBrowser.Providers.People return null; } - public int Order - { - get { return 1; } - } + public int Order => 1; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Photos/PhotoAlbumMetadataService.cs b/MediaBrowser.Providers/Photos/PhotoAlbumMetadataService.cs index f6d3724e9..fd969c7c2 100644 --- a/MediaBrowser.Providers/Photos/PhotoAlbumMetadataService.cs +++ b/MediaBrowser.Providers/Photos/PhotoAlbumMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Photos { diff --git a/MediaBrowser.Providers/Photos/PhotoMetadataService.cs b/MediaBrowser.Providers/Photos/PhotoMetadataService.cs index 87529f93a..a430e1041 100644 --- a/MediaBrowser.Providers/Photos/PhotoMetadataService.cs +++ b/MediaBrowser.Providers/Photos/PhotoMetadataService.cs @@ -1,12 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Photos { diff --git a/MediaBrowser.Providers/Playlists/PlaylistItemsProvider.cs b/MediaBrowser.Providers/Playlists/PlaylistItemsProvider.cs index 7bc2469a0..7a57adb33 100644 --- a/MediaBrowser.Providers/Playlists/PlaylistItemsProvider.cs +++ b/MediaBrowser.Providers/Playlists/PlaylistItemsProvider.cs @@ -1,32 +1,16 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Chapters; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.LiveTv; -using MediaBrowser.Controller.MediaEncoding; -using MediaBrowser.Controller.Persistence; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Controller.Subtitles; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.MediaInfo; -using MediaBrowser.Model.Serialization; using System; +using System.Collections.Generic; +using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Controller.Channels; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Playlists; -using System.IO; -using PlaylistsNET; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; using PlaylistsNET.Content; -using System.Collections.Generic; namespace MediaBrowser.Providers.Playlists { @@ -45,10 +29,7 @@ namespace MediaBrowser.Providers.Playlists _logger = logger; } - public string Name - { - get { return "Playlist Reader"; } - } + public string Name => "Playlist Reader"; public Task<ItemUpdateType> FetchAsync(Playlist item, MetadataRefreshOptions options, CancellationToken cancellationToken) { @@ -150,7 +131,7 @@ namespace MediaBrowser.Providers.Playlists private IEnumerable<LinkedChild> GetWplItems(Stream stream) { - WplContent content = new WplContent(); + var content = new WplContent(); var playlist = content.GetFromStream(stream); return playlist.PlaylistEntries.Select(i => new LinkedChild @@ -176,14 +157,7 @@ namespace MediaBrowser.Providers.Playlists return false; } - - public int Order - { - get - { - // Run last - return 100; - } - } + // Run last + public int Order => 100; } } diff --git a/MediaBrowser.Providers/Playlists/PlaylistMetadataService.cs b/MediaBrowser.Providers/Playlists/PlaylistMetadataService.cs index 9534a4759..b28d2a548 100644 --- a/MediaBrowser.Providers/Playlists/PlaylistMetadataService.cs +++ b/MediaBrowser.Providers/Playlists/PlaylistMetadataService.cs @@ -1,16 +1,13 @@ -using System; +using System.Collections.Generic; using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Playlists; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; -using System.Linq; -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; -using MediaBrowser.Controller.Entities; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Playlists { @@ -40,28 +37,10 @@ namespace MediaBrowser.Providers.Playlists { } - protected override bool EnableUpdatingGenresFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingGenresFromChildren => true; - protected override bool EnableUpdatingOfficialRatingFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingOfficialRatingFromChildren => true; - protected override bool EnableUpdatingStudiosFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingStudiosFromChildren => true; } } diff --git a/MediaBrowser.Providers/Studios/StudioMetadataService.cs b/MediaBrowser.Providers/Studios/StudioMetadataService.cs index 0c07fb541..78204dccf 100644 --- a/MediaBrowser.Providers/Studios/StudioMetadataService.cs +++ b/MediaBrowser.Providers/Studios/StudioMetadataService.cs @@ -1,12 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Studios { diff --git a/MediaBrowser.Providers/Studios/StudiosImageProvider.cs b/MediaBrowser.Providers/Studios/StudiosImageProvider.cs index 764bb8903..481f0d01f 100644 --- a/MediaBrowser.Providers/Studios/StudiosImageProvider.cs +++ b/MediaBrowser.Providers/Studios/StudiosImageProvider.cs @@ -1,17 +1,17 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; +using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.IO; -using System; +using MediaBrowser.Common.Net; using MediaBrowser.Common.Progress; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; namespace MediaBrowser.Providers.Studios { @@ -28,10 +28,7 @@ namespace MediaBrowser.Providers.Studios _fileSystem = fileSystem; } - public string Name - { - get { return "Emby Designs"; } - } + public string Name => "Emby Designs"; public bool Supports(BaseItem item) { @@ -119,10 +116,7 @@ namespace MediaBrowser.Providers.Studios return EnsureList(url, file, _httpClient, _fileSystem, cancellationToken); } - public int Order - { - get { return 0; } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/Subtitles/SubtitleManager.cs b/MediaBrowser.Providers/Subtitles/SubtitleManager.cs index f9348a761..544cfba0d 100644 --- a/MediaBrowser.Providers/Subtitles/SubtitleManager.cs +++ b/MediaBrowser.Providers/Subtitles/SubtitleManager.cs @@ -1,14 +1,3 @@ -using MediaBrowser.Common.Extensions; -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.Controller.Subtitles; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.IO; @@ -16,10 +5,21 @@ using System.Linq; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Extensions; using MediaBrowser.Controller.Configuration; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Globalization; +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.Controller.Subtitles; using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Subtitles { @@ -245,7 +245,7 @@ namespace MediaBrowser.Providers.Subtitles { if (video.VideoType != VideoType.VideoFile) { - return Task.FromResult<RemoteSubtitleInfo[]>(new RemoteSubtitleInfo[] { }); + return Task.FromResult(new RemoteSubtitleInfo[] { }); } VideoContentType mediaType; @@ -261,7 +261,7 @@ namespace MediaBrowser.Providers.Subtitles else { // These are the only supported types - return Task.FromResult<RemoteSubtitleInfo[]>(new RemoteSubtitleInfo[] { }); + return Task.FromResult(new RemoteSubtitleInfo[] { }); } var request = new SubtitleSearchRequest diff --git a/MediaBrowser.Providers/TV/DummySeasonProvider.cs b/MediaBrowser.Providers/TV/DummySeasonProvider.cs index 797005c41..bd58fc5de 100644 --- a/MediaBrowser.Providers/TV/DummySeasonProvider.cs +++ b/MediaBrowser.Providers/TV/DummySeasonProvider.cs @@ -1,16 +1,16 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; +using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Threading; using System.Threading.Tasks; -using System.Collections.Generic; -using MediaBrowser.Model.IO; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -147,7 +147,7 @@ namespace MediaBrowser.Providers.TV series.AddChild(season, cancellationToken); - await season.RefreshMetadata(new MetadataRefreshOptions(new DirectoryService(_logger, _fileSystem)), cancellationToken).ConfigureAwait(false); + await season.RefreshMetadata(new MetadataRefreshOptions(new DirectoryService(_logger, _fileSystem)), cancellationToken).ConfigureAwait(false); return season; } diff --git a/MediaBrowser.Providers/TV/EpisodeMetadataService.cs b/MediaBrowser.Providers/TV/EpisodeMetadataService.cs index 6292d9cf2..5993f615a 100644 --- a/MediaBrowser.Providers/TV/EpisodeMetadataService.cs +++ b/MediaBrowser.Providers/TV/EpisodeMetadataService.cs @@ -1,16 +1,12 @@ -using System; +using System; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { diff --git a/MediaBrowser.Providers/TV/FanArt/FanArtSeasonProvider.cs b/MediaBrowser.Providers/TV/FanArt/FanArtSeasonProvider.cs index 7e7cda0fb..493729446 100644 --- a/MediaBrowser.Providers/TV/FanArt/FanArtSeasonProvider.cs +++ b/MediaBrowser.Providers/TV/FanArt/FanArtSeasonProvider.cs @@ -1,4 +1,11 @@ -using System.Net; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Net; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; @@ -6,22 +13,11 @@ using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Net; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using MediaBrowser.Providers.Music; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Text.RegularExpressions; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Providers.TV { @@ -41,15 +37,9 @@ namespace MediaBrowser.Providers.TV _json = json; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "FanArt"; } - } + public static string ProviderName => "FanArt"; public bool Supports(BaseItem item) { @@ -171,15 +161,12 @@ namespace MediaBrowser.Providers.TV var url = i.url; var season = i.season; - int imageSeasonNumber; - if (!string.IsNullOrEmpty(url) && !string.IsNullOrEmpty(season) && - int.TryParse(season, NumberStyles.Integer, _usCulture, out imageSeasonNumber) && + int.TryParse(season, NumberStyles.Integer, _usCulture, out var imageSeasonNumber) && seasonNumber == imageSeasonNumber) { var likesString = i.likes; - int likes; var info = new RemoteImageInfo { @@ -192,7 +179,7 @@ namespace MediaBrowser.Providers.TV Language = i.lang }; - if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out likes)) + if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out var likes)) { info.CommunityRating = likes; } @@ -204,10 +191,7 @@ namespace MediaBrowser.Providers.TV }).Where(i => i != null)); } - public int Order - { - get { return 1; } - } + public int Order => 1; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/FanArt/FanartSeriesProvider.cs b/MediaBrowser.Providers/TV/FanArt/FanartSeriesProvider.cs index 185c01a78..7f3bc323e 100644 --- a/MediaBrowser.Providers/TV/FanArt/FanartSeriesProvider.cs +++ b/MediaBrowser.Providers/TV/FanArt/FanartSeriesProvider.cs @@ -1,4 +1,12 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Net; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; @@ -7,23 +15,12 @@ using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Configuration; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Net; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Providers.Music; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Net; -using System.Text.RegularExpressions; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; namespace MediaBrowser.Providers.TV { @@ -49,15 +46,9 @@ namespace MediaBrowser.Providers.TV Current = this; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "FanArt"; } - } + public static string ProviderName => "FanArt"; public bool Supports(BaseItem item) { @@ -188,7 +179,6 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrEmpty(url) && isSeasonValid) { var likesString = i.likes; - int likes; var info = new RemoteImageInfo { @@ -201,7 +191,7 @@ namespace MediaBrowser.Providers.TV Language = i.lang }; - if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out likes)) + if (!string.IsNullOrEmpty(likesString) && int.TryParse(likesString, NumberStyles.Integer, _usCulture, out var likes)) { info.CommunityRating = likes; } @@ -213,10 +203,7 @@ namespace MediaBrowser.Providers.TV }).Where(i => i != null)); } - public int Order - { - get { return 1; } - } + public int Order => 1; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/MissingEpisodeProvider.cs b/MediaBrowser.Providers/TV/MissingEpisodeProvider.cs index 19f3c07d2..8da6d4523 100644 --- a/MediaBrowser.Providers/TV/MissingEpisodeProvider.cs +++ b/MediaBrowser.Providers/TV/MissingEpisodeProvider.cs @@ -1,9 +1,3 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Globalization; @@ -13,12 +7,16 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml; -using MediaBrowser.Common.Progress; -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; -using MediaBrowser.Controller.Entities; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -78,13 +76,9 @@ namespace MediaBrowser.Providers.TV if (parts.Length == 3) { - int seasonNumber; - - if (int.TryParse(parts[1], NumberStyles.Integer, _usCulture, out seasonNumber)) + if (int.TryParse(parts[1], NumberStyles.Integer, _usCulture, out var seasonNumber)) { - int episodeNumber; - - if (int.TryParse(parts[2], NumberStyles.Integer, _usCulture, out episodeNumber)) + if (int.TryParse(parts[2], NumberStyles.Integer, _usCulture, out var episodeNumber)) { return new ValueTuple<int, int>(seasonNumber, episodeNumber); } @@ -121,7 +115,7 @@ namespace MediaBrowser.Providers.TV var hasNewEpisodes = false; - if (addNewItems && series.IsMetadataFetcherEnabled(_libraryManager.GetLibraryOptions(series) ,TvdbSeriesProvider.Current.Name)) + if (addNewItems && series.IsMetadataFetcherEnabled(_libraryManager.GetLibraryOptions(series), TvdbSeriesProvider.Current.Name)) { hasNewEpisodes = await AddMissingEpisodes(series, allRecursiveChildren, addMissingEpisodes, seriesDataPath, episodeLookup, cancellationToken) .ConfigureAwait(false); @@ -508,8 +502,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - DateTime date; - if (DateTime.TryParse(val, out date)) + if (DateTime.TryParse(val, out var date)) { airDate = date.ToUniversalTime(); } diff --git a/MediaBrowser.Providers/TV/Omdb/OmdbEpisodeProvider.cs b/MediaBrowser.Providers/TV/Omdb/OmdbEpisodeProvider.cs index c62f58eb4..6f7d9f791 100644 --- a/MediaBrowser.Providers/TV/Omdb/OmdbEpisodeProvider.cs +++ b/MediaBrowser.Providers/TV/Omdb/OmdbEpisodeProvider.cs @@ -1,18 +1,18 @@ -using MediaBrowser.Model.IO; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Providers.Omdb; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Common; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -56,8 +56,7 @@ namespace MediaBrowser.Providers.TV return result; } - string seriesImdbId; - if (info.SeriesProviderIds.TryGetValue(MetadataProviders.Imdb.ToString(), out seriesImdbId) && !string.IsNullOrEmpty(seriesImdbId)) + if (info.SeriesProviderIds.TryGetValue(MetadataProviders.Imdb.ToString(), out string seriesImdbId) && !string.IsNullOrEmpty(seriesImdbId)) { if (info.IndexNumber.HasValue && info.ParentIndexNumber.HasValue) { @@ -68,20 +67,10 @@ namespace MediaBrowser.Providers.TV return result; } + // After TheTvDb + public int Order => 1; - public int Order - { - get - { - // After TheTvDb - return 1; - } - } - - public string Name - { - get { return "The Open Movie Database"; } - } + public string Name => "The Open Movie Database"; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/SeasonMetadataService.cs b/MediaBrowser.Providers/TV/SeasonMetadataService.cs index aad0e26a0..c575057de 100644 --- a/MediaBrowser.Providers/TV/SeasonMetadataService.cs +++ b/MediaBrowser.Providers/TV/SeasonMetadataService.cs @@ -1,15 +1,15 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; using System; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -54,13 +54,7 @@ namespace MediaBrowser.Providers.TV return updateType; } - protected override bool EnableUpdatingPremiereDateFromChildren - { - get - { - return true; - } - } + protected override bool EnableUpdatingPremiereDateFromChildren => true; protected override IList<BaseItem> GetChildrenForMetadataUpdates(Season item) { diff --git a/MediaBrowser.Providers/TV/SeriesMetadataService.cs b/MediaBrowser.Providers/TV/SeriesMetadataService.cs index 1cb06efdf..5f4f39d45 100644 --- a/MediaBrowser.Providers/TV/SeriesMetadataService.cs +++ b/MediaBrowser.Providers/TV/SeriesMetadataService.cs @@ -1,17 +1,16 @@ -using MediaBrowser.Controller.Configuration; +using System; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System; -using System.Collections.Generic; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.IO; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeImageProvider.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeImageProvider.cs index 6dc31a787..2482aa8d4 100644 --- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeImageProvider.cs +++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeImageProvider.cs @@ -1,22 +1,20 @@ -using MediaBrowser.Model.IO; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Providers.Movies; -using System; -using System.Collections.Generic; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.Globalization; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -27,7 +25,7 @@ namespace MediaBrowser.Providers.TV { public MovieDbEpisodeImageProvider(IHttpClient httpClient, IServerConfigurationManager configurationManager, IJsonSerializer jsonSerializer, IFileSystem fileSystem, ILocalizationManager localization, ILoggerFactory loggerFactory) : base(httpClient, configurationManager, jsonSerializer, fileSystem, localization, loggerFactory) - {} + { } public IEnumerable<ImageType> GetSupportedImages(BaseItem item) { @@ -119,23 +117,13 @@ namespace MediaBrowser.Providers.TV return GetResponse(url, cancellationToken); } - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; public bool Supports(BaseItem item) { return item is Controller.Entities.TV.Episode; } - - public int Order - { - get - { - // After tvdb - return 1; - } - } + // After TheTvDb + public int Order => 1; } } diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeProvider.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeProvider.cs index 36e3c93d9..347c91742 100644 --- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeProvider.cs +++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbEpisodeProvider.cs @@ -1,24 +1,22 @@ -using System; -using MediaBrowser.Model.IO; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Net; +using System.Threading; +using System.Threading.Tasks; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Net; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; -using System.Collections.Generic; -using System.Globalization; -using System.Linq; -using System.Net; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.Globalization; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -73,8 +71,7 @@ namespace MediaBrowser.Providers.TV return result; } - string seriesTmdbId; - info.SeriesProviderIds.TryGetValue(MetadataProviders.Tmdb.ToString(), out seriesTmdbId); + info.SeriesProviderIds.TryGetValue(MetadataProviders.Tmdb.ToString(), out string seriesTmdbId); if (string.IsNullOrEmpty(seriesTmdbId)) { @@ -211,19 +208,9 @@ namespace MediaBrowser.Providers.TV { return GetResponse(url, cancellationToken); } + // After TheTvDb + public int Order => 1; - public int Order - { - get - { - // After TheTvDb - return 1; - } - } - - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; } } diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbProviderBase.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbProviderBase.cs index 94807aee9..3df3cf8b8 100644 --- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbProviderBase.cs +++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbProviderBase.cs @@ -1,18 +1,16 @@ -using MediaBrowser.Model.IO; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; -using MediaBrowser.Providers.Movies; using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Serialization; +using MediaBrowser.Providers.Movies; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -36,10 +34,7 @@ namespace MediaBrowser.Providers.TV _logger = loggerFactory.CreateLogger(GetType().Name); } - protected ILogger Logger - { - get { return _logger; } - } + protected ILogger Logger => _logger; protected async Task<RootObject> GetEpisodeInfo(string seriesTmdbId, int season, int episodeNumber, string preferredMetadataLanguage, CancellationToken cancellationToken) diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeasonProvider.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeasonProvider.cs index 27edfdea7..8d13cc726 100644 --- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeasonProvider.cs +++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeasonProvider.cs @@ -1,13 +1,3 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Providers; -using MediaBrowser.Model.Serialization; -using MediaBrowser.Providers.Movies; using System; using System.Collections.Generic; using System.Globalization; @@ -15,10 +5,18 @@ using System.IO; using System.Net; using System.Threading; using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Net; +using MediaBrowser.Model.Providers; +using MediaBrowser.Model.Serialization; +using MediaBrowser.Providers.Movies; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -46,8 +44,7 @@ namespace MediaBrowser.Providers.TV { var result = new MetadataResult<Season>(); - string seriesTmdbId; - info.SeriesProviderIds.TryGetValue(MetadataProviders.Tmdb.ToString(), out seriesTmdbId); + info.SeriesProviderIds.TryGetValue(MetadataProviders.Tmdb.ToString(), out string seriesTmdbId); var seasonNumber = info.IndexNumber; @@ -111,10 +108,7 @@ namespace MediaBrowser.Providers.TV return result; } - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; public Task<IEnumerable<RemoteSearchResult>> GetSearchResults(SeasonInfo searchInfo, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesImageProvider.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesImageProvider.cs index 5a89356c2..fdc8cd7f1 100644 --- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesImageProvider.cs +++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesImageProvider.cs @@ -1,19 +1,18 @@ -using MediaBrowser.Common.Net; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Net; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Dto; using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Providers.Movies; -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; -using MediaBrowser.Model.IO; namespace MediaBrowser.Providers.TV { @@ -30,15 +29,9 @@ namespace MediaBrowser.Providers.TV _fileSystem = fileSystem; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "TheMovieDb"; } - } + public static string ProviderName => "TheMovieDb"; public bool Supports(BaseItem item) { @@ -177,15 +170,8 @@ namespace MediaBrowser.Providers.TV return null; } - - public int Order - { - get - { - // After tvdb and fanart - return 2; - } - } + // After tvdb and fanart + public int Order => 2; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesProvider.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesProvider.cs index c48719e84..3a8209984 100644 --- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesProvider.cs +++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesProvider.cs @@ -1,4 +1,11 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Collections.Generic; +using System.Globalization; +using System.IO; +using System.Linq; +using System.Threading; +using System.Threading.Tasks; +using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Net; using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; @@ -6,22 +13,12 @@ using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; +using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Providers; using MediaBrowser.Model.Serialization; using MediaBrowser.Providers.Movies; -using System; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Linq; -using System.Threading; -using System.Threading.Tasks; - -using MediaBrowser.Controller.IO; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.Extensions; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -52,10 +49,7 @@ namespace MediaBrowser.Providers.TV Current = this; } - public string Name - { - get { return "TheMovieDb"; } - } + public string Name => "TheMovieDb"; public async Task<IEnumerable<RemoteSearchResult>> GetSearchResults(SeriesInfo searchInfo, CancellationToken cancellationToken) { @@ -225,9 +219,8 @@ namespace MediaBrowser.Providers.TV //series.VoteCount = seriesInfo.vote_count; string voteAvg = seriesInfo.vote_average.ToString(CultureInfo.InvariantCulture); - float rating; - if (float.TryParse(voteAvg, NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out rating)) + if (float.TryParse(voteAvg, NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out var rating)) { series.CommunityRating = rating; } @@ -683,15 +676,8 @@ namespace MediaBrowser.Providers.TV public ContentRatings content_ratings { get; set; } public string ResultLanguage { get; set; } } - - public int Order - { - get - { - // After Tvdb - return 1; - } - } + // After TheTVDB + public int Order => 1; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeImageProvider.cs b/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeImageProvider.cs index 722bf559d..39d2fa77a 100644 --- a/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeImageProvider.cs +++ b/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeImageProvider.cs @@ -1,18 +1,18 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; using System.Collections.Generic; using System.Globalization; using System.Linq; using System.Threading; using System.Threading.Tasks; using System.Xml; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; namespace MediaBrowser.Providers.TV { @@ -30,10 +30,7 @@ namespace MediaBrowser.Providers.TV _fileSystem = fileSystem; } - public string Name - { - get { return "TheTVDB"; } - } + public string Name => "TheTVDB"; public bool Supports(BaseItem item) { @@ -97,10 +94,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { width = rval; } @@ -114,10 +109,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { height = rval; } @@ -163,10 +156,7 @@ namespace MediaBrowser.Providers.TV }; } - public int Order - { - get { return 0; } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeProvider.cs b/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeProvider.cs index 5c00229e8..c4edb43ff 100644 --- a/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeProvider.cs +++ b/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeProvider.cs @@ -1,25 +1,22 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; using System.Text; -using System.Text.RegularExpressions; using System.Threading; using System.Threading.Tasks; using System.Xml; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -96,10 +93,7 @@ namespace MediaBrowser.Providers.TV return Task.FromResult((IEnumerable<RemoteSearchResult>)list); } - public string Name - { - get { return "TheTVDB"; } - } + public string Name => "TheTVDB"; public async Task<MetadataResult<Episode>> GetMetadata(EpisodeInfo searchInfo, CancellationToken cancellationToken) { @@ -407,8 +401,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - DateTime date; - if (DateTime.TryParse(val, out date)) + if (DateTime.TryParse(val, out var date)) { date = date.ToUniversalTime(); @@ -488,10 +481,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { episodeNumber = rval; } @@ -506,10 +497,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { seasonNumber = rval; } @@ -524,9 +513,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - float num; - - if (float.TryParse(val, NumberStyles.Any, _usCulture, out num)) + if (float.TryParse(val, NumberStyles.Any, _usCulture, out var num)) { combinedEpisodeNumber = Convert.ToInt32(num); } @@ -541,9 +528,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - float num; - - if (float.TryParse(val, NumberStyles.Any, _usCulture, out num)) + if (float.TryParse(val, NumberStyles.Any, _usCulture, out var num)) { combinedSeasonNumber = Convert.ToInt32(num); } @@ -558,10 +543,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { item.AirsBeforeEpisodeNumber = rval; } @@ -576,10 +559,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { item.AirsAfterSeasonNumber = rval; } @@ -594,10 +575,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { item.AirsBeforeSeasonNumber = rval; } @@ -637,10 +616,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - float rval; - // float.TryParse is local aware, so it can be probamatic, force us culture - if (float.TryParse(val, NumberStyles.AllowDecimalPoint, _usCulture, out rval)) + if (float.TryParse(val, NumberStyles.AllowDecimalPoint, _usCulture, out var rval)) { item.CommunityRating = rval; } @@ -653,10 +630,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { //item.VoteCount = rval; } @@ -671,8 +646,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - DateTime date; - if (DateTime.TryParse(val, out date)) + if (DateTime.TryParse(val, out var date)) { date = date.ToUniversalTime(); @@ -919,6 +893,6 @@ namespace MediaBrowser.Providers.TV }); } - public int Order { get { return 0; } } + public int Order => 0; } } diff --git a/MediaBrowser.Providers/TV/TheTVDB/TvdbPrescanTask.cs b/MediaBrowser.Providers/TV/TheTVDB/TvdbPrescanTask.cs index 8bab59595..c4a132d45 100644 --- a/MediaBrowser.Providers/TV/TheTVDB/TvdbPrescanTask.cs +++ b/MediaBrowser.Providers/TV/TheTVDB/TvdbPrescanTask.cs @@ -1,10 +1,3 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; using System; using System.Collections.Generic; using System.Globalization; @@ -14,11 +7,17 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Dto; -using MediaBrowser.Model.IO; using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Net; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -162,9 +161,7 @@ namespace MediaBrowser.Providers.TV newUpdateTime = seriesToUpdate.Item2; - long lastUpdateValue; - - long.TryParse(lastUpdateTime, NumberStyles.Any, UsCulture, out lastUpdateValue); + long.TryParse(lastUpdateTime, NumberStyles.Any, UsCulture, out var lastUpdateValue); var nullableUpdateValue = lastUpdateValue == 0 ? (long?)null : lastUpdateValue; diff --git a/MediaBrowser.Providers/TV/TheTVDB/TvdbSeasonImageProvider.cs b/MediaBrowser.Providers/TV/TheTVDB/TvdbSeasonImageProvider.cs index ed9deeba0..af36d1ebf 100644 --- a/MediaBrowser.Providers/TV/TheTVDB/TvdbSeasonImageProvider.cs +++ b/MediaBrowser.Providers/TV/TheTVDB/TvdbSeasonImageProvider.cs @@ -1,12 +1,3 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.Globalization; @@ -16,7 +7,16 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Xml; namespace MediaBrowser.Providers.TV @@ -38,15 +38,9 @@ namespace MediaBrowser.Providers.TV _xmlSettings = xmlSettings; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "TheTVDB"; } - } + public static string ProviderName => "TheTVDB"; public bool Supports(BaseItem item) { @@ -207,9 +201,7 @@ namespace MediaBrowser.Providers.TV { var val = reader.ReadElementContentAsString() ?? string.Empty; - double rval; - - if (double.TryParse(val, NumberStyles.Any, UsCulture, out rval)) + if (double.TryParse(val, NumberStyles.Any, UsCulture, out var rval)) { rating = rval; } @@ -221,9 +213,7 @@ namespace MediaBrowser.Providers.TV { var val = reader.ReadElementContentAsString() ?? string.Empty; - int rval; - - if (int.TryParse(val, NumberStyles.Integer, UsCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, UsCulture, out var rval)) { voteCount = rval; } @@ -258,9 +248,7 @@ namespace MediaBrowser.Providers.TV if (resolutionParts.Length == 2) { - int rval; - - if (int.TryParse(resolutionParts[0], NumberStyles.Integer, UsCulture, out rval)) + if (int.TryParse(resolutionParts[0], NumberStyles.Integer, UsCulture, out var rval)) { width = rval; } @@ -345,10 +333,7 @@ namespace MediaBrowser.Providers.TV } - public int Order - { - get { return 0; } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesImageProvider.cs b/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesImageProvider.cs index 97abaab21..82fa14f49 100644 --- a/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesImageProvider.cs +++ b/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesImageProvider.cs @@ -1,12 +1,3 @@ -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Dto; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.Globalization; @@ -16,9 +7,16 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Dto; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.IO; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Xml; namespace MediaBrowser.Providers.TV @@ -39,15 +37,9 @@ namespace MediaBrowser.Providers.TV _xmlReaderSettingsFactory = xmlReaderSettingsFactory; } - public string Name - { - get { return ProviderName; } - } + public string Name => ProviderName; - public static string ProviderName - { - get { return "TheTVDB"; } - } + public static string ProviderName => "TheTVDB"; public bool Supports(BaseItem item) { @@ -205,9 +197,7 @@ namespace MediaBrowser.Providers.TV { var val = reader.ReadElementContentAsString() ?? string.Empty; - double rval; - - if (double.TryParse(val, NumberStyles.Any, _usCulture, out rval)) + if (double.TryParse(val, NumberStyles.Any, _usCulture, out var rval)) { rating = rval; } @@ -219,9 +209,7 @@ namespace MediaBrowser.Providers.TV { var val = reader.ReadElementContentAsString() ?? string.Empty; - int rval; - - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { voteCount = rval; } @@ -263,9 +251,7 @@ namespace MediaBrowser.Providers.TV if (resolutionParts.Length == 2) { - int rval; - - if (int.TryParse(resolutionParts[0], NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(resolutionParts[0], NumberStyles.Integer, _usCulture, out var rval)) { width = rval; } @@ -341,10 +327,7 @@ namespace MediaBrowser.Providers.TV } - public int Order - { - get { return 0; } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesProvider.cs b/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesProvider.cs index 232758896..b6df64396 100644 --- a/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesProvider.cs +++ b/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesProvider.cs @@ -1,15 +1,3 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Common.Net; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Providers; using System; using System.Collections.Generic; using System.Globalization; @@ -20,8 +8,20 @@ using System.Text; using System.Threading; using System.Threading.Tasks; using System.Xml; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Common.Net; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Net; +using MediaBrowser.Model.Providers; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.TV { @@ -137,8 +137,7 @@ namespace MediaBrowser.Providers.TV { var series = result.Item; - string id; - if (seriesProviderIds.TryGetValue(MetadataProviders.Tvdb.ToString(), out id) && !string.IsNullOrEmpty(id)) + if (seriesProviderIds.TryGetValue(MetadataProviders.Tvdb.ToString(), out string id) && !string.IsNullOrEmpty(id)) { series.SetProviderId(MetadataProviders.Tvdb, id); } @@ -389,8 +388,7 @@ namespace MediaBrowser.Providers.TV internal static bool IsValidSeries(Dictionary<string, string> seriesProviderIds) { - string id; - if (seriesProviderIds.TryGetValue(MetadataProviders.Tvdb.ToString(), out id)) + if (seriesProviderIds.TryGetValue(MetadataProviders.Tvdb.ToString(), out string id)) { // This check should ideally never be necessary but we're seeing some cases of this and haven't tracked them down yet. if (!string.IsNullOrWhiteSpace(id)) @@ -426,8 +424,7 @@ namespace MediaBrowser.Providers.TV try { - string seriesId; - if (seriesProviderIds.TryGetValue(MetadataProviders.Tvdb.ToString(), out seriesId) && !string.IsNullOrWhiteSpace(seriesId)) + if (seriesProviderIds.TryGetValue(MetadataProviders.Tvdb.ToString(), out string seriesId) && !string.IsNullOrWhiteSpace(seriesId)) { var seriesDataPath = GetSeriesDataPath(_config.ApplicationPaths, seriesProviderIds); @@ -721,8 +718,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - DateTime date; - if (DateTime.TryParse(val, out date)) + if (DateTime.TryParse(val, out var date)) { searchResult.ProductionYear = date.Year; } @@ -926,8 +922,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - DateTime date; - if (DateTime.TryParse(val, out date)) + if (DateTime.TryParse(val, out var date)) { airDate = date.ToUniversalTime(); } @@ -942,10 +937,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { seasonNumber = rval; } @@ -1086,10 +1079,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { personInfo.SortOrder = rval; } @@ -1195,10 +1186,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - float rval; - // float.TryParse is local aware, so it can be probamatic, force us culture - if (float.TryParse(val, NumberStyles.AllowDecimalPoint, _usCulture, out rval)) + if (float.TryParse(val, NumberStyles.AllowDecimalPoint, _usCulture, out var rval)) { item.CommunityRating = rval; } @@ -1211,10 +1200,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { //item.VoteCount = rval; } @@ -1253,9 +1240,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - SeriesStatus seriesStatus; - - if (Enum.TryParse(val, true, out seriesStatus)) + if (Enum.TryParse(val, true, out SeriesStatus seriesStatus)) item.Status = seriesStatus; } @@ -1268,8 +1253,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - DateTime date; - if (DateTime.TryParse(val, out date)) + if (DateTime.TryParse(val, out var date)) { date = date.ToUniversalTime(); @@ -1287,10 +1271,8 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var rval)) { item.RunTimeTicks = TimeSpan.FromMinutes(rval).Ticks; } @@ -1455,8 +1437,7 @@ namespace MediaBrowser.Providers.TV var val = reader.ReadElementContentAsString(); if (!string.IsNullOrWhiteSpace(val)) { - int num; - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out num)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var num)) { episodeNumber = num; } @@ -1470,9 +1451,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - float num; - - if (float.TryParse(val, NumberStyles.Any, _usCulture, out num)) + if (float.TryParse(val, NumberStyles.Any, _usCulture, out var num)) { dvdEpisodeNumber = num; } @@ -1487,9 +1466,7 @@ namespace MediaBrowser.Providers.TV if (!string.IsNullOrWhiteSpace(val)) { - float num; - - if (float.TryParse(val, NumberStyles.Any, _usCulture, out num)) + if (float.TryParse(val, NumberStyles.Any, _usCulture, out var num)) { dvdSeasonNumber = Convert.ToInt32(num); } @@ -1503,8 +1480,7 @@ namespace MediaBrowser.Providers.TV var val = reader.ReadElementContentAsString(); if (!string.IsNullOrWhiteSpace(val)) { - int num; - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out num)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var num)) { absoluteNumber = num; } @@ -1517,8 +1493,7 @@ namespace MediaBrowser.Providers.TV var val = reader.ReadElementContentAsString(); if (!string.IsNullOrWhiteSpace(val)) { - int num; - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out num)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var num)) { seasonNumber = num; } @@ -1542,8 +1517,7 @@ namespace MediaBrowser.Providers.TV var hasEpisodeChanged = true; if (!string.IsNullOrWhiteSpace(lastUpdateString) && lastTvDbUpdateTime.HasValue) { - long num; - if (long.TryParse(lastUpdateString, NumberStyles.Any, _usCulture, out num)) + if (long.TryParse(lastUpdateString, NumberStyles.Any, _usCulture, out var num)) { hasEpisodeChanged = num >= lastTvDbUpdateTime.Value; } @@ -1618,8 +1592,7 @@ namespace MediaBrowser.Providers.TV /// <returns>System.String.</returns> internal static string GetSeriesDataPath(IApplicationPaths appPaths, Dictionary<string, string> seriesProviderIds) { - string seriesId; - if (seriesProviderIds.TryGetValue(MetadataProviders.Tvdb.ToString(), out seriesId) && !string.IsNullOrEmpty(seriesId)) + if (seriesProviderIds.TryGetValue(MetadataProviders.Tvdb.ToString(), out string seriesId) && !string.IsNullOrEmpty(seriesId)) { var seriesDataPath = Path.Combine(GetSeriesDataPath(appPaths), seriesId); @@ -1735,10 +1708,7 @@ namespace MediaBrowser.Providers.TV return sbOutput.ToString(); } - public string Name - { - get { return "TheTVDB"; } - } + public string Name => "TheTVDB"; public async Task Identify(SeriesInfo info) { @@ -1758,13 +1728,7 @@ namespace MediaBrowser.Providers.TV } } - public int Order - { - get - { - return 0; - } - } + public int Order => 0; public Task<HttpResponseInfo> GetImageResponse(string url, CancellationToken cancellationToken) { diff --git a/MediaBrowser.Providers/TV/TvExternalIds.cs b/MediaBrowser.Providers/TV/TvExternalIds.cs index 6d5f4abbb..001ce1465 100644 --- a/MediaBrowser.Providers/TV/TvExternalIds.cs +++ b/MediaBrowser.Providers/TV/TvExternalIds.cs @@ -1,4 +1,3 @@ -using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; @@ -7,20 +6,11 @@ namespace MediaBrowser.Providers.TV { public class Zap2ItExternalId : IExternalId { - public string Name - { - get { return "Zap2It"; } - } + public string Name => "Zap2It"; - public string Key - { - get { return MetadataProviders.Zap2It.ToString(); } - } + public string Key => MetadataProviders.Zap2It.ToString(); - public string UrlFormatString - { - get { return "http://tvlistings.zap2it.com/overview.html?programSeriesId={0}"; } - } + public string UrlFormatString => "http://tvlistings.zap2it.com/overview.html?programSeriesId={0}"; public bool Supports(IHasProviderIds item) { @@ -30,20 +20,11 @@ namespace MediaBrowser.Providers.TV public class TvdbExternalId : IExternalId { - public string Name - { - get { return "TheTVDB"; } - } + public string Name => "TheTVDB"; - public string Key - { - get { return MetadataProviders.Tvdb.ToString(); } - } + public string Key => MetadataProviders.Tvdb.ToString(); - public string UrlFormatString - { - get { return TvdbPrescanTask.TvdbBaseUrl + "?tab=series&id={0}"; } - } + public string UrlFormatString => TvdbPrescanTask.TvdbBaseUrl + "?tab=series&id={0}"; public bool Supports(IHasProviderIds item) { @@ -53,20 +34,11 @@ namespace MediaBrowser.Providers.TV public class TvdbSeasonExternalId : IExternalId { - public string Name - { - get { return "TheTVDB"; } - } + public string Name => "TheTVDB"; - public string Key - { - get { return MetadataProviders.Tvdb.ToString(); } - } + public string Key => MetadataProviders.Tvdb.ToString(); - public string UrlFormatString - { - get { return null; } - } + public string UrlFormatString => null; public bool Supports(IHasProviderIds item) { @@ -76,20 +48,11 @@ namespace MediaBrowser.Providers.TV public class TvdbEpisodeExternalId : IExternalId { - public string Name - { - get { return "TheTVDB"; } - } + public string Name => "TheTVDB"; - public string Key - { - get { return MetadataProviders.Tvdb.ToString(); } - } + public string Key => MetadataProviders.Tvdb.ToString(); - public string UrlFormatString - { - get { return TvdbPrescanTask.TvdbBaseUrl + "?tab=episode&id={0}"; } - } + public string UrlFormatString => TvdbPrescanTask.TvdbBaseUrl + "?tab=episode&id={0}"; public bool Supports(IHasProviderIds item) { diff --git a/MediaBrowser.Providers/Users/UserMetadataService.cs b/MediaBrowser.Providers/Users/UserMetadataService.cs index 361d42f50..024c2f959 100644 --- a/MediaBrowser.Providers/Users/UserMetadataService.cs +++ b/MediaBrowser.Providers/Users/UserMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Users { diff --git a/MediaBrowser.Providers/Videos/VideoMetadataService.cs b/MediaBrowser.Providers/Videos/VideoMetadataService.cs index b9868cea9..f5f5b8971 100644 --- a/MediaBrowser.Providers/Videos/VideoMetadataService.cs +++ b/MediaBrowser.Providers/Videos/VideoMetadataService.cs @@ -1,25 +1,18 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Videos { public class VideoMetadataService : MetadataService<Video, ItemLookupInfo> { - public override int Order - { - get - { - // Make sure the type-specific services get picked first - return 10; - } - } + // Make sure the type-specific services get picked first + public override int Order => 10; protected override void MergeData(MetadataResult<Video> source, MetadataResult<Video> target, MetadataFields[] lockedFields, bool replaceData, bool mergeMetadataSettings) { diff --git a/MediaBrowser.Providers/Years/YearMetadataService.cs b/MediaBrowser.Providers/Years/YearMetadataService.cs index d62cb10b5..b94494253 100644 --- a/MediaBrowser.Providers/Years/YearMetadataService.cs +++ b/MediaBrowser.Providers/Years/YearMetadataService.cs @@ -1,14 +1,11 @@ -using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.Providers.Manager; -using System.Collections.Generic; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; +using MediaBrowser.Providers.Manager; +using Microsoft.Extensions.Logging; namespace MediaBrowser.Providers.Years { diff --git a/MediaBrowser.Tests/ConsistencyTests/Resources/StringCheckSample.xml b/MediaBrowser.Tests/ConsistencyTests/Resources/StringCheckSample.xml index 5f2e024c5..9c65bddcd 100644 --- a/MediaBrowser.Tests/ConsistencyTests/Resources/StringCheckSample.xml +++ b/MediaBrowser.Tests/ConsistencyTests/Resources/StringCheckSample.xml @@ -1,4 +1,4 @@ -<?xml version="1.0" encoding="utf-8" standalone="yes"?> +<?xml version="1.0" encoding="utf-8" standalone="yes"?> <?xml-stylesheet type="text/xsl" href="StringCheck.xslt"?> <StringUsages Mode="All"> <Dictionary Token="LabelExit" Text="Exit" /> diff --git a/MediaBrowser.Tests/ConsistencyTests/StringUsageReporter.cs b/MediaBrowser.Tests/ConsistencyTests/StringUsageReporter.cs index 5234f7857..1fd511e86 100644 --- a/MediaBrowser.Tests/ConsistencyTests/StringUsageReporter.cs +++ b/MediaBrowser.Tests/ConsistencyTests/StringUsageReporter.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Tests.ConsistencyTests.TextIndexing; +using MediaBrowser.Tests.ConsistencyTests.TextIndexing; using Microsoft.VisualStudio.TestTools.UnitTesting; using System; using System.Collections.Generic; diff --git a/MediaBrowser.Tests/ConsistencyTests/TextIndexing/IndexBuilder.cs b/MediaBrowser.Tests/ConsistencyTests/TextIndexing/IndexBuilder.cs index e88e3ae29..4c46f4793 100644 --- a/MediaBrowser.Tests/ConsistencyTests/TextIndexing/IndexBuilder.cs +++ b/MediaBrowser.Tests/ConsistencyTests/TextIndexing/IndexBuilder.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.IO; using System.Linq; diff --git a/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordIndex.cs b/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordIndex.cs index 60b88dd5e..e0af08792 100644 --- a/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordIndex.cs +++ b/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordIndex.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; namespace MediaBrowser.Tests.ConsistencyTests.TextIndexing diff --git a/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordOccurrence.cs b/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordOccurrence.cs index 7564d90f3..b30e58624 100644 --- a/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordOccurrence.cs +++ b/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordOccurrence.cs @@ -1,4 +1,4 @@ -namespace MediaBrowser.Tests.ConsistencyTests.TextIndexing +namespace MediaBrowser.Tests.ConsistencyTests.TextIndexing { public struct WordOccurrence { diff --git a/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordOccurrences.cs b/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordOccurrences.cs index 821a74d21..a6388ab54 100644 --- a/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordOccurrences.cs +++ b/MediaBrowser.Tests/ConsistencyTests/TextIndexing/WordOccurrences.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; namespace MediaBrowser.Tests.ConsistencyTests.TextIndexing { diff --git a/MediaBrowser.Tests/M3uParserTest.cs b/MediaBrowser.Tests/M3uParserTest.cs index b5b25b53d..583f5f5f0 100644 --- a/MediaBrowser.Tests/M3uParserTest.cs +++ b/MediaBrowser.Tests/M3uParserTest.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Text; diff --git a/MediaBrowser.Tests/MediaBrowser.Tests.csproj b/MediaBrowser.Tests/MediaBrowser.Tests.csproj index 62bcad000..6415d4211 100644 --- a/MediaBrowser.Tests/MediaBrowser.Tests.csproj +++ b/MediaBrowser.Tests/MediaBrowser.Tests.csproj @@ -1,5 +1,6 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> +<?xml version="1.0" encoding="utf-8"?> +<Project ToolsVersion="12.0" DefaultTargets="Build" + xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <PropertyGroup> <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> @@ -128,11 +129,11 @@ </Choose> <Import Project="$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets" Condition="Exists('$(VSToolsPath)\TeamTest\Microsoft.TestTools.targets')" /> <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" /> - <!-- To modify your build process, add your task inside one of the targets below and uncomment it. + <!-- To modify your build process, add your task inside one of the targets below and uncomment it. Other similar extension points exist, see Microsoft.Common.targets. <Target Name="BeforeBuild"> </Target> <Target Name="AfterBuild"> </Target> --> -</Project>
\ No newline at end of file +</Project> diff --git a/MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs b/MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs index dde9f2fe2..b69faab11 100644 --- a/MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs +++ b/MediaBrowser.Tests/MediaEncoding/Subtitles/AssParserTests.cs @@ -1,4 +1,4 @@ -using System.Text; +using System.Text; using MediaBrowser.MediaEncoding.Subtitles; using MediaBrowser.Model.MediaInfo; using Microsoft.VisualStudio.TestTools.UnitTesting; @@ -83,4 +83,4 @@ namespace MediaBrowser.Tests.MediaEncoding.Subtitles { } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Tests/MediaEncoding/Subtitles/SrtParserTests.cs b/MediaBrowser.Tests/MediaEncoding/Subtitles/SrtParserTests.cs index f99103438..aae96b382 100644 --- a/MediaBrowser.Tests/MediaEncoding/Subtitles/SrtParserTests.cs +++ b/MediaBrowser.Tests/MediaEncoding/Subtitles/SrtParserTests.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.IO; using System.Threading; using Emby.Server.MediaEncoding.Subtitles; diff --git a/MediaBrowser.Tests/MediaEncoding/Subtitles/VttWriterTest.cs b/MediaBrowser.Tests/MediaEncoding/Subtitles/VttWriterTest.cs index d9e48ac06..2d25bcb14 100644 --- a/MediaBrowser.Tests/MediaEncoding/Subtitles/VttWriterTest.cs +++ b/MediaBrowser.Tests/MediaEncoding/Subtitles/VttWriterTest.cs @@ -1,4 +1,4 @@ -using System.Collections.Generic; +using System.Collections.Generic; using System.IO; using System.Threading; using Emby.Server.MediaEncoding.Subtitles; @@ -102,4 +102,4 @@ namespace MediaBrowser.Tests.MediaEncoding.Subtitles { Assert.AreEqual(expectedText, result); } } -}
\ No newline at end of file +} diff --git a/MediaBrowser.Tests/Properties/AssemblyInfo.cs b/MediaBrowser.Tests/Properties/AssemblyInfo.cs index 700b2f508..9bc2a19f2 100644 --- a/MediaBrowser.Tests/Properties/AssemblyInfo.cs +++ b/MediaBrowser.Tests/Properties/AssemblyInfo.cs @@ -1,4 +1,5 @@ using System.Reflection; +using System.Resources; using System.Runtime.InteropServices; // General Information about an assembly is controlled through the following @@ -7,29 +8,16 @@ using System.Runtime.InteropServices; [assembly: AssemblyTitle("MediaBrowser.Tests")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] -[assembly: AssemblyCompany("")] -[assembly: AssemblyProduct("MediaBrowser.Tests")] -[assembly: AssemblyCopyright("Copyright 2013")] +[assembly: AssemblyCompany("Jellyfin Project")] +[assembly: AssemblyProduct("Jellyfin: The Free Software Media System")] +[assembly: AssemblyCopyright("Copyright © 2019 Jellyfin Contributors. Code released under the GNU General Public License Version 2")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] +[assembly: NeutralResourcesLanguage("en")] // Setting ComVisible to false makes the types in this assembly not visible // to COM components. If you need to access a type in this assembly from // COM, set the ComVisible attribute to true on that type. [assembly: ComVisible(false)] - -// The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("42408c2b-9c5d-4541-ac3f-3fe389b760ed")] - -// Version information for an assembly consists of the following four values: -// -// Major Version -// Minor Version -// Build Number -// Revision -// -// You can specify all the values or you can default the Build and Revision Numbers -// by using the '*' as shown below: -// [assembly: AssemblyVersion("1.0.*")] [assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/MediaBrowser.WebDashboard/Api/ConfigurationPageInfo.cs b/MediaBrowser.WebDashboard/Api/ConfigurationPageInfo.cs index 4cb2444da..b8f9e09b5 100644 --- a/MediaBrowser.WebDashboard/Api/ConfigurationPageInfo.cs +++ b/MediaBrowser.WebDashboard/Api/ConfigurationPageInfo.cs @@ -1,4 +1,4 @@ -using MediaBrowser.Common.Plugins; +using MediaBrowser.Common.Plugins; using MediaBrowser.Controller.Plugins; using MediaBrowser.Model.Plugins; diff --git a/MediaBrowser.WebDashboard/Api/DashboardService.cs b/MediaBrowser.WebDashboard/Api/DashboardService.cs index ef4f9c2af..53a414649 100644 --- a/MediaBrowser.WebDashboard/Api/DashboardService.cs +++ b/MediaBrowser.WebDashboard/Api/DashboardService.cs @@ -1,23 +1,22 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Net; -using MediaBrowser.Controller.Plugins; -using MediaBrowser.Model.Extensions; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Threading.Tasks; +using MediaBrowser.Common.Extensions; using MediaBrowser.Common.Plugins; -using MediaBrowser.Model.IO; +using MediaBrowser.Controller; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Net; +using MediaBrowser.Controller.Plugins; using MediaBrowser.Model.Globalization; +using MediaBrowser.Model.IO; +using MediaBrowser.Model.Net; using MediaBrowser.Model.Plugins; using MediaBrowser.Model.Reflection; +using MediaBrowser.Model.Serialization; using MediaBrowser.Model.Services; +using Microsoft.Extensions.Logging; namespace MediaBrowser.WebDashboard.Api { diff --git a/MediaBrowser.WebDashboard/Api/PackageCreator.cs b/MediaBrowser.WebDashboard/Api/PackageCreator.cs index 88fb95936..2d0e0e188 100644 --- a/MediaBrowser.WebDashboard/Api/PackageCreator.cs +++ b/MediaBrowser.WebDashboard/Api/PackageCreator.cs @@ -1,17 +1,13 @@ -using MediaBrowser.Controller.Configuration; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Serialization; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks; -using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Globalization; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Extensions; using MediaBrowser.Controller; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Model.IO; +using Microsoft.Extensions.Logging; namespace MediaBrowser.WebDashboard.Api { diff --git a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj index c5367ba75..c099e77d6 100644 --- a/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj +++ b/MediaBrowser.WebDashboard/MediaBrowser.WebDashboard.csproj @@ -1,23 +1,23 @@ -<Project Sdk="Microsoft.NET.Sdk">
-
- <ItemGroup>
- <ProjectReference Include="..\MediaBrowser.Controller\MediaBrowser.Controller.csproj" />
- <ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" />
- </ItemGroup>
-
- <ItemGroup>
- <Compile Include="..\SharedVersion.cs" />
- </ItemGroup>
-
- <ItemGroup>
- <None Include="jellyfin-web\src\**\*.*">
- <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
- </None>
- </ItemGroup>
-
- <PropertyGroup>
- <TargetFramework>netstandard2.0</TargetFramework>
- <GenerateAssemblyInfo>false</GenerateAssemblyInfo>
- </PropertyGroup>
-
-</Project>
+<Project Sdk="Microsoft.NET.Sdk"> + + <ItemGroup> + <ProjectReference Include="..\MediaBrowser.Controller\MediaBrowser.Controller.csproj" /> + <ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" /> + </ItemGroup> + + <ItemGroup> + <Compile Include="..\SharedVersion.cs" /> + </ItemGroup> + + <ItemGroup> + <None Include="jellyfin-web\src\**\*.*"> + <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> + </None> + </ItemGroup> + + <PropertyGroup> + <TargetFramework>netstandard2.0</TargetFramework> + <GenerateAssemblyInfo>false</GenerateAssemblyInfo> + </PropertyGroup> + +</Project> diff --git a/MediaBrowser.WebDashboard/ServerEntryPoint.cs b/MediaBrowser.WebDashboard/ServerEntryPoint.cs index 9bf87ac0b..221fa62c7 100644 --- a/MediaBrowser.WebDashboard/ServerEntryPoint.cs +++ b/MediaBrowser.WebDashboard/ServerEntryPoint.cs @@ -1,8 +1,7 @@ -using System; -using MediaBrowser.Common; -using MediaBrowser.Controller.Plugins; using System.Collections.Generic; using System.Linq; +using MediaBrowser.Common; +using MediaBrowser.Controller.Plugins; namespace MediaBrowser.WebDashboard { diff --git a/MediaBrowser.XbmcMetadata/Configuration/NfoOptions.cs b/MediaBrowser.XbmcMetadata/Configuration/NfoOptions.cs index d0e2dbc6d..f631439de 100644 --- a/MediaBrowser.XbmcMetadata/Configuration/NfoOptions.cs +++ b/MediaBrowser.XbmcMetadata/Configuration/NfoOptions.cs @@ -1,6 +1,6 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Model.Configuration; using System.Collections.Generic; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Model.Configuration; namespace MediaBrowser.XbmcMetadata.Configuration { diff --git a/MediaBrowser.XbmcMetadata/EntryPoint.cs b/MediaBrowser.XbmcMetadata/EntryPoint.cs index dac3f4967..37a1d4c35 100644 --- a/MediaBrowser.XbmcMetadata/EntryPoint.cs +++ b/MediaBrowser.XbmcMetadata/EntryPoint.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Common.Configuration; +using System; +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Plugins; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; using MediaBrowser.XbmcMetadata.Configuration; using MediaBrowser.XbmcMetadata.Savers; -using System; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata { diff --git a/MediaBrowser.XbmcMetadata/MediaBrowser.XbmcMetadata.csproj b/MediaBrowser.XbmcMetadata/MediaBrowser.XbmcMetadata.csproj index 5ffaaed27..ba29c656b 100644 --- a/MediaBrowser.XbmcMetadata/MediaBrowser.XbmcMetadata.csproj +++ b/MediaBrowser.XbmcMetadata/MediaBrowser.XbmcMetadata.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" /> diff --git a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs index 5390f5049..513296745 100644 --- a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs +++ b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs @@ -1,11 +1,3 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using MediaBrowser.Model.Entities; -using MediaBrowser.Model.Extensions; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Configuration; -using MediaBrowser.XbmcMetadata.Savers; using System; using System.Collections.Generic; using System.Globalization; @@ -15,9 +7,17 @@ using System.Text; using System.Text.RegularExpressions; using System.Threading; using System.Xml; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; +using MediaBrowser.Model.Entities; +using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Configuration; +using MediaBrowser.XbmcMetadata.Savers; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Parsers { @@ -54,7 +54,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers /// <param name="item">The item.</param> /// <param name="metadataFile">The metadata file.</param> /// <param name="cancellationToken">The cancellation token.</param> - /// <exception cref="System.ArgumentNullException"> + /// <exception cref="ArgumentNullException"> /// </exception> public void Fetch(MetadataResult<T> item, string metadataFile, CancellationToken cancellationToken) { @@ -95,10 +95,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers Fetch(item, metadataFile, settings, cancellationToken); } - protected virtual bool SupportsUrlAfterClosingXmlTag - { - get { return false; } - } + protected virtual bool SupportsUrlAfterClosingXmlTag => false; /// <summary> /// Fetches the specified item. @@ -223,15 +220,12 @@ namespace MediaBrowser.XbmcMetadata.Parsers } } - protected virtual string MovieDbParserSearchString - { - get { return "themoviedb.org/movie/"; } - } + protected virtual string MovieDbParserSearchString => "themoviedb.org/movie/"; protected void ParseProviderLinks(T item, string xml) { //Look for a match for the Regex pattern "tt" followed by 7 digits - Match m = Regex.Match(xml, @"tt([0-9]{7})", RegexOptions.IgnoreCase); + var m = Regex.Match(xml, @"tt([0-9]{7})", RegexOptions.IgnoreCase); if (m.Success) { item.SetProviderId(MetadataProviders.Imdb, m.Value); @@ -245,8 +239,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (index != -1) { var tmdbId = xml.Substring(index + srch.Length).TrimEnd('/').Split('-')[0]; - int value; - if (!string.IsNullOrWhiteSpace(tmdbId) && int.TryParse(tmdbId, NumberStyles.Integer, CultureInfo.InvariantCulture, out value)) + if (!string.IsNullOrWhiteSpace(tmdbId) && int.TryParse(tmdbId, NumberStyles.Integer, CultureInfo.InvariantCulture, out var value)) { item.SetProviderId(MetadataProviders.Tmdb, value.ToString(_usCulture)); } @@ -261,8 +254,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (index != -1) { var tvdbId = xml.Substring(index + srch.Length).TrimEnd('/'); - int value; - if (!string.IsNullOrWhiteSpace(tvdbId) && int.TryParse(tvdbId, NumberStyles.Integer, CultureInfo.InvariantCulture, out value)) + if (!string.IsNullOrWhiteSpace(tvdbId) && int.TryParse(tvdbId, NumberStyles.Integer, CultureInfo.InvariantCulture, out var value)) { item.SetProviderId(MetadataProviders.Tvdb, value.ToString(_usCulture)); } @@ -283,8 +275,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - DateTime added; - if (DateTime.TryParseExact(val, BaseNfoSaver.DateAddedFormat, CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out added)) + if (DateTime.TryParseExact(val, BaseNfoSaver.DateAddedFormat, CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out var added)) { item.DateCreated = added.ToUniversalTime(); } @@ -322,8 +313,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrEmpty(text)) { - float value; - if (float.TryParse(text, NumberStyles.Any, _usCulture, out value)) + if (float.TryParse(text, NumberStyles.Any, _usCulture, out var value)) { item.CriticRating = value; } @@ -383,9 +373,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers { item.LockedFields = val.Split('|').Select(i => { - MetadataFields field; - - if (Enum.TryParse<MetadataFields>(i, true, out field)) + if (Enum.TryParse(i, true, out MetadataFields field)) { return (MetadataFields?)field; } @@ -451,8 +439,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(text)) { - int runtime; - if (int.TryParse(text.Split(' ')[0], NumberStyles.Integer, _usCulture, out runtime)) + if (int.TryParse(text.Split(' ')[0], NumberStyles.Integer, _usCulture, out var runtime)) { item.RunTimeTicks = TimeSpan.FromMinutes(runtime).Ticks; } @@ -605,8 +592,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - int productionYear; - if (int.TryParse(val, out productionYear) && productionYear > 1850) + if (int.TryParse(val, out var productionYear) && productionYear > 1850) { item.ProductionYear = productionYear; } @@ -622,9 +608,8 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(rating)) { - float val; // All external meta is saving this as '.' for decimal I believe...but just to be sure - if (float.TryParse(rating.Replace(',', '.'), NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out val)) + if (float.TryParse(rating.Replace(',', '.'), NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out var val)) { item.CommunityRating = val; } @@ -643,9 +628,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - DateTime date; - - if (DateTime.TryParseExact(val, formatString, CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out date) && date.Year > 1850) + if (DateTime.TryParseExact(val, formatString, CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out var date) && date.Year > 1850) { item.PremiereDate = date.ToUniversalTime(); item.ProductionYear = date.Year; @@ -663,9 +646,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - DateTime date; - - if (DateTime.TryParseExact(val, formatString, CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out date) && date.Year > 1850) + if (DateTime.TryParseExact(val, formatString, CultureInfo.InvariantCulture, DateTimeStyles.AssumeLocal, out var date) && date.Year > 1850) { item.EndDate = date.ToUniversalTime(); } @@ -721,8 +702,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers default: string readerName = reader.Name; - string providerIdValue; - if (_validProviderIds.TryGetValue(readerName, out providerIdValue)) + if (_validProviderIds.TryGetValue(readerName, out string providerIdValue)) { var id = reader.ReadElementContentAsString(); if (!string.IsNullOrWhiteSpace(id)) @@ -912,8 +892,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - int intVal; - if (int.TryParse(val, NumberStyles.Integer, _usCulture, out intVal)) + if (int.TryParse(val, NumberStyles.Integer, _usCulture, out var intVal)) { sortOrder = intVal; } diff --git a/MediaBrowser.XbmcMetadata/Parsers/EpisodeNfoParser.cs b/MediaBrowser.XbmcMetadata/Parsers/EpisodeNfoParser.cs index 3e7fd1c82..c76f8345a 100644 --- a/MediaBrowser.XbmcMetadata/Parsers/EpisodeNfoParser.cs +++ b/MediaBrowser.XbmcMetadata/Parsers/EpisodeNfoParser.cs @@ -1,16 +1,16 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Globalization; +using System.IO; +using System.Text; using System.Threading; using System.Xml; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; -using System.IO; -using System.Text; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Parsers { @@ -97,9 +97,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(number)) { - int num; - - if (int.TryParse(number, out num)) + if (int.TryParse(number, out var num)) { item.ParentIndexNumber = num; } @@ -113,9 +111,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(number)) { - int num; - - if (int.TryParse(number, out num)) + if (int.TryParse(number, out var num)) { item.IndexNumber = num; } @@ -129,9 +125,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(number)) { - int num; - - if (int.TryParse(number, out num)) + if (int.TryParse(number, out var num)) { item.IndexNumberEnd = num; } @@ -145,10 +139,8 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, UsCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, UsCulture, out var rval)) { item.AirsBeforeEpisodeNumber = rval; } @@ -163,10 +155,8 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, UsCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, UsCulture, out var rval)) { item.AirsAfterSeasonNumber = rval; } @@ -181,10 +171,8 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, UsCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, UsCulture, out var rval)) { item.AirsBeforeSeasonNumber = rval; } @@ -199,10 +187,8 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, UsCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, UsCulture, out var rval)) { item.AirsBeforeSeasonNumber = rval; } @@ -217,10 +203,8 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(val)) { - int rval; - // int.TryParse is local aware, so it can be probamatic, force us culture - if (int.TryParse(val, NumberStyles.Integer, UsCulture, out rval)) + if (int.TryParse(val, NumberStyles.Integer, UsCulture, out var rval)) { item.AirsBeforeEpisodeNumber = rval; } diff --git a/MediaBrowser.XbmcMetadata/Parsers/MovieNfoParser.cs b/MediaBrowser.XbmcMetadata/Parsers/MovieNfoParser.cs index e6b4eea1c..21ee8f92f 100644 --- a/MediaBrowser.XbmcMetadata/Parsers/MovieNfoParser.cs +++ b/MediaBrowser.XbmcMetadata/Parsers/MovieNfoParser.cs @@ -1,28 +1,21 @@ -using System; +using System; using System.IO; using System.Linq; -using System.Text; +using System.Xml; using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using System.Xml; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Parsers { class MovieNfoParser : BaseNfoParser<Video> { - protected override bool SupportsUrlAfterClosingXmlTag - { - get - { - return true; - } - } + protected override bool SupportsUrlAfterClosingXmlTag => true; /// <summary> /// Fetches the data from XML node. diff --git a/MediaBrowser.XbmcMetadata/Parsers/SeasonNfoParser.cs b/MediaBrowser.XbmcMetadata/Parsers/SeasonNfoParser.cs index bcb70ee45..17f36d82d 100644 --- a/MediaBrowser.XbmcMetadata/Parsers/SeasonNfoParser.cs +++ b/MediaBrowser.XbmcMetadata/Parsers/SeasonNfoParser.cs @@ -1,11 +1,11 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; using System.Globalization; using System.Xml; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Parsers { @@ -28,9 +28,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(number)) { - int num; - - if (int.TryParse(number, NumberStyles.Integer, CultureInfo.InvariantCulture, out num)) + if (int.TryParse(number, NumberStyles.Integer, CultureInfo.InvariantCulture, out var num)) { item.IndexNumber = num; } diff --git a/MediaBrowser.XbmcMetadata/Parsers/SeriesNfoParser.cs b/MediaBrowser.XbmcMetadata/Parsers/SeriesNfoParser.cs index 3b46ff7d6..700656b65 100644 --- a/MediaBrowser.XbmcMetadata/Parsers/SeriesNfoParser.cs +++ b/MediaBrowser.XbmcMetadata/Parsers/SeriesNfoParser.cs @@ -1,30 +1,21 @@ -using MediaBrowser.Common.Configuration; +using System; +using System.Xml; +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using System; -using System.Xml; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Parsers { public class SeriesNfoParser : BaseNfoParser<Series> { - protected override bool SupportsUrlAfterClosingXmlTag - { - get - { - return true; - } - } + protected override bool SupportsUrlAfterClosingXmlTag => true; - protected override string MovieDbParserSearchString - { - get { return "themoviedb.org/tv/"; } - } + protected override string MovieDbParserSearchString => "themoviedb.org/tv/"; /// <summary> /// Fetches the data from XML node. @@ -62,21 +53,21 @@ namespace MediaBrowser.XbmcMetadata.Parsers break; } case "airs_dayofweek": - { - item.AirDays = TVUtils.GetAirDays(reader.ReadElementContentAsString()); - break; - } + { + item.AirDays = TVUtils.GetAirDays(reader.ReadElementContentAsString()); + break; + } case "airs_time": - { - var val = reader.ReadElementContentAsString(); - - if (!string.IsNullOrWhiteSpace(val)) { - item.AirTime = val; + var val = reader.ReadElementContentAsString(); + + if (!string.IsNullOrWhiteSpace(val)) + { + item.AirTime = val; + } + break; } - break; - } case "status": { @@ -84,8 +75,7 @@ namespace MediaBrowser.XbmcMetadata.Parsers if (!string.IsNullOrWhiteSpace(status)) { - SeriesStatus seriesStatus; - if (Enum.TryParse(status, true, out seriesStatus)) + if (Enum.TryParse(status, true, out SeriesStatus seriesStatus)) { item.Status = seriesStatus; } diff --git a/MediaBrowser.XbmcMetadata/Providers/AlbumNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/AlbumNfoProvider.cs index e8028f6ad..1e22bf358 100644 --- a/MediaBrowser.XbmcMetadata/Providers/AlbumNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/AlbumNfoProvider.cs @@ -1,14 +1,12 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Parsers; using System.IO; using System.Threading; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Parsers; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { diff --git a/MediaBrowser.XbmcMetadata/Providers/ArtistNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/ArtistNfoProvider.cs index b6b61258b..ad811b475 100644 --- a/MediaBrowser.XbmcMetadata/Providers/ArtistNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/ArtistNfoProvider.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Parsers; using System.IO; using System.Threading; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Parsers; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { diff --git a/MediaBrowser.XbmcMetadata/Providers/BaseNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/BaseNfoProvider.cs index ae8e638cb..0a47ac8e1 100644 --- a/MediaBrowser.XbmcMetadata/Providers/BaseNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/BaseNfoProvider.cs @@ -1,4 +1,4 @@ -using System.IO; +using System.IO; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Entities; @@ -68,12 +68,6 @@ namespace MediaBrowser.XbmcMetadata.Providers return file.Exists && FileSystem.GetLastWriteTimeUtc(file) > item.DateLastSaved; } - public string Name - { - get - { - return BaseNfoSaver.SaverName; - } - } + public string Name => BaseNfoSaver.SaverName; } } diff --git a/MediaBrowser.XbmcMetadata/Providers/BaseVideoNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/BaseVideoNfoProvider.cs index c7ff55323..94f104f61 100644 --- a/MediaBrowser.XbmcMetadata/Providers/BaseVideoNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/BaseVideoNfoProvider.cs @@ -1,20 +1,18 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Parsers; -using MediaBrowser.XbmcMetadata.Savers; using System.Linq; using System.Threading; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Parsers; +using MediaBrowser.XbmcMetadata.Savers; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { public class BaseVideoNfoProvider<T> : BaseNfoProvider<T> - where T : Video, new () + where T : Video, new() { private readonly ILogger _logger; private readonly IConfigurationManager _config; diff --git a/MediaBrowser.XbmcMetadata/Providers/EpisodeNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/EpisodeNfoProvider.cs index 6883048f6..bf05f0f38 100644 --- a/MediaBrowser.XbmcMetadata/Providers/EpisodeNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/EpisodeNfoProvider.cs @@ -1,13 +1,13 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Parsers; using System.Collections.Generic; using System.IO; using System.Threading; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Parsers; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { diff --git a/MediaBrowser.XbmcMetadata/Providers/MovieNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/MovieNfoProvider.cs index 1e4ccbe38..77b3b3781 100644 --- a/MediaBrowser.XbmcMetadata/Providers/MovieNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/MovieNfoProvider.cs @@ -1,12 +1,10 @@ -using MediaBrowser.Common.Configuration; - +using MediaBrowser.Common.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.IO; using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { diff --git a/MediaBrowser.XbmcMetadata/Providers/SeasonNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/SeasonNfoProvider.cs index ddd32512a..e669a86a3 100644 --- a/MediaBrowser.XbmcMetadata/Providers/SeasonNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/SeasonNfoProvider.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Parsers; using System.IO; using System.Threading; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Parsers; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { diff --git a/MediaBrowser.XbmcMetadata/Providers/SeriesNfoProvider.cs b/MediaBrowser.XbmcMetadata/Providers/SeriesNfoProvider.cs index 34a7a088e..d90a65535 100644 --- a/MediaBrowser.XbmcMetadata/Providers/SeriesNfoProvider.cs +++ b/MediaBrowser.XbmcMetadata/Providers/SeriesNfoProvider.cs @@ -1,12 +1,12 @@ -using MediaBrowser.Common.Configuration; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Providers; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Parsers; using System.IO; using System.Threading; +using MediaBrowser.Common.Configuration; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Providers; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Parsers; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Providers { diff --git a/MediaBrowser.XbmcMetadata/Savers/AlbumNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/AlbumNfoSaver.cs index 7a293801b..79f119d7f 100644 --- a/MediaBrowser.XbmcMetadata/Savers/AlbumNfoSaver.cs +++ b/MediaBrowser.XbmcMetadata/Savers/AlbumNfoSaver.cs @@ -1,18 +1,16 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Linq; using System.Xml; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Savers { diff --git a/MediaBrowser.XbmcMetadata/Savers/ArtistNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/ArtistNfoSaver.cs index 110b1446a..f01132fd9 100644 --- a/MediaBrowser.XbmcMetadata/Savers/ArtistNfoSaver.cs +++ b/MediaBrowser.XbmcMetadata/Savers/ArtistNfoSaver.cs @@ -1,17 +1,15 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Configuration; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Xml; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Configuration; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Savers { diff --git a/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs index 2b550193f..1efffff3d 100644 --- a/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs +++ b/MediaBrowser.XbmcMetadata/Savers/BaseNfoSaver.cs @@ -1,15 +1,3 @@ -using MediaBrowser.Common.Extensions; -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.Audio; -using MediaBrowser.Controller.Entities.Movies; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using MediaBrowser.Controller.Persistence; -using MediaBrowser.Model.Configuration; -using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Configuration; using System; using System.Collections.Generic; using System.Globalization; @@ -19,10 +7,20 @@ using System.Text; using System.Text.RegularExpressions; using System.Threading; using System.Xml; -using MediaBrowser.Controller.Extensions; +using MediaBrowser.Common.Extensions; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.Audio; +using MediaBrowser.Controller.Entities.Movies; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; +using MediaBrowser.Model.Configuration; +using MediaBrowser.Model.Entities; using MediaBrowser.Model.Extensions; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Configuration; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Savers { @@ -132,21 +130,9 @@ namespace MediaBrowser.XbmcMetadata.Savers } } - public string Name - { - get - { - return SaverName; - } - } + public string Name => SaverName; - public static string SaverName - { - get - { - return "Nfo"; - } - } + public static string SaverName => "Nfo"; public string GetSavePath(BaseItem item) { @@ -243,7 +229,7 @@ namespace MediaBrowser.XbmcMetadata.Savers CloseOutput = false }; - using (XmlWriter writer = XmlWriter.Create(stream, settings)) + using (var writer = XmlWriter.Create(stream, settings)) { var root = GetRootElementName(item); diff --git a/MediaBrowser.XbmcMetadata/Savers/EpisodeNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/EpisodeNfoSaver.cs index d1f30b1fe..05a7a44f9 100644 --- a/MediaBrowser.XbmcMetadata/Savers/EpisodeNfoSaver.cs +++ b/MediaBrowser.XbmcMetadata/Savers/EpisodeNfoSaver.cs @@ -1,17 +1,15 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; -using MediaBrowser.XbmcMetadata.Configuration; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Xml; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using MediaBrowser.XbmcMetadata.Configuration; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Savers { diff --git a/MediaBrowser.XbmcMetadata/Savers/MovieNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/MovieNfoSaver.cs index c703a9ea6..b3bbe539a 100644 --- a/MediaBrowser.XbmcMetadata/Savers/MovieNfoSaver.cs +++ b/MediaBrowser.XbmcMetadata/Savers/MovieNfoSaver.cs @@ -1,18 +1,16 @@ -using MediaBrowser.Controller.Configuration; +using System.Collections.Generic; +using System.IO; +using System.Xml; +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.Providers; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using System.Collections.Generic; -using System.IO; -using System.Xml; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Savers { diff --git a/MediaBrowser.XbmcMetadata/Savers/SeasonNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/SeasonNfoSaver.cs index 32253ca3b..102fba70b 100644 --- a/MediaBrowser.XbmcMetadata/Savers/SeasonNfoSaver.cs +++ b/MediaBrowser.XbmcMetadata/Savers/SeasonNfoSaver.cs @@ -1,16 +1,14 @@ -using MediaBrowser.Controller.Configuration; -using MediaBrowser.Controller.Entities; -using MediaBrowser.Controller.Entities.TV; -using MediaBrowser.Controller.Library; -using Microsoft.Extensions.Logging; using System.Collections.Generic; using System.Globalization; using System.IO; using System.Xml; - -using MediaBrowser.Controller.IO; +using MediaBrowser.Controller.Configuration; +using MediaBrowser.Controller.Entities; +using MediaBrowser.Controller.Entities.TV; +using MediaBrowser.Controller.Library; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Savers { diff --git a/MediaBrowser.XbmcMetadata/Savers/SeriesNfoSaver.cs b/MediaBrowser.XbmcMetadata/Savers/SeriesNfoSaver.cs index 270d779bf..0ef267a1d 100644 --- a/MediaBrowser.XbmcMetadata/Savers/SeriesNfoSaver.cs +++ b/MediaBrowser.XbmcMetadata/Savers/SeriesNfoSaver.cs @@ -1,17 +1,14 @@ -using MediaBrowser.Controller.Configuration; +using System.Collections.Generic; +using System.IO; +using System.Xml; +using MediaBrowser.Controller.Configuration; using MediaBrowser.Controller.Entities; using MediaBrowser.Controller.Entities.TV; using MediaBrowser.Controller.Library; using MediaBrowser.Model.Entities; -using Microsoft.Extensions.Logging; -using System.Collections.Generic; -using System.Globalization; -using System.IO; -using System.Xml; - -using MediaBrowser.Controller.IO; using MediaBrowser.Model.IO; using MediaBrowser.Model.Xml; +using Microsoft.Extensions.Logging; namespace MediaBrowser.XbmcMetadata.Savers { diff --git a/MediaBrowser.sln b/MediaBrowser.sln index 3fd7d8df9..c9676553e 100644 --- a/MediaBrowser.sln +++ b/MediaBrowser.sln @@ -1,4 +1,4 @@ - + Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio 15 VisualStudioVersion = 15.0.26730.3 diff --git a/MediaBrowser.sln.GhostDoc.xml b/MediaBrowser.sln.GhostDoc.xml index 73f7a08ba..eafee0bf5 100644 --- a/MediaBrowser.sln.GhostDoc.xml +++ b/MediaBrowser.sln.GhostDoc.xml @@ -7,29 +7,29 @@ <IgnoreFiles> </IgnoreFiles> </SpellChecker> -<HelpConfigurations selected="HelpFile"> - <HelpConfiguration name="HelpFile"> - <OutputPath>D:\Development\MediaBrowser\Help</OutputPath> - <ImageFolderPath /> - <HtmlFormats> - <HtmlHelp>true</HtmlHelp> - <MSHelpViewer>false</MSHelpViewer> - <MSHelp2>false</MSHelp2> - <Website>false</Website> - </HtmlFormats> - <IncludeScopes> - <Public>true</Public> - <Internal>false</Internal> - <Protected>false</Protected> - <Private>false</Private> - <Inherited>true</Inherited> - <EnableTags>false</EnableTags> - <TagList /> - </IncludeScopes> - <ResolveCrefLinks>true</ResolveCrefLinks> - <HeaderText /> - <FooterText /> - <SelectedProjects /> - </HelpConfiguration> -</HelpConfigurations> + <HelpConfigurations selected="HelpFile"> + <HelpConfiguration name="HelpFile"> + <OutputPath>D:\Development\MediaBrowser\Help</OutputPath> + <ImageFolderPath /> + <HtmlFormats> + <HtmlHelp>true</HtmlHelp> + <MSHelpViewer>false</MSHelpViewer> + <MSHelp2>false</MSHelp2> + <Website>false</Website> + </HtmlFormats> + <IncludeScopes> + <Public>true</Public> + <Internal>false</Internal> + <Protected>false</Protected> + <Private>false</Private> + <Inherited>true</Inherited> + <EnableTags>false</EnableTags> + <TagList /> + </IncludeScopes> + <ResolveCrefLinks>true</ResolveCrefLinks> + <HeaderText /> + <FooterText /> + <SelectedProjects /> + </HelpConfiguration> + </HelpConfigurations> </GhostDoc> diff --git a/Mono.Nat/Mapping.cs b/Mono.Nat/Mapping.cs index 438068934..5b15d4e14 100644 --- a/Mono.Nat/Mapping.cs +++ b/Mono.Nat/Mapping.cs @@ -102,7 +102,7 @@ namespace Mono.Nat public override bool Equals(object obj) { - Mapping other = obj as Mapping; + var other = obj as Mapping; return other == null ? false : this.protocol == other.protocol && this.privatePort == other.privatePort && this.publicPort == other.publicPort; } diff --git a/Mono.Nat/Mono.Nat.csproj b/Mono.Nat/Mono.Nat.csproj index 26028eca9..edfd5c9bb 100644 --- a/Mono.Nat/Mono.Nat.csproj +++ b/Mono.Nat/Mono.Nat.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" /> diff --git a/Mono.Nat/NatProtocol.cs b/Mono.Nat/NatProtocol.cs index ade8d921c..2768f133c 100644 --- a/Mono.Nat/NatProtocol.cs +++ b/Mono.Nat/NatProtocol.cs @@ -1,4 +1,3 @@ - namespace Mono.Nat { public enum NatProtocol diff --git a/Mono.Nat/Pmp/PmpNatDevice.cs b/Mono.Nat/Pmp/PmpNatDevice.cs index 9398e2bf9..95bd72a6c 100644 --- a/Mono.Nat/Pmp/PmpNatDevice.cs +++ b/Mono.Nat/Pmp/PmpNatDevice.cs @@ -66,7 +66,7 @@ namespace Mono.Nat.Pmp public override bool Equals(object obj) { - PmpNatDevice device = obj as PmpNatDevice; + var device = obj as PmpNatDevice; return (device == null) ? false : this.Equals(device); } diff --git a/Mono.Nat/Pmp/PmpSearcher.cs b/Mono.Nat/Pmp/PmpSearcher.cs index 5e4155841..46c2e9d80 100644 --- a/Mono.Nat/Pmp/PmpSearcher.cs +++ b/Mono.Nat/Pmp/PmpSearcher.cs @@ -81,12 +81,12 @@ namespace Mono.Nat try { - foreach (NetworkInterface n in NetworkInterface.GetAllNetworkInterfaces()) + foreach (var n in NetworkInterface.GetAllNetworkInterfaces()) { if (n.OperationalStatus != OperationalStatus.Up && n.OperationalStatus != OperationalStatus.Unknown) continue; IPInterfaceProperties properties = n.GetIPProperties(); - List<IPEndPoint> gatewayList = new List<IPEndPoint>(); + var gatewayList = new List<IPEndPoint>(); foreach (GatewayIPAddressInformation gateway in properties.GatewayAddresses) { @@ -105,7 +105,7 @@ namespace Mono.Nat gatewayList.Add(new IPEndPoint(gw2, PmpConstants.ServerPort)); } } - foreach (var unicast in properties.UnicastAddresses) + foreach (UnicastIPAddressInformation unicast in properties.UnicastAddresses) { if (/*unicast.DuplicateAddressDetectionState == DuplicateAddressDetectionState.Preferred && unicast.AddressPreferredLifetime != UInt32.MaxValue @@ -120,7 +120,7 @@ namespace Mono.Nat if (gatewayList.Count > 0) { - foreach (UnicastIPAddressInformation address in properties.UnicastAddresses) + foreach (var address in properties.UnicastAddresses) { if (address.Address.AddressFamily == AddressFamily.InterNetwork) { @@ -189,8 +189,8 @@ namespace Mono.Nat bool IsSearchAddress(IPAddress address) { - foreach (List<IPEndPoint> gatewayList in gatewayLists.Values) - foreach (IPEndPoint gatewayEndpoint in gatewayList) + foreach (var gatewayList in gatewayLists.Values) + foreach (var gatewayEndpoint in gatewayList) if (gatewayEndpoint.Address.Equals(address)) return true; return false; @@ -210,7 +210,7 @@ namespace Mono.Nat if (errorcode != 0) _logger.LogDebug("Non zero error: {0}", errorcode); - IPAddress publicIp = new IPAddress(new byte[] { response[8], response[9], response[10], response[11] }); + var publicIp = new IPAddress(new byte[] { response[8], response[9], response[10], response[11] }); nextSearch = DateTime.Now.AddMinutes(5); timeout = 250; diff --git a/Mono.Nat/Upnp/Messages/Requests/CreatePortMappingMessage.cs b/Mono.Nat/Upnp/Messages/Requests/CreatePortMappingMessage.cs index 5a2ab009a..7d6844e32 100644 --- a/Mono.Nat/Upnp/Messages/Requests/CreatePortMappingMessage.cs +++ b/Mono.Nat/Upnp/Messages/Requests/CreatePortMappingMessage.cs @@ -54,9 +54,9 @@ namespace Mono.Nat.Upnp public override HttpRequestOptions Encode() { - CultureInfo culture = CultureInfo.InvariantCulture; + var culture = CultureInfo.InvariantCulture; - StringBuilder builder = new StringBuilder(256); + var builder = new StringBuilder(256); XmlWriter writer = CreateWriter(builder); WriteFullElement(writer, "NewRemoteHost", string.Empty); diff --git a/Mono.Nat/Upnp/Messages/UpnpMessage.cs b/Mono.Nat/Upnp/Messages/UpnpMessage.cs index e734db8f4..1151dd997 100644 --- a/Mono.Nat/Upnp/Messages/UpnpMessage.cs +++ b/Mono.Nat/Upnp/Messages/UpnpMessage.cs @@ -91,7 +91,7 @@ namespace Mono.Nat.Upnp protected XmlWriter CreateWriter(StringBuilder sb) { - XmlWriterSettings settings = new XmlWriterSettings(); + var settings = new XmlWriterSettings(); settings.ConformanceLevel = ConformanceLevel.Fragment; return XmlWriter.Create(sb, settings); } diff --git a/Mono.Nat/Upnp/Searchers/UpnpSearcher.cs b/Mono.Nat/Upnp/Searchers/UpnpSearcher.cs index 57ecdeca9..b70768b6f 100644 --- a/Mono.Nat/Upnp/Searchers/UpnpSearcher.cs +++ b/Mono.Nat/Upnp/Searchers/UpnpSearcher.cs @@ -82,7 +82,7 @@ namespace Mono.Nat * prefix. */ // We have an internet gateway device now - UpnpNatDevice d = new UpnpNatDevice(localAddress, deviceInfo, endpoint, string.Empty, _logger, _httpClient); + var d = new UpnpNatDevice(localAddress, deviceInfo, endpoint, string.Empty, _logger, _httpClient); await d.GetServicesList().ConfigureAwait(false); diff --git a/Mono.Nat/Upnp/UpnpNatDevice.cs b/Mono.Nat/Upnp/UpnpNatDevice.cs index f37d6dd0c..fd408ee63 100644 --- a/Mono.Nat/Upnp/UpnpNatDevice.cs +++ b/Mono.Nat/Upnp/UpnpNatDevice.cs @@ -109,8 +109,8 @@ namespace Mono.Nat.Upnp int abortCount = 0; int bytesRead = 0; byte[] buffer = new byte[10240]; - StringBuilder servicesXml = new StringBuilder(); - XmlDocument xmldoc = new XmlDocument(); + var servicesXml = new StringBuilder(); + var xmldoc = new XmlDocument(); using (var s = response.Content) { @@ -144,7 +144,7 @@ namespace Mono.Nat.Upnp } } - XmlNamespaceManager ns = new XmlNamespaceManager(xmldoc.NameTable); + var ns = new XmlNamespaceManager(xmldoc.NameTable); ns.AddNamespace("ns", "urn:schemas-upnp-org:device-1-0"); XmlNodeList nodes = xmldoc.SelectNodes("//*/ns:serviceList", ns); @@ -169,7 +169,7 @@ namespace Mono.Nat.Upnp { if (u.IsAbsoluteUri) { - EndPoint old = hostEndPoint; + var old = hostEndPoint; IPAddress parsedHostIpAddress; if (IPAddress.TryParse(u.Host, out parsedHostIpAddress)) { @@ -228,7 +228,7 @@ namespace Mono.Nat.Upnp public override async Task CreatePortMap(Mapping mapping) { - CreatePortMappingMessage message = new CreatePortMappingMessage(mapping, localAddress, this); + var message = new CreatePortMappingMessage(mapping, localAddress, this); using (await _httpClient.SendAsync(message.Encode(), message.Method).ConfigureAwait(false)) { @@ -237,7 +237,7 @@ namespace Mono.Nat.Upnp public override bool Equals(object obj) { - UpnpNatDevice device = obj as UpnpNatDevice; + var device = obj as UpnpNatDevice; return (device == null) ? false : this.Equals((device)); } diff --git a/OpenSubtitlesHandler/Console/OSHConsole.cs b/OpenSubtitlesHandler/Console/OSHConsole.cs index 348c1ce89..396b28cbc 100644 --- a/OpenSubtitlesHandler/Console/OSHConsole.cs +++ b/OpenSubtitlesHandler/Console/OSHConsole.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -58,7 +58,7 @@ namespace OpenSubtitlesHandler.Console /// <summary> /// Console Debug Args /// </summary> - public class DebugEventArgs : System.EventArgs + public class DebugEventArgs : EventArgs { public DebugCode Code { get; private set; } public string Text { get; private set; } diff --git a/OpenSubtitlesHandler/Interfaces/IMethodResponse.cs b/OpenSubtitlesHandler/Interfaces/IMethodResponse.cs index 9c05e357b..3450beff5 100644 --- a/OpenSubtitlesHandler/Interfaces/IMethodResponse.cs +++ b/OpenSubtitlesHandler/Interfaces/IMethodResponse.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -17,7 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ using System; -using System.ComponentModel; namespace OpenSubtitlesHandler { diff --git a/OpenSubtitlesHandler/Interfaces/MethodResponseAttr.cs b/OpenSubtitlesHandler/Interfaces/MethodResponseAttr.cs index 57f01d4d9..a7e49032d 100644 --- a/OpenSubtitlesHandler/Interfaces/MethodResponseAttr.cs +++ b/OpenSubtitlesHandler/Interfaces/MethodResponseAttr.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/Languages/DetectLanguageResult.cs b/OpenSubtitlesHandler/Languages/DetectLanguageResult.cs index 9cc3cb8d8..3e72dc65c 100644 --- a/OpenSubtitlesHandler/Languages/DetectLanguageResult.cs +++ b/OpenSubtitlesHandler/Languages/DetectLanguageResult.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseAddComment.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseAddComment.cs index 4cfa11cc9..03d0337d4 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseAddComment.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseAddComment.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseAddRequest.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseAddRequest.cs index 8ea1c387c..b996043c2 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseAddRequest.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseAddRequest.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseAutoUpdate.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseAutoUpdate.cs index 42d85ef09..6ee14f1f8 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseAutoUpdate.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseAutoUpdate.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -17,7 +17,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ -using System.ComponentModel; namespace OpenSubtitlesHandler { diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckMovieHash.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckMovieHash.cs index d837f2523..4bb326244 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckMovieHash.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckMovieHash.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckMovieHash2.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckMovieHash2.cs index a74aacd50..72b4c3b15 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckMovieHash2.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckMovieHash2.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckSubHash.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckSubHash.cs index 6c7dc9d2d..04e287ea7 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckSubHash.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseCheckSubHash.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseDetectLanguage.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseDetectLanguage.cs index 20b4d30f3..6bf21d50e 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseDetectLanguage.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseDetectLanguage.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseError.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseError.cs index fa566ee59..7ed807067 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseError.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseError.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseGetAvailableTranslations.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseGetAvailableTranslations.cs index d727a8614..91803f4b3 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseGetAvailableTranslations.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseGetAvailableTranslations.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseGetComments.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseGetComments.cs index 8570ebabb..421e1783b 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseGetComments.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseGetComments.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseGetSubLanguages.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseGetSubLanguages.cs index 688de17d0..905b87c91 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseGetSubLanguages.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseGetSubLanguages.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseGetTranslation.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseGetTranslation.cs index f024bbc32..f008f7711 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseGetTranslation.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseGetTranslation.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseInsertMovie.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseInsertMovie.cs index f5caa351a..1148b5f47 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseInsertMovie.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseInsertMovie.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseInsertMovieHash.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseInsertMovieHash.cs index fe9196de8..74f52837c 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseInsertMovieHash.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseInsertMovieHash.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseLogIn.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseLogIn.cs index 4122433b3..44d294382 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseLogIn.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseLogIn.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseMovieDetails.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseMovieDetails.cs index 511581d71..6126c0053 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseMovieDetails.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseMovieDetails.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseMovieSearch.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseMovieSearch.cs index cd5e4387d..93cd70346 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseMovieSearch.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseMovieSearch.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseNoOperation.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseNoOperation.cs index eeaaa5fdd..02a9993cb 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseNoOperation.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseNoOperation.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseReportWrongImdbMovie.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseReportWrongImdbMovie.cs index 3c19fcf6e..391fec58a 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseReportWrongImdbMovie.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseReportWrongImdbMovie.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseReportWrongMovieHash.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseReportWrongMovieHash.cs index 95d2a99b5..5696e7084 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseReportWrongMovieHash.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseReportWrongMovieHash.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseSearchToMail.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseSearchToMail.cs index 9f195dea0..ea248bc22 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseSearchToMail.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseSearchToMail.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseServerInfo.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseServerInfo.cs index b37862466..973550e9f 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseServerInfo.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseServerInfo.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -18,7 +18,6 @@ */ using System.Collections.Generic; -using System.ComponentModel; namespace OpenSubtitlesHandler { [MethodResponseDescription("ServerInfo method response", diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitleDownload.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitleDownload.cs index e203cbfa6..6a5d57d19 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitleDownload.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitleDownload.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitleSearch.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitleSearch.cs index 29233ee81..0dce20349 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitleSearch.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitleSearch.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitlesVote.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitlesVote.cs index d06d302cd..f02f822f0 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitlesVote.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseSubtitlesVote.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseTryUploadSubtitles.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseTryUploadSubtitles.cs index a08d50226..cb3866a62 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseTryUploadSubtitles.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseTryUploadSubtitles.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/MethodResponses/MethodResponseUploadSubtitles.cs b/OpenSubtitlesHandler/MethodResponses/MethodResponseUploadSubtitles.cs index 8f8540f15..bda950bef 100644 --- a/OpenSubtitlesHandler/MethodResponses/MethodResponseUploadSubtitles.cs +++ b/OpenSubtitlesHandler/MethodResponses/MethodResponseUploadSubtitles.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/Methods Implemeted.txt b/OpenSubtitlesHandler/Methods Implemeted.txt index 5d7ae0d49..e3493d9a2 100644 --- a/OpenSubtitlesHandler/Methods Implemeted.txt +++ b/OpenSubtitlesHandler/Methods Implemeted.txt @@ -1,9 +1,9 @@ -List of available OpenSubtitles.org server XML-RPC methods. +List of available OpenSubtitles.org server XML-RPC methods. ========================================================== Legends: * OK: this method is fully implemented, tested and works fine. * TODO: this method is in the plan to be added. -* NOT TESTED: this method added and expected to work fine but never tested. +* NOT TESTED: this method added and expected to work fine but never tested. * NOT WORK (x): this method added but not work. x= Description of the error. -------------------------------------------- @@ -36,4 +36,4 @@ AutoUpdate | NOT WORK (Returns status: 'parse error. not well form CheckMovieHash | OK CheckMovieHash2 | OK CheckSubHash | OK ---------------------------------------------
\ No newline at end of file +-------------------------------------------- diff --git a/OpenSubtitlesHandler/MovieHasher.cs b/OpenSubtitlesHandler/MovieHasher.cs index 57be9ab28..25d91c1ac 100644 --- a/OpenSubtitlesHandler/MovieHasher.cs +++ b/OpenSubtitlesHandler/MovieHasher.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.IO; using System.Text; @@ -37,7 +37,7 @@ namespace OpenSubtitlesHandler public static string ToHexadecimal(byte[] bytes) { - StringBuilder hexBuilder = new StringBuilder(); + var hexBuilder = new StringBuilder(); for (int i = 0; i < bytes.Length; i++) { hexBuilder.Append(bytes[i].ToString("x2")); diff --git a/OpenSubtitlesHandler/Movies/CheckMovieHash2Data.cs b/OpenSubtitlesHandler/Movies/CheckMovieHash2Data.cs index 4f6de82b1..953590137 100644 --- a/OpenSubtitlesHandler/Movies/CheckMovieHash2Data.cs +++ b/OpenSubtitlesHandler/Movies/CheckMovieHash2Data.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/Movies/CheckMovieHash2Result.cs b/OpenSubtitlesHandler/Movies/CheckMovieHash2Result.cs index b18a7386a..96652fae7 100644 --- a/OpenSubtitlesHandler/Movies/CheckMovieHash2Result.cs +++ b/OpenSubtitlesHandler/Movies/CheckMovieHash2Result.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/Movies/CheckMovieHashResult.cs b/OpenSubtitlesHandler/Movies/CheckMovieHashResult.cs index 9c1aa5b61..0d6c79f80 100644 --- a/OpenSubtitlesHandler/Movies/CheckMovieHashResult.cs +++ b/OpenSubtitlesHandler/Movies/CheckMovieHashResult.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/Movies/InsertMovieHashParameters.cs b/OpenSubtitlesHandler/Movies/InsertMovieHashParameters.cs index 58402324b..d0de7f8c6 100644 --- a/OpenSubtitlesHandler/Movies/InsertMovieHashParameters.cs +++ b/OpenSubtitlesHandler/Movies/InsertMovieHashParameters.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/Movies/MovieSearchResult.cs b/OpenSubtitlesHandler/Movies/MovieSearchResult.cs index aa057cc89..d77116583 100644 --- a/OpenSubtitlesHandler/Movies/MovieSearchResult.cs +++ b/OpenSubtitlesHandler/Movies/MovieSearchResult.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/Movies/SearchToMailMovieParameter.cs b/OpenSubtitlesHandler/Movies/SearchToMailMovieParameter.cs index d5e3fc4c6..a0ecc87f8 100644 --- a/OpenSubtitlesHandler/Movies/SearchToMailMovieParameter.cs +++ b/OpenSubtitlesHandler/Movies/SearchToMailMovieParameter.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -19,7 +19,7 @@ namespace OpenSubtitlesHandler { - public struct SearchToMailMovieParameter + public struct SearchToMailMovieParameter { private string _moviehash; private double _moviesize; diff --git a/OpenSubtitlesHandler/OpenSubtitles.cs b/OpenSubtitlesHandler/OpenSubtitles.cs index 91e1e5104..76f70dc07 100644 --- a/OpenSubtitlesHandler/OpenSubtitles.cs +++ b/OpenSubtitlesHandler/OpenSubtitles.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -17,10 +17,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ using System; -using System.Globalization; -using System.Text; using System.Collections.Generic; +using System.Globalization; using System.IO; +using System.Text; using System.Threading; using System.Threading.Tasks; using OpenSubtitlesHandler.Console; @@ -57,12 +57,12 @@ namespace OpenSubtitlesHandler public static IMethodResponse LogIn(string userName, string password, string language) { // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(userName)); parms.Add(new XmlRpcValueBasic(password)); parms.Add(new XmlRpcValueBasic(language)); parms.Add(new XmlRpcValueBasic(XML_PRC_USERAGENT)); - XmlRpcMethodCall call = new XmlRpcMethodCall("LogIn", parms); + var call = new XmlRpcMethodCall("LogIn", parms); OSHConsole.WriteLine("Sending LogIn request to the server ...", DebugCode.Good); //File.WriteAllText(".\\request.txt", Encoding.UTF8.GetString(XmlRpcGenerator.Generate(call))); @@ -77,8 +77,8 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; - MethodResponseLogIn re = new MethodResponseLogIn("Success", "Log in successful."); + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var re = new MethodResponseLogIn("Success", "Log in successful."); foreach (XmlRpcStructMember MEMBER in mainStruct.Members) { switch (MEMBER.Name) @@ -103,12 +103,12 @@ namespace OpenSubtitlesHandler public static async Task<IMethodResponse> LogInAsync(string userName, string password, string language, CancellationToken cancellationToken) { // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(userName)); parms.Add(new XmlRpcValueBasic(password)); parms.Add(new XmlRpcValueBasic(language)); parms.Add(new XmlRpcValueBasic(XML_PRC_USERAGENT)); - XmlRpcMethodCall call = new XmlRpcMethodCall("LogIn", parms); + var call = new XmlRpcMethodCall("LogIn", parms); OSHConsole.WriteLine("Sending LogIn request to the server ...", DebugCode.Good); //File.WriteAllText(".\\request.txt", Encoding.UTF8.GetString(XmlRpcGenerator.Generate(call))); @@ -126,8 +126,8 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; - MethodResponseLogIn re = new MethodResponseLogIn("Success", "Log in successful."); + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var re = new MethodResponseLogIn("Success", "Log in successful."); foreach (XmlRpcStructMember MEMBER in mainStruct.Members) { switch (MEMBER.Name) @@ -170,9 +170,9 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); - XmlRpcMethodCall call = new XmlRpcMethodCall("LogOut", parms); + var call = new XmlRpcMethodCall("LogOut", parms); OSHConsole.WriteLine("Sending LogOut request to the server ...", DebugCode.Good); // Send the request to the server @@ -185,10 +185,10 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct strct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var strct = (XmlRpcValueStruct)calls[0].Parameters[0]; OSHConsole.WriteLine("STATUS=" + ((XmlRpcValueBasic)strct.Members[0].Data).Data.ToString()); OSHConsole.WriteLine("SECONDS=" + ((XmlRpcValueBasic)strct.Members[1].Data).Data.ToString()); - MethodResponseLogIn re = new MethodResponseLogIn("Success", "Log out successful."); + var re = new MethodResponseLogIn("Success", "Log out successful."); re.Status = ((XmlRpcValueBasic)strct.Members[0].Data).Data.ToString(); re.Seconds = (double)((XmlRpcValueBasic)strct.Members[1].Data).Data; return re; @@ -214,10 +214,10 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); parms.Add(new XmlRpcValueBasic(XML_PRC_USERAGENT, XmlRpcBasicValueType.String)); - XmlRpcMethodCall call = new XmlRpcMethodCall("NoOperation", parms); + var call = new XmlRpcMethodCall("NoOperation", parms); OSHConsole.WriteLine("Sending NoOperation request to the server ...", DebugCode.Good); // Send the request to the server @@ -230,8 +230,8 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - MethodResponseNoOperation R = new MethodResponseNoOperation(); - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var R = new MethodResponseNoOperation(); + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) { @@ -240,7 +240,7 @@ namespace OpenSubtitlesHandler case "status": R.Status = (string)MEMBER.Data.Data; OSHConsole.WriteLine(MEMBER.Name + "= " + MEMBER.Data.Data); break; case "seconds": R.Seconds = (double)MEMBER.Data.Data; OSHConsole.WriteLine(MEMBER.Name + "= " + MEMBER.Data.Data); break; case "download_limits": - XmlRpcValueStruct dlStruct = (XmlRpcValueStruct)MEMBER.Data; + var dlStruct = (XmlRpcValueStruct)MEMBER.Data; foreach (XmlRpcStructMember dlmember in dlStruct.Members) { OSHConsole.WriteLine(" >" + dlmember.Name + "= " + dlmember.Data.Data.ToString()); @@ -292,20 +292,21 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "No subtitle search parameter passed"); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); // Add token param parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); // Add subtitle search parameters. Each one will be like 'array' of structs. - XmlRpcValueArray array = new XmlRpcValueArray(); + var array = new XmlRpcValueArray(); foreach (SubtitleSearchParameters param in parameters) { - XmlRpcValueStruct strct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var strct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); // sublanguageid member - XmlRpcStructMember member = new XmlRpcStructMember("sublanguageid", + var member = new XmlRpcStructMember("sublanguageid", new XmlRpcValueBasic(param.SubLangaugeID, XmlRpcBasicValueType.String)); strct.Members.Add(member); // moviehash member - if (param.MovieHash.Length > 0 && param.MovieByteSize > 0) { + if (param.MovieHash.Length > 0 && param.MovieByteSize > 0) + { member = new XmlRpcStructMember("moviehash", new XmlRpcValueBasic(param.MovieHash, XmlRpcBasicValueType.String)); strct.Members.Add(member); @@ -314,19 +315,21 @@ namespace OpenSubtitlesHandler new XmlRpcValueBasic(param.MovieByteSize, XmlRpcBasicValueType.Int)); strct.Members.Add(member); } - if (param.Query.Length > 0) { + if (param.Query.Length > 0) + { member = new XmlRpcStructMember("query", new XmlRpcValueBasic(param.Query, XmlRpcBasicValueType.String)); strct.Members.Add(member); } - if (param.Episode.Length > 0 && param.Season.Length>0) { - member = new XmlRpcStructMember("season", - new XmlRpcValueBasic(param.Season, XmlRpcBasicValueType.String)); - strct.Members.Add(member); - member = new XmlRpcStructMember("episode", - new XmlRpcValueBasic(param.Episode, XmlRpcBasicValueType.String)); - strct.Members.Add(member); + if (param.Episode.Length > 0 && param.Season.Length > 0) + { + member = new XmlRpcStructMember("season", + new XmlRpcValueBasic(param.Season, XmlRpcBasicValueType.String)); + strct.Members.Add(member); + member = new XmlRpcStructMember("episode", + new XmlRpcValueBasic(param.Episode, XmlRpcBasicValueType.String)); + strct.Members.Add(member); } // imdbid member @@ -342,7 +345,7 @@ namespace OpenSubtitlesHandler // Add the array to the parameters parms.Add(array); // Call ! - XmlRpcMethodCall call = new XmlRpcMethodCall("SearchSubtitles", parms); + var call = new XmlRpcMethodCall("SearchSubtitles", parms); OSHConsole.WriteLine("Sending SearchSubtitles request to the server ...", DebugCode.Good); // Send the request to the server string response = Utilities.GetStreamString(Utilities.SendRequest(XmlRpcGenerator.Generate(call), XML_PRC_USERAGENT)); @@ -359,9 +362,9 @@ namespace OpenSubtitlesHandler //* the first is status //* the second is [array of structs, each one includes subtitle file]. //* the third is [double basic value] represent seconds token by server. - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseSubtitleSearch R = new MethodResponseSubtitleSearch(); + var R = new MethodResponseSubtitleSearch(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) { @@ -381,13 +384,13 @@ namespace OpenSubtitlesHandler { OSHConsole.WriteLine("Search results: "); - XmlRpcValueArray rarray = (XmlRpcValueArray)MEMBER.Data; + var rarray = (XmlRpcValueArray)MEMBER.Data; foreach (IXmlRpcValue subStruct in rarray.Values) { if (subStruct == null) continue; if (!(subStruct is XmlRpcValueStruct)) continue; - SubtitleSearchResult result = new SubtitleSearchResult(); + var result = new SubtitleSearchResult(); foreach (XmlRpcStructMember submember in ((XmlRpcValueStruct)subStruct).Members) { // To avoid errors of arranged info or missing ones, let's do it with switch.. @@ -469,16 +472,16 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "No subtitle search parameter passed"); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); // Add token param parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); // Add subtitle search parameters. Each one will be like 'array' of structs. - XmlRpcValueArray array = new XmlRpcValueArray(); + var array = new XmlRpcValueArray(); foreach (SubtitleSearchParameters param in parameters) { - XmlRpcValueStruct strct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var strct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); // sublanguageid member - XmlRpcStructMember member = new XmlRpcStructMember("sublanguageid", + var member = new XmlRpcStructMember("sublanguageid", new XmlRpcValueBasic(param.SubLangaugeID, XmlRpcBasicValueType.String)); strct.Members.Add(member); // moviehash member @@ -522,7 +525,7 @@ namespace OpenSubtitlesHandler // Add the array to the parameters parms.Add(array); // Call ! - XmlRpcMethodCall call = new XmlRpcMethodCall("SearchSubtitles", parms); + var call = new XmlRpcMethodCall("SearchSubtitles", parms); OSHConsole.WriteLine("Sending SearchSubtitles request to the server ...", DebugCode.Good); // Send the request to the server string response = Utilities.GetStreamString(await Utilities.SendRequestAsync(XmlRpcGenerator.Generate(call), XML_PRC_USERAGENT, cancellationToken).ConfigureAwait(false)); @@ -539,9 +542,9 @@ namespace OpenSubtitlesHandler //* the first is status //* the second is [array of structs, each one includes subtitle file]. //* the third is [double basic value] represent seconds token by server. - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseSubtitleSearch R = new MethodResponseSubtitleSearch(); + var R = new MethodResponseSubtitleSearch(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) { @@ -561,13 +564,13 @@ namespace OpenSubtitlesHandler { OSHConsole.WriteLine("Search results: "); - XmlRpcValueArray rarray = (XmlRpcValueArray)MEMBER.Data; + var rarray = (XmlRpcValueArray)MEMBER.Data; foreach (IXmlRpcValue subStruct in rarray.Values) { if (subStruct == null) continue; if (!(subStruct is XmlRpcValueStruct)) continue; - SubtitleSearchResult result = new SubtitleSearchResult(); + var result = new SubtitleSearchResult(); foreach (XmlRpcStructMember submember in ((XmlRpcValueStruct)subStruct).Members) { // To avoid errors of arranged info or missing ones, let's do it with switch.. @@ -654,11 +657,11 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "No subtitle id passed"); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); // Add token param parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); // Add subtitle search parameters. Each one will be like 'array' of structs. - XmlRpcValueArray array = new XmlRpcValueArray(); + var array = new XmlRpcValueArray(); foreach (int id in subIDS) { array.Values.Add(new XmlRpcValueBasic(id, XmlRpcBasicValueType.Int)); @@ -666,7 +669,7 @@ namespace OpenSubtitlesHandler // Add the array to the parameters parms.Add(array); // Call ! - XmlRpcMethodCall call = new XmlRpcMethodCall("DownloadSubtitles", parms); + var call = new XmlRpcMethodCall("DownloadSubtitles", parms); OSHConsole.WriteLine("Sending DownloadSubtitles request to the server ...", DebugCode.Good); // Send the request to the server string response = Utilities.GetStreamString(Utilities.SendRequest(XmlRpcGenerator.Generate(call), XML_PRC_USERAGENT)); @@ -682,9 +685,9 @@ namespace OpenSubtitlesHandler //* the first is status //* the second is [array of structs, each one includes subtitle file]. //* the third is [double basic value] represent seconds token by server. - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseSubtitleDownload R = new MethodResponseSubtitleDownload(); + var R = new MethodResponseSubtitleDownload(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -704,13 +707,13 @@ namespace OpenSubtitlesHandler if (MEMBER.Data is XmlRpcValueArray) { OSHConsole.WriteLine("Download results:"); - XmlRpcValueArray rarray = (XmlRpcValueArray)MEMBER.Data; + var rarray = (XmlRpcValueArray)MEMBER.Data; foreach (IXmlRpcValue subStruct in rarray.Values) { if (subStruct == null) continue; if (!(subStruct is XmlRpcValueStruct)) continue; - SubtitleDownloadResult result = new SubtitleDownloadResult(); + var result = new SubtitleDownloadResult(); foreach (XmlRpcStructMember submember in ((XmlRpcValueStruct)subStruct).Members) { // To avoid errors of arranged info or missing ones, let's do it with switch.. @@ -761,11 +764,11 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "No subtitle id passed"); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); // Add token param parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); // Add subtitle search parameters. Each one will be like 'array' of structs. - XmlRpcValueArray array = new XmlRpcValueArray(); + var array = new XmlRpcValueArray(); foreach (int id in subIDS) { array.Values.Add(new XmlRpcValueBasic(id, XmlRpcBasicValueType.Int)); @@ -773,7 +776,7 @@ namespace OpenSubtitlesHandler // Add the array to the parameters parms.Add(array); // Call ! - XmlRpcMethodCall call = new XmlRpcMethodCall("DownloadSubtitles", parms); + var call = new XmlRpcMethodCall("DownloadSubtitles", parms); OSHConsole.WriteLine("Sending DownloadSubtitles request to the server ...", DebugCode.Good); // Send the request to the server @@ -792,9 +795,9 @@ namespace OpenSubtitlesHandler //* the first is status //* the second is [array of structs, each one includes subtitle file]. //* the third is [double basic value] represent seconds token by server. - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseSubtitleDownload R = new MethodResponseSubtitleDownload(); + var R = new MethodResponseSubtitleDownload(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -814,13 +817,13 @@ namespace OpenSubtitlesHandler if (MEMBER.Data is XmlRpcValueArray) { OSHConsole.WriteLine("Download results:"); - XmlRpcValueArray rarray = (XmlRpcValueArray)MEMBER.Data; + var rarray = (XmlRpcValueArray)MEMBER.Data; foreach (IXmlRpcValue subStruct in rarray.Values) { if (subStruct == null) continue; if (!(subStruct is XmlRpcValueStruct)) continue; - SubtitleDownloadResult result = new SubtitleDownloadResult(); + var result = new SubtitleDownloadResult(); foreach (XmlRpcStructMember submember in ((XmlRpcValueStruct)subStruct).Members) { // To avoid errors of arranged info or missing ones, let's do it with switch.. @@ -876,15 +879,15 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "No subtitle id passed"); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); // Add token param parms.Add(new XmlRpcValueBasic(TOKEN)); // Add subtitle search parameters. Each one will be like 'array' of structs. - XmlRpcValueArray array = new XmlRpcValueArray(subIDS); + var array = new XmlRpcValueArray(subIDS); // Add the array to the parameters parms.Add(array); // Call ! - XmlRpcMethodCall call = new XmlRpcMethodCall("GetComments", parms); + var call = new XmlRpcMethodCall("GetComments", parms); OSHConsole.WriteLine("Sending GetComments request to the server ...", DebugCode.Good); // Send the request to the server string response = Utilities.GetStreamString(Utilities.SendRequest(XmlRpcGenerator.Generate(call), XML_PRC_USERAGENT)); @@ -896,9 +899,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseGetComments R = new MethodResponseGetComments(); + var R = new MethodResponseGetComments(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -918,13 +921,13 @@ namespace OpenSubtitlesHandler if (MEMBER.Data is XmlRpcValueArray) { OSHConsole.WriteLine("Comments results:"); - XmlRpcValueArray rarray = (XmlRpcValueArray)MEMBER.Data; + var rarray = (XmlRpcValueArray)MEMBER.Data; foreach (IXmlRpcValue commentStruct in rarray.Values) { if (commentStruct == null) continue; if (!(commentStruct is XmlRpcValueStruct)) continue; - GetCommentsResult result = new GetCommentsResult(); + var result = new GetCommentsResult(); foreach (XmlRpcStructMember commentmember in ((XmlRpcValueStruct)commentStruct).Members) { // To avoid errors of arranged info or missing ones, let's do it with switch.. @@ -974,22 +977,22 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); // Array of sub langs - XmlRpcValueArray a = new XmlRpcValueArray(languageIDS); + var a = new XmlRpcValueArray(languageIDS); parms.Add(a); // Array of video parameters a = new XmlRpcValueArray(); foreach (SearchToMailMovieParameter p in movies) { - XmlRpcValueStruct str = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var str = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); str.Members.Add(new XmlRpcStructMember("moviehash", new XmlRpcValueBasic(p.moviehash))); str.Members.Add(new XmlRpcStructMember("moviesize", new XmlRpcValueBasic(p.moviesize))); a.Values.Add(str); } parms.Add(a); - XmlRpcMethodCall call = new XmlRpcMethodCall("SearchToMail", parms); + var call = new XmlRpcMethodCall("SearchToMail", parms); OSHConsole.WriteLine("Sending SearchToMail request to the server ...", DebugCode.Good); // Send the request to the server @@ -1002,9 +1005,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseSearchToMail R = new MethodResponseSearchToMail(); + var R = new MethodResponseSearchToMail(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1041,13 +1044,13 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); // Add token param parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); // Add query param parms.Add(new XmlRpcValueBasic(query, XmlRpcBasicValueType.String)); // Call ! - XmlRpcMethodCall call = new XmlRpcMethodCall("SearchMoviesOnIMDB", parms); + var call = new XmlRpcMethodCall("SearchMoviesOnIMDB", parms); OSHConsole.WriteLine("Sending SearchMoviesOnIMDB request to the server ...", DebugCode.Good); // Send the request to the server string response = Utilities.GetStreamString(Utilities.SendRequest(XmlRpcGenerator.Generate(call), XML_PRC_USERAGENT)); @@ -1059,9 +1062,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseMovieSearch R = new MethodResponseMovieSearch(); + var R = new MethodResponseMovieSearch(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1081,13 +1084,13 @@ namespace OpenSubtitlesHandler if (MEMBER.Data is XmlRpcValueArray) { OSHConsole.WriteLine("Search results:"); - XmlRpcValueArray rarray = (XmlRpcValueArray)MEMBER.Data; + var rarray = (XmlRpcValueArray)MEMBER.Data; foreach (IXmlRpcValue subStruct in rarray.Values) { if (subStruct == null) continue; if (!(subStruct is XmlRpcValueStruct)) continue; - MovieSearchResult result = new MovieSearchResult(); + var result = new MovieSearchResult(); foreach (XmlRpcStructMember submember in ((XmlRpcValueStruct)subStruct).Members) { // To avoid errors of arranged info or missing ones, let's do it with switch.. @@ -1132,13 +1135,13 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); // Add token param parms.Add(new XmlRpcValueBasic(TOKEN)); // Add query param parms.Add(new XmlRpcValueBasic(imdbid)); // Call ! - XmlRpcMethodCall call = new XmlRpcMethodCall("GetIMDBMovieDetails", parms); + var call = new XmlRpcMethodCall("GetIMDBMovieDetails", parms); OSHConsole.WriteLine("Sending GetIMDBMovieDetails request to the server ...", DebugCode.Good); // Send the request to the server string response = Utilities.GetStreamString(Utilities.SendRequest(XmlRpcGenerator.Generate(call), XML_PRC_USERAGENT)); @@ -1150,9 +1153,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseMovieDetails R = new MethodResponseMovieDetails(); + var R = new MethodResponseMovieDetails(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1173,7 +1176,7 @@ namespace OpenSubtitlesHandler if (MEMBER.Data is XmlRpcValueStruct) { OSHConsole.WriteLine("Details result:"); - XmlRpcValueStruct detailsStruct = (XmlRpcValueStruct)MEMBER.Data; + var detailsStruct = (XmlRpcValueStruct)MEMBER.Data; foreach (XmlRpcStructMember dmem in detailsStruct.Members) { switch (dmem.Name) @@ -1190,7 +1193,7 @@ namespace OpenSubtitlesHandler case "cast": // this is another struct with cast members... OSHConsole.WriteLine(">" + dmem.Name + "= "); - XmlRpcValueStruct castStruct = (XmlRpcValueStruct)dmem.Data; + var castStruct = (XmlRpcValueStruct)dmem.Data; foreach (XmlRpcStructMember castMemeber in castStruct.Members) { R.Cast.Add(castMemeber.Data.Data.ToString()); @@ -1200,7 +1203,7 @@ namespace OpenSubtitlesHandler case "directors": OSHConsole.WriteLine(">" + dmem.Name + "= "); // this is another struct with directors members... - XmlRpcValueStruct directorsStruct = (XmlRpcValueStruct)dmem.Data; + var directorsStruct = (XmlRpcValueStruct)dmem.Data; foreach (XmlRpcStructMember directorsMember in directorsStruct.Members) { R.Directors.Add(directorsMember.Data.Data.ToString()); @@ -1210,7 +1213,7 @@ namespace OpenSubtitlesHandler case "writers": OSHConsole.WriteLine(">" + dmem.Name + "= "); // this is another struct with writers members... - XmlRpcValueStruct writersStruct = (XmlRpcValueStruct)dmem.Data; + var writersStruct = (XmlRpcValueStruct)dmem.Data; foreach (XmlRpcStructMember writersMember in writersStruct.Members) { R.Writers.Add(writersMember.Data.Data.ToString()); @@ -1219,7 +1222,7 @@ namespace OpenSubtitlesHandler break; case "awards": // this is an array of genres... - XmlRpcValueArray awardsArray = (XmlRpcValueArray)dmem.Data; + var awardsArray = (XmlRpcValueArray)dmem.Data; foreach (XmlRpcValueBasic award in awardsArray.Values) { R.Awards.Add(award.Data.ToString()); @@ -1229,7 +1232,7 @@ namespace OpenSubtitlesHandler case "genres": OSHConsole.WriteLine(">" + dmem.Name + "= "); // this is an array of genres... - XmlRpcValueArray genresArray = (XmlRpcValueArray)dmem.Data; + var genresArray = (XmlRpcValueArray)dmem.Data; foreach (XmlRpcValueBasic genre in genresArray.Values) { R.Genres.Add(genre.Data.ToString()); @@ -1239,7 +1242,7 @@ namespace OpenSubtitlesHandler case "country": OSHConsole.WriteLine(">" + dmem.Name + "= "); // this is an array of country... - XmlRpcValueArray countryArray = (XmlRpcValueArray)dmem.Data; + var countryArray = (XmlRpcValueArray)dmem.Data; foreach (XmlRpcValueBasic country in countryArray.Values) { R.Country.Add(country.Data.ToString()); @@ -1249,7 +1252,7 @@ namespace OpenSubtitlesHandler case "language": OSHConsole.WriteLine(">" + dmem.Name + "= "); // this is an array of language... - XmlRpcValueArray languageArray = (XmlRpcValueArray)dmem.Data; + var languageArray = (XmlRpcValueArray)dmem.Data; foreach (XmlRpcValueBasic language in languageArray.Values) { R.Language.Add(language.Data.ToString()); @@ -1259,7 +1262,7 @@ namespace OpenSubtitlesHandler case "certification": OSHConsole.WriteLine(">" + dmem.Name + "= "); // this is an array of certification... - XmlRpcValueArray certificationArray = (XmlRpcValueArray)dmem.Data; + var certificationArray = (XmlRpcValueArray)dmem.Data; foreach (XmlRpcValueBasic certification in certificationArray.Values) { R.Certification.Add(certification.Data.ToString()); @@ -1301,16 +1304,16 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); // Add token param parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); // Add movieinfo struct - XmlRpcValueStruct movieinfo = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var movieinfo = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); movieinfo.Members.Add(new XmlRpcStructMember("moviename", new XmlRpcValueBasic(movieName))); movieinfo.Members.Add(new XmlRpcStructMember("movieyear", new XmlRpcValueBasic(movieyear))); parms.Add(movieinfo); // Call ! - XmlRpcMethodCall call = new XmlRpcMethodCall("InsertMovie", parms); + var call = new XmlRpcMethodCall("InsertMovie", parms); OSHConsole.WriteLine("Sending InsertMovie request to the server ...", DebugCode.Good); // Send the request to the server string response = Utilities.GetStreamString(Utilities.SendRequest(XmlRpcGenerator.Generate(call), XML_PRC_USERAGENT)); @@ -1322,9 +1325,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseInsertMovie R = new MethodResponseInsertMovie(); + var R = new MethodResponseInsertMovie(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1370,11 +1373,11 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); foreach (InsertMovieHashParameters p in parameters) { - XmlRpcValueStruct pstruct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var pstruct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); pstruct.Members.Add(new XmlRpcStructMember("moviehash", new XmlRpcValueBasic(p.moviehash))); pstruct.Members.Add(new XmlRpcStructMember("moviebytesize", new XmlRpcValueBasic(p.moviebytesize))); pstruct.Members.Add(new XmlRpcStructMember("imdbid", new XmlRpcValueBasic(p.imdbid))); @@ -1383,7 +1386,7 @@ namespace OpenSubtitlesHandler pstruct.Members.Add(new XmlRpcStructMember("moviefilename", new XmlRpcValueBasic(p.moviefilename))); parms.Add(pstruct); } - XmlRpcMethodCall call = new XmlRpcMethodCall("InsertMovieHash", parms); + var call = new XmlRpcMethodCall("InsertMovieHash", parms); OSHConsole.WriteLine("Sending InsertMovieHash request to the server ...", DebugCode.Good); // Send the request to the server @@ -1396,9 +1399,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseInsertMovieHash R = new MethodResponseInsertMovieHash(); + var R = new MethodResponseInsertMovieHash(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1414,13 +1417,13 @@ namespace OpenSubtitlesHandler OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "data": - XmlRpcValueStruct dataStruct = (XmlRpcValueStruct)MEMBER.Data; + var dataStruct = (XmlRpcValueStruct)MEMBER.Data; foreach (XmlRpcStructMember dataMember in dataStruct.Members) { switch (dataMember.Name) { case "accepted_moviehashes": - XmlRpcValueArray mh = (XmlRpcValueArray)dataMember.Data; + var mh = (XmlRpcValueArray)dataMember.Data; foreach (IXmlRpcValue val in mh.Values) { if (val is XmlRpcValueBasic) @@ -1430,7 +1433,7 @@ namespace OpenSubtitlesHandler } break; case "new_imdbs": - XmlRpcValueArray mi = (XmlRpcValueArray)dataMember.Data; + var mi = (XmlRpcValueArray)dataMember.Data; foreach (IXmlRpcValue val in mi.Values) { if (val is XmlRpcValueBasic) @@ -1469,10 +1472,10 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); parms.Add(new XmlRpcValueBasic(XML_PRC_USERAGENT, XmlRpcBasicValueType.String)); - XmlRpcMethodCall call = new XmlRpcMethodCall("ServerInfo", parms); + var call = new XmlRpcMethodCall("ServerInfo", parms); OSHConsole.WriteLine("Sending ServerInfo request to the server ...", DebugCode.Good); // Send the request to the server @@ -1485,9 +1488,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseServerInfo R = new MethodResponseServerInfo(); + var R = new MethodResponseServerInfo(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1565,7 +1568,7 @@ namespace OpenSubtitlesHandler case "last_update_strings": //R.total_subtitles_languages = (string)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + ":"); - XmlRpcValueStruct luStruct = (XmlRpcValueStruct)MEMBER.Data; + var luStruct = (XmlRpcValueStruct)MEMBER.Data; foreach (XmlRpcStructMember luMemeber in luStruct.Members) { R.last_update_strings.Add(luMemeber.Name + " [" + luMemeber.Data.Data.ToString() + "]"); @@ -1599,10 +1602,10 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); parms.Add(new XmlRpcValueBasic(IDSubMovieFile, XmlRpcBasicValueType.String)); - XmlRpcMethodCall call = new XmlRpcMethodCall("ReportWrongMovieHash", parms); + var call = new XmlRpcMethodCall("ReportWrongMovieHash", parms); OSHConsole.WriteLine("Sending ReportWrongMovieHash request to the server ...", DebugCode.Good); // Send the request to the server @@ -1615,9 +1618,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseReportWrongMovieHash R = new MethodResponseReportWrongMovieHash(); + var R = new MethodResponseReportWrongMovieHash(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1663,14 +1666,14 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); - XmlRpcValueStruct s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); s.Members.Add(new XmlRpcStructMember("moviehash", new XmlRpcValueBasic(moviehash))); s.Members.Add(new XmlRpcStructMember("moviebytesize", new XmlRpcValueBasic(moviebytesize))); s.Members.Add(new XmlRpcStructMember("imdbid", new XmlRpcValueBasic(imdbid))); parms.Add(s); - XmlRpcMethodCall call = new XmlRpcMethodCall("ReportWrongImdbMovie", parms); + var call = new XmlRpcMethodCall("ReportWrongImdbMovie", parms); OSHConsole.WriteLine("Sending ReportWrongImdbMovie request to the server ...", DebugCode.Good); // Send the request to the server @@ -1683,9 +1686,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseAddComment R = new MethodResponseAddComment(); + var R = new MethodResponseAddComment(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1722,13 +1725,13 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); - XmlRpcValueStruct s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); s.Members.Add(new XmlRpcStructMember("idsubtitle", new XmlRpcValueBasic(idsubtitle))); s.Members.Add(new XmlRpcStructMember("score", new XmlRpcValueBasic(score))); parms.Add(s); - XmlRpcMethodCall call = new XmlRpcMethodCall("SubtitlesVote", parms); + var call = new XmlRpcMethodCall("SubtitlesVote", parms); OSHConsole.WriteLine("Sending SubtitlesVote request to the server ...", DebugCode.Good); // Send the request to the server @@ -1741,9 +1744,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseSubtitlesVote R = new MethodResponseSubtitlesVote(); + var R = new MethodResponseSubtitlesVote(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1753,7 +1756,7 @@ namespace OpenSubtitlesHandler case "status": R.Status = (string)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "seconds": R.Seconds = (double)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "data": - XmlRpcValueStruct dataStruct = (XmlRpcValueStruct)MEMBER.Data; + var dataStruct = (XmlRpcValueStruct)MEMBER.Data; foreach (XmlRpcStructMember dataMemeber in dataStruct.Members) { OSHConsole.WriteLine(" >" + dataMemeber.Name + "= " + dataMemeber.Data.Data.ToString()); @@ -1794,14 +1797,14 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); - XmlRpcValueStruct s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); s.Members.Add(new XmlRpcStructMember("idsubtitle", new XmlRpcValueBasic(idsubtitle))); s.Members.Add(new XmlRpcStructMember("comment", new XmlRpcValueBasic(comment))); s.Members.Add(new XmlRpcStructMember("badsubtitle", new XmlRpcValueBasic(badsubtitle))); parms.Add(s); - XmlRpcMethodCall call = new XmlRpcMethodCall("AddComment", parms); + var call = new XmlRpcMethodCall("AddComment", parms); OSHConsole.WriteLine("Sending AddComment request to the server ...", DebugCode.Good); // Send the request to the server @@ -1814,12 +1817,12 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseAddComment R = new MethodResponseAddComment(); + var R = new MethodResponseAddComment(); // To make sure response is not currepted by server, do it in loop - foreach (XmlRpcStructMember MEMBER in mainStruct.Members) + foreach (var MEMBER in mainStruct.Members) { switch (MEMBER.Name) { @@ -1854,14 +1857,14 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); - XmlRpcValueStruct s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); s.Members.Add(new XmlRpcStructMember("sublanguageid", new XmlRpcValueBasic(sublanguageid))); s.Members.Add(new XmlRpcStructMember("idmovieimdb", new XmlRpcValueBasic(idmovieimdb))); s.Members.Add(new XmlRpcStructMember("comment", new XmlRpcValueBasic(comment))); parms.Add(s); - XmlRpcMethodCall call = new XmlRpcMethodCall("AddRequest", parms); + var call = new XmlRpcMethodCall("AddRequest", parms); OSHConsole.WriteLine("Sending AddRequest request to the server ...", DebugCode.Good); // Send the request to the server @@ -1874,9 +1877,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseAddRequest R = new MethodResponseAddRequest(); + var R = new MethodResponseAddRequest(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1886,7 +1889,7 @@ namespace OpenSubtitlesHandler case "status": R.Status = (string)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "seconds": R.Seconds = (double)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "data": - XmlRpcValueStruct dataStruct = (XmlRpcValueStruct)MEMBER.Data; + var dataStruct = (XmlRpcValueStruct)MEMBER.Data; foreach (XmlRpcStructMember dataMemeber in dataStruct.Members) { switch (dataMemeber.Name) @@ -1923,10 +1926,10 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN)); parms.Add(new XmlRpcValueBasic(language)); - XmlRpcMethodCall call = new XmlRpcMethodCall("GetSubLanguages", parms); + var call = new XmlRpcMethodCall("GetSubLanguages", parms); OSHConsole.WriteLine("Sending GetSubLanguages request to the server ...", DebugCode.Good); // Send the request to the server @@ -1939,9 +1942,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseGetSubLanguages R = new MethodResponseGetSubLanguages(); + var R = new MethodResponseGetSubLanguages(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -1951,13 +1954,13 @@ namespace OpenSubtitlesHandler case "status": R.Status = (string)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "seconds": R.Seconds = (double)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "data":// array of structs - XmlRpcValueArray array = (XmlRpcValueArray)MEMBER.Data; + var array = (XmlRpcValueArray)MEMBER.Data; foreach (IXmlRpcValue value in array.Values) { if (value is XmlRpcValueStruct) { - XmlRpcValueStruct valueStruct = (XmlRpcValueStruct)value; - SubtitleLanguage lang = new SubtitleLanguage(); + var valueStruct = (XmlRpcValueStruct)value; + var lang = new SubtitleLanguage(); OSHConsole.WriteLine(">SubLanguage:"); foreach (XmlRpcStructMember langMemeber in valueStruct.Members) { @@ -2006,10 +2009,10 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); // We need to gzip texts then code them with base 24 - List<string> decodedTexts = new List<string>(); + var decodedTexts = new List<string>(); foreach (string text in texts) { // compress @@ -2022,7 +2025,7 @@ namespace OpenSubtitlesHandler decodedTexts.Add(Convert.ToBase64String(data)); } parms.Add(new XmlRpcValueArray(decodedTexts.ToArray())); - XmlRpcMethodCall call = new XmlRpcMethodCall("DetectLanguage", parms); + var call = new XmlRpcMethodCall("DetectLanguage", parms); OSHConsole.WriteLine("Sending DetectLanguage request to the server ...", DebugCode.Good); // Send the request to the server @@ -2035,9 +2038,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseDetectLanguage R = new MethodResponseDetectLanguage(); + var R = new MethodResponseDetectLanguage(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -2050,10 +2053,10 @@ namespace OpenSubtitlesHandler if (MEMBER.Data is XmlRpcValueStruct) { OSHConsole.WriteLine(">Languages:"); - XmlRpcValueStruct dataStruct = (XmlRpcValueStruct)MEMBER.Data; + var dataStruct = (XmlRpcValueStruct)MEMBER.Data; foreach (XmlRpcStructMember dataMember in dataStruct.Members) { - DetectLanguageResult lang = new DetectLanguageResult(); + var lang = new DetectLanguageResult(); lang.InputSample = dataMember.Name; lang.LanguageID = dataMember.Data.Data.ToString(); R.Results.Add(lang); @@ -2092,10 +2095,10 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN)); parms.Add(new XmlRpcValueBasic(program)); - XmlRpcMethodCall call = new XmlRpcMethodCall("GetAvailableTranslations", parms); + var call = new XmlRpcMethodCall("GetAvailableTranslations", parms); OSHConsole.WriteLine("Sending GetAvailableTranslations request to the server ...", DebugCode.Good); // Send the request to the server @@ -2108,9 +2111,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseGetAvailableTranslations R = new MethodResponseGetAvailableTranslations(); + var R = new MethodResponseGetAvailableTranslations(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -2120,14 +2123,14 @@ namespace OpenSubtitlesHandler case "status": R.Status = (string)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "seconds": R.Seconds = (double)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "data": - XmlRpcValueStruct dataStruct = (XmlRpcValueStruct)MEMBER.Data; + var dataStruct = (XmlRpcValueStruct)MEMBER.Data; OSHConsole.WriteLine(">data:"); foreach (XmlRpcStructMember dataMember in dataStruct.Members) { if (dataMember.Data is XmlRpcValueStruct) { - XmlRpcValueStruct resStruct = (XmlRpcValueStruct)dataMember.Data; - GetAvailableTranslationsResult res = new GetAvailableTranslationsResult(); + var resStruct = (XmlRpcValueStruct)dataMember.Data; + var res = new GetAvailableTranslationsResult(); res.LanguageID = dataMember.Name; OSHConsole.WriteLine(" >LanguageID: " + dataMember.Name); foreach (XmlRpcStructMember resMember in resStruct.Members) @@ -2175,12 +2178,12 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN)); parms.Add(new XmlRpcValueBasic(iso639)); parms.Add(new XmlRpcValueBasic(format)); parms.Add(new XmlRpcValueBasic(program)); - XmlRpcMethodCall call = new XmlRpcMethodCall("GetTranslation", parms); + var call = new XmlRpcMethodCall("GetTranslation", parms); OSHConsole.WriteLine("Sending GetTranslation request to the server ...", DebugCode.Good); // Send the request to the server @@ -2194,9 +2197,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseGetTranslation R = new MethodResponseGetTranslation(); + var R = new MethodResponseGetTranslation(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -2233,12 +2236,12 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); }*/ // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); // parms.Add(new XmlRpcValueBasic(TOKEN)); parms.Add(new XmlRpcValueBasic(program)); // parms.Add(new XmlRpcValueBasic(XML_PRC_USERAGENT)); - XmlRpcMethodCall call = new XmlRpcMethodCall("AutoUpdate", parms); + var call = new XmlRpcMethodCall("AutoUpdate", parms); OSHConsole.WriteLine("Sending AutoUpdate request to the server ...", DebugCode.Good); // Send the request to the server string response = Utilities.GetStreamString(Utilities.SendRequest(XmlRpcGenerator.Generate(call), XML_PRC_USERAGENT)); @@ -2250,9 +2253,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseAutoUpdate R = new MethodResponseAutoUpdate(); + var R = new MethodResponseAutoUpdate(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -2293,10 +2296,10 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN)); parms.Add(new XmlRpcValueArray(hashes)); - XmlRpcMethodCall call = new XmlRpcMethodCall("CheckMovieHash", parms); + var call = new XmlRpcMethodCall("CheckMovieHash", parms); OSHConsole.WriteLine("Sending CheckMovieHash request to the server ...", DebugCode.Good); // Send the request to the server @@ -2309,9 +2312,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseCheckMovieHash R = new MethodResponseCheckMovieHash(); + var R = new MethodResponseCheckMovieHash(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -2321,14 +2324,14 @@ namespace OpenSubtitlesHandler case "status": R.Status = (string)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "seconds": R.Seconds = (double)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "data": - XmlRpcValueStruct dataStruct = (XmlRpcValueStruct)MEMBER.Data; + var dataStruct = (XmlRpcValueStruct)MEMBER.Data; OSHConsole.WriteLine(">Data:"); foreach (XmlRpcStructMember dataMember in dataStruct.Members) { - CheckMovieHashResult res = new CheckMovieHashResult(); + var res = new CheckMovieHashResult(); res.Name = dataMember.Name; OSHConsole.WriteLine(" >" + res.Name + ":"); - XmlRpcValueStruct movieStruct = (XmlRpcValueStruct)dataMember.Data; + var movieStruct = (XmlRpcValueStruct)dataMember.Data; foreach (XmlRpcStructMember movieMember in movieStruct.Members) { switch (movieMember.Name) @@ -2370,10 +2373,10 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN)); parms.Add(new XmlRpcValueArray(hashes)); - XmlRpcMethodCall call = new XmlRpcMethodCall("CheckMovieHash2", parms); + var call = new XmlRpcMethodCall("CheckMovieHash2", parms); OSHConsole.WriteLine("Sending CheckMovieHash2 request to the server ...", DebugCode.Good); // Send the request to the server @@ -2386,9 +2389,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseCheckMovieHash2 R = new MethodResponseCheckMovieHash2(); + var R = new MethodResponseCheckMovieHash2(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -2398,18 +2401,18 @@ namespace OpenSubtitlesHandler case "status": R.Status = (string)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "seconds": R.Seconds = (double)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "data": - XmlRpcValueStruct dataStruct = (XmlRpcValueStruct)MEMBER.Data; + var dataStruct = (XmlRpcValueStruct)MEMBER.Data; OSHConsole.WriteLine(">Data:"); foreach (XmlRpcStructMember dataMember in dataStruct.Members) { - CheckMovieHash2Result res = new CheckMovieHash2Result(); + var res = new CheckMovieHash2Result(); res.Name = dataMember.Name; OSHConsole.WriteLine(" >" + res.Name + ":"); - XmlRpcValueArray dataArray = (XmlRpcValueArray)dataMember.Data; + var dataArray = (XmlRpcValueArray)dataMember.Data; foreach (XmlRpcValueStruct movieStruct in dataArray.Values) { - CheckMovieHash2Data d = new CheckMovieHash2Data(); + var d = new CheckMovieHash2Data(); foreach (XmlRpcStructMember movieMember in movieStruct.Members) { switch (movieMember.Name) @@ -2456,10 +2459,10 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN)); parms.Add(new XmlRpcValueArray(hashes)); - XmlRpcMethodCall call = new XmlRpcMethodCall("CheckSubHash", parms); + var call = new XmlRpcMethodCall("CheckSubHash", parms); OSHConsole.WriteLine("Sending CheckSubHash request to the server ...", DebugCode.Good); // Send the request to the server @@ -2472,9 +2475,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseCheckSubHash R = new MethodResponseCheckSubHash(); + var R = new MethodResponseCheckSubHash(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -2485,11 +2488,11 @@ namespace OpenSubtitlesHandler case "seconds": R.Seconds = (double)MEMBER.Data.Data; OSHConsole.WriteLine(">" + MEMBER.Name + "= " + MEMBER.Data.Data.ToString()); break; case "data": OSHConsole.WriteLine(">Data:"); - XmlRpcValueStruct dataStruct = (XmlRpcValueStruct)MEMBER.Data; + var dataStruct = (XmlRpcValueStruct)MEMBER.Data; foreach (XmlRpcStructMember dataMember in dataStruct.Members) { OSHConsole.WriteLine(" >" + dataMember.Name + "= " + dataMember.Data.Data.ToString()); - CheckSubHashResult r = new CheckSubHashResult(); + var r = new CheckSubHashResult(); r.Hash = dataMember.Name; r.SubID = dataMember.Data.Data.ToString(); R.Results.Add(r); @@ -2523,14 +2526,14 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN, XmlRpcBasicValueType.String)); - XmlRpcValueStruct s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); int i = 1; - foreach (TryUploadSubtitlesParameters cd in subs) + foreach (var cd in subs) { - XmlRpcStructMember member = new XmlRpcStructMember("cd" + i, null); - XmlRpcValueStruct memberStruct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var member = new XmlRpcStructMember("cd" + i, null); + var memberStruct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); memberStruct.Members.Add(new XmlRpcStructMember("subhash", new XmlRpcValueBasic(cd.subhash))); memberStruct.Members.Add(new XmlRpcStructMember("subfilename", new XmlRpcValueBasic(cd.subfilename))); memberStruct.Members.Add(new XmlRpcStructMember("moviehash", new XmlRpcValueBasic(cd.moviehash))); @@ -2544,7 +2547,7 @@ namespace OpenSubtitlesHandler i++; } parms.Add(s); - XmlRpcMethodCall call = new XmlRpcMethodCall("TryUploadSubtitles", parms); + var call = new XmlRpcMethodCall("TryUploadSubtitles", parms); OSHConsole.WriteLine("Sending TryUploadSubtitles request to the server ...", DebugCode.Good); // Send the request to the server @@ -2557,9 +2560,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseTryUploadSubtitles R = new MethodResponseTryUploadSubtitles(); + var R = new MethodResponseTryUploadSubtitles(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) @@ -2574,13 +2577,13 @@ namespace OpenSubtitlesHandler { OSHConsole.WriteLine("Results: "); - XmlRpcValueArray rarray = (XmlRpcValueArray)MEMBER.Data; + var rarray = (XmlRpcValueArray)MEMBER.Data; foreach (IXmlRpcValue subStruct in rarray.Values) { if (subStruct == null) continue; if (!(subStruct is XmlRpcValueStruct)) continue; - SubtitleSearchResult result = new SubtitleSearchResult(); + var result = new SubtitleSearchResult(); foreach (XmlRpcStructMember submember in ((XmlRpcValueStruct)subStruct).Members) { // To avoid errors of arranged info or missing ones, let's do it with switch.. @@ -2655,14 +2658,14 @@ namespace OpenSubtitlesHandler return new MethodResponseError("Fail", "Can't do this call, 'token' value not set. Please use Log In method first."); } // Method call .. - List<IXmlRpcValue> parms = new List<IXmlRpcValue>(); + var parms = new List<IXmlRpcValue>(); parms.Add(new XmlRpcValueBasic(TOKEN)); // Main struct - XmlRpcValueStruct s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var s = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); // Base info member as struct - XmlRpcStructMember member = new XmlRpcStructMember("baseinfo", null); - XmlRpcValueStruct memberStruct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var member = new XmlRpcStructMember("baseinfo", null); + var memberStruct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); memberStruct.Members.Add(new XmlRpcStructMember("idmovieimdb", new XmlRpcValueBasic(info.idmovieimdb))); memberStruct.Members.Add(new XmlRpcStructMember("sublanguageid", new XmlRpcValueBasic(info.sublanguageid))); memberStruct.Members.Add(new XmlRpcStructMember("moviereleasename", new XmlRpcValueBasic(info.moviereleasename))); @@ -2678,8 +2681,8 @@ namespace OpenSubtitlesHandler int i = 1; foreach (UploadSubtitleParameters cd in info.CDS) { - XmlRpcStructMember member2 = new XmlRpcStructMember("cd" + i, null); - XmlRpcValueStruct memberStruct2 = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var member2 = new XmlRpcStructMember("cd" + i, null); + var memberStruct2 = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); memberStruct2.Members.Add(new XmlRpcStructMember("subhash", new XmlRpcValueBasic(cd.subhash))); memberStruct2.Members.Add(new XmlRpcStructMember("subfilename", new XmlRpcValueBasic(cd.subfilename))); memberStruct2.Members.Add(new XmlRpcStructMember("moviehash", new XmlRpcValueBasic(cd.moviehash))); @@ -2698,7 +2701,7 @@ namespace OpenSubtitlesHandler parms.Add(s); // add user agent //parms.Add(new XmlRpcValueBasic(XML_PRC_USERAGENT)); - XmlRpcMethodCall call = new XmlRpcMethodCall("UploadSubtitles", parms); + var call = new XmlRpcMethodCall("UploadSubtitles", parms); OSHConsole.WriteLine("Sending UploadSubtitles request to the server ...", DebugCode.Good); // Send the request to the server string response = Utilities.GetStreamString(Utilities.SendRequest(XmlRpcGenerator.Generate(call), XML_PRC_USERAGENT)); @@ -2710,9 +2713,9 @@ namespace OpenSubtitlesHandler { if (calls[0].Parameters.Count > 0) { - XmlRpcValueStruct mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; + var mainStruct = (XmlRpcValueStruct)calls[0].Parameters[0]; // Create the response, we'll need it later - MethodResponseUploadSubtitles R = new MethodResponseUploadSubtitles(); + var R = new MethodResponseUploadSubtitles(); // To make sure response is not currepted by server, do it in loop foreach (XmlRpcStructMember MEMBER in mainStruct.Members) diff --git a/OpenSubtitlesHandler/OpenSubtitlesHandler.csproj b/OpenSubtitlesHandler/OpenSubtitlesHandler.csproj index ba8bcbc23..eabd3e070 100644 --- a/OpenSubtitlesHandler/OpenSubtitlesHandler.csproj +++ b/OpenSubtitlesHandler/OpenSubtitlesHandler.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" /> diff --git a/OpenSubtitlesHandler/OtherTypes/GetAvailableTranslationsResult.cs b/OpenSubtitlesHandler/OtherTypes/GetAvailableTranslationsResult.cs index ae6317b4d..39d048545 100644 --- a/OpenSubtitlesHandler/OtherTypes/GetAvailableTranslationsResult.cs +++ b/OpenSubtitlesHandler/OtherTypes/GetAvailableTranslationsResult.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/OtherTypes/GetCommentsResult.cs b/OpenSubtitlesHandler/OtherTypes/GetCommentsResult.cs index 80ca51725..8f4aa9db4 100644 --- a/OpenSubtitlesHandler/OtherTypes/GetCommentsResult.cs +++ b/OpenSubtitlesHandler/OtherTypes/GetCommentsResult.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/Readme.txt b/OpenSubtitlesHandler/Readme.txt index 42b4fdab3..d5814aec1 100644 --- a/OpenSubtitlesHandler/Readme.txt +++ b/OpenSubtitlesHandler/Readme.txt @@ -1,4 +1,4 @@ -OpenSubtitlesHandler +OpenSubtitlesHandler ==================== This project is for OpenSubtitles.org integration. The point is to allow user to access OpenSubtitles.org database directly within ASM without the need to open internet browser. @@ -12,9 +12,9 @@ mailto:ahdsoftwares@hotmail.com Resources: ========== -* GetHash.dll: this dll is used to compute hash for movie. +* GetHash.dll: this dll is used to compute hash for movie. For more information please visit http://trac.opensubtitles.org/projects/opensubtitles/wiki/HashSourceCodes#C2 XML_RPC: ======== -This class is created to generate XML-RPC requests as XML String. All you need is to call XML_RPC.Generate() method.
\ No newline at end of file +This class is created to generate XML-RPC requests as XML String. All you need is to call XML_RPC.Generate() method. diff --git a/OpenSubtitlesHandler/SubtitleTypes/CheckSubHashResult.cs b/OpenSubtitlesHandler/SubtitleTypes/CheckSubHashResult.cs index 82c95ebd3..a2fbe8773 100644 --- a/OpenSubtitlesHandler/SubtitleTypes/CheckSubHashResult.cs +++ b/OpenSubtitlesHandler/SubtitleTypes/CheckSubHashResult.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/SubtitleTypes/SubtitleDownloadResult.cs b/OpenSubtitlesHandler/SubtitleTypes/SubtitleDownloadResult.cs index bb1c3f98c..e4194994c 100644 --- a/OpenSubtitlesHandler/SubtitleTypes/SubtitleDownloadResult.cs +++ b/OpenSubtitlesHandler/SubtitleTypes/SubtitleDownloadResult.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/SubtitleTypes/SubtitleLanguage.cs b/OpenSubtitlesHandler/SubtitleTypes/SubtitleLanguage.cs index 511c98670..b2dc15413 100644 --- a/OpenSubtitlesHandler/SubtitleTypes/SubtitleLanguage.cs +++ b/OpenSubtitlesHandler/SubtitleTypes/SubtitleLanguage.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/SubtitleTypes/SubtitleSearchParameters.cs b/OpenSubtitlesHandler/SubtitleTypes/SubtitleSearchParameters.cs index 33eeea5cd..5c8f8c01a 100644 --- a/OpenSubtitlesHandler/SubtitleTypes/SubtitleSearchParameters.cs +++ b/OpenSubtitlesHandler/SubtitleTypes/SubtitleSearchParameters.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -42,19 +42,22 @@ namespace OpenSubtitlesHandler private string _query; private string _episode; - public string Episode { + public string Episode + { get { return _episode; } set { _episode = value; } } - public string Season { + public string Season + { get { return _season; } set { _season = value; } } private string _season; - public string Query { + public string Query + { get { return _query; } set { _query = value; } } @@ -74,6 +77,6 @@ namespace OpenSubtitlesHandler /// <summary> /// IMDb ID of movie this video is part of, belongs to. /// </summary> - public string IMDbID { get { return imdbid; } set { imdbid = value; } } + public string IMDbID { get { return imdbid; } set { imdbid = value; } } } } diff --git a/OpenSubtitlesHandler/SubtitleTypes/SubtitleSearchResult.cs b/OpenSubtitlesHandler/SubtitleTypes/SubtitleSearchResult.cs index 34fef0365..a4a8dd3e6 100644 --- a/OpenSubtitlesHandler/SubtitleTypes/SubtitleSearchResult.cs +++ b/OpenSubtitlesHandler/SubtitleTypes/SubtitleSearchResult.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/SubtitleTypes/TryUploadSubtitlesParameters.cs b/OpenSubtitlesHandler/SubtitleTypes/TryUploadSubtitlesParameters.cs index 31549227a..11f3a706c 100644 --- a/OpenSubtitlesHandler/SubtitleTypes/TryUploadSubtitlesParameters.cs +++ b/OpenSubtitlesHandler/SubtitleTypes/TryUploadSubtitlesParameters.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -19,7 +19,7 @@ namespace OpenSubtitlesHandler { - public class TryUploadSubtitlesParameters + public class TryUploadSubtitlesParameters { private string _subhash = ""; private string _subfilename = ""; diff --git a/OpenSubtitlesHandler/SubtitleTypes/UploadSubtitleInfoParameter.cs b/OpenSubtitlesHandler/SubtitleTypes/UploadSubtitleInfoParameter.cs index a815a6bce..133cc1d23 100644 --- a/OpenSubtitlesHandler/SubtitleTypes/UploadSubtitleInfoParameter.cs +++ b/OpenSubtitlesHandler/SubtitleTypes/UploadSubtitleInfoParameter.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/SubtitleTypes/UploadSubtitleParameters.cs b/OpenSubtitlesHandler/SubtitleTypes/UploadSubtitleParameters.cs index 87921ddca..9910dadc5 100644 --- a/OpenSubtitlesHandler/SubtitleTypes/UploadSubtitleParameters.cs +++ b/OpenSubtitlesHandler/SubtitleTypes/UploadSubtitleParameters.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/Utilities.cs b/OpenSubtitlesHandler/Utilities.cs index 0806c6fc0..8ea0c546d 100644 --- a/OpenSubtitlesHandler/Utilities.cs +++ b/OpenSubtitlesHandler/Utilities.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -18,7 +18,6 @@ */ using System; using System.Collections.Generic; -using System.Text; using System.IO; using System.Threading; using System.Threading.Tasks; @@ -57,9 +56,9 @@ namespace OpenSubtitlesHandler /// <returns>Bytes array of decompressed data</returns> public static byte[] Decompress(Stream dataToDecompress) { - using (MemoryStream target = new MemoryStream()) + using (var target = new MemoryStream()) { - using (System.IO.Compression.GZipStream decompressionStream = new System.IO.Compression.GZipStream(dataToDecompress, System.IO.Compression.CompressionMode.Decompress)) + using (var decompressionStream = new System.IO.Compression.GZipStream(dataToDecompress, System.IO.Compression.CompressionMode.Decompress)) { decompressionStream.CopyTo(target); } @@ -117,7 +116,7 @@ namespace OpenSubtitlesHandler using (responseStream) { // Handle response, should be XML text. - List<byte> data = new List<byte>(); + var data = new List<byte>(); while (true) { int r = responseStream.ReadByte(); diff --git a/OpenSubtitlesHandler/XML-RPC/Docs/XML-RPC.txt b/OpenSubtitlesHandler/XML-RPC/Docs/XML-RPC.txt index 8c84444a9..a4de38cde 100644 --- a/OpenSubtitlesHandler/XML-RPC/Docs/XML-RPC.txt +++ b/OpenSubtitlesHandler/XML-RPC/Docs/XML-RPC.txt @@ -1,4 +1,4 @@ -XML-RPC Specification +XML-RPC Specification Tue, Jun 15, 1999; by Dave Winer. @@ -32,16 +32,16 @@ Host: betty.userland.com Content-Type: text/xml Content-length: 181 -<?xml version="1.0"?> - <methodCall> - <methodName>examples.getStateName</methodName> - <params> - <param> +<?xml version="1.0"?> + <methodCall> + <methodName>examples.getStateName</methodName> + <params> + <param> <value> <i4>41</i4> - </value> - </param> - </params> + </value> + </param> + </params> </methodCall> Header requirements @@ -202,11 +202,11 @@ The following questions came up on the UserLand discussion group as XML-RPC was What timezone should be assumed for the dateTime.iso8601 type? UTC? localtime? - Don't assume a timezone. It should be specified by the server in its documentation what assumptions it makes about timezones. + Don't assume a timezone. It should be specified by the server in its documentation what assumptions it makes about timezones. Additions - <base64> type. 1/21/99 DW. + <base64> type. 1/21/99 DW. Updated 6/30/03 DW @@ -222,4 +222,4 @@ This document and translations of it may be copied and furnished to others, and This document may not be modified in any way, such as by removing the copyright notice or references to UserLand or other organizations. Further, while these copyright restrictions apply to the written XML-RPC specification, no claim of ownership is made by UserLand to the protocol it describes. Any party may, for commercial or non-commercial purposes, implement this protocol without royalty or license fee to UserLand. The limited permissions granted herein are perpetual and will not be revoked by UserLand or its successors or assigns. -This document and the information contained herein is provided on an "AS IS" basis and USERLAND DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
\ No newline at end of file +This document and the information contained herein is provided on an "AS IS" basis and USERLAND DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. diff --git a/OpenSubtitlesHandler/XML-RPC/Enums/XmlRpcValueType.cs b/OpenSubtitlesHandler/XML-RPC/Enums/XmlRpcValueType.cs index ef0c203ff..51e0ee98f 100644 --- a/OpenSubtitlesHandler/XML-RPC/Enums/XmlRpcValueType.cs +++ b/OpenSubtitlesHandler/XML-RPC/Enums/XmlRpcValueType.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/XML-RPC/Types/XmlRpcMethodCall.cs b/OpenSubtitlesHandler/XML-RPC/Types/XmlRpcMethodCall.cs index 12bcc52f2..7cc1a164f 100644 --- a/OpenSubtitlesHandler/XML-RPC/Types/XmlRpcMethodCall.cs +++ b/OpenSubtitlesHandler/XML-RPC/Types/XmlRpcMethodCall.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/XML-RPC/Values/IXmlRpcValue.cs b/OpenSubtitlesHandler/XML-RPC/Values/IXmlRpcValue.cs index 359f4002a..c918790cb 100644 --- a/OpenSubtitlesHandler/XML-RPC/Values/IXmlRpcValue.cs +++ b/OpenSubtitlesHandler/XML-RPC/Values/IXmlRpcValue.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcStructMember.cs b/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcStructMember.cs index 224b544aa..2aad7ebff 100644 --- a/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcStructMember.cs +++ b/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcStructMember.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueArray.cs b/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueArray.cs index 8fd8b5ca0..d10a80175 100644 --- a/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueArray.cs +++ b/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueArray.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -82,7 +82,7 @@ namespace XmlRpcHandler base() { values = new List<IXmlRpcValue>(); - foreach (DateTime val in dates) + foreach (var val in dates) { values.Add(new XmlRpcValueBasic(val)); } @@ -91,7 +91,7 @@ namespace XmlRpcHandler base() { values = new List<IXmlRpcValue>(); - foreach (XmlRpcValueBasic val in basicValues) + foreach (var val in basicValues) { values.Add(val); } @@ -100,7 +100,7 @@ namespace XmlRpcHandler base() { values = new List<IXmlRpcValue>(); - foreach (XmlRpcValueStruct val in structs) + foreach (var val in structs) { values.Add(val); } @@ -109,7 +109,7 @@ namespace XmlRpcHandler base() { values = new List<IXmlRpcValue>(); - foreach (XmlRpcValueArray val in arrays) + foreach (var val in arrays) { values.Add(val); } diff --git a/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueBasic.cs b/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueBasic.cs index 015179336..f2811b988 100644 --- a/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueBasic.cs +++ b/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueBasic.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueStruct.cs b/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueStruct.cs index 78b802891..4863e38e8 100644 --- a/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueStruct.cs +++ b/OpenSubtitlesHandler/XML-RPC/Values/XmlRpcValueStruct.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 diff --git a/OpenSubtitlesHandler/XML-RPC/XmlRpcGenerator.cs b/OpenSubtitlesHandler/XML-RPC/XmlRpcGenerator.cs index 1efa3dd5b..a79a278fa 100644 --- a/OpenSubtitlesHandler/XML-RPC/XmlRpcGenerator.cs +++ b/OpenSubtitlesHandler/XML-RPC/XmlRpcGenerator.cs @@ -1,4 +1,4 @@ -/* This file is part of OpenSubtitles Handler +/* This file is part of OpenSubtitles Handler A library that handle OpenSubtitles.org XML-RPC methods. Copyright © Ala Ibrahim Hadid 2013 @@ -17,10 +17,10 @@ along with this program. If not, see <http://www.gnu.org/licenses/>. */ using System; -using System.Globalization; -using System.Text; using System.Collections.Generic; +using System.Globalization; using System.IO; +using System.Text; using System.Xml; using OpenSubtitlesHandler; @@ -50,14 +50,14 @@ namespace XmlRpcHandler if (methods.Length == 0) throw new Exception("No method to write !"); // Create xml - XmlWriterSettings sett = new XmlWriterSettings(); + var sett = new XmlWriterSettings(); sett.Indent = true; sett.Encoding = Encoding.UTF8; using (var ms = new MemoryStream()) { - using (XmlWriter XMLwrt = XmlWriter.Create(ms, sett)) + using (var XMLwrt = XmlWriter.Create(ms, sett)) { // Let's write the methods foreach (XmlRpcMethodCall method in methods) @@ -101,8 +101,8 @@ namespace XmlRpcHandler /// <returns></returns> public static XmlRpcMethodCall[] DecodeMethodResponse(string xmlResponse) { - List<XmlRpcMethodCall> methods = new List<XmlRpcMethodCall>(); - XmlReaderSettings sett = new XmlReaderSettings(); + var methods = new List<XmlRpcMethodCall>(); + var sett = new XmlReaderSettings(); sett.DtdProcessing = DtdProcessing.Ignore; sett.IgnoreWhitespace = true; MemoryStream str; @@ -116,9 +116,9 @@ namespace XmlRpcHandler } using (str) { - using (XmlReader XMLread = XmlReader.Create(str, sett)) + using (var XMLread = XmlReader.Create(str, sett)) { - XmlRpcMethodCall call = new XmlRpcMethodCall("methodResponse"); + var call = new XmlRpcMethodCall("methodResponse"); // Read parameters while (XMLread.Read()) { @@ -169,7 +169,7 @@ namespace XmlRpcHandler // Get date time format if (val.Data != null) { - DateTime time = (DateTime)val.Data; + var time = (DateTime)val.Data; string dt = time.Year + time.Month.ToString("D2") + time.Day.ToString("D2") + "T" + time.Hour.ToString("D2") + ":" + time.Minute.ToString("D2") + ":" + time.Second.ToString("D2"); @@ -283,7 +283,7 @@ namespace XmlRpcHandler int hour = int.Parse(date.Substring(9, 2), UsCulture); int minute = int.Parse(date.Substring(12, 2), UsCulture);//19980717T14:08:55 int sec = int.Parse(date.Substring(15, 2), UsCulture); - DateTime time = new DateTime(year, month, day, hour, minute, sec); + var time = new DateTime(year, month, day, hour, minute, sec); return new XmlRpcValueBasic(time, XmlRpcBasicValueType.dateTime_iso8601); } else if (xmlReader.Name == "base64" && xmlReader.IsStartElement()) @@ -293,13 +293,13 @@ namespace XmlRpcHandler } else if (xmlReader.Name == "struct" && xmlReader.IsStartElement()) { - XmlRpcValueStruct strct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); + var strct = new XmlRpcValueStruct(new List<XmlRpcStructMember>()); // Read members... while (xmlReader.Read()) { if (xmlReader.Name == "member" && xmlReader.IsStartElement()) { - XmlRpcStructMember member = new XmlRpcStructMember("", null); + var member = new XmlRpcStructMember("", null); xmlReader.Read();// read name member.Name = ReadString(xmlReader); @@ -319,7 +319,7 @@ namespace XmlRpcHandler } else if (xmlReader.Name == "array" && xmlReader.IsStartElement()) { - XmlRpcValueArray array = new XmlRpcValueArray(); + var array = new XmlRpcValueArray(); // Read members... while (xmlReader.Read()) { diff --git a/RSSDP/DeviceAvailableEventArgs.cs b/RSSDP/DeviceAvailableEventArgs.cs index edc8687e9..9106e27e5 100644 --- a/RSSDP/DeviceAvailableEventArgs.cs +++ b/RSSDP/DeviceAvailableEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; @@ -7,7 +7,7 @@ using MediaBrowser.Model.Net; namespace Rssdp { /// <summary> - /// Event arguments for the <see cref="Rssdp.Infrastructure.SsdpDeviceLocatorBase.DeviceAvailable"/> event. + /// Event arguments for the <see cref="Infrastructure.SsdpDeviceLocatorBase.DeviceAvailable"/> event. /// </summary> public sealed class DeviceAvailableEventArgs : EventArgs { @@ -18,17 +18,17 @@ namespace Rssdp private readonly DiscoveredSsdpDevice _DiscoveredDevice; private readonly bool _IsNewlyDiscovered; - #endregion + #endregion - #region Constructors + #region Constructors - /// <summary> - /// Full constructor. - /// </summary> - /// <param name="discoveredDevice">A <see cref="DiscoveredSsdpDevice"/> instance representing the available device.</param> - /// <param name="isNewlyDiscovered">A boolean value indicating whether or not this device came from the cache. See <see cref="IsNewlyDiscovered"/> for more detail.</param> - /// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="discoveredDevice"/> parameter is null.</exception> - public DeviceAvailableEventArgs(DiscoveredSsdpDevice discoveredDevice, bool isNewlyDiscovered) + /// <summary> + /// Full constructor. + /// </summary> + /// <param name="discoveredDevice">A <see cref="DiscoveredSsdpDevice"/> instance representing the available device.</param> + /// <param name="isNewlyDiscovered">A boolean value indicating whether or not this device came from the cache. See <see cref="IsNewlyDiscovered"/> for more detail.</param> + /// <exception cref="ArgumentNullException">Thrown if the <paramref name="discoveredDevice"/> parameter is null.</exception> + public DeviceAvailableEventArgs(DiscoveredSsdpDevice discoveredDevice, bool isNewlyDiscovered) { if (discoveredDevice == null) throw new ArgumentNullException(nameof(discoveredDevice)); @@ -48,10 +48,10 @@ namespace Rssdp get { return _IsNewlyDiscovered; } } - /// <summary> - /// A reference to a <see cref="Rssdp.DiscoveredSsdpDevice"/> instance containing the discovered details and allowing access to the full device description. - /// </summary> - public DiscoveredSsdpDevice DiscoveredDevice + /// <summary> + /// A reference to a <see cref="DiscoveredSsdpDevice"/> instance containing the discovered details and allowing access to the full device description. + /// </summary> + public DiscoveredSsdpDevice DiscoveredDevice { get { return _DiscoveredDevice; } } diff --git a/RSSDP/DeviceEventArgs.cs b/RSSDP/DeviceEventArgs.cs index 55b23b68c..3925ba248 100644 --- a/RSSDP/DeviceEventArgs.cs +++ b/RSSDP/DeviceEventArgs.cs @@ -22,7 +22,7 @@ namespace Rssdp /// Constructs a new instance for the specified <see cref="SsdpDevice"/>. /// </summary> /// <param name="device">The <see cref="SsdpDevice"/> associated with the event this argument class is being used for.</param> - /// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> + /// <exception cref="ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> public DeviceEventArgs(SsdpDevice device) { if (device == null) throw new ArgumentNullException(nameof(device)); diff --git a/RSSDP/DeviceUnavailableEventArgs.cs b/RSSDP/DeviceUnavailableEventArgs.cs index ecba7c013..d90ddfb60 100644 --- a/RSSDP/DeviceUnavailableEventArgs.cs +++ b/RSSDP/DeviceUnavailableEventArgs.cs @@ -6,7 +6,7 @@ using System.Threading.Tasks; namespace Rssdp { /// <summary> - /// Event arguments for the <see cref="Rssdp.Infrastructure.SsdpDeviceLocatorBase.DeviceUnavailable"/> event. + /// Event arguments for the <see cref="Infrastructure.SsdpDeviceLocatorBase.DeviceUnavailable"/> event. /// </summary> public sealed class DeviceUnavailableEventArgs : EventArgs { @@ -25,7 +25,7 @@ namespace Rssdp /// </summary> /// <param name="discoveredDevice">A <see cref="DiscoveredSsdpDevice"/> instance representing the device that has become unavailable.</param> /// <param name="expired">A boolean value indicating whether this device is unavailable because it expired, or because it explicitly sent a byebye notification.. See <see cref="Expired"/> for more detail.</param> - /// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="discoveredDevice"/> parameter is null.</exception> + /// <exception cref="ArgumentNullException">Thrown if the <paramref name="discoveredDevice"/> parameter is null.</exception> public DeviceUnavailableEventArgs(DiscoveredSsdpDevice discoveredDevice, bool expired) { if (discoveredDevice == null) throw new ArgumentNullException(nameof(discoveredDevice)); @@ -47,7 +47,7 @@ namespace Rssdp } /// <summary> - /// A reference to a <see cref="Rssdp.DiscoveredSsdpDevice"/> instance containing the discovery details of the removed device. + /// A reference to a <see cref="DiscoveredSsdpDevice"/> instance containing the discovery details of the removed device. /// </summary> public DiscoveredSsdpDevice DiscoveredDevice { diff --git a/RSSDP/DiscoveredSsdpDevice.cs b/RSSDP/DiscoveredSsdpDevice.cs index 0c5701d29..f42e7c674 100644 --- a/RSSDP/DiscoveredSsdpDevice.cs +++ b/RSSDP/DiscoveredSsdpDevice.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Net.Http; using System.Text; @@ -11,7 +11,7 @@ namespace Rssdp /// Represents a discovered device, containing basic information about the device and the location of it's full device description document. Also provides convenience methods for retrieving the device description document. /// </summary> /// <seealso cref="SsdpDevice"/> - /// <seealso cref="Rssdp.Infrastructure.ISsdpDeviceLocator"/> + /// <seealso cref="Infrastructure.ISsdpDeviceLocator"/> public sealed class DiscoveredSsdpDevice { diff --git a/RSSDP/DisposableManagedObjectBase.cs b/RSSDP/DisposableManagedObjectBase.cs index c1349dd5c..0f656fb46 100644 --- a/RSSDP/DisposableManagedObjectBase.cs +++ b/RSSDP/DisposableManagedObjectBase.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; @@ -20,10 +20,10 @@ namespace Rssdp.Infrastructure protected abstract void Dispose(bool disposing); /// <summary> - /// Throws and <see cref="System.ObjectDisposedException"/> if the <see cref="IsDisposed"/> property is true. + /// Throws and <see cref="ObjectDisposedException"/> if the <see cref="IsDisposed"/> property is true. /// </summary> /// <seealso cref="IsDisposed"/> - /// <exception cref="System.ObjectDisposedException">Thrown if the <see cref="IsDisposed"/> property is true.</exception> + /// <exception cref="ObjectDisposedException">Thrown if the <see cref="IsDisposed"/> property is true.</exception> /// <seealso cref="Dispose()"/> protected virtual void ThrowIfDisposed() { diff --git a/RSSDP/HttpParserBase.cs b/RSSDP/HttpParserBase.cs index 000d6db26..18712470d 100644 --- a/RSSDP/HttpParserBase.cs +++ b/RSSDP/HttpParserBase.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; @@ -26,19 +26,19 @@ namespace Rssdp.Infrastructure private static byte[] EmptyByteArray = new byte[]{}; /// <summary> - /// Parses the <paramref name="data"/> provided into either a <see cref="System.Net.Http.HttpRequestMessage"/> or <see cref="System.Net.Http.HttpResponseMessage"/> object. + /// Parses the <paramref name="data"/> provided into either a <see cref="HttpRequestMessage"/> or <see cref="HttpResponseMessage"/> object. /// </summary> /// <param name="data">A string containing the HTTP message to parse.</param> - /// <returns>Either a <see cref="System.Net.Http.HttpRequestMessage"/> or <see cref="System.Net.Http.HttpResponseMessage"/> object containing the parsed data.</returns> + /// <returns>Either a <see cref="HttpRequestMessage"/> or <see cref="HttpResponseMessage"/> object containing the parsed data.</returns> public abstract T Parse(string data); /// <summary> - /// Parses a string containing either an HTTP request or response into a <see cref="System.Net.Http.HttpRequestMessage"/> or <see cref="System.Net.Http.HttpResponseMessage"/> object. + /// Parses a string containing either an HTTP request or response into a <see cref="HttpRequestMessage"/> or <see cref="HttpResponseMessage"/> object. /// </summary> - /// <param name="message">A <see cref="System.Net.Http.HttpRequestMessage"/> or <see cref="System.Net.Http.HttpResponseMessage"/> object representing the parsed message.</param> + /// <param name="message">A <see cref="HttpRequestMessage"/> or <see cref="HttpResponseMessage"/> object representing the parsed message.</param> /// <param name="headers">A reference to the <see cref="System.Net.Http.Headers.HttpHeaders"/> collection for the <paramref name="message"/> object.</param> /// <param name="data">A string containing the data to be parsed.</param> - /// <returns>An <see cref="System.Net.Http.HttpContent"/> object containing the content of the parsed message.</returns> + /// <returns>An <see cref="HttpContent"/> object containing the content of the parsed message.</returns> [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2202:Do not dispose objects multiple times", Justification = "Honestly, it's fine. MemoryStream doesn't mind.")] protected virtual void Parse(T message, System.Net.Http.Headers.HttpHeaders headers, string data) { @@ -61,7 +61,7 @@ namespace Rssdp.Infrastructure /// Used to parse the first line of an HTTP request or response and assign the values to the appropriate properties on the <paramref name="message"/>. /// </summary> /// <param name="data">The first line of the HTTP message to be parsed.</param> - /// <param name="message">Either a <see cref="System.Net.Http.HttpResponseMessage"/> or <see cref="System.Net.Http.HttpRequestMessage"/> to assign the parsed values to.</param> + /// <param name="message">Either a <see cref="HttpResponseMessage"/> or <see cref="HttpRequestMessage"/> to assign the parsed values to.</param> protected abstract void ParseStatusLine(string data, T message); /// <summary> diff --git a/RSSDP/HttpRequestParser.cs b/RSSDP/HttpRequestParser.cs index 1af7f0d51..d4505b8ad 100644 --- a/RSSDP/HttpRequestParser.cs +++ b/RSSDP/HttpRequestParser.cs @@ -9,7 +9,7 @@ using System.Threading.Tasks; namespace Rssdp.Infrastructure { /// <summary> - /// Parses a string into a <see cref="System.Net.Http.HttpRequestMessage"/> or throws an exception. + /// Parses a string into a <see cref="HttpRequestMessage"/> or throws an exception. /// </summary> public sealed class HttpRequestParser : HttpParserBase<HttpRequestMessage> { @@ -26,17 +26,17 @@ namespace Rssdp.Infrastructure #region Public Methods /// <summary> - /// Parses the specified data into a <see cref="System.Net.Http.HttpRequestMessage"/> instance. + /// Parses the specified data into a <see cref="HttpRequestMessage"/> instance. /// </summary> /// <param name="data">A string containing the data to parse.</param> - /// <returns>A <see cref="System.Net.Http.HttpRequestMessage"/> instance containing the parsed data.</returns> - public override System.Net.Http.HttpRequestMessage Parse(string data) + /// <returns>A <see cref="HttpRequestMessage"/> instance containing the parsed data.</returns> + public override HttpRequestMessage Parse(string data) { - System.Net.Http.HttpRequestMessage retVal = null; + HttpRequestMessage retVal = null; try { - retVal = new System.Net.Http.HttpRequestMessage(); + retVal = new HttpRequestMessage(); Parse(retVal, retVal.Headers, data); @@ -57,7 +57,7 @@ namespace Rssdp.Infrastructure /// Used to parse the first line of an HTTP request or response and assign the values to the appropriate properties on the <paramref name="message"/>. /// </summary> /// <param name="data">The first line of the HTTP message to be parsed.</param> - /// <param name="message">Either a <see cref="System.Net.Http.HttpResponseMessage"/> or <see cref="System.Net.Http.HttpRequestMessage"/> to assign the parsed values to.</param> + /// <param name="message">Either a <see cref="HttpResponseMessage"/> or <see cref="HttpRequestMessage"/> to assign the parsed values to.</param> protected override void ParseStatusLine(string data, HttpRequestMessage message) { if (data == null) throw new ArgumentNullException(nameof(data)); diff --git a/RSSDP/HttpResponseParser.cs b/RSSDP/HttpResponseParser.cs index d864a8bb7..a77c898ff 100644 --- a/RSSDP/HttpResponseParser.cs +++ b/RSSDP/HttpResponseParser.cs @@ -9,9 +9,9 @@ using System.Threading.Tasks; namespace Rssdp.Infrastructure { /// <summary> - /// Parses a string into a <see cref="System.Net.Http.HttpResponseMessage"/> or throws an exception. + /// Parses a string into a <see cref="HttpResponseMessage"/> or throws an exception. /// </summary> - public sealed class HttpResponseParser : HttpParserBase<System.Net.Http.HttpResponseMessage> + public sealed class HttpResponseParser : HttpParserBase<HttpResponseMessage> { #region Fields & Constants @@ -26,16 +26,16 @@ namespace Rssdp.Infrastructure #region Public Methods /// <summary> - /// Parses the specified data into a <see cref="System.Net.Http.HttpResponseMessage"/> instance. + /// Parses the specified data into a <see cref="HttpResponseMessage"/> instance. /// </summary> /// <param name="data">A string containing the data to parse.</param> - /// <returns>A <see cref="System.Net.Http.HttpResponseMessage"/> instance containing the parsed data.</returns> + /// <returns>A <see cref="HttpResponseMessage"/> instance containing the parsed data.</returns> public override HttpResponseMessage Parse(string data) { - System.Net.Http.HttpResponseMessage retVal = null; + HttpResponseMessage retVal = null; try { - retVal = new System.Net.Http.HttpResponseMessage(); + retVal = new HttpResponseMessage(); Parse(retVal, retVal.Headers, data); @@ -68,7 +68,7 @@ namespace Rssdp.Infrastructure /// Used to parse the first line of an HTTP request or response and assign the values to the appropriate properties on the <paramref name="message"/>. /// </summary> /// <param name="data">The first line of the HTTP message to be parsed.</param> - /// <param name="message">Either a <see cref="System.Net.Http.HttpResponseMessage"/> or <see cref="System.Net.Http.HttpRequestMessage"/> to assign the parsed values to.</param> + /// <param name="message">Either a <see cref="HttpResponseMessage"/> or <see cref="HttpRequestMessage"/> to assign the parsed values to.</param> protected override void ParseStatusLine(string data, HttpResponseMessage message) { if (data == null) throw new ArgumentNullException(nameof(data)); diff --git a/RSSDP/ISsdpCommunicationsServer.cs b/RSSDP/ISsdpCommunicationsServer.cs index b6329c1b3..ef75f997f 100644 --- a/RSSDP/ISsdpCommunicationsServer.cs +++ b/RSSDP/ISsdpCommunicationsServer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.Net; diff --git a/RSSDP/ISsdpDeviceLocator.cs b/RSSDP/ISsdpDeviceLocator.cs index 32235c095..8f0d39e75 100644 --- a/RSSDP/ISsdpDeviceLocator.cs +++ b/RSSDP/ISsdpDeviceLocator.cs @@ -1,4 +1,4 @@ -using System; +using System; namespace Rssdp.Infrastructure { @@ -128,7 +128,7 @@ namespace Rssdp.Infrastructure /// <remarks> /// <para>Does nothing if this instance is not already listening for notifications.</para> /// </remarks> - /// <exception cref="System.ObjectDisposedException">Throw if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true.</exception> + /// <exception cref="ObjectDisposedException">Throw if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true.</exception> /// <seealso cref="StartListeningForNotifications"/> /// <seealso cref="DeviceAvailable"/> /// <seealso cref="DeviceUnavailable"/> diff --git a/RSSDP/ISsdpDevicePublisher.cs b/RSSDP/ISsdpDevicePublisher.cs index b0924701f..7e914c109 100644 --- a/RSSDP/ISsdpDevicePublisher.cs +++ b/RSSDP/ISsdpDevicePublisher.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Threading.Tasks; namespace Rssdp.Infrastructure @@ -17,14 +17,14 @@ namespace Rssdp.Infrastructure /// Adds a device (and it's children) to the list of devices being published by this server, making them discoverable to SSDP clients. /// </summary> /// <param name="device">The <see cref="SsdpRootDevice"/> instance to add.</param> - /// <returns>An awaitable <see cref="System.Threading.Tasks.Task"/>.</returns> + /// <returns>An awaitable <see cref="Task"/>.</returns> void AddDevice(SsdpRootDevice device); /// <summary> /// Removes a device (and it's children) from the list of devices being published by this server, making them undiscoverable. /// </summary> /// <param name="device">The <see cref="SsdpRootDevice"/> instance to add.</param> - /// <returns>An awaitable <see cref="System.Threading.Tasks.Task"/>.</returns> + /// <returns>An awaitable <see cref="Task"/>.</returns> Task RemoveDevice(SsdpRootDevice device); /// <summary> diff --git a/RSSDP/RSSDP.csproj b/RSSDP/RSSDP.csproj index 0737dc213..f06d4687b 100644 --- a/RSSDP/RSSDP.csproj +++ b/RSSDP/RSSDP.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" /> diff --git a/RSSDP/RequestReceivedEventArgs.cs b/RSSDP/RequestReceivedEventArgs.cs index 6a5b0f086..fd3cd9e3a 100644 --- a/RSSDP/RequestReceivedEventArgs.cs +++ b/RSSDP/RequestReceivedEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Net; using System.Net.Http; diff --git a/RSSDP/ResponseReceivedEventArgs.cs b/RSSDP/ResponseReceivedEventArgs.cs index 5ec5376df..5ed9664ed 100644 --- a/RSSDP/ResponseReceivedEventArgs.cs +++ b/RSSDP/ResponseReceivedEventArgs.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Net; using System.Net.Http; diff --git a/RSSDP/SsdpCommunicationsServer.cs b/RSSDP/SsdpCommunicationsServer.cs index 603ba51ef..04e76ef59 100644 --- a/RSSDP/SsdpCommunicationsServer.cs +++ b/RSSDP/SsdpCommunicationsServer.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Linq; using System.Net.Http; @@ -73,7 +73,7 @@ namespace Rssdp.Infrastructure /// <summary> /// Minimum constructor. /// </summary> - /// <exception cref="System.ArgumentNullException">The <paramref name="socketFactory"/> argument is null.</exception> + /// <exception cref="ArgumentNullException">The <paramref name="socketFactory"/> argument is null.</exception> public SsdpCommunicationsServer(ISocketFactory socketFactory, INetworkManager networkManager, ILogger logger, bool enableMultiSocketBinding) : this(socketFactory, 0, SsdpConstants.SsdpDefaultMulticastTimeToLive, networkManager, logger, enableMultiSocketBinding) { @@ -82,8 +82,8 @@ namespace Rssdp.Infrastructure /// <summary> /// Full constructor. /// </summary> - /// <exception cref="System.ArgumentNullException">The <paramref name="socketFactory"/> argument is null.</exception> - /// <exception cref="System.ArgumentOutOfRangeException">The <paramref name="multicastTimeToLive"/> argument is less than or equal to zero.</exception> + /// <exception cref="ArgumentNullException">The <paramref name="socketFactory"/> argument is null.</exception> + /// <exception cref="ArgumentOutOfRangeException">The <paramref name="multicastTimeToLive"/> argument is less than or equal to zero.</exception> public SsdpCommunicationsServer(ISocketFactory socketFactory, int localPort, int multicastTimeToLive, INetworkManager networkManager, ILogger logger, bool enableMultiSocketBinding) { if (socketFactory == null) throw new ArgumentNullException(nameof(socketFactory)); @@ -111,7 +111,7 @@ namespace Rssdp.Infrastructure /// <summary> /// Causes the server to begin listening for multicast messages, being SSDP search requests and notifications. /// </summary> - /// <exception cref="System.ObjectDisposedException">Thrown if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true (because <seealso cref="DisposableManagedObjectBase.Dispose()" /> has been called previously).</exception> + /// <exception cref="ObjectDisposedException">Thrown if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true (because <seealso cref="DisposableManagedObjectBase.Dispose()" /> has been called previously).</exception> public void BeginListeningForBroadcasts() { ThrowIfDisposed(); @@ -142,7 +142,7 @@ namespace Rssdp.Infrastructure /// <summary> /// Causes the server to stop listening for multicast messages, being SSDP search requests and notifications. /// </summary> - /// <exception cref="System.ObjectDisposedException">Thrown if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true (because <seealso cref="DisposableManagedObjectBase.Dispose()" /> has been called previously).</exception> + /// <exception cref="ObjectDisposedException">Thrown if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true (because <seealso cref="DisposableManagedObjectBase.Dispose()" /> has been called previously).</exception> public void StopListeningForBroadcasts() { lock (_BroadcastListenSocketSynchroniser) @@ -273,7 +273,7 @@ namespace Rssdp.Infrastructure /// <summary> /// Stops listening for search responses on the local, unicast socket. /// </summary> - /// <exception cref="System.ObjectDisposedException">Thrown if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true (because <seealso cref="DisposableManagedObjectBase.Dispose()" /> has been called previously).</exception> + /// <exception cref="ObjectDisposedException">Thrown if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true (because <seealso cref="DisposableManagedObjectBase.Dispose()" /> has been called previously).</exception> public void StopListeningForResponses() { lock (_SendSocketSynchroniser) diff --git a/RSSDP/SsdpConstants.cs b/RSSDP/SsdpConstants.cs index ab0ecb0f7..8372d1cb3 100644 --- a/RSSDP/SsdpConstants.cs +++ b/RSSDP/SsdpConstants.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Text; using System.Threading.Tasks; diff --git a/RSSDP/SsdpDevice.cs b/RSSDP/SsdpDevice.cs index 4508e4f34..b4c4a88fd 100644 --- a/RSSDP/SsdpDevice.cs +++ b/RSSDP/SsdpDevice.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Text; @@ -276,8 +276,8 @@ namespace Rssdp /// <para>If the device is already a member of the <see cref="Devices"/> collection, this method does nothing.</para> /// <para>Also sets the <see cref="SsdpEmbeddedDevice.RootDevice"/> property of the added device and all descendant devices to the relevant <see cref="SsdpRootDevice"/> instance.</para> /// </remarks> - /// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> - /// <exception cref="System.InvalidOperationException">Thrown if the <paramref name="device"/> is already associated with a different <see cref="SsdpRootDevice"/> instance than used in this tree. Can occur if you try to add the same device instance to more than one tree. Also thrown if you try to add a device to itself.</exception> + /// <exception cref="ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> + /// <exception cref="InvalidOperationException">Thrown if the <paramref name="device"/> is already associated with a different <see cref="SsdpRootDevice"/> instance than used in this tree. Can occur if you try to add the same device instance to more than one tree. Also thrown if you try to add a device to itself.</exception> /// <seealso cref="DeviceAdded"/> public void AddDevice(SsdpEmbeddedDevice device) { @@ -305,7 +305,7 @@ namespace Rssdp /// <para>If the device is not a member of the <see cref="Devices"/> collection, this method does nothing.</para> /// <para>Also sets the <see cref="SsdpEmbeddedDevice.RootDevice"/> property to null for the removed device and all descendant devices.</para> /// </remarks> - /// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> + /// <exception cref="ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> /// <seealso cref="DeviceRemoved"/> public void RemoveDevice(SsdpEmbeddedDevice device) { diff --git a/RSSDP/SsdpDeviceLocator.cs b/RSSDP/SsdpDeviceLocator.cs index 0a092e6b0..1348cce8d 100644 --- a/RSSDP/SsdpDeviceLocator.cs +++ b/RSSDP/SsdpDeviceLocator.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.IO; @@ -185,7 +185,7 @@ namespace Rssdp.Infrastructure /// <seealso cref="StopListeningForNotifications"/> /// <seealso cref="DeviceAvailable"/> /// <seealso cref="DeviceUnavailable"/> - /// <exception cref="System.ObjectDisposedException">Throw if the <see cref="DisposableManagedObjectBase.IsDisposed"/> ty is true.</exception> + /// <exception cref="ObjectDisposedException">Throw if the <see cref="DisposableManagedObjectBase.IsDisposed"/> ty is true.</exception> public void StartListeningForNotifications() { ThrowIfDisposed(); @@ -204,7 +204,7 @@ namespace Rssdp.Infrastructure /// <seealso cref="StartListeningForNotifications"/> /// <seealso cref="DeviceAvailable"/> /// <seealso cref="DeviceUnavailable"/> - /// <exception cref="System.ObjectDisposedException">Throw if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true.</exception> + /// <exception cref="ObjectDisposedException">Throw if the <see cref="DisposableManagedObjectBase.IsDisposed"/> property is true.</exception> public void StopListeningForNotifications() { ThrowIfDisposed(); diff --git a/RSSDP/SsdpDevicePublisher.cs b/RSSDP/SsdpDevicePublisher.cs index a44dd0c0c..8a73e6a2d 100644 --- a/RSSDP/SsdpDevicePublisher.cs +++ b/RSSDP/SsdpDevicePublisher.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; @@ -76,8 +76,8 @@ namespace Rssdp.Infrastructure /// <para>This method ignores duplicate device adds (if the same device instance is added multiple times, the second and subsequent add calls do nothing).</para> /// </remarks> /// <param name="device">The <see cref="SsdpDevice"/> instance to add.</param> - /// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> - /// <exception cref="System.InvalidOperationException">Thrown if the <paramref name="device"/> contains property values that are not acceptable to the UPnP 1.0 specification.</exception> + /// <exception cref="ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> + /// <exception cref="InvalidOperationException">Thrown if the <paramref name="device"/> contains property values that are not acceptable to the UPnP 1.0 specification.</exception> [System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Performance", "CA1804:RemoveUnusedLocals", MessageId = "t", Justification = "Capture task to local variable supresses compiler warning, but task is not really needed.")] public void AddDevice(SsdpRootDevice device) { @@ -85,7 +85,7 @@ namespace Rssdp.Infrastructure ThrowIfDisposed(); - TimeSpan minCacheTime = TimeSpan.Zero; + var minCacheTime = TimeSpan.Zero; bool wasAdded = false; lock (_Devices) { @@ -113,13 +113,13 @@ namespace Rssdp.Infrastructure /// <para>This method does nothing if the device was not found in the collection.</para> /// </remarks> /// <param name="device">The <see cref="SsdpDevice"/> instance to add.</param> - /// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> + /// <exception cref="ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception> public async Task RemoveDevice(SsdpRootDevice device) { if (device == null) throw new ArgumentNullException(nameof(device)); bool wasRemoved = false; - TimeSpan minCacheTime = TimeSpan.Zero; + var minCacheTime = TimeSpan.Zero; lock (_Devices) { if (_Devices.Contains(device)) diff --git a/RSSDP/SsdpEmbeddedDevice.cs b/RSSDP/SsdpEmbeddedDevice.cs index 0e02ce33c..6f05518a9 100644 --- a/RSSDP/SsdpEmbeddedDevice.cs +++ b/RSSDP/SsdpEmbeddedDevice.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Text; diff --git a/RSSDP/SsdpRootDevice.cs b/RSSDP/SsdpRootDevice.cs index 20644535a..a2b0f60f5 100644 --- a/RSSDP/SsdpRootDevice.cs +++ b/RSSDP/SsdpRootDevice.cs @@ -1,4 +1,4 @@ -using System; +using System; using System.Collections.Generic; using System.Text; using System.Xml; diff --git a/SocketHttpListener/ByteOrder.cs b/SocketHttpListener/ByteOrder.cs index f5db52fd7..c04150c74 100644 --- a/SocketHttpListener/ByteOrder.cs +++ b/SocketHttpListener/ByteOrder.cs @@ -1,17 +1,17 @@ namespace SocketHttpListener { - /// <summary> - /// Contains the values that indicate whether the byte order is a Little-endian or Big-endian. - /// </summary> - public enum ByteOrder : byte - { /// <summary> - /// Indicates a Little-endian. + /// Contains the values that indicate whether the byte order is a Little-endian or Big-endian. /// </summary> - Little, - /// <summary> - /// Indicates a Big-endian. - /// </summary> - Big - } + public enum ByteOrder : byte + { + /// <summary> + /// Indicates a Little-endian. + /// </summary> + Little, + /// <summary> + /// Indicates a Big-endian. + /// </summary> + Big + } } diff --git a/SocketHttpListener/CloseEventArgs.cs b/SocketHttpListener/CloseEventArgs.cs index ff30126bc..c6460fd23 100644 --- a/SocketHttpListener/CloseEventArgs.cs +++ b/SocketHttpListener/CloseEventArgs.cs @@ -3,88 +3,77 @@ using System.Text; namespace SocketHttpListener { - /// <summary> - /// Contains the event data associated with a <see cref="WebSocket.OnClose"/> event. - /// </summary> - /// <remarks> - /// A <see cref="WebSocket.OnClose"/> event occurs when the WebSocket connection has been closed. - /// If you would like to get the reason for the close, you should access the <see cref="Code"/> or - /// <see cref="Reason"/> property. - /// </remarks> - public class CloseEventArgs : EventArgs - { - #region Private Fields + /// <summary> + /// Contains the event data associated with a <see cref="WebSocket.OnClose"/> event. + /// </summary> + /// <remarks> + /// A <see cref="WebSocket.OnClose"/> event occurs when the WebSocket connection has been closed. + /// If you would like to get the reason for the close, you should access the <see cref="Code"/> or + /// <see cref="Reason"/> property. + /// </remarks> + public class CloseEventArgs : EventArgs + { + #region Private Fields - private bool _clean; - private ushort _code; - private string _reason; + private bool _clean; + private ushort _code; + private string _reason; - #endregion + #endregion - #region Internal Constructors + #region Internal Constructors - internal CloseEventArgs (PayloadData payload) - { - var data = payload.ApplicationData; - var len = data.Length; - _code = len > 1 - ? data.SubArray (0, 2).ToUInt16 (ByteOrder.Big) - : (ushort) CloseStatusCode.NoStatusCode; + internal CloseEventArgs(PayloadData payload) + { + var data = payload.ApplicationData; + var len = data.Length; + _code = len > 1 + ? data.SubArray(0, 2).ToUInt16(ByteOrder.Big) + : (ushort)CloseStatusCode.NoStatusCode; - _reason = len > 2 - ? GetUtf8String(data.SubArray (2, len - 2)) - : string.Empty; - } + _reason = len > 2 + ? GetUtf8String(data.SubArray(2, len - 2)) + : string.Empty; + } - private static string GetUtf8String(byte[] bytes) - { - return Encoding.UTF8.GetString(bytes, 0, bytes.Length); - } + private static string GetUtf8String(byte[] bytes) + { + return Encoding.UTF8.GetString(bytes, 0, bytes.Length); + } - #endregion + #endregion - #region Public Properties + #region Public Properties - /// <summary> - /// Gets the status code for the close. - /// </summary> - /// <value> - /// A <see cref="ushort"/> that represents the status code for the close if any. - /// </value> - public ushort Code { - get { - return _code; - } - } + /// <summary> + /// Gets the status code for the close. + /// </summary> + /// <value> + /// A <see cref="ushort"/> that represents the status code for the close if any. + /// </value> + public ushort Code => _code; - /// <summary> - /// Gets the reason for the close. - /// </summary> - /// <value> - /// A <see cref="string"/> that represents the reason for the close if any. - /// </value> - public string Reason { - get { - return _reason; - } - } + /// <summary> + /// Gets the reason for the close. + /// </summary> + /// <value> + /// A <see cref="string"/> that represents the reason for the close if any. + /// </value> + public string Reason => _reason; - /// <summary> - /// Gets a value indicating whether the WebSocket connection has been closed cleanly. - /// </summary> - /// <value> - /// <c>true</c> if the WebSocket connection has been closed cleanly; otherwise, <c>false</c>. - /// </value> - public bool WasClean { - get { - return _clean; - } + /// <summary> + /// Gets a value indicating whether the WebSocket connection has been closed cleanly. + /// </summary> + /// <value> + /// <c>true</c> if the WebSocket connection has been closed cleanly; otherwise, <c>false</c>. + /// </value> + public bool WasClean + { + get => _clean; - internal set { - _clean = value; - } - } + internal set => _clean = value; + } - #endregion - } + #endregion + } } diff --git a/SocketHttpListener/CloseStatusCode.cs b/SocketHttpListener/CloseStatusCode.cs index 62a268bce..428595bb0 100644 --- a/SocketHttpListener/CloseStatusCode.cs +++ b/SocketHttpListener/CloseStatusCode.cs @@ -1,94 +1,94 @@ namespace SocketHttpListener { - /// <summary> - /// Contains the values of the status code for the WebSocket connection close. - /// </summary> - /// <remarks> - /// <para> - /// The values of the status code are defined in - /// <see href="http://tools.ietf.org/html/rfc6455#section-7.4">Section 7.4</see> - /// of RFC 6455. - /// </para> - /// <para> - /// "Reserved value" must not be set as a status code in a close control frame - /// by an endpoint. It's designated for use in applications expecting a status - /// code to indicate that the connection was closed due to the system grounds. - /// </para> - /// </remarks> - public enum CloseStatusCode : ushort - { /// <summary> - /// Equivalent to close status 1000. - /// Indicates a normal close. + /// Contains the values of the status code for the WebSocket connection close. /// </summary> - Normal = 1000, - /// <summary> - /// Equivalent to close status 1001. - /// Indicates that an endpoint is going away. - /// </summary> - Away = 1001, - /// <summary> - /// Equivalent to close status 1002. - /// Indicates that an endpoint is terminating the connection due to a protocol error. - /// </summary> - ProtocolError = 1002, - /// <summary> - /// Equivalent to close status 1003. - /// Indicates that an endpoint is terminating the connection because it has received - /// an unacceptable type message. - /// </summary> - IncorrectData = 1003, - /// <summary> - /// Equivalent to close status 1004. - /// Still undefined. Reserved value. - /// </summary> - Undefined = 1004, - /// <summary> - /// Equivalent to close status 1005. - /// Indicates that no status code was actually present. Reserved value. - /// </summary> - NoStatusCode = 1005, - /// <summary> - /// Equivalent to close status 1006. - /// Indicates that the connection was closed abnormally. Reserved value. - /// </summary> - Abnormal = 1006, - /// <summary> - /// Equivalent to close status 1007. - /// Indicates that an endpoint is terminating the connection because it has received - /// a message that contains a data that isn't consistent with the type of the message. - /// </summary> - InconsistentData = 1007, - /// <summary> - /// Equivalent to close status 1008. - /// Indicates that an endpoint is terminating the connection because it has received - /// a message that violates its policy. - /// </summary> - PolicyViolation = 1008, - /// <summary> - /// Equivalent to close status 1009. - /// Indicates that an endpoint is terminating the connection because it has received - /// a message that is too big to process. - /// </summary> - TooBig = 1009, - /// <summary> - /// Equivalent to close status 1010. - /// Indicates that the client is terminating the connection because it has expected - /// the server to negotiate one or more extension, but the server didn't return them - /// in the handshake response. - /// </summary> - IgnoreExtension = 1010, - /// <summary> - /// Equivalent to close status 1011. - /// Indicates that the server is terminating the connection because it has encountered - /// an unexpected condition that prevented it from fulfilling the request. - /// </summary> - ServerError = 1011, - /// <summary> - /// Equivalent to close status 1015. - /// Indicates that the connection was closed due to a failure to perform a TLS handshake. - /// Reserved value. - /// </summary> - TlsHandshakeFailure = 1015 - } + /// <remarks> + /// <para> + /// The values of the status code are defined in + /// <see href="http://tools.ietf.org/html/rfc6455#section-7.4">Section 7.4</see> + /// of RFC 6455. + /// </para> + /// <para> + /// "Reserved value" must not be set as a status code in a close control frame + /// by an endpoint. It's designated for use in applications expecting a status + /// code to indicate that the connection was closed due to the system grounds. + /// </para> + /// </remarks> + public enum CloseStatusCode : ushort + { + /// <summary> + /// Equivalent to close status 1000. + /// Indicates a normal close. + /// </summary> + Normal = 1000, + /// <summary> + /// Equivalent to close status 1001. + /// Indicates that an endpoint is going away. + /// </summary> + Away = 1001, + /// <summary> + /// Equivalent to close status 1002. + /// Indicates that an endpoint is terminating the connection due to a protocol error. + /// </summary> + ProtocolError = 1002, + /// <summary> + /// Equivalent to close status 1003. + /// Indicates that an endpoint is terminating the connection because it has received + /// an unacceptable type message. + /// </summary> + IncorrectData = 1003, + /// <summary> + /// Equivalent to close status 1004. + /// Still undefined. Reserved value. + /// </summary> + Undefined = 1004, + /// <summary> + /// Equivalent to close status 1005. + /// Indicates that no status code was actually present. Reserved value. + /// </summary> + NoStatusCode = 1005, + /// <summary> + /// Equivalent to close status 1006. + /// Indicates that the connection was closed abnormally. Reserved value. + /// </summary> + Abnormal = 1006, + /// <summary> + /// Equivalent to close status 1007. + /// Indicates that an endpoint is terminating the connection because it has received + /// a message that contains a data that isn't consistent with the type of the message. + /// </summary> + InconsistentData = 1007, + /// <summary> + /// Equivalent to close status 1008. + /// Indicates that an endpoint is terminating the connection because it has received + /// a message that violates its policy. + /// </summary> + PolicyViolation = 1008, + /// <summary> + /// Equivalent to close status 1009. + /// Indicates that an endpoint is terminating the connection because it has received + /// a message that is too big to process. + /// </summary> + TooBig = 1009, + /// <summary> + /// Equivalent to close status 1010. + /// Indicates that the client is terminating the connection because it has expected + /// the server to negotiate one or more extension, but the server didn't return them + /// in the handshake response. + /// </summary> + IgnoreExtension = 1010, + /// <summary> + /// Equivalent to close status 1011. + /// Indicates that the server is terminating the connection because it has encountered + /// an unexpected condition that prevented it from fulfilling the request. + /// </summary> + ServerError = 1011, + /// <summary> + /// Equivalent to close status 1015. + /// Indicates that the connection was closed due to a failure to perform a TLS handshake. + /// Reserved value. + /// </summary> + TlsHandshakeFailure = 1015 + } } diff --git a/SocketHttpListener/CompressionMethod.cs b/SocketHttpListener/CompressionMethod.cs index 36a48d94c..d6bcd63d8 100644 --- a/SocketHttpListener/CompressionMethod.cs +++ b/SocketHttpListener/CompressionMethod.cs @@ -1,23 +1,23 @@ namespace SocketHttpListener { - /// <summary> - /// Contains the values of the compression method used to compress the message on the WebSocket - /// connection. - /// </summary> - /// <remarks> - /// The values of the compression method are defined in - /// <see href="http://tools.ietf.org/html/draft-ietf-hybi-permessage-compression-09">Compression - /// Extensions for WebSocket</see>. - /// </remarks> - public enum CompressionMethod : byte - { /// <summary> - /// Indicates non compression. + /// Contains the values of the compression method used to compress the message on the WebSocket + /// connection. /// </summary> - None, - /// <summary> - /// Indicates using DEFLATE. - /// </summary> - Deflate - } + /// <remarks> + /// The values of the compression method are defined in + /// <see href="http://tools.ietf.org/html/draft-ietf-hybi-permessage-compression-09">Compression + /// Extensions for WebSocket</see>. + /// </remarks> + public enum CompressionMethod : byte + { + /// <summary> + /// Indicates non compression. + /// </summary> + None, + /// <summary> + /// Indicates using DEFLATE. + /// </summary> + Deflate + } } diff --git a/SocketHttpListener/ErrorEventArgs.cs b/SocketHttpListener/ErrorEventArgs.cs index bf1d6fc95..9502d2a15 100644 --- a/SocketHttpListener/ErrorEventArgs.cs +++ b/SocketHttpListener/ErrorEventArgs.cs @@ -2,45 +2,41 @@ using System; namespace SocketHttpListener { - /// <summary> - /// Contains the event data associated with a <see cref="WebSocket.OnError"/> event. - /// </summary> - /// <remarks> - /// A <see cref="WebSocket.OnError"/> event occurs when the <see cref="WebSocket"/> gets an error. - /// If you would like to get the error message, you should access the <see cref="Message"/> - /// property. - /// </remarks> - public class ErrorEventArgs : EventArgs - { - #region Private Fields + /// <summary> + /// Contains the event data associated with a <see cref="WebSocket.OnError"/> event. + /// </summary> + /// <remarks> + /// A <see cref="WebSocket.OnError"/> event occurs when the <see cref="WebSocket"/> gets an error. + /// If you would like to get the error message, you should access the <see cref="Message"/> + /// property. + /// </remarks> + public class ErrorEventArgs : EventArgs + { + #region Private Fields - private string _message; + private string _message; - #endregion + #endregion - #region Internal Constructors + #region Internal Constructors - internal ErrorEventArgs (string message) - { - _message = message; - } + internal ErrorEventArgs(string message) + { + _message = message; + } - #endregion + #endregion - #region Public Properties + #region Public Properties - /// <summary> - /// Gets the error message. - /// </summary> - /// <value> - /// A <see cref="string"/> that represents the error message. - /// </value> - public string Message { - get { - return _message; - } - } + /// <summary> + /// Gets the error message. + /// </summary> + /// <value> + /// A <see cref="string"/> that represents the error message. + /// </value> + public string Message => _message; - #endregion - } + #endregion + } } diff --git a/SocketHttpListener/Ext.cs b/SocketHttpListener/Ext.cs index 4404235ba..b051b6718 100644 --- a/SocketHttpListener/Ext.cs +++ b/SocketHttpListener/Ext.cs @@ -1,6 +1,5 @@ using System; using System.Collections.Generic; -using System.Collections.Specialized; using System.IO; using System.IO.Compression; using System.Net; @@ -441,7 +440,8 @@ namespace SocketHttpListener continue; } } - else { + else + { } buffer.Append(c); @@ -932,9 +932,8 @@ namespace SocketHttpListener /// </param> public static Uri ToUri(this string uriString) { - Uri res; return Uri.TryCreate( - uriString, uriString.MaybeUri() ? UriKind.Absolute : UriKind.Relative, out res) + uriString, uriString.MaybeUri() ? UriKind.Absolute : UriKind.Relative, out var res) ? res : null; } @@ -958,4 +957,4 @@ namespace SocketHttpListener #endregion } -}
\ No newline at end of file +} diff --git a/SocketHttpListener/Fin.cs b/SocketHttpListener/Fin.cs index f91401b99..c8ffbf2b2 100644 --- a/SocketHttpListener/Fin.cs +++ b/SocketHttpListener/Fin.cs @@ -1,8 +1,8 @@ namespace SocketHttpListener { - internal enum Fin : byte - { - More = 0x0, - Final = 0x1 - } + internal enum Fin : byte + { + More = 0x0, + Final = 0x1 + } } diff --git a/SocketHttpListener/HttpBase.cs b/SocketHttpListener/HttpBase.cs index d4ae857ff..fea91d84b 100644 --- a/SocketHttpListener/HttpBase.cs +++ b/SocketHttpListener/HttpBase.cs @@ -1,9 +1,5 @@ -using System; -using System.Collections.Generic; -using System.Collections.Specialized; -using System.IO; +using System; using System.Text; -using System.Threading; using MediaBrowser.Model.Services; namespace SocketHttpListener @@ -53,21 +49,9 @@ namespace SocketHttpListener } } - public QueryParamCollection Headers - { - get - { - return _headers; - } - } + public QueryParamCollection Headers => _headers; - public Version ProtocolVersion - { - get - { - return _version; - } - } + public Version ProtocolVersion => _version; #endregion @@ -101,4 +85,4 @@ namespace SocketHttpListener #endregion } -}
\ No newline at end of file +} diff --git a/SocketHttpListener/HttpResponse.cs b/SocketHttpListener/HttpResponse.cs index 535fde031..bcfa4a906 100644 --- a/SocketHttpListener/HttpResponse.cs +++ b/SocketHttpListener/HttpResponse.cs @@ -1,13 +1,11 @@ using System; -using System.Collections.Specialized; -using System.IO; +using System.Linq; using System.Net; using System.Text; -using HttpStatusCode = SocketHttpListener.Net.HttpStatusCode; -using HttpVersion = SocketHttpListener.Net.HttpVersion; -using System.Linq; using MediaBrowser.Model.Services; using SocketHttpListener.Net; +using HttpStatusCode = SocketHttpListener.Net.HttpStatusCode; +using HttpVersion = SocketHttpListener.Net.HttpVersion; namespace SocketHttpListener { @@ -48,13 +46,7 @@ namespace SocketHttpListener #region Public Properties - public CookieCollection Cookies - { - get - { - return GetCookies(Headers, true); - } - } + public CookieCollection Cookies => GetCookies(Headers, true); private static CookieCollection GetCookies(QueryParamCollection headers, bool response) { @@ -64,21 +56,9 @@ namespace SocketHttpListener : CookieHelper.Parse(headers[name], response); } - public bool IsProxyAuthenticationRequired - { - get - { - return _code == "407"; - } - } + public bool IsProxyAuthenticationRequired => _code == "407"; - public bool IsUnauthorized - { - get - { - return _code == "401"; - } - } + public bool IsUnauthorized => _code == "401"; public bool IsWebSocketResponse { @@ -92,21 +72,9 @@ namespace SocketHttpListener } } - public string Reason - { - get - { - return _reason; - } - } + public string Reason => _reason; - public string StatusCode - { - get - { - return _code; - } - } + public string StatusCode => _code; #endregion diff --git a/SocketHttpListener/Mask.cs b/SocketHttpListener/Mask.cs index adc2f098e..c56f5b08c 100644 --- a/SocketHttpListener/Mask.cs +++ b/SocketHttpListener/Mask.cs @@ -1,8 +1,8 @@ namespace SocketHttpListener { - internal enum Mask : byte - { - Unmask = 0x0, - Mask = 0x1 - } + internal enum Mask : byte + { + Unmask = 0x0, + Mask = 0x1 + } } diff --git a/SocketHttpListener/MessageEventArgs.cs b/SocketHttpListener/MessageEventArgs.cs index 86614c43c..8e2151cb7 100644 --- a/SocketHttpListener/MessageEventArgs.cs +++ b/SocketHttpListener/MessageEventArgs.cs @@ -3,94 +3,82 @@ using System.Text; namespace SocketHttpListener { - /// <summary> - /// Contains the event data associated with a <see cref="WebSocket.OnMessage"/> event. - /// </summary> - /// <remarks> - /// A <see cref="WebSocket.OnMessage"/> event occurs when the <see cref="WebSocket"/> receives - /// a text or binary data frame. - /// If you want to get the received data, you access the <see cref="MessageEventArgs.Data"/> or - /// <see cref="MessageEventArgs.RawData"/> property. - /// </remarks> - public class MessageEventArgs : EventArgs - { - #region Private Fields + /// <summary> + /// Contains the event data associated with a <see cref="WebSocket.OnMessage"/> event. + /// </summary> + /// <remarks> + /// A <see cref="WebSocket.OnMessage"/> event occurs when the <see cref="WebSocket"/> receives + /// a text or binary data frame. + /// If you want to get the received data, you access the <see cref="Data"/> or + /// <see cref="RawData"/> property. + /// </remarks> + public class MessageEventArgs : EventArgs + { + #region Private Fields - private string _data; - private Opcode _opcode; - private byte[] _rawData; + private string _data; + private Opcode _opcode; + private byte[] _rawData; - #endregion + #endregion - #region Internal Constructors + #region Internal Constructors - internal MessageEventArgs (Opcode opcode, byte[] data) - { - _opcode = opcode; - _rawData = data; - _data = convertToString (opcode, data); - } + internal MessageEventArgs(Opcode opcode, byte[] data) + { + _opcode = opcode; + _rawData = data; + _data = convertToString(opcode, data); + } - internal MessageEventArgs (Opcode opcode, PayloadData payload) - { - _opcode = opcode; - _rawData = payload.ApplicationData; - _data = convertToString (opcode, _rawData); - } + internal MessageEventArgs(Opcode opcode, PayloadData payload) + { + _opcode = opcode; + _rawData = payload.ApplicationData; + _data = convertToString(opcode, _rawData); + } - #endregion + #endregion - #region Public Properties + #region Public Properties - /// <summary> - /// Gets the received data as a <see cref="string"/>. - /// </summary> - /// <value> - /// A <see cref="string"/> that contains the received data. - /// </value> - public string Data { - get { - return _data; - } - } + /// <summary> + /// Gets the received data as a <see cref="string"/>. + /// </summary> + /// <value> + /// A <see cref="string"/> that contains the received data. + /// </value> + public string Data => _data; - /// <summary> - /// Gets the received data as an array of <see cref="byte"/>. - /// </summary> - /// <value> - /// An array of <see cref="byte"/> that contains the received data. - /// </value> - public byte [] RawData { - get { - return _rawData; - } - } + /// <summary> + /// Gets the received data as an array of <see cref="byte"/>. + /// </summary> + /// <value> + /// An array of <see cref="byte"/> that contains the received data. + /// </value> + public byte[] RawData => _rawData; - /// <summary> - /// Gets the type of the received data. - /// </summary> - /// <value> - /// One of the <see cref="Opcode"/> values, indicates the type of the received data. - /// </value> - public Opcode Type { - get { - return _opcode; - } - } + /// <summary> + /// Gets the type of the received data. + /// </summary> + /// <value> + /// One of the <see cref="Opcode"/> values, indicates the type of the received data. + /// </value> + public Opcode Type => _opcode; - #endregion + #endregion - #region Private Methods + #region Private Methods - private static string convertToString (Opcode opcode, byte [] data) - { - return data.Length == 0 - ? string.Empty - : opcode == Opcode.Text - ? Encoding.UTF8.GetString (data, 0, data.Length) - : opcode.ToString (); - } + private static string convertToString(Opcode opcode, byte[] data) + { + return data.Length == 0 + ? string.Empty + : opcode == Opcode.Text + ? Encoding.UTF8.GetString(data, 0, data.Length) + : opcode.ToString(); + } - #endregion - } + #endregion + } } diff --git a/SocketHttpListener/Net/AuthenticationSchemeSelector.cs b/SocketHttpListener/Net/AuthenticationSchemeSelector.cs index c6e7e538e..77e6d0b8a 100644 --- a/SocketHttpListener/Net/AuthenticationSchemeSelector.cs +++ b/SocketHttpListener/Net/AuthenticationSchemeSelector.cs @@ -1,4 +1,4 @@ -using System.Net; +using System.Net; namespace SocketHttpListener.Net { diff --git a/SocketHttpListener/Net/AuthenticationTypes.cs b/SocketHttpListener/Net/AuthenticationTypes.cs index df6b9d576..a3dbe9dff 100644 --- a/SocketHttpListener/Net/AuthenticationTypes.cs +++ b/SocketHttpListener/Net/AuthenticationTypes.cs @@ -1,7 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; - namespace SocketHttpListener.Net { internal class AuthenticationTypes diff --git a/SocketHttpListener/Net/BoundaryType.cs b/SocketHttpListener/Net/BoundaryType.cs index f1e799f63..da0b22910 100644 --- a/SocketHttpListener/Net/BoundaryType.cs +++ b/SocketHttpListener/Net/BoundaryType.cs @@ -1,8 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Threading.Tasks; - namespace SocketHttpListener.Net { internal enum BoundaryType diff --git a/SocketHttpListener/Net/ChunkStream.cs b/SocketHttpListener/Net/ChunkStream.cs index 5cc01614f..3836947d4 100644 --- a/SocketHttpListener/Net/ChunkStream.cs +++ b/SocketHttpListener/Net/ChunkStream.cs @@ -1,5 +1,4 @@ using System; -using System.Collections; using System.Collections.Generic; using System.Globalization; using System.IO; @@ -109,7 +108,7 @@ namespace SocketHttpListener.Net var chunksForRemoving = new List<Chunk>(count); for (int i = 0; i < count; i++) { - Chunk chunk = _chunks[i]; + var chunk = _chunks[i]; if (chunk.Offset == chunk.Bytes.Length) { @@ -181,10 +180,7 @@ namespace SocketHttpListener.Net InternalWrite(buffer, ref offset, size); } - public bool WantMore - { - get { return (_chunkRead != _chunkSize || _chunkSize != 0 || _state != State.None); } - } + public bool WantMore => (_chunkRead != _chunkSize || _chunkSize != 0 || _state != State.None); public bool DataAvailable { @@ -193,7 +189,7 @@ namespace SocketHttpListener.Net int count = _chunks.Count; for (int i = 0; i < count; i++) { - Chunk ch = _chunks[i]; + var ch = _chunks[i]; if (ch == null || ch.Bytes == null) continue; if (ch.Bytes.Length > 0 && ch.Offset < ch.Bytes.Length) @@ -203,15 +199,9 @@ namespace SocketHttpListener.Net } } - public int TotalDataSize - { - get { return _totalWritten; } - } + public int TotalDataSize => _totalWritten; - public int ChunkLeft - { - get { return _chunkSize - _chunkRead; } - } + public int ChunkLeft => _chunkSize - _chunkRead; private State ReadBody(byte[] buffer, ref int offset, int size) { @@ -378,7 +368,7 @@ namespace SocketHttpListener.Net return State.Trailer; } - StringReader reader = new StringReader(_saved.ToString()); + var reader = new StringReader(_saved.ToString()); string line; while ((line = reader.ReadLine()) != null && line != "") _headers.Add(line); @@ -388,7 +378,7 @@ namespace SocketHttpListener.Net private static void ThrowProtocolViolation(string message) { - WebException we = new WebException(message, null, WebExceptionStatus.ServerProtocolViolation, null); + var we = new WebException(message, null, WebExceptionStatus.ServerProtocolViolation, null); throw we; } } diff --git a/SocketHttpListener/Net/ChunkedInputStream.cs b/SocketHttpListener/Net/ChunkedInputStream.cs index 4d6d96a6c..06dcb3a17 100644 --- a/SocketHttpListener/Net/ChunkedInputStream.cs +++ b/SocketHttpListener/Net/ChunkedInputStream.cs @@ -1,8 +1,6 @@ -using System; +using System; using System.IO; using System.Net; -using System.Runtime.InteropServices; -using SocketHttpListener.Primitives; namespace SocketHttpListener.Net { @@ -63,14 +61,14 @@ namespace SocketHttpListener.Net : base(stream, buffer, offset, length) { _context = context; - WebHeaderCollection coll = (WebHeaderCollection)context.Request.Headers; + var coll = (WebHeaderCollection)context.Request.Headers; _decoder = new ChunkStream(coll); } public ChunkStream Decoder { - get { return _decoder; } - set { _decoder = value; } + get => _decoder; + set => _decoder = value; } protected override int ReadCore(byte[] buffer, int offset, int count) @@ -81,7 +79,7 @@ namespace SocketHttpListener.Net protected override IAsyncResult BeginReadCore(byte[] buffer, int offset, int size, AsyncCallback cback, object state) { - HttpStreamAsyncResult ares = new HttpStreamAsyncResult(this); + var ares = new HttpStreamAsyncResult(this); ares._callback = cback; ares._state = state; if (_no_more_data || size == 0 || _closed) @@ -109,7 +107,7 @@ namespace SocketHttpListener.Net ares._buffer = new byte[8192]; ares._offset = 0; ares._count = 8192; - ReadBufferState rb = new ReadBufferState(buffer, offset, size, ares); + var rb = new ReadBufferState(buffer, offset, size, ares); rb.InitialCount += nread; base.BeginReadCore(ares._buffer, ares._offset, ares._count, OnRead, rb); return ares; @@ -118,7 +116,7 @@ namespace SocketHttpListener.Net private void OnRead(IAsyncResult base_ares) { ReadBufferState rb = (ReadBufferState)base_ares.AsyncState; - HttpStreamAsyncResult ares = rb.Ares; + var ares = rb.Ares; try { int nread = base.EndRead(base_ares); @@ -157,7 +155,7 @@ namespace SocketHttpListener.Net if (asyncResult == null) throw new ArgumentNullException(nameof(asyncResult)); - HttpStreamAsyncResult ares = asyncResult as HttpStreamAsyncResult; + var ares = asyncResult as HttpStreamAsyncResult; if (ares == null || !ReferenceEquals(this, ares._parent)) { throw new ArgumentException("Invalid async result"); diff --git a/SocketHttpListener/Net/CookieHelper.cs b/SocketHttpListener/Net/CookieHelper.cs index 6c1764e09..3ad76ff23 100644 --- a/SocketHttpListener/Net/CookieHelper.cs +++ b/SocketHttpListener/Net/CookieHelper.cs @@ -1,9 +1,8 @@ -using System; +using System; using System.Collections.Generic; using System.Globalization; using System.Net; using System.Text; -using System.Threading.Tasks; namespace SocketHttpListener.Net { @@ -44,13 +43,12 @@ namespace SocketHttpListener.Net if (i < pairs.Length - 1) buffer.AppendFormat(", {0}", pairs[++i].Trim()); - DateTime expires; if (!DateTime.TryParseExact( buffer.ToString(), new[] { "ddd, dd'-'MMM'-'yyyy HH':'mm':'ss 'GMT'", "r" }, new CultureInfo("en-US"), DateTimeStyles.AdjustToUniversal | DateTimeStyles.AssumeUniversal, - out expires)) + out var expires)) expires = DateTime.Now; if (cookie != null && cookie.Expires == DateTime.MinValue) diff --git a/SocketHttpListener/Net/EntitySendFormat.cs b/SocketHttpListener/Net/EntitySendFormat.cs index 9caee3e11..3ed981084 100644 --- a/SocketHttpListener/Net/EntitySendFormat.cs +++ b/SocketHttpListener/Net/EntitySendFormat.cs @@ -1,8 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Threading.Tasks; - namespace SocketHttpListener.Net { internal enum EntitySendFormat diff --git a/SocketHttpListener/Net/HttpConnection.cs b/SocketHttpListener/Net/HttpConnection.cs index 4fc9a468c..af1c081d9 100644 --- a/SocketHttpListener/Net/HttpConnection.cs +++ b/SocketHttpListener/Net/HttpConnection.cs @@ -3,19 +3,17 @@ using System.IO; using System.Net; using System.Net.Security; using System.Net.Sockets; +using System.Security.Authentication; using System.Security.Cryptography.X509Certificates; using System.Text; +using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.Cryptography; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; using MediaBrowser.Model.System; using MediaBrowser.Model.Text; +using Microsoft.Extensions.Logging; using SocketHttpListener.Primitives; -using System.Security.Authentication; - -using System.Threading; namespace SocketHttpListener.Net { sealed class HttpConnection @@ -91,13 +89,7 @@ namespace SocketHttpListener.Net } } - public Stream Stream - { - get - { - return _stream; - } - } + public Stream Stream => _stream; public async Task Init() { @@ -133,15 +125,9 @@ namespace SocketHttpListener.Net _context = new HttpListenerContext(this, _textEncoding); } - public bool IsClosed - { - get { return (_socket == null); } - } + public bool IsClosed => (_socket == null); - public int Reuses - { - get { return _reuses; } - } + public int Reuses => _reuses; public IPEndPoint LocalEndPoint { @@ -155,20 +141,14 @@ namespace SocketHttpListener.Net } } - public IPEndPoint RemoteEndPoint - { - get { return _socket.RemoteEndPoint as IPEndPoint; } - } + public IPEndPoint RemoteEndPoint => _socket.RemoteEndPoint as IPEndPoint; - public bool IsSecure - { - get { return secure; } - } + public bool IsSecure => secure; public ListenerPrefix Prefix { - get { return _prefix; } - set { _prefix = value; } + get => _prefix; + set => _prefix = value; } private void OnTimeout(object unused) @@ -232,7 +212,7 @@ namespace SocketHttpListener.Net private static void OnRead(IAsyncResult ares) { - HttpConnection cnc = (HttpConnection)ares.AsyncState; + var cnc = (HttpConnection)ares.AsyncState; cnc.OnReadInternal(ares); } diff --git a/SocketHttpListener/Net/HttpEndPointListener.cs b/SocketHttpListener/Net/HttpEndPointListener.cs index a108e7dd4..ea7d8fd2d 100644 --- a/SocketHttpListener/Net/HttpEndPointListener.cs +++ b/SocketHttpListener/Net/HttpEndPointListener.cs @@ -1,21 +1,15 @@ using System; -using System.Collections; using System.Collections.Generic; -using System.IO; using System.Net; using System.Net.Sockets; using System.Security.Cryptography.X509Certificates; using System.Threading; using MediaBrowser.Model.Cryptography; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Net; using MediaBrowser.Model.System; using MediaBrowser.Model.Text; -using SocketHttpListener.Primitives; -using ProtocolType = MediaBrowser.Model.Net.ProtocolType; -using SocketType = MediaBrowser.Model.Net.SocketType; -using System.Threading.Tasks; +using Microsoft.Extensions.Logging; namespace SocketHttpListener.Net { @@ -64,13 +58,7 @@ namespace SocketHttpListener.Net CreateSocket(); } - internal HttpListener Listener - { - get - { - return _listener; - } - } + internal HttpListener Listener => _listener; private void CreateSocket() { @@ -172,7 +160,7 @@ namespace SocketHttpListener.Net } catch (Exception ex) { - HttpEndPointListener epl = (HttpEndPointListener)acceptEventArg.UserToken; + var epl = (HttpEndPointListener)acceptEventArg.UserToken; epl._logger.LogError(ex, "Error in socket.AcceptAsync"); } @@ -188,7 +176,7 @@ namespace SocketHttpListener.Net private static async void ProcessAccept(SocketAsyncEventArgs args) { - HttpEndPointListener epl = (HttpEndPointListener)args.UserToken; + var epl = (HttpEndPointListener)args.UserToken; if (epl._closed) { @@ -209,7 +197,7 @@ namespace SocketHttpListener.Net return; } - if(accepted == null) + if (accepted == null) { return; } @@ -226,7 +214,7 @@ namespace SocketHttpListener.Net var localEndPointString = accepted.LocalEndPoint == null ? string.Empty : accepted.LocalEndPoint.ToString(); //_logger.LogInformation("HttpEndPointListener Accepting connection from {0} to {1} secure connection requested: {2}", remoteEndPointString, localEndPointString, _secure); - HttpConnection conn = new HttpConnection(epl._logger, accepted, epl, epl._secure, epl._cert, epl._cryptoProvider, epl._streamHelper, epl._textEncoding, epl._fileSystem, epl._environment); + var conn = new HttpConnection(epl._logger, accepted, epl, epl._secure, epl._cert, epl._cryptoProvider, epl._streamHelper, epl._textEncoding, epl._fileSystem, epl._environment); await conn.Init().ConfigureAwait(false); @@ -288,9 +276,8 @@ namespace SocketHttpListener.Net public bool BindContext(HttpListenerContext context) { - HttpListenerRequest req = context.Request; - ListenerPrefix prefix; - HttpListener listener = SearchListener(req.Url, out prefix); + var req = context.Request; + HttpListener listener = SearchListener(req.Url, out var prefix); if (listener == null) return false; @@ -323,7 +310,7 @@ namespace SocketHttpListener.Net if (host != null && host != "") { Dictionary<ListenerPrefix, HttpListener> localPrefixes = _prefixes; - foreach (ListenerPrefix p in localPrefixes.Keys) + foreach (var p in localPrefixes.Keys) { string ppath = p.Path; if (ppath.Length < bestLength) diff --git a/SocketHttpListener/Net/HttpEndPointManager.cs b/SocketHttpListener/Net/HttpEndPointManager.cs index 01b5ae9bd..a75af5f5d 100644 --- a/SocketHttpListener/Net/HttpEndPointManager.cs +++ b/SocketHttpListener/Net/HttpEndPointManager.cs @@ -3,12 +3,7 @@ using System.Collections; using System.Collections.Generic; using System.Net; using System.Net.Sockets; -using System.Reflection; -using System.Threading.Tasks; -using MediaBrowser.Model.IO; using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Net; -using SocketHttpListener.Primitives; namespace SocketHttpListener.Net { @@ -22,7 +17,7 @@ namespace SocketHttpListener.Net public static void AddListener(ILogger logger, HttpListener listener) { - List<string> added = new List<string>(); + var added = new List<string>(); try { lock ((s_ipEndPoints as ICollection).SyncRoot) @@ -62,14 +57,13 @@ namespace SocketHttpListener.Net int root = p.IndexOf('/', colon, p.Length - colon); string portString = p.Substring(colon + 1, root - colon - 1); - int port; - if (!int.TryParse(portString, out port) || port <= 0 || port >= 65536) + if (!int.TryParse(portString, out var port) || port <= 0 || port >= 65536) { throw new HttpListenerException((int)HttpStatusCode.BadRequest, "net_invalid_port"); } } - ListenerPrefix lp = new ListenerPrefix(p); + var lp = new ListenerPrefix(p); if (lp.Host != "*" && lp.Host != "+" && Uri.CheckHostName(lp.Host) == UriHostNameType.Unknown) throw new HttpListenerException((int)HttpStatusCode.BadRequest, "net_listener_host"); @@ -184,7 +178,7 @@ namespace SocketHttpListener.Net private static void RemovePrefixInternal(ILogger logger, string prefix, HttpListener listener) { - ListenerPrefix lp = new ListenerPrefix(prefix); + var lp = new ListenerPrefix(prefix); if (lp.Path.IndexOf('%') != -1) return; diff --git a/SocketHttpListener/Net/HttpKnownHeaderNames.cs b/SocketHttpListener/Net/HttpKnownHeaderNames.cs index ea4695850..dc6f2ce41 100644 --- a/SocketHttpListener/Net/HttpKnownHeaderNames.cs +++ b/SocketHttpListener/Net/HttpKnownHeaderNames.cs @@ -1,7 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; - namespace SocketHttpListener.Net { internal static partial class HttpKnownHeaderNames diff --git a/SocketHttpListener/Net/HttpListener.cs b/SocketHttpListener/Net/HttpListener.cs index a159cd273..8ec6b89aa 100644 --- a/SocketHttpListener/Net/HttpListener.cs +++ b/SocketHttpListener/Net/HttpListener.cs @@ -1,17 +1,15 @@ using System; using System.Collections; using System.Collections.Generic; -using System.IO; using System.Net; using System.Security.Cryptography.X509Certificates; using MediaBrowser.Common.Net; using MediaBrowser.Model.Cryptography; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.Net; using MediaBrowser.Model.System; using MediaBrowser.Model.Text; -using SocketHttpListener.Primitives; +using Microsoft.Extensions.Logging; namespace SocketHttpListener.Net { @@ -72,7 +70,7 @@ namespace SocketHttpListener.Net // TODO: Digest, NTLM and Negotiate require ControlPrincipal public AuthenticationSchemes AuthenticationSchemes { - get { return auth_schemes; } + get => auth_schemes; set { CheckDisposed(); @@ -82,7 +80,7 @@ namespace SocketHttpListener.Net public AuthenticationSchemeSelector AuthenticationSchemeSelectorDelegate { - get { return auth_selector; } + get => auth_selector; set { CheckDisposed(); @@ -90,15 +88,9 @@ namespace SocketHttpListener.Net } } - public bool IsListening - { - get { return listening; } - } + public bool IsListening => listening; - public static bool IsSupported - { - get { return true; } - } + public static bool IsSupported => true; public HttpListenerPrefixCollection Prefixes { @@ -112,7 +104,7 @@ namespace SocketHttpListener.Net // TODO: use this public string Realm { - get { return realm; } + get => realm; set { CheckDisposed(); @@ -122,7 +114,7 @@ namespace SocketHttpListener.Net public bool UnsafeConnectionNtlmAuthentication { - get { return unsafe_ntlm_auth; } + get => unsafe_ntlm_auth; set { CheckDisposed(); @@ -144,10 +136,7 @@ namespace SocketHttpListener.Net // } //} - internal X509Certificate Certificate - { - get { return _certificate; } - } + internal X509Certificate Certificate => _certificate; public void Abort() { diff --git a/SocketHttpListener/Net/HttpListenerBasicIdentity.cs b/SocketHttpListener/Net/HttpListenerBasicIdentity.cs index d20e72777..5f6ec44b9 100644 --- a/SocketHttpListener/Net/HttpListenerBasicIdentity.cs +++ b/SocketHttpListener/Net/HttpListenerBasicIdentity.cs @@ -1,4 +1,4 @@ -using System.Security.Principal; +using System.Security.Principal; namespace SocketHttpListener.Net { @@ -12,10 +12,7 @@ namespace SocketHttpListener.Net this.password = password; } - public virtual string Password - { - get { return password; } - } + public virtual string Password => password; } public class GenericIdentity : IIdentity @@ -43,28 +40,10 @@ namespace SocketHttpListener.Net m_type = type; } - public virtual string Name - { - get - { - return m_name; - } - } + public virtual string Name => m_name; - public virtual string AuthenticationType - { - get - { - return m_type; - } - } + public virtual string AuthenticationType => m_type; - public virtual bool IsAuthenticated - { - get - { - return !m_name.Equals(""); - } - } + public virtual bool IsAuthenticated => !m_name.Equals(""); } } diff --git a/SocketHttpListener/Net/HttpListenerContext.Managed.cs b/SocketHttpListener/Net/HttpListenerContext.Managed.cs index db795f742..a6622c479 100644 --- a/SocketHttpListener/Net/HttpListenerContext.Managed.cs +++ b/SocketHttpListener/Net/HttpListenerContext.Managed.cs @@ -1,8 +1,8 @@ -using System.ComponentModel; +using System; +using System.ComponentModel; using System.Security.Principal; using System.Text; using System.Threading.Tasks; -using System; using MediaBrowser.Model.Text; using SocketHttpListener.Net.WebSockets; diff --git a/SocketHttpListener/Net/HttpListenerContext.cs b/SocketHttpListener/Net/HttpListenerContext.cs index e3e6eb906..8045299c6 100644 --- a/SocketHttpListener/Net/HttpListenerContext.cs +++ b/SocketHttpListener/Net/HttpListenerContext.cs @@ -1,12 +1,8 @@ using System; using System.Net; using System.Security.Principal; -using MediaBrowser.Model.Cryptography; -using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; -using MediaBrowser.Model.Text; -using SocketHttpListener.Net.WebSockets; using System.Threading.Tasks; +using SocketHttpListener.Net.WebSockets; namespace SocketHttpListener.Net { @@ -22,13 +18,7 @@ namespace SocketHttpListener.Net // This can be used to cache the results of HttpListener.AuthenticationSchemeSelectorDelegate. internal AuthenticationSchemes AuthenticationSchemes { get; set; } - public HttpListenerResponse Response - { - get - { - return _response; - } - } + public HttpListenerResponse Response => _response; public Task<HttpListenerWebSocketContext> AcceptWebSocketAsync(string subProtocol) { @@ -66,13 +56,7 @@ namespace SocketHttpListener.Net } } - public virtual IIdentity Identity - { - get - { - return m_identity; - } - } + public virtual IIdentity Identity => m_identity; public virtual bool IsInRole(string role) { diff --git a/SocketHttpListener/Net/HttpListenerPrefixCollection.cs b/SocketHttpListener/Net/HttpListenerPrefixCollection.cs index f0e496a5a..97dc6797c 100644 --- a/SocketHttpListener/Net/HttpListenerPrefixCollection.cs +++ b/SocketHttpListener/Net/HttpListenerPrefixCollection.cs @@ -18,20 +18,11 @@ namespace SocketHttpListener.Net this.listener = listener; } - public int Count - { - get { return prefixes.Count; } - } + public int Count => prefixes.Count; - public bool IsReadOnly - { - get { return false; } - } + public bool IsReadOnly => false; - public bool IsSynchronized - { - get { return false; } - } + public bool IsSynchronized => false; public void Add(string uriPrefix) { diff --git a/SocketHttpListener/Net/HttpListenerRequest.Managed.cs b/SocketHttpListener/Net/HttpListenerRequest.Managed.cs index 8b68afe33..3f9e32f08 100644 --- a/SocketHttpListener/Net/HttpListenerRequest.Managed.cs +++ b/SocketHttpListener/Net/HttpListenerRequest.Managed.cs @@ -1,12 +1,7 @@ -using System; -using System.Text; -using System.Collections.Specialized; -using System.Globalization; +using System; using System.IO; -using System.Security.Authentication.ExtendedProtection; -using System.Security.Cryptography.X509Certificates; +using System.Text; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Text; namespace SocketHttpListener.Net { diff --git a/SocketHttpListener/Net/HttpListenerRequest.cs b/SocketHttpListener/Net/HttpListenerRequest.cs index 16e245611..1c832367e 100644 --- a/SocketHttpListener/Net/HttpListenerRequest.cs +++ b/SocketHttpListener/Net/HttpListenerRequest.cs @@ -1,17 +1,11 @@ using System; -using System.Collections.Specialized; +using System.Collections.Generic; using System.Globalization; -using System.IO; using System.Net; -using System.Security.Cryptography.X509Certificates; using System.Text; -using System.Threading.Tasks; -using MediaBrowser.Model.Net; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Text; -using SocketHttpListener.Primitives; -using System.Collections.Generic; using SocketHttpListener.Net.WebSockets; +using SocketHttpListener.Primitives; namespace SocketHttpListener.Net { @@ -29,7 +23,7 @@ namespace SocketHttpListener.Net private static CookieCollection ParseCookies(Uri uri, string setCookieHeader) { - CookieCollection cookies = new CookieCollection(); + var cookies = new CookieCollection(); return cookies; } @@ -177,7 +171,7 @@ namespace SocketHttpListener.Net { get { - QueryParamCollection queryString = new QueryParamCollection(); + var queryString = new QueryParamCollection(); Helpers.FillFromString(queryString, Url.Query, true, ContentEncoding); return queryString; } @@ -203,7 +197,7 @@ namespace SocketHttpListener.Net return null; } - bool success = Uri.TryCreate(referrer, UriKind.RelativeOrAbsolute, out Uri urlReferrer); + bool success = Uri.TryCreate(referrer, UriKind.RelativeOrAbsolute, out var urlReferrer); return success ? urlReferrer : null; } } @@ -302,7 +296,7 @@ namespace SocketHttpListener.Net // collect comma-separated values into list - List<string> values = new List<string>(); + var values = new List<string>(); int i = 0; while (i < l) @@ -347,7 +341,7 @@ namespace SocketHttpListener.Net private static string UrlDecodeStringFromStringInternal(string s, Encoding e) { int count = s.Length; - UrlDecoder helper = new UrlDecoder(count, e); + var helper = new UrlDecoder(count, e); // go through the string's chars collapsing %XX and %uXXXX and // appending each char as char, with exception of %XX constructs diff --git a/SocketHttpListener/Net/HttpListenerRequestUriBuilder.cs b/SocketHttpListener/Net/HttpListenerRequestUriBuilder.cs index 63790d796..7b4b619e6 100644 --- a/SocketHttpListener/Net/HttpListenerRequestUriBuilder.cs +++ b/SocketHttpListener/Net/HttpListenerRequestUriBuilder.cs @@ -1,8 +1,8 @@ -using System; +using System; using System.Collections.Generic; using System.Diagnostics; -using System.Text; using System.Globalization; +using System.Text; namespace SocketHttpListener.Net { @@ -54,7 +54,7 @@ namespace SocketHttpListener.Net public static Uri GetRequestUri(string rawUri, string cookedUriScheme, string cookedUriHost, string cookedUriPath, string cookedUriQuery) { - HttpListenerRequestUriBuilder builder = new HttpListenerRequestUriBuilder(rawUri, + var builder = new HttpListenerRequestUriBuilder(rawUri, cookedUriScheme, cookedUriHost, cookedUriPath, cookedUriQuery); return builder.Build(); @@ -232,8 +232,7 @@ namespace SocketHttpListener.Net { // http.sys only supports %uXXXX (4 hex-digits), even though unicode code points could have up to // 6 hex digits. Therefore we parse always 4 characters after %u and convert them to an int. - int codePointValue; - if (!int.TryParse(codePoint, NumberStyles.HexNumber, null, out codePointValue)) + if (!int.TryParse(codePoint, NumberStyles.HexNumber, null, out var codePointValue)) { //if (NetEventSource.IsEnabled) // NetEventSource.Error(this, SR.Format(SR.net_log_listener_cant_convert_percent_value, codePoint)); @@ -264,8 +263,7 @@ namespace SocketHttpListener.Net private bool AddPercentEncodedOctetToRawOctetsList(Encoding encoding, string escapedCharacter) { - byte encodedValue; - if (!byte.TryParse(escapedCharacter, NumberStyles.HexNumber, null, out encodedValue)) + if (!byte.TryParse(escapedCharacter, NumberStyles.HexNumber, null, out byte encodedValue)) { //if (NetEventSource.IsEnabled) NetEventSource.Error(this, SR.Format(SR.net_log_listener_cant_convert_percent_value, escapedCharacter)); return false; @@ -327,7 +325,7 @@ namespace SocketHttpListener.Net private static string GetOctetsAsString(IEnumerable<byte> octets) { - StringBuilder octetString = new StringBuilder(); + var octetString = new StringBuilder(); bool first = true; foreach (byte octet in octets) diff --git a/SocketHttpListener/Net/HttpListenerResponse.Managed.cs b/SocketHttpListener/Net/HttpListenerResponse.Managed.cs index 8fb4518a1..9f9b8384d 100644 --- a/SocketHttpListener/Net/HttpListenerResponse.Managed.cs +++ b/SocketHttpListener/Net/HttpListenerResponse.Managed.cs @@ -1,14 +1,13 @@ -using System; -using System.Collections.Generic; +using System; using System.Globalization; using System.IO; using System.Net; using System.Text; +using System.Threading; using System.Threading.Tasks; +using MediaBrowser.Model.IO; using MediaBrowser.Model.Text; using SocketHttpListener.Primitives; -using System.Threading; -using MediaBrowser.Model.IO; namespace SocketHttpListener.Net { @@ -39,7 +38,7 @@ namespace SocketHttpListener.Net public Version ProtocolVersion { - get { return _version; } + get => _version; set { CheckDisposed(); @@ -58,7 +57,7 @@ namespace SocketHttpListener.Net public int StatusCode { - get { return _statusCode; } + get => _statusCode; set { CheckDisposed(); @@ -264,8 +263,8 @@ namespace SocketHttpListener.Net ComputeCookies(); } - Encoding encoding = _textEncoding.GetDefaultEncoding(); - StreamWriter writer = new StreamWriter(ms, encoding, 256); + var encoding = _textEncoding.GetDefaultEncoding(); + var writer = new StreamWriter(ms, encoding, 256); writer.Write("HTTP/1.1 {0} ", _statusCode); // "1.1" matches Windows implementation, which ignores the response version writer.Flush(); byte[] statusDescriptionBytes = WebHeaderEncoding.GetBytes(StatusDescription); diff --git a/SocketHttpListener/Net/HttpListenerResponse.cs b/SocketHttpListener/Net/HttpListenerResponse.cs index 351a206ee..a32aca043 100644 --- a/SocketHttpListener/Net/HttpListenerResponse.cs +++ b/SocketHttpListener/Net/HttpListenerResponse.cs @@ -1,14 +1,7 @@ using System; -using System.Collections.Generic; using System.IO; using System.Net; using System.Text; -using System.Threading.Tasks; -using System.Globalization; -using System.Runtime.InteropServices; -using System.ComponentModel; -using System.Diagnostics; -using Microsoft.Win32.SafeHandles; namespace SocketHttpListener.Net { @@ -22,16 +15,13 @@ namespace SocketHttpListener.Net private string _statusDescription; private WebHeaderCollection _webHeaders = new WebHeaderCollection(); - public WebHeaderCollection Headers - { - get { return _webHeaders; } - } + public WebHeaderCollection Headers => _webHeaders; public Encoding ContentEncoding { get; set; } public string ContentType { - get { return Headers["Content-Type"]; } + get => Headers["Content-Type"]; set { CheckDisposed(); @@ -46,13 +36,13 @@ namespace SocketHttpListener.Net } } - private HttpListenerContext HttpListenerContext { get { return _httpContext; } } + private HttpListenerContext HttpListenerContext => _httpContext; - private HttpListenerRequest HttpListenerRequest { get { return HttpListenerContext.Request; } } + private HttpListenerRequest HttpListenerRequest => HttpListenerContext.Request; internal EntitySendFormat EntitySendFormat { - get { return (EntitySendFormat)_boundaryType; } + get => (EntitySendFormat)_boundaryType; set { CheckDisposed(); @@ -71,8 +61,8 @@ namespace SocketHttpListener.Net public bool SendChunked { - get { return EntitySendFormat == EntitySendFormat.Chunked; } - set { EntitySendFormat = value ? EntitySendFormat.Chunked : EntitySendFormat.ContentLength; } + get => EntitySendFormat == EntitySendFormat.Chunked; + set => EntitySendFormat = value ? EntitySendFormat.Chunked : EntitySendFormat.ContentLength; } // We MUST NOT send message-body when we send responses with these Status codes @@ -92,7 +82,7 @@ namespace SocketHttpListener.Net public long ContentLength64 { - get { return _contentLength; } + get => _contentLength; set { CheckDisposed(); @@ -111,13 +101,13 @@ namespace SocketHttpListener.Net public CookieCollection Cookies { - get { return _cookies ?? (_cookies = new CookieCollection()); } - set { _cookies = value; } + get => _cookies ?? (_cookies = new CookieCollection()); + set => _cookies = value; } public bool KeepAlive { - get { return _keepAlive; } + get => _keepAlive; set { CheckDisposed(); @@ -137,7 +127,7 @@ namespace SocketHttpListener.Net public string RedirectLocation { - get { return Headers["Location"]; } + get => Headers["Location"]; set { // note that this doesn't set the status code to a redirect one diff --git a/SocketHttpListener/Net/HttpRequestStream.Managed.cs b/SocketHttpListener/Net/HttpRequestStream.Managed.cs index 493e2673b..42fc4d97c 100644 --- a/SocketHttpListener/Net/HttpRequestStream.Managed.cs +++ b/SocketHttpListener/Net/HttpRequestStream.Managed.cs @@ -1,9 +1,5 @@ -using System; -using System.Collections.Generic; +using System; using System.IO; -using System.Runtime.ExceptionServices; -using System.Text; -using System.Threading.Tasks; namespace SocketHttpListener.Net { @@ -128,7 +124,7 @@ namespace SocketHttpListener.Net { if (size == 0 || _closed) { - HttpStreamAsyncResult ares = new HttpStreamAsyncResult(this); + var ares = new HttpStreamAsyncResult(this); ares._callback = cback; ares._state = state; ares.Complete(); @@ -138,7 +134,7 @@ namespace SocketHttpListener.Net int nread = FillFromBuffer(buffer, offset, size); if (nread > 0 || nread == -1) { - HttpStreamAsyncResult ares = new HttpStreamAsyncResult(this); + var ares = new HttpStreamAsyncResult(this); ares._buffer = buffer; ares._offset = offset; ares._count = size; diff --git a/SocketHttpListener/Net/HttpRequestStream.cs b/SocketHttpListener/Net/HttpRequestStream.cs index c9a1d5a2d..1c554df20 100644 --- a/SocketHttpListener/Net/HttpRequestStream.cs +++ b/SocketHttpListener/Net/HttpRequestStream.cs @@ -1,7 +1,5 @@ -using System; -using System.Collections.Generic; +using System; using System.IO; -using System.Text; using System.Threading; using System.Threading.Tasks; @@ -86,25 +84,13 @@ namespace SocketHttpListener.Net public override void Flush() { } public override Task FlushAsync(CancellationToken cancellationToken) => Task.CompletedTask; - public override long Length - { - get - { - throw new NotImplementedException(); - } - } + public override long Length => throw new NotImplementedException(); public override long Position { - get - { - throw new NotImplementedException(); - } + get => throw new NotImplementedException(); - set - { - throw new NotImplementedException(); - } + set => throw new NotImplementedException(); } public override long Seek(long offset, SeekOrigin origin) diff --git a/SocketHttpListener/Net/HttpResponseStream.Managed.cs b/SocketHttpListener/Net/HttpResponseStream.Managed.cs index 719dfcc12..5d02a9c95 100644 --- a/SocketHttpListener/Net/HttpResponseStream.Managed.cs +++ b/SocketHttpListener/Net/HttpResponseStream.Managed.cs @@ -1,15 +1,13 @@ -using System; -using System.Collections.Generic; +using System; using System.IO; using System.Net; using System.Net.Sockets; -using System.Runtime.ExceptionServices; using System.Text; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.IO; -using Microsoft.Extensions.Logging; using MediaBrowser.Model.System; +using Microsoft.Extensions.Logging; namespace SocketHttpListener.Net { @@ -228,7 +226,7 @@ namespace SocketHttpListener.Net { if (_closed) { - HttpStreamAsyncResult ares = new HttpStreamAsyncResult(this); + var ares = new HttpStreamAsyncResult(this); ares._callback = cback; ares._state = state; ares.Complete(); diff --git a/SocketHttpListener/Net/HttpResponseStream.cs b/SocketHttpListener/Net/HttpResponseStream.cs index 5b7fa417f..085c2ad0c 100644 --- a/SocketHttpListener/Net/HttpResponseStream.cs +++ b/SocketHttpListener/Net/HttpResponseStream.cs @@ -1,7 +1,5 @@ -using System; -using System.Collections.Generic; +using System; using System.IO; -using System.Text; using System.Threading; using System.Threading.Tasks; @@ -19,25 +17,13 @@ namespace SocketHttpListener.Net public override void Flush() { } public override Task FlushAsync(CancellationToken cancellationToken) => Task.CompletedTask; - public override long Length - { - get - { - throw new NotImplementedException(); - } - } + public override long Length => throw new NotImplementedException(); public override long Position { - get - { - throw new NotImplementedException(); - } + get => throw new NotImplementedException(); - set - { - throw new NotImplementedException(); - } + set => throw new NotImplementedException(); } public override long Seek(long offset, SeekOrigin origin) diff --git a/SocketHttpListener/Net/HttpStatusCode.cs b/SocketHttpListener/Net/HttpStatusCode.cs index 93da82ba0..d4bb61b8a 100644 --- a/SocketHttpListener/Net/HttpStatusCode.cs +++ b/SocketHttpListener/Net/HttpStatusCode.cs @@ -1,321 +1,321 @@ namespace SocketHttpListener.Net { - /// <summary> - /// Contains the values of the HTTP status codes. - /// </summary> - /// <remarks> - /// The HttpStatusCode enumeration contains the values of the HTTP status codes defined in - /// <see href="http://tools.ietf.org/html/rfc2616#section-10">RFC 2616</see> for HTTP 1.1. - /// </remarks> - public enum HttpStatusCode - { /// <summary> - /// Equivalent to status code 100. - /// Indicates that the client should continue with its request. - /// </summary> - Continue = 100, - /// <summary> - /// Equivalent to status code 101. - /// Indicates that the server is switching the HTTP version or protocol on the connection. - /// </summary> - SwitchingProtocols = 101, - /// <summary> - /// Equivalent to status code 200. - /// Indicates that the client's request has succeeded. - /// </summary> - OK = 200, - /// <summary> - /// Equivalent to status code 201. - /// Indicates that the client's request has been fulfilled and resulted in a new resource being - /// created. - /// </summary> - Created = 201, - /// <summary> - /// Equivalent to status code 202. - /// Indicates that the client's request has been accepted for processing, but the processing - /// hasn't been completed. - /// </summary> - Accepted = 202, - /// <summary> - /// Equivalent to status code 203. - /// Indicates that the returned metainformation is from a local or a third-party copy instead of - /// the origin server. - /// </summary> - NonAuthoritativeInformation = 203, - /// <summary> - /// Equivalent to status code 204. - /// Indicates that the server has fulfilled the client's request but doesn't need to return - /// an entity-body. - /// </summary> - NoContent = 204, - /// <summary> - /// Equivalent to status code 205. - /// Indicates that the server has fulfilled the client's request, and the user agent should - /// reset the document view which caused the request to be sent. - /// </summary> - ResetContent = 205, - /// <summary> - /// Equivalent to status code 206. - /// Indicates that the server has fulfilled the partial GET request for the resource. - /// </summary> - PartialContent = 206, - /// <summary> - /// <para> - /// Equivalent to status code 300. - /// Indicates that the requested resource corresponds to any of multiple representations. - /// </para> - /// <para> - /// MultipleChoices is a synonym for Ambiguous. - /// </para> - /// </summary> - MultipleChoices = 300, - /// <summary> - /// <para> - /// Equivalent to status code 300. - /// Indicates that the requested resource corresponds to any of multiple representations. - /// </para> - /// <para> - /// Ambiguous is a synonym for MultipleChoices. - /// </para> - /// </summary> - Ambiguous = 300, - /// <summary> - /// <para> - /// Equivalent to status code 301. - /// Indicates that the requested resource has been assigned a new permanent URI and - /// any future references to this resource should use one of the returned URIs. - /// </para> - /// <para> - /// MovedPermanently is a synonym for Moved. - /// </para> - /// </summary> - MovedPermanently = 301, - /// <summary> - /// <para> - /// Equivalent to status code 301. - /// Indicates that the requested resource has been assigned a new permanent URI and - /// any future references to this resource should use one of the returned URIs. - /// </para> - /// <para> - /// Moved is a synonym for MovedPermanently. - /// </para> - /// </summary> - Moved = 301, - /// <summary> - /// <para> - /// Equivalent to status code 302. - /// Indicates that the requested resource is located temporarily under a different URI. - /// </para> - /// <para> - /// Found is a synonym for Redirect. - /// </para> - /// </summary> - Found = 302, - /// <summary> - /// <para> - /// Equivalent to status code 302. - /// Indicates that the requested resource is located temporarily under a different URI. - /// </para> - /// <para> - /// Redirect is a synonym for Found. - /// </para> - /// </summary> - Redirect = 302, - /// <summary> - /// <para> - /// Equivalent to status code 303. - /// Indicates that the response to the request can be found under a different URI and - /// should be retrieved using a GET method on that resource. - /// </para> - /// <para> - /// SeeOther is a synonym for RedirectMethod. - /// </para> - /// </summary> - SeeOther = 303, - /// <summary> - /// <para> - /// Equivalent to status code 303. - /// Indicates that the response to the request can be found under a different URI and - /// should be retrieved using a GET method on that resource. - /// </para> - /// <para> - /// RedirectMethod is a synonym for SeeOther. - /// </para> - /// </summary> - RedirectMethod = 303, - /// <summary> - /// Equivalent to status code 304. - /// Indicates that the client has performed a conditional GET request and access is allowed, - /// but the document hasn't been modified. - /// </summary> - NotModified = 304, - /// <summary> - /// Equivalent to status code 305. - /// Indicates that the requested resource must be accessed through the proxy given by - /// the Location field. - /// </summary> - UseProxy = 305, - /// <summary> - /// Equivalent to status code 306. - /// This status code was used in a previous version of the specification, is no longer used, - /// and is reserved for future use. - /// </summary> - Unused = 306, - /// <summary> - /// <para> - /// Equivalent to status code 307. - /// Indicates that the requested resource is located temporarily under a different URI. - /// </para> - /// <para> - /// TemporaryRedirect is a synonym for RedirectKeepVerb. - /// </para> - /// </summary> - TemporaryRedirect = 307, - /// <summary> - /// <para> - /// Equivalent to status code 307. - /// Indicates that the requested resource is located temporarily under a different URI. - /// </para> - /// <para> - /// RedirectKeepVerb is a synonym for TemporaryRedirect. - /// </para> - /// </summary> - RedirectKeepVerb = 307, - /// <summary> - /// Equivalent to status code 400. - /// Indicates that the client's request couldn't be understood by the server due to - /// malformed syntax. - /// </summary> - BadRequest = 400, - /// <summary> - /// Equivalent to status code 401. - /// Indicates that the client's request requires user authentication. - /// </summary> - Unauthorized = 401, - /// <summary> - /// Equivalent to status code 402. - /// This status code is reserved for future use. - /// </summary> - PaymentRequired = 402, - /// <summary> - /// Equivalent to status code 403. - /// Indicates that the server understood the client's request but is refusing to fulfill it. - /// </summary> - Forbidden = 403, - /// <summary> - /// Equivalent to status code 404. - /// Indicates that the server hasn't found anything matching the request URI. - /// </summary> - NotFound = 404, - /// <summary> - /// Equivalent to status code 405. - /// Indicates that the method specified in the request line isn't allowed for the resource - /// identified by the request URI. - /// </summary> - MethodNotAllowed = 405, - /// <summary> - /// Equivalent to status code 406. - /// Indicates that the server doesn't have the appropriate resource to respond to the Accept - /// headers in the client's request. - /// </summary> - NotAcceptable = 406, - /// <summary> - /// Equivalent to status code 407. - /// Indicates that the client must first authenticate itself with the proxy. - /// </summary> - ProxyAuthenticationRequired = 407, - /// <summary> - /// Equivalent to status code 408. - /// Indicates that the client didn't produce a request within the time that the server was - /// prepared to wait. - /// </summary> - RequestTimeout = 408, - /// <summary> - /// Equivalent to status code 409. - /// Indicates that the client's request couldn't be completed due to a conflict on the server. - /// </summary> - Conflict = 409, - /// <summary> - /// Equivalent to status code 410. - /// Indicates that the requested resource is no longer available at the server and - /// no forwarding address is known. - /// </summary> - Gone = 410, - /// <summary> - /// Equivalent to status code 411. - /// Indicates that the server refuses to accept the client's request without a defined - /// Content-Length. - /// </summary> - LengthRequired = 411, - /// <summary> - /// Equivalent to status code 412. - /// Indicates that the precondition given in one or more of the request headers evaluated to - /// false when it was tested on the server. - /// </summary> - PreconditionFailed = 412, - /// <summary> - /// Equivalent to status code 413. - /// Indicates that the entity of the client's request is larger than the server is willing or - /// able to process. - /// </summary> - RequestEntityTooLarge = 413, - /// <summary> - /// Equivalent to status code 414. - /// Indicates that the request URI is longer than the server is willing to interpret. - /// </summary> - RequestUriTooLong = 414, - /// <summary> - /// Equivalent to status code 415. - /// Indicates that the entity of the client's request is in a format not supported by - /// the requested resource for the requested method. - /// </summary> - UnsupportedMediaType = 415, - /// <summary> - /// Equivalent to status code 416. - /// Indicates that none of the range specifier values in a Range request header overlap - /// the current extent of the selected resource. - /// </summary> - RequestedRangeNotSatisfiable = 416, - /// <summary> - /// Equivalent to status code 417. - /// Indicates that the expectation given in an Expect request header couldn't be met by - /// the server. - /// </summary> - ExpectationFailed = 417, - /// <summary> - /// Equivalent to status code 500. - /// Indicates that the server encountered an unexpected condition which prevented it from - /// fulfilling the client's request. - /// </summary> - InternalServerError = 500, - /// <summary> - /// Equivalent to status code 501. - /// Indicates that the server doesn't support the functionality required to fulfill the client's - /// request. - /// </summary> - NotImplemented = 501, - /// <summary> - /// Equivalent to status code 502. - /// Indicates that a gateway or proxy server received an invalid response from the upstream - /// server. - /// </summary> - BadGateway = 502, - /// <summary> - /// Equivalent to status code 503. - /// Indicates that the server is currently unable to handle the client's request due to - /// a temporary overloading or maintenance of the server. - /// </summary> - ServiceUnavailable = 503, - /// <summary> - /// Equivalent to status code 504. - /// Indicates that a gateway or proxy server didn't receive a timely response from the upstream - /// server or some other auxiliary server. - /// </summary> - GatewayTimeout = 504, - /// <summary> - /// Equivalent to status code 505. - /// Indicates that the server doesn't support the HTTP version used in the client's request. - /// </summary> - HttpVersionNotSupported = 505, - } + /// Contains the values of the HTTP status codes. + /// </summary> + /// <remarks> + /// The HttpStatusCode enumeration contains the values of the HTTP status codes defined in + /// <see href="http://tools.ietf.org/html/rfc2616#section-10">RFC 2616</see> for HTTP 1.1. + /// </remarks> + public enum HttpStatusCode + { + /// <summary> + /// Equivalent to status code 100. + /// Indicates that the client should continue with its request. + /// </summary> + Continue = 100, + /// <summary> + /// Equivalent to status code 101. + /// Indicates that the server is switching the HTTP version or protocol on the connection. + /// </summary> + SwitchingProtocols = 101, + /// <summary> + /// Equivalent to status code 200. + /// Indicates that the client's request has succeeded. + /// </summary> + OK = 200, + /// <summary> + /// Equivalent to status code 201. + /// Indicates that the client's request has been fulfilled and resulted in a new resource being + /// created. + /// </summary> + Created = 201, + /// <summary> + /// Equivalent to status code 202. + /// Indicates that the client's request has been accepted for processing, but the processing + /// hasn't been completed. + /// </summary> + Accepted = 202, + /// <summary> + /// Equivalent to status code 203. + /// Indicates that the returned metainformation is from a local or a third-party copy instead of + /// the origin server. + /// </summary> + NonAuthoritativeInformation = 203, + /// <summary> + /// Equivalent to status code 204. + /// Indicates that the server has fulfilled the client's request but doesn't need to return + /// an entity-body. + /// </summary> + NoContent = 204, + /// <summary> + /// Equivalent to status code 205. + /// Indicates that the server has fulfilled the client's request, and the user agent should + /// reset the document view which caused the request to be sent. + /// </summary> + ResetContent = 205, + /// <summary> + /// Equivalent to status code 206. + /// Indicates that the server has fulfilled the partial GET request for the resource. + /// </summary> + PartialContent = 206, + /// <summary> + /// <para> + /// Equivalent to status code 300. + /// Indicates that the requested resource corresponds to any of multiple representations. + /// </para> + /// <para> + /// MultipleChoices is a synonym for Ambiguous. + /// </para> + /// </summary> + MultipleChoices = 300, + /// <summary> + /// <para> + /// Equivalent to status code 300. + /// Indicates that the requested resource corresponds to any of multiple representations. + /// </para> + /// <para> + /// Ambiguous is a synonym for MultipleChoices. + /// </para> + /// </summary> + Ambiguous = 300, + /// <summary> + /// <para> + /// Equivalent to status code 301. + /// Indicates that the requested resource has been assigned a new permanent URI and + /// any future references to this resource should use one of the returned URIs. + /// </para> + /// <para> + /// MovedPermanently is a synonym for Moved. + /// </para> + /// </summary> + MovedPermanently = 301, + /// <summary> + /// <para> + /// Equivalent to status code 301. + /// Indicates that the requested resource has been assigned a new permanent URI and + /// any future references to this resource should use one of the returned URIs. + /// </para> + /// <para> + /// Moved is a synonym for MovedPermanently. + /// </para> + /// </summary> + Moved = 301, + /// <summary> + /// <para> + /// Equivalent to status code 302. + /// Indicates that the requested resource is located temporarily under a different URI. + /// </para> + /// <para> + /// Found is a synonym for Redirect. + /// </para> + /// </summary> + Found = 302, + /// <summary> + /// <para> + /// Equivalent to status code 302. + /// Indicates that the requested resource is located temporarily under a different URI. + /// </para> + /// <para> + /// Redirect is a synonym for Found. + /// </para> + /// </summary> + Redirect = 302, + /// <summary> + /// <para> + /// Equivalent to status code 303. + /// Indicates that the response to the request can be found under a different URI and + /// should be retrieved using a GET method on that resource. + /// </para> + /// <para> + /// SeeOther is a synonym for RedirectMethod. + /// </para> + /// </summary> + SeeOther = 303, + /// <summary> + /// <para> + /// Equivalent to status code 303. + /// Indicates that the response to the request can be found under a different URI and + /// should be retrieved using a GET method on that resource. + /// </para> + /// <para> + /// RedirectMethod is a synonym for SeeOther. + /// </para> + /// </summary> + RedirectMethod = 303, + /// <summary> + /// Equivalent to status code 304. + /// Indicates that the client has performed a conditional GET request and access is allowed, + /// but the document hasn't been modified. + /// </summary> + NotModified = 304, + /// <summary> + /// Equivalent to status code 305. + /// Indicates that the requested resource must be accessed through the proxy given by + /// the Location field. + /// </summary> + UseProxy = 305, + /// <summary> + /// Equivalent to status code 306. + /// This status code was used in a previous version of the specification, is no longer used, + /// and is reserved for future use. + /// </summary> + Unused = 306, + /// <summary> + /// <para> + /// Equivalent to status code 307. + /// Indicates that the requested resource is located temporarily under a different URI. + /// </para> + /// <para> + /// TemporaryRedirect is a synonym for RedirectKeepVerb. + /// </para> + /// </summary> + TemporaryRedirect = 307, + /// <summary> + /// <para> + /// Equivalent to status code 307. + /// Indicates that the requested resource is located temporarily under a different URI. + /// </para> + /// <para> + /// RedirectKeepVerb is a synonym for TemporaryRedirect. + /// </para> + /// </summary> + RedirectKeepVerb = 307, + /// <summary> + /// Equivalent to status code 400. + /// Indicates that the client's request couldn't be understood by the server due to + /// malformed syntax. + /// </summary> + BadRequest = 400, + /// <summary> + /// Equivalent to status code 401. + /// Indicates that the client's request requires user authentication. + /// </summary> + Unauthorized = 401, + /// <summary> + /// Equivalent to status code 402. + /// This status code is reserved for future use. + /// </summary> + PaymentRequired = 402, + /// <summary> + /// Equivalent to status code 403. + /// Indicates that the server understood the client's request but is refusing to fulfill it. + /// </summary> + Forbidden = 403, + /// <summary> + /// Equivalent to status code 404. + /// Indicates that the server hasn't found anything matching the request URI. + /// </summary> + NotFound = 404, + /// <summary> + /// Equivalent to status code 405. + /// Indicates that the method specified in the request line isn't allowed for the resource + /// identified by the request URI. + /// </summary> + MethodNotAllowed = 405, + /// <summary> + /// Equivalent to status code 406. + /// Indicates that the server doesn't have the appropriate resource to respond to the Accept + /// headers in the client's request. + /// </summary> + NotAcceptable = 406, + /// <summary> + /// Equivalent to status code 407. + /// Indicates that the client must first authenticate itself with the proxy. + /// </summary> + ProxyAuthenticationRequired = 407, + /// <summary> + /// Equivalent to status code 408. + /// Indicates that the client didn't produce a request within the time that the server was + /// prepared to wait. + /// </summary> + RequestTimeout = 408, + /// <summary> + /// Equivalent to status code 409. + /// Indicates that the client's request couldn't be completed due to a conflict on the server. + /// </summary> + Conflict = 409, + /// <summary> + /// Equivalent to status code 410. + /// Indicates that the requested resource is no longer available at the server and + /// no forwarding address is known. + /// </summary> + Gone = 410, + /// <summary> + /// Equivalent to status code 411. + /// Indicates that the server refuses to accept the client's request without a defined + /// Content-Length. + /// </summary> + LengthRequired = 411, + /// <summary> + /// Equivalent to status code 412. + /// Indicates that the precondition given in one or more of the request headers evaluated to + /// false when it was tested on the server. + /// </summary> + PreconditionFailed = 412, + /// <summary> + /// Equivalent to status code 413. + /// Indicates that the entity of the client's request is larger than the server is willing or + /// able to process. + /// </summary> + RequestEntityTooLarge = 413, + /// <summary> + /// Equivalent to status code 414. + /// Indicates that the request URI is longer than the server is willing to interpret. + /// </summary> + RequestUriTooLong = 414, + /// <summary> + /// Equivalent to status code 415. + /// Indicates that the entity of the client's request is in a format not supported by + /// the requested resource for the requested method. + /// </summary> + UnsupportedMediaType = 415, + /// <summary> + /// Equivalent to status code 416. + /// Indicates that none of the range specifier values in a Range request header overlap + /// the current extent of the selected resource. + /// </summary> + RequestedRangeNotSatisfiable = 416, + /// <summary> + /// Equivalent to status code 417. + /// Indicates that the expectation given in an Expect request header couldn't be met by + /// the server. + /// </summary> + ExpectationFailed = 417, + /// <summary> + /// Equivalent to status code 500. + /// Indicates that the server encountered an unexpected condition which prevented it from + /// fulfilling the client's request. + /// </summary> + InternalServerError = 500, + /// <summary> + /// Equivalent to status code 501. + /// Indicates that the server doesn't support the functionality required to fulfill the client's + /// request. + /// </summary> + NotImplemented = 501, + /// <summary> + /// Equivalent to status code 502. + /// Indicates that a gateway or proxy server received an invalid response from the upstream + /// server. + /// </summary> + BadGateway = 502, + /// <summary> + /// Equivalent to status code 503. + /// Indicates that the server is currently unable to handle the client's request due to + /// a temporary overloading or maintenance of the server. + /// </summary> + ServiceUnavailable = 503, + /// <summary> + /// Equivalent to status code 504. + /// Indicates that a gateway or proxy server didn't receive a timely response from the upstream + /// server or some other auxiliary server. + /// </summary> + GatewayTimeout = 504, + /// <summary> + /// Equivalent to status code 505. + /// Indicates that the server doesn't support the HTTP version used in the client's request. + /// </summary> + HttpVersionNotSupported = 505, + } } diff --git a/SocketHttpListener/Net/HttpStatusDescription.cs b/SocketHttpListener/Net/HttpStatusDescription.cs index 9cc4a8e8c..a4e42560b 100644 --- a/SocketHttpListener/Net/HttpStatusDescription.cs +++ b/SocketHttpListener/Net/HttpStatusDescription.cs @@ -1,8 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; -using System.Threading.Tasks; - namespace SocketHttpListener.Net { internal static class HttpStatusDescription diff --git a/SocketHttpListener/Net/HttpStreamAsyncResult.cs b/SocketHttpListener/Net/HttpStreamAsyncResult.cs index d96988fce..46944c624 100644 --- a/SocketHttpListener/Net/HttpStreamAsyncResult.cs +++ b/SocketHttpListener/Net/HttpStreamAsyncResult.cs @@ -47,10 +47,7 @@ namespace SocketHttpListener.Net } } - public object AsyncState - { - get { return _state; } - } + public object AsyncState => _state; public WaitHandle AsyncWaitHandle { diff --git a/SocketHttpListener/Net/ListenerPrefix.cs b/SocketHttpListener/Net/ListenerPrefix.cs index 99bb118e5..edfcb8904 100644 --- a/SocketHttpListener/Net/ListenerPrefix.cs +++ b/SocketHttpListener/Net/ListenerPrefix.cs @@ -1,6 +1,5 @@ using System; using System.Net; -using MediaBrowser.Model.Net; namespace SocketHttpListener.Net { @@ -27,33 +26,21 @@ namespace SocketHttpListener.Net public IPAddress[] Addresses { - get { return _addresses; } - set { _addresses = value; } - } - public bool Secure - { - get { return _secure; } + get => _addresses; + set => _addresses = value; } + public bool Secure => _secure; - public string Host - { - get { return _host; } - } + public string Host => _host; - public int Port - { - get { return _port; } - } + public int Port => _port; - public string Path - { - get { return _path; } - } + public string Path => _path; // Equals and GetHashCode are required to detect duplicates in HttpListenerPrefixCollection. public override bool Equals(object o) { - ListenerPrefix other = o as ListenerPrefix; + var other = o as ListenerPrefix; if (other == null) return false; diff --git a/SocketHttpListener/Net/UriScheme.cs b/SocketHttpListener/Net/UriScheme.cs index 732fc0e7d..33d1f09db 100644 --- a/SocketHttpListener/Net/UriScheme.cs +++ b/SocketHttpListener/Net/UriScheme.cs @@ -1,7 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; - namespace SocketHttpListener.Net { internal static class UriScheme diff --git a/SocketHttpListener/Net/WebHeaderCollection.cs b/SocketHttpListener/Net/WebHeaderCollection.cs index ed3cb921c..34fca808b 100644 --- a/SocketHttpListener/Net/WebHeaderCollection.cs +++ b/SocketHttpListener/Net/WebHeaderCollection.cs @@ -1,13 +1,8 @@ using System; -using System.Collections; using System.Collections.Generic; -using System.Collections.Specialized; -using System.Net; using System.Runtime.InteropServices; -using System.Runtime.Serialization; using System.Text; using MediaBrowser.Model.Services; -using MediaBrowser.Model.Extensions; namespace SocketHttpListener.Net { @@ -213,8 +208,7 @@ namespace SocketHttpListener.Net if (!IsHeaderName(headerName)) throw new ArgumentException("Invalid character in header"); - HeaderInfo info; - if (!headers.TryGetValue(headerName, out info)) + if (!headers.TryGetValue(headerName, out HeaderInfo info)) return false; var flag = response ? HeaderInfo.Response : HeaderInfo.Request; @@ -239,7 +233,7 @@ namespace SocketHttpListener.Net internal string ToStringMultiValue() { - StringBuilder sb = new StringBuilder(); + var sb = new StringBuilder(); int count = base.Count; for (int i = 0; i < count; i++) @@ -268,7 +262,7 @@ namespace SocketHttpListener.Net public override string ToString() { - StringBuilder sb = new StringBuilder(); + var sb = new StringBuilder(); int count = base.Count; for (int i = 0; i < count; i++) @@ -318,8 +312,7 @@ namespace SocketHttpListener.Net if (headerName == null) return false; - HeaderInfo info; - return headers.TryGetValue(headerName, out info) && (info & HeaderInfo.MultiValue) != 0; + return headers.TryGetValue(headerName, out HeaderInfo info) && (info & HeaderInfo.MultiValue) != 0; } internal static bool IsHeaderValue(string value) diff --git a/SocketHttpListener/Net/WebHeaderEncoding.cs b/SocketHttpListener/Net/WebHeaderEncoding.cs index 7290bfc63..b65ff3c0d 100644 --- a/SocketHttpListener/Net/WebHeaderEncoding.cs +++ b/SocketHttpListener/Net/WebHeaderEncoding.cs @@ -1,7 +1,4 @@ -using System; -using System.Collections.Generic; using System.Text; -using System.Threading.Tasks; namespace SocketHttpListener.Net { diff --git a/SocketHttpListener/Net/WebSockets/HttpListenerWebSocketContext.cs b/SocketHttpListener/Net/WebSockets/HttpListenerWebSocketContext.cs index 49375678d..5ed49ec47 100644 --- a/SocketHttpListener/Net/WebSockets/HttpListenerWebSocketContext.cs +++ b/SocketHttpListener/Net/WebSockets/HttpListenerWebSocketContext.cs @@ -1,14 +1,8 @@ using System; using System.Collections.Generic; -using System.Collections.Specialized; -using System.IO; using System.Net; using System.Security.Principal; -using MediaBrowser.Model.Cryptography; -using MediaBrowser.Model.IO; -using MediaBrowser.Model.Net; using MediaBrowser.Model.Services; -using SocketHttpListener.Primitives; namespace SocketHttpListener.Net.WebSockets { diff --git a/SocketHttpListener/Net/WebSockets/HttpWebSocket.Managed.cs b/SocketHttpListener/Net/WebSockets/HttpWebSocket.Managed.cs index 571e4bdba..1cfd2dc90 100644 --- a/SocketHttpListener/Net/WebSockets/HttpWebSocket.Managed.cs +++ b/SocketHttpListener/Net/WebSockets/HttpWebSocket.Managed.cs @@ -1,6 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Text; +using System; using System.Threading.Tasks; namespace SocketHttpListener.Net.WebSockets @@ -28,12 +26,11 @@ namespace SocketHttpListener.Net.WebSockets string origin = request.Headers[HttpKnownHeaderNames.Origin]; string[] secWebSocketProtocols = null; - string outgoingSecWebSocketProtocolString; bool shouldSendSecWebSocketProtocolHeader = ProcessWebSocketProtocolHeader( request.Headers[HttpKnownHeaderNames.SecWebSocketProtocol], subProtocol, - out outgoingSecWebSocketProtocolString); + out var outgoingSecWebSocketProtocolString); if (shouldSendSecWebSocketProtocolHeader) { @@ -52,15 +49,15 @@ namespace SocketHttpListener.Net.WebSockets response.StatusCode = (int)HttpStatusCode.SwitchingProtocols; // HTTP 101 response.StatusDescription = HttpStatusDescription.Get(HttpStatusCode.SwitchingProtocols); - HttpResponseStream responseStream = response.OutputStream as HttpResponseStream; + var responseStream = response.OutputStream as HttpResponseStream; // Send websocket handshake headers await responseStream.WriteWebSocketHandshakeHeadersAsync().ConfigureAwait(false); //WebSocket webSocket = WebSocket.CreateFromStream(context.Connection.ConnectedStream, isServer: true, subProtocol, keepAliveInterval); - WebSocket webSocket = new WebSocket(subProtocol); + var webSocket = new WebSocket(subProtocol); - HttpListenerWebSocketContext webSocketContext = new HttpListenerWebSocketContext( + var webSocketContext = new HttpListenerWebSocketContext( request.Url, request.Headers, request.Cookies, diff --git a/SocketHttpListener/Net/WebSockets/HttpWebSocket.cs b/SocketHttpListener/Net/WebSockets/HttpWebSocket.cs index f72a139f3..b346cc98e 100644 --- a/SocketHttpListener/Net/WebSockets/HttpWebSocket.cs +++ b/SocketHttpListener/Net/WebSockets/HttpWebSocket.cs @@ -1,8 +1,7 @@ using System; -using System.Collections.Generic; -using System.Text; using System.Diagnostics.CodeAnalysis; using System.Security.Cryptography; +using System.Text; using System.Threading; namespace SocketHttpListener.Net.WebSockets @@ -20,7 +19,7 @@ namespace SocketHttpListener.Net.WebSockets string retVal; // SHA1 used only for hashing purposes, not for crypto. Check here for FIPS compat. - using (SHA1 sha1 = SHA1.Create()) + using (var sha1 = SHA1.Create()) { string acceptString = string.Concat(secWebSocketKey, HttpWebSocket.SecWebSocketKeyGuid); byte[] toHash = Encoding.UTF8.GetBytes(acceptString); diff --git a/SocketHttpListener/Net/WebSockets/WebSocketCloseStatus.cs b/SocketHttpListener/Net/WebSockets/WebSocketCloseStatus.cs index b83b6cd0f..5ac89cf48 100644 --- a/SocketHttpListener/Net/WebSockets/WebSocketCloseStatus.cs +++ b/SocketHttpListener/Net/WebSockets/WebSocketCloseStatus.cs @@ -1,7 +1,3 @@ -using System; -using System.Collections.Generic; -using System.Text; - namespace SocketHttpListener.Net.WebSockets { public enum WebSocketCloseStatus diff --git a/SocketHttpListener/Net/WebSockets/WebSocketContext.cs b/SocketHttpListener/Net/WebSockets/WebSocketContext.cs index 071b5fe05..10ad86439 100644 --- a/SocketHttpListener/Net/WebSockets/WebSocketContext.cs +++ b/SocketHttpListener/Net/WebSockets/WebSocketContext.cs @@ -1,9 +1,7 @@ using System; using System.Collections.Generic; -using System.Collections.Specialized; using System.Net; using System.Security.Principal; -using MediaBrowser.Model.Net; using MediaBrowser.Model.Services; namespace SocketHttpListener.Net.WebSockets diff --git a/SocketHttpListener/Net/WebSockets/WebSocketValidate.cs b/SocketHttpListener/Net/WebSockets/WebSocketValidate.cs index 00895ea01..0469e3b6c 100644 --- a/SocketHttpListener/Net/WebSockets/WebSocketValidate.cs +++ b/SocketHttpListener/Net/WebSockets/WebSocketValidate.cs @@ -1,8 +1,6 @@ -using System; -using System.Collections.Generic; -using System.Text; -using MediaBrowser.Model.Net; +using System; using System.Globalization; +using System.Text; using WebSocketState = System.Net.WebSockets.WebSocketState; namespace SocketHttpListener.Net.WebSockets diff --git a/SocketHttpListener/Opcode.cs b/SocketHttpListener/Opcode.cs index 62b7d8585..69cf3f372 100644 --- a/SocketHttpListener/Opcode.cs +++ b/SocketHttpListener/Opcode.cs @@ -1,43 +1,43 @@ namespace SocketHttpListener { - /// <summary> - /// Contains the values of the opcode that indicates the type of a WebSocket frame. - /// </summary> - /// <remarks> - /// The values of the opcode are defined in - /// <see href="http://tools.ietf.org/html/rfc6455#section-5.2">Section 5.2</see> of RFC 6455. - /// </remarks> - public enum Opcode : byte - { /// <summary> - /// Equivalent to numeric value 0. - /// Indicates a continuation frame. + /// Contains the values of the opcode that indicates the type of a WebSocket frame. /// </summary> - Cont = 0x0, - /// <summary> - /// Equivalent to numeric value 1. - /// Indicates a text frame. - /// </summary> - Text = 0x1, - /// <summary> - /// Equivalent to numeric value 2. - /// Indicates a binary frame. - /// </summary> - Binary = 0x2, - /// <summary> - /// Equivalent to numeric value 8. - /// Indicates a connection close frame. - /// </summary> - Close = 0x8, - /// <summary> - /// Equivalent to numeric value 9. - /// Indicates a ping frame. - /// </summary> - Ping = 0x9, - /// <summary> - /// Equivalent to numeric value 10. - /// Indicates a pong frame. - /// </summary> - Pong = 0xa - } + /// <remarks> + /// The values of the opcode are defined in + /// <see href="http://tools.ietf.org/html/rfc6455#section-5.2">Section 5.2</see> of RFC 6455. + /// </remarks> + public enum Opcode : byte + { + /// <summary> + /// Equivalent to numeric value 0. + /// Indicates a continuation frame. + /// </summary> + Cont = 0x0, + /// <summary> + /// Equivalent to numeric value 1. + /// Indicates a text frame. + /// </summary> + Text = 0x1, + /// <summary> + /// Equivalent to numeric value 2. + /// Indicates a binary frame. + /// </summary> + Binary = 0x2, + /// <summary> + /// Equivalent to numeric value 8. + /// Indicates a connection close frame. + /// </summary> + Close = 0x8, + /// <summary> + /// Equivalent to numeric value 9. + /// Indicates a ping frame. + /// </summary> + Ping = 0x9, + /// <summary> + /// Equivalent to numeric value 10. + /// Indicates a pong frame. + /// </summary> + Pong = 0xa + } } diff --git a/SocketHttpListener/PayloadData.cs b/SocketHttpListener/PayloadData.cs index a6318da2b..6d15a6bcb 100644 --- a/SocketHttpListener/PayloadData.cs +++ b/SocketHttpListener/PayloadData.cs @@ -5,145 +5,126 @@ using System.Text; namespace SocketHttpListener { - internal class PayloadData : IEnumerable<byte> - { - #region Private Fields + internal class PayloadData : IEnumerable<byte> + { + #region Private Fields - private byte [] _applicationData; - private byte [] _extensionData; - private bool _masked; + private byte[] _applicationData; + private byte[] _extensionData; + private bool _masked; - #endregion + #endregion - #region Public Const Fields + #region Public Const Fields - public const ulong MaxLength = long.MaxValue; + public const ulong MaxLength = long.MaxValue; - #endregion + #endregion - #region Public Constructors + #region Public Constructors - public PayloadData () - : this (new byte [0], new byte [0], false) - { - } + public PayloadData() + : this(new byte[0], new byte[0], false) + { + } - public PayloadData (byte [] applicationData) - : this (new byte [0], applicationData, false) - { - } + public PayloadData(byte[] applicationData) + : this(new byte[0], applicationData, false) + { + } - public PayloadData (string applicationData) - : this (new byte [0], Encoding.UTF8.GetBytes (applicationData), false) - { - } + public PayloadData(string applicationData) + : this(new byte[0], Encoding.UTF8.GetBytes(applicationData), false) + { + } - public PayloadData (byte [] applicationData, bool masked) - : this (new byte [0], applicationData, masked) - { - } + public PayloadData(byte[] applicationData, bool masked) + : this(new byte[0], applicationData, masked) + { + } - public PayloadData (byte [] extensionData, byte [] applicationData, bool masked) - { - _extensionData = extensionData; - _applicationData = applicationData; - _masked = masked; - } + public PayloadData(byte[] extensionData, byte[] applicationData, bool masked) + { + _extensionData = extensionData; + _applicationData = applicationData; + _masked = masked; + } - #endregion + #endregion - #region Internal Properties + #region Internal Properties - internal bool ContainsReservedCloseStatusCode { - get { - return _applicationData.Length > 1 && - _applicationData.SubArray (0, 2).ToUInt16 (ByteOrder.Big).IsReserved (); - } - } + internal bool ContainsReservedCloseStatusCode => + _applicationData.Length > 1 && + _applicationData.SubArray(0, 2).ToUInt16(ByteOrder.Big).IsReserved(); - #endregion + #endregion - #region Public Properties + #region Public Properties - public byte [] ApplicationData { - get { - return _applicationData; - } - } + public byte[] ApplicationData => _applicationData; - public byte [] ExtensionData { - get { - return _extensionData; - } - } + public byte[] ExtensionData => _extensionData; - public bool IsMasked { - get { - return _masked; - } - } + public bool IsMasked => _masked; - public ulong Length { - get { - return (ulong) (_extensionData.Length + _applicationData.Length); - } - } + public ulong Length => (ulong)(_extensionData.Length + _applicationData.Length); - #endregion + #endregion - #region Private Methods + #region Private Methods - private static void mask (byte [] src, byte [] key) - { - for (long i = 0; i < src.Length; i++) - src [i] = (byte) (src [i] ^ key [i % 4]); - } + private static void mask(byte[] src, byte[] key) + { + for (long i = 0; i < src.Length; i++) + src[i] = (byte)(src[i] ^ key[i % 4]); + } - #endregion + #endregion - #region Public Methods + #region Public Methods - public IEnumerator<byte> GetEnumerator () - { - foreach (byte b in _extensionData) - yield return b; + public IEnumerator<byte> GetEnumerator() + { + foreach (byte b in _extensionData) + yield return b; - foreach (byte b in _applicationData) - yield return b; - } + foreach (byte b in _applicationData) + yield return b; + } - public void Mask (byte [] maskingKey) - { - if (_extensionData.Length > 0) - mask (_extensionData, maskingKey); + public void Mask(byte[] maskingKey) + { + if (_extensionData.Length > 0) + mask(_extensionData, maskingKey); - if (_applicationData.Length > 0) - mask (_applicationData, maskingKey); + if (_applicationData.Length > 0) + mask(_applicationData, maskingKey); - _masked = !_masked; - } + _masked = !_masked; + } - public byte [] ToByteArray () - { - return _extensionData.Length > 0 - ? new List<byte> (this).ToArray () - : _applicationData; - } + public byte[] ToByteArray() + { + return _extensionData.Length > 0 + ? new List<byte>(this).ToArray() + : _applicationData; + } - public override string ToString () - { - return BitConverter.ToString (ToByteArray ()); - } + public override string ToString() + { + return BitConverter.ToString(ToByteArray()); + } - #endregion + #endregion - #region Explicitly Implemented Interface Members + #region Explicitly Implemented Interface Members - IEnumerator IEnumerable.GetEnumerator () - { - return GetEnumerator (); - } + IEnumerator IEnumerable.GetEnumerator() + { + return GetEnumerator(); + } - #endregion - } + #endregion + } } diff --git a/SocketHttpListener/Primitives/ITextEncoding.cs b/SocketHttpListener/Primitives/ITextEncoding.cs index a256a077d..10d95570d 100644 --- a/SocketHttpListener/Primitives/ITextEncoding.cs +++ b/SocketHttpListener/Primitives/ITextEncoding.cs @@ -1,7 +1,4 @@ -using System; -using System.Collections.Generic; using System.Text; -using System.Threading.Tasks; using MediaBrowser.Model.Text; namespace SocketHttpListener.Primitives diff --git a/SocketHttpListener/Rsv.cs b/SocketHttpListener/Rsv.cs index 668059b8a..87283791e 100644 --- a/SocketHttpListener/Rsv.cs +++ b/SocketHttpListener/Rsv.cs @@ -1,8 +1,8 @@ namespace SocketHttpListener { - internal enum Rsv : byte - { - Off = 0x0, - On = 0x1 - } + internal enum Rsv : byte + { + Off = 0x0, + On = 0x1 + } } diff --git a/SocketHttpListener/SocketHttpListener.csproj b/SocketHttpListener/SocketHttpListener.csproj index ca9056a6a..e700540a9 100644 --- a/SocketHttpListener/SocketHttpListener.csproj +++ b/SocketHttpListener/SocketHttpListener.csproj @@ -1,4 +1,4 @@ -<Project Sdk="Microsoft.NET.Sdk"> +<Project Sdk="Microsoft.NET.Sdk"> <ItemGroup> <ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" /> diff --git a/SocketHttpListener/SocketStream.cs b/SocketHttpListener/SocketStream.cs index a4f31eab9..f51fde97e 100644 --- a/SocketHttpListener/SocketStream.cs +++ b/SocketHttpListener/SocketStream.cs @@ -1,10 +1,6 @@ -using System; -using System.Collections.Generic; +using System; using System.IO; -using System.Linq; using System.Net.Sockets; -using System.Text; -using System.Threading.Tasks; namespace SocketHttpListener { @@ -21,26 +17,18 @@ namespace SocketHttpListener { } - public override bool CanRead - { - get { return true; } - } - public override bool CanSeek - { - get { return false; } - } - public override bool CanWrite - { - get { return true; } - } - public override long Length - { - get { throw new NotImplementedException(); } - } + public override bool CanRead => true; + + public override bool CanSeek => false; + + public override bool CanWrite => true; + + public override long Length => throw new NotImplementedException(); + public override long Position { - get { throw new NotImplementedException(); } - set { throw new NotImplementedException(); } + get => throw new NotImplementedException(); + set => throw new NotImplementedException(); } public override void Write(byte[] buffer, int offset, int count) diff --git a/SocketHttpListener/WebSocket.cs b/SocketHttpListener/WebSocket.cs index d926a58c9..bf400599d 100644 --- a/SocketHttpListener/WebSocket.cs +++ b/SocketHttpListener/WebSocket.cs @@ -3,15 +3,12 @@ using System.Collections; using System.Collections.Generic; using System.IO; using System.Net; +using System.Net.Sockets; using System.Text; using System.Threading; using System.Threading.Tasks; -using MediaBrowser.Model.Cryptography; -using MediaBrowser.Model.IO; using SocketHttpListener.Net.WebSockets; -using SocketHttpListener.Primitives; using HttpStatusCode = SocketHttpListener.Net.HttpStatusCode; -using System.Net.Sockets; using WebSocketState = System.Net.WebSockets.WebSocketState; namespace SocketHttpListener @@ -81,11 +78,8 @@ namespace SocketHttpListener init(); } - public static TimeSpan DefaultKeepAliveInterval - { - // In the .NET Framework, this pulls the value from a P/Invoke. Here we just hardcode it to a reasonable default. - get { return TimeSpan.FromSeconds(30); } - } + // In the .NET Framework, this pulls the value from a P/Invoke. Here we just hardcode it to a reasonable default. + public static TimeSpan DefaultKeepAliveInterval => TimeSpan.FromSeconds(30); #endregion @@ -96,13 +90,7 @@ namespace SocketHttpListener /// One of the <see cref="WebSocketState"/> enum values, indicates the state of the WebSocket /// connection. The default value is <see cref="WebSocketState.Connecting"/>. /// </value> - public WebSocketState ReadyState - { - get - { - return _readyState; - } - } + public WebSocketState ReadyState => _readyState; #region Public Events diff --git a/SocketHttpListener/WebSocketException.cs b/SocketHttpListener/WebSocketException.cs index 260721317..e86c46d0f 100644 --- a/SocketHttpListener/WebSocketException.cs +++ b/SocketHttpListener/WebSocketException.cs @@ -2,59 +2,60 @@ using System; namespace SocketHttpListener { - /// <summary> - /// The exception that is thrown when a <see cref="WebSocket"/> gets a fatal error. - /// </summary> - public class WebSocketException : Exception - { - #region Internal Constructors - - internal WebSocketException () - : this (CloseStatusCode.Abnormal, null, null) - { - } - - internal WebSocketException (string message) - : this (CloseStatusCode.Abnormal, message, null) - { - } - - internal WebSocketException (CloseStatusCode code) - : this (code, null, null) - { - } - - internal WebSocketException (string message, Exception innerException) - : this (CloseStatusCode.Abnormal, message, innerException) - { - } - - internal WebSocketException (CloseStatusCode code, string message) - : this (code, message, null) - { - } - - internal WebSocketException (CloseStatusCode code, string message, Exception innerException) - : base (message ?? code.GetMessage (), innerException) - { - Code = code; - } - - #endregion - - #region Public Properties - /// <summary> - /// Gets the status code indicating the cause for the exception. + /// The exception that is thrown when a <see cref="WebSocket"/> gets a fatal error. /// </summary> - /// <value> - /// One of the <see cref="CloseStatusCode"/> enum values, represents the status code indicating - /// the cause for the exception. - /// </value> - public CloseStatusCode Code { - get; private set; + public class WebSocketException : Exception + { + #region Internal Constructors + + internal WebSocketException() + : this(CloseStatusCode.Abnormal, null, null) + { + } + + internal WebSocketException(string message) + : this(CloseStatusCode.Abnormal, message, null) + { + } + + internal WebSocketException(CloseStatusCode code) + : this(code, null, null) + { + } + + internal WebSocketException(string message, Exception innerException) + : this(CloseStatusCode.Abnormal, message, innerException) + { + } + + internal WebSocketException(CloseStatusCode code, string message) + : this(code, message, null) + { + } + + internal WebSocketException(CloseStatusCode code, string message, Exception innerException) + : base(message ?? code.GetMessage(), innerException) + { + Code = code; + } + + #endregion + + #region Public Properties + + /// <summary> + /// Gets the status code indicating the cause for the exception. + /// </summary> + /// <value> + /// One of the <see cref="CloseStatusCode"/> enum values, represents the status code indicating + /// the cause for the exception. + /// </value> + public CloseStatusCode Code + { + get; private set; + } + + #endregion } - - #endregion - } } diff --git a/SocketHttpListener/WebSocketFrame.cs b/SocketHttpListener/WebSocketFrame.cs index 44fa4a5dc..74ed23c45 100644 --- a/SocketHttpListener/WebSocketFrame.cs +++ b/SocketHttpListener/WebSocketFrame.cs @@ -2,7 +2,6 @@ using System; using System.Collections; using System.Collections.Generic; using System.IO; -using System.Text; namespace SocketHttpListener { @@ -107,197 +106,53 @@ namespace SocketHttpListener #region Public Properties - public byte[] ExtendedPayloadLength - { - get - { - return _extPayloadLength; - } - } + public byte[] ExtendedPayloadLength => _extPayloadLength; - public Fin Fin - { - get - { - return _fin; - } - } + public Fin Fin => _fin; - public bool IsBinary - { - get - { - return _opcode == Opcode.Binary; - } - } + public bool IsBinary => _opcode == Opcode.Binary; - public bool IsClose - { - get - { - return _opcode == Opcode.Close; - } - } + public bool IsClose => _opcode == Opcode.Close; - public bool IsCompressed - { - get - { - return _rsv1 == Rsv.On; - } - } + public bool IsCompressed => _rsv1 == Rsv.On; - public bool IsContinuation - { - get - { - return _opcode == Opcode.Cont; - } - } + public bool IsContinuation => _opcode == Opcode.Cont; - public bool IsControl - { - get - { - return _opcode == Opcode.Close || _opcode == Opcode.Ping || _opcode == Opcode.Pong; - } - } + public bool IsControl => _opcode == Opcode.Close || _opcode == Opcode.Ping || _opcode == Opcode.Pong; - public bool IsData - { - get - { - return _opcode == Opcode.Binary || _opcode == Opcode.Text; - } - } + public bool IsData => _opcode == Opcode.Binary || _opcode == Opcode.Text; - public bool IsFinal - { - get - { - return _fin == Fin.Final; - } - } + public bool IsFinal => _fin == Fin.Final; - public bool IsFragmented - { - get - { - return _fin == Fin.More || _opcode == Opcode.Cont; - } - } + public bool IsFragmented => _fin == Fin.More || _opcode == Opcode.Cont; - public bool IsMasked - { - get - { - return _mask == Mask.Mask; - } - } + public bool IsMasked => _mask == Mask.Mask; - public bool IsPerMessageCompressed - { - get - { - return (_opcode == Opcode.Binary || _opcode == Opcode.Text) && _rsv1 == Rsv.On; - } - } + public bool IsPerMessageCompressed => (_opcode == Opcode.Binary || _opcode == Opcode.Text) && _rsv1 == Rsv.On; - public bool IsPing - { - get - { - return _opcode == Opcode.Ping; - } - } + public bool IsPing => _opcode == Opcode.Ping; - public bool IsPong - { - get - { - return _opcode == Opcode.Pong; - } - } + public bool IsPong => _opcode == Opcode.Pong; - public bool IsText - { - get - { - return _opcode == Opcode.Text; - } - } + public bool IsText => _opcode == Opcode.Text; - public ulong Length - { - get - { - return 2 + (ulong)(_extPayloadLength.Length + _maskingKey.Length) + _payloadData.Length; - } - } + public ulong Length => 2 + (ulong)(_extPayloadLength.Length + _maskingKey.Length) + _payloadData.Length; - public Mask Mask - { - get - { - return _mask; - } - } + public Mask Mask => _mask; - public byte[] MaskingKey - { - get - { - return _maskingKey; - } - } + public byte[] MaskingKey => _maskingKey; - public Opcode Opcode - { - get - { - return _opcode; - } - } + public Opcode Opcode => _opcode; - public PayloadData PayloadData - { - get - { - return _payloadData; - } - } + public PayloadData PayloadData => _payloadData; - public byte PayloadLength - { - get - { - return _payloadLength; - } - } + public byte PayloadLength => _payloadLength; - public Rsv Rsv1 - { - get - { - return _rsv1; - } - } + public Rsv Rsv1 => _rsv1; - public Rsv Rsv2 - { - get - { - return _rsv2; - } - } + public Rsv Rsv2 => _rsv2; - public Rsv Rsv3 - { - get - { - return _rsv3; - } - } + public Rsv Rsv3 => _rsv3; #endregion @@ -575,4 +430,4 @@ namespace SocketHttpListener #endregion } -}
\ No newline at end of file +} diff --git a/deployment/debian-package-x64/pkg-src/conf/logging.json b/deployment/debian-package-x64/pkg-src/conf/logging.json index 5d98484cd..f32b2089e 100644 --- a/deployment/debian-package-x64/pkg-src/conf/logging.json +++ b/deployment/debian-package-x64/pkg-src/conf/logging.json @@ -2,7 +2,8 @@ "Serilog": { "MinimumLevel": "Information", "WriteTo": [ - { "Name": "Console", + { + "Name": "Console", "Args": { "outputTemplate": "[{Timestamp:HH:mm:ss}] [{Level:u3}] {Message:lj}{NewLine}{Exception}" } diff --git a/deployment/fedora-package-x64/pkg-src/jellyfin-firewalld.xml b/deployment/fedora-package-x64/pkg-src/jellyfin-firewalld.xml index 062db370d..538c5d65f 100644 --- a/deployment/fedora-package-x64/pkg-src/jellyfin-firewalld.xml +++ b/deployment/fedora-package-x64/pkg-src/jellyfin-firewalld.xml @@ -1,9 +1,9 @@ <?xml version="1.0" encoding="utf-8"?> <service> - <short>Jellyfin</short> - <description>The Free Software Media System.</description> - <port protocol="tcp" port="8096"/> - <port protocol="tcp" port="8920"/> - <port protocol="udp" port="1900"/> - <port protocol="udp" port="7359"/> -</service>
\ No newline at end of file + <short>Jellyfin</short> + <description>The Free Software Media System.</description> + <port protocol="tcp" port="8096"/> + <port protocol="tcp" port="8920"/> + <port protocol="udp" port="1900"/> + <port protocol="udp" port="7359"/> +</service> diff --git a/deployment/unraid/docker-templates/jellyfin.xml b/deployment/unraid/docker-templates/jellyfin.xml index be1188424..1d97a9f00 100644 --- a/deployment/unraid/docker-templates/jellyfin.xml +++ b/deployment/unraid/docker-templates/jellyfin.xml @@ -23,7 +23,7 @@ <Project>https://jellyfin.media/</Project> <BindTime>true</BindTime> <Privileged>false</Privileged> - <Networking> + <Networking> <Mode>host</Mode> <Publish> <Port> @@ -32,7 +32,7 @@ <Protocol>tcp</Protocol> </Port> </Publish> - </Networking> + </Networking> <Data> <Volume> <HostDir>/mnt/cache/appdata/config</HostDir> diff --git a/deployment/win-generic/build-jellyfin.ps1 b/deployment/win-generic/build-jellyfin.ps1 index 4f0f92525..7807a46c3 100644 --- a/deployment/win-generic/build-jellyfin.ps1 +++ b/deployment/win-generic/build-jellyfin.ps1 @@ -1,4 +1,4 @@ -[CmdletBinding()] +[CmdletBinding()] param( [switch]$InstallFFMPEG, [switch]$InstallNSSM, @@ -37,7 +37,7 @@ function Install-FFMPEG { Write-Verbose "Checking Architecture" if($Architecture -notin @('x86','x64')){ Write-Warning "No builds available for your selected architecture of $Architecture" - Write-Warning "FFMPEG will not be installed" + Write-Warning "FFMPEG will not be installed" }elseif($Architecture -eq 'x64'){ Write-Verbose "Downloading 64 bit FFMPEG" Invoke-WebRequest -Uri https://ffmpeg.zeranoe.com/builds/win64/static/ffmpeg-4.1-win64-static.zip -UseBasicParsing -OutFile "$tempdir/fmmpeg.zip" | Write-Verbose @@ -45,7 +45,7 @@ function Install-FFMPEG { Write-Verbose "Downloading 32 bit FFMPEG" Invoke-WebRequest -Uri https://ffmpeg.zeranoe.com/builds/win32/static/ffmpeg-4.1-win32-static.zip -UseBasicParsing -OutFile "$tempdir/fmmpeg.zip" | Write-Verbose } - + Expand-Archive "$tempdir/fmmpeg.zip" -DestinationPath "$tempdir/ffmpeg/" | Write-Verbose if($Architecture -eq 'x64'){ Write-Verbose "Copying Binaries to Jellyfin location" @@ -70,12 +70,12 @@ function Install-NSSM { Write-Verbose "Checking Architecture" if($Architecture -notin @('x86','x64')){ Write-Warning "No builds available for your selected architecture of $Architecture" - Write-Warning "NSSM will not be installed" + Write-Warning "NSSM will not be installed" }else{ Write-Verbose "Downloading NSSM" Invoke-WebRequest -Uri https://nssm.cc/ci/nssm-2.24-101-g897c7ad.zip -UseBasicParsing -OutFile "$tempdir/nssm.zip" | Write-Verbose } - + Expand-Archive "$tempdir/nssm.zip" -DestinationPath "$tempdir/nssm/" | Write-Verbose if($Architecture -eq 'x64'){ Write-Verbose "Copying Binaries to Jellyfin location" diff --git a/jellyfin.code-workspace b/jellyfin.code-workspace new file mode 100644 index 000000000..7882b3821 --- /dev/null +++ b/jellyfin.code-workspace @@ -0,0 +1,17 @@ +{ + "folders": [ + { + "path": "." + } + ], + "settings": { + "files.eol": "\n", + "editor.renderWhitespace": "boundary", + "files.exclude": { + "**/bin": true, + "**/jellyfin-web": true, + "**/obj": true + }, + "formatFiles.excludePattern": "**/node_modules,**/.vscode,**/dist/**,**/.chrome,ThirdParty,RSSDP,Mono.Nat,unRaid,debian" + } +} |
