aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.drone.yml2
-rw-r--r--.editorconfig4
-rw-r--r--BDInfo/BDInfo.csproj4
-rw-r--r--BDInfo/BDROM.cs10
-rw-r--r--BDInfo/Properties/AssemblyInfo.cs24
-rw-r--r--DvdLib/DvdLib.csproj4
-rw-r--r--DvdLib/Ifo/Dvd.cs2
-rw-r--r--DvdLib/Ifo/DvdTime.cs4
-rw-r--r--DvdLib/Properties/AssemblyInfo.cs24
-rw-r--r--Emby.Dlna/ConnectionManager/ConnectionManagerXmlBuilder.cs4
-rw-r--r--Emby.Dlna/ConnectionManager/ServiceActionListBuilder.cs6
-rw-r--r--Emby.Dlna/ContentDirectory/ContentDirectoryXmlBuilder.cs4
-rw-r--r--Emby.Dlna/ContentDirectory/ServiceActionListBuilder.cs12
-rw-r--r--Emby.Dlna/Didl/DidlBuilder.cs6
-rw-r--r--Emby.Dlna/DlnaManager.cs6
-rw-r--r--Emby.Dlna/Emby.Dlna.csproj4
-rw-r--r--Emby.Dlna/MediaReceiverRegistrar/ControlHandler.cs6
-rw-r--r--Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrarXmlBuilder.cs4
-rw-r--r--Emby.Dlna/MediaReceiverRegistrar/ServiceActionListBuilder.cs10
-rw-r--r--Emby.Dlna/PlayTo/Device.cs14
-rw-r--r--Emby.Dlna/PlayTo/PlayToController.cs8
-rw-r--r--Emby.Dlna/PlayTo/PlaylistItemFactory.cs4
-rw-r--r--Emby.Dlna/PlayTo/SsdpHttpClient.cs4
-rw-r--r--Emby.Dlna/PlayTo/TransportCommands.cs2
-rw-r--r--Emby.Dlna/PlayTo/UpnpContainer.cs2
-rw-r--r--Emby.Dlna/PlayTo/uBaseObject.cs2
-rw-r--r--Emby.Dlna/PlayTo/uParser.cs2
-rw-r--r--Emby.Dlna/Properties/AssemblyInfo.cs13
-rw-r--r--Emby.Dlna/Server/DescriptionXmlBuilder.cs11
-rw-r--r--Emby.Dlna/Service/ServiceXmlBuilder.cs6
-rw-r--r--Emby.Drawing.Skia/Properties/AssemblyInfo.cs20
-rw-r--r--Emby.Drawing.Skia/SkiaEncoder.cs10
-rw-r--r--Emby.Drawing.Skia/StripCollageBuilder.cs7
-rw-r--r--Emby.Drawing/Common/ImageHeader.cs2
-rw-r--r--Emby.Drawing/ImageProcessor.cs20
-rw-r--r--Emby.Drawing/Properties/AssemblyInfo.cs10
-rw-r--r--Emby.IsoMounting/IsoMounter/IsoMounter.csproj4
-rw-r--r--Emby.IsoMounting/IsoMounter/LinuxIsoManager.cs6
-rw-r--r--Emby.IsoMounting/IsoMounter/Properties/AssemblyInfo.cs21
-rw-r--r--Emby.Naming/AudioBook/AudioBookResolver.cs2
-rw-r--r--Emby.Naming/Emby.Naming.csproj4
-rw-r--r--Emby.Naming/Properties/AssemblyInfo.cs21
-rw-r--r--Emby.Naming/Subtitles/SubtitleParser.cs4
-rw-r--r--Emby.Naming/TV/EpisodePathParser.cs4
-rw-r--r--Emby.Naming/TV/EpisodeResolver.cs2
-rw-r--r--Emby.Naming/Video/CleanDateTimeParser.cs4
-rw-r--r--Emby.Naming/Video/CleanStringParser.cs4
-rw-r--r--Emby.Naming/Video/FlagParser.cs2
-rw-r--r--Emby.Naming/Video/Format3DParser.cs4
-rw-r--r--Emby.Naming/Video/VideoListResolver.cs4
-rw-r--r--Emby.Naming/Video/VideoResolver.cs2
-rw-r--r--Emby.Notifications/Emby.Notifications.csproj4
-rw-r--r--Emby.Notifications/Properties/AssemblyInfo.cs27
-rw-r--r--Emby.Photos/Properties/AssemblyInfo.cs25
-rw-r--r--Emby.Server.Implementations/Activity/ActivityLogEntryPoint.cs8
-rw-r--r--Emby.Server.Implementations/Activity/ActivityRepository.cs8
-rw-r--r--Emby.Server.Implementations/AppBase/BaseApplicationPaths.cs71
-rw-r--r--Emby.Server.Implementations/AppBase/BaseConfigurationManager.cs5
-rw-r--r--Emby.Server.Implementations/AppBase/ConfigurationHelper.cs3
-rw-r--r--Emby.Server.Implementations/ApplicationHost.cs86
-rw-r--r--Emby.Server.Implementations/Channels/ChannelImageProvider.cs5
-rw-r--r--Emby.Server.Implementations/Channels/ChannelManager.cs23
-rw-r--r--Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs35
-rw-r--r--Emby.Server.Implementations/Configuration/ServerConfigurationManager.cs15
-rw-r--r--Emby.Server.Implementations/Data/BaseSqliteRepository.cs33
-rw-r--r--Emby.Server.Implementations/Data/SqliteDisplayPreferencesRepository.cs16
-rw-r--r--Emby.Server.Implementations/Data/SqliteExtensions.cs4
-rw-r--r--Emby.Server.Implementations/Data/SqliteItemRepository.cs68
-rw-r--r--Emby.Server.Implementations/Data/SqliteUserDataRepository.cs44
-rw-r--r--Emby.Server.Implementations/Data/SqliteUserRepository.cs15
-rw-r--r--Emby.Server.Implementations/Data/TypeMapper.cs2
-rw-r--r--Emby.Server.Implementations/Devices/DeviceId.cs19
-rw-r--r--Emby.Server.Implementations/Devices/DeviceManager.cs11
-rw-r--r--Emby.Server.Implementations/Diagnostics/CommonProcess.cs25
-rw-r--r--Emby.Server.Implementations/Dto/DtoService.cs18
-rw-r--r--Emby.Server.Implementations/EntryPoints/ExternalPortForwarding.cs4
-rw-r--r--Emby.Server.Implementations/EntryPoints/LibraryChangedNotifier.cs6
-rw-r--r--Emby.Server.Implementations/EntryPoints/RecordingNotifier.cs4
-rw-r--r--Emby.Server.Implementations/EntryPoints/RefreshUsersMetadata.cs5
-rw-r--r--Emby.Server.Implementations/EnvironmentInfo/EnvironmentInfo.cs10
-rw-r--r--Emby.Server.Implementations/HttpClientManager/HttpClientManager.cs26
-rw-r--r--Emby.Server.Implementations/HttpServer/FileWriter.cs11
-rw-r--r--Emby.Server.Implementations/HttpServer/HttpListenerHost.cs33
-rw-r--r--Emby.Server.Implementations/HttpServer/HttpResultFactory.cs24
-rw-r--r--Emby.Server.Implementations/HttpServer/RangeRequestWriter.cs15
-rw-r--r--Emby.Server.Implementations/HttpServer/Security/AuthService.cs6
-rw-r--r--Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs4
-rw-r--r--Emby.Server.Implementations/HttpServer/StreamWriter.cs9
-rw-r--r--Emby.Server.Implementations/HttpServer/WebSocketConnection.cs22
-rw-r--r--Emby.Server.Implementations/IO/FileRefresher.cs4
-rw-r--r--Emby.Server.Implementations/IO/IsoManager.cs2
-rw-r--r--Emby.Server.Implementations/IO/LibraryMonitor.cs10
-rw-r--r--Emby.Server.Implementations/IO/ManagedFileSystem.cs50
-rw-r--r--Emby.Server.Implementations/IO/MbLinkShortcutHandler.cs11
-rw-r--r--Emby.Server.Implementations/IO/ThrottledStream.cs59
-rw-r--r--Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs19
-rw-r--r--Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs2
-rw-r--r--Emby.Server.Implementations/Library/LibraryManager.cs61
-rw-r--r--Emby.Server.Implementations/Library/MediaSourceManager.cs19
-rw-r--r--Emby.Server.Implementations/Library/PathExtensions.cs4
-rw-r--r--Emby.Server.Implementations/Library/ResolverHelper.cs6
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs11
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs9
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs9
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs5
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs8
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs4
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs20
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs9
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs5
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs5
-rw-r--r--Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs14
-rw-r--r--Emby.Server.Implementations/Library/SearchEngine.cs6
-rw-r--r--Emby.Server.Implementations/Library/UserDataManager.cs10
-rw-r--r--Emby.Server.Implementations/Library/UserManager.cs45
-rw-r--r--Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs41
-rw-r--r--Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs16
-rw-r--r--Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs6
-rw-r--r--Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs4
-rw-r--r--Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs35
-rw-r--r--Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs26
-rw-r--r--Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs11
-rw-r--r--Emby.Server.Implementations/LiveTv/LiveTvManager.cs24
-rw-r--r--Emby.Server.Implementations/LiveTv/RefreshChannelsScheduledTask.cs35
-rw-r--r--Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs23
-rw-r--r--Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs33
-rw-r--r--Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs28
-rw-r--r--Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunUdpStream.cs62
-rw-r--r--Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs8
-rw-r--r--Emby.Server.Implementations/LiveTv/TunerHosts/M3UTunerHost.cs10
-rw-r--r--Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs8
-rw-r--r--Emby.Server.Implementations/Localization/LocalizationManager.cs18
-rw-r--r--Emby.Server.Implementations/Localization/TextLocalizer.cs4
-rw-r--r--Emby.Server.Implementations/MediaEncoder/EncodingManager.cs6
-rw-r--r--Emby.Server.Implementations/Net/DisposableManagedObjectBase.cs8
-rw-r--r--Emby.Server.Implementations/Net/SocketFactory.cs46
-rw-r--r--Emby.Server.Implementations/Net/UdpSocket.cs9
-rw-r--r--Emby.Server.Implementations/Networking/IPNetwork/IPAddressCollection.cs20
-rw-r--r--Emby.Server.Implementations/Networking/IPNetwork/IPNetwork.cs142
-rw-r--r--Emby.Server.Implementations/Networking/IPNetwork/IPNetworkCollection.cs36
-rw-r--r--Emby.Server.Implementations/Networking/NetworkManager.cs37
-rw-r--r--Emby.Server.Implementations/Playlists/ManualPlaylistsFolder.cs21
-rw-r--r--Emby.Server.Implementations/Playlists/PlaylistManager.cs17
-rw-r--r--Emby.Server.Implementations/Properties/AssemblyInfo.cs23
-rw-r--r--Emby.Server.Implementations/ScheduledTasks/ChapterImagesTask.cs27
-rw-r--r--Emby.Server.Implementations/ScheduledTasks/PeopleValidationTask.cs26
-rw-r--r--Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs23
-rw-r--r--Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs46
-rw-r--r--Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs38
-rw-r--r--Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteLogFileTask.cs38
-rw-r--r--Emby.Server.Implementations/Security/AuthenticationRepository.cs16
-rw-r--r--Emby.Server.Implementations/Security/EncryptionManager.cs16
-rw-r--r--Emby.Server.Implementations/Security/MBLicenseFile.cs10
-rw-r--r--Emby.Server.Implementations/Security/PluginSecurityManager.cs19
-rw-r--r--Emby.Server.Implementations/Serialization/JsonSerializer.cs40
-rw-r--r--Emby.Server.Implementations/ServerApplicationPaths.cs149
-rw-r--r--Emby.Server.Implementations/Services/HttpResult.cs4
-rw-r--r--Emby.Server.Implementations/Services/ServicePath.cs27
-rw-r--r--Emby.Server.Implementations/Session/HttpSessionController.cs25
-rw-r--r--Emby.Server.Implementations/Session/SessionManager.cs43
-rw-r--r--Emby.Server.Implementations/Session/SessionWebSocketListener.cs5
-rw-r--r--Emby.Server.Implementations/Session/WebSocketController.cs18
-rw-r--r--Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs23
-rw-r--r--Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs9
-rw-r--r--Emby.Server.Implementations/Sorting/AlbumComparer.cs7
-rw-r--r--Emby.Server.Implementations/Sorting/ArtistComparer.cs7
-rw-r--r--Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs12
-rw-r--r--Emby.Server.Implementations/Sorting/CriticRatingComparer.cs7
-rw-r--r--Emby.Server.Implementations/Sorting/DateCreatedComparer.cs11
-rw-r--r--Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs9
-rw-r--r--Emby.Server.Implementations/Sorting/DatePlayedComparer.cs5
-rw-r--r--Emby.Server.Implementations/Sorting/GameSystemComparer.cs7
-rw-r--r--Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs5
-rw-r--r--Emby.Server.Implementations/Sorting/IsFolderComparer.cs7
-rw-r--r--Emby.Server.Implementations/Sorting/IsPlayedComparer.cs5
-rw-r--r--Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs5
-rw-r--r--Emby.Server.Implementations/Sorting/NameComparer.cs11
-rw-r--r--Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs12
-rw-r--r--Emby.Server.Implementations/Sorting/PlayCountComparer.cs5
-rw-r--r--Emby.Server.Implementations/Sorting/PlayersComparer.cs7
-rw-r--r--Emby.Server.Implementations/Sorting/PremiereDateComparer.cs7
-rw-r--r--Emby.Server.Implementations/Sorting/ProductionYearComparer.cs7
-rw-r--r--Emby.Server.Implementations/Sorting/RandomComparer.cs5
-rw-r--r--Emby.Server.Implementations/Sorting/RuntimeComparer.cs12
-rw-r--r--Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs9
-rw-r--r--Emby.Server.Implementations/Sorting/SortNameComparer.cs11
-rw-r--r--Emby.Server.Implementations/Sorting/StartDateComparer.cs7
-rw-r--r--Emby.Server.Implementations/Sorting/StudioComparer.cs11
-rw-r--r--Emby.Server.Implementations/TV/TVSeriesManager.cs8
-rw-r--r--Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/CharExtensions.cs2
-rw-r--r--Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/StringExtensions.cs36
-rw-r--r--Emby.Server.Implementations/TextEncoding/NLangDetect/LanguageDetector.cs2
-rw-r--r--Emby.Server.Implementations/TextEncoding/TextEncoding.cs13
-rw-r--r--Emby.Server.Implementations/TextEncoding/TextEncodingDetect.cs5
-rw-r--r--Emby.Server.Implementations/TextEncoding/UniversalDetector/CharsetDetector.cs10
-rw-r--r--Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CodingStateMachine.cs10
-rw-r--r--Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SMModel.cs12
-rw-r--r--Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SequenceModel.cs22
-rw-r--r--Emby.Server.Implementations/Udp/UdpServer.cs8
-rw-r--r--Emby.Server.Implementations/Updates/InstallationManager.cs23
-rw-r--r--Emby.Server.Implementations/UserViews/DynamicImageProvider.cs4
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs20
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Emby.XmlTv.csproj4
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Entities/XmlTvChannel.cs6
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCredit.cs2
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Entities/XmlTvEpisode.cs4
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Entities/XmlTvIcon.cs6
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Entities/XmlTvLanguage.cs4
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Entities/XmlTvRating.cs6
-rw-r--r--Emby.XmlTv/Emby.XmlTv/Properties/AssemblyInfo.cs23
-rw-r--r--Jellyfin.Server/Properties/AssemblyInfo.cs21
-rw-r--r--Jellyfin.Server/SocketSharp/RequestMono.cs8
-rw-r--r--Jellyfin.Server/SocketSharp/SharpWebSocket.cs4
-rw-r--r--Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs3
-rw-r--r--Jellyfin.Server/SocketSharp/WebSocketSharpRequest.cs4
-rw-r--r--MediaBrowser.Api/ApiEntryPoint.cs2
-rw-r--r--MediaBrowser.Api/EnvironmentService.cs4
-rw-r--r--MediaBrowser.Api/Library/LibraryStructureService.cs12
-rw-r--r--MediaBrowser.Api/LiveTv/LiveTvService.cs2
-rw-r--r--MediaBrowser.Api/Playback/BaseStreamingService.cs8
-rw-r--r--MediaBrowser.Api/Playback/Hls/BaseHlsService.cs2
-rw-r--r--MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs2
-rw-r--r--MediaBrowser.Api/Playback/MediaInfoService.cs1
-rw-r--r--MediaBrowser.Api/PluginService.cs2
-rw-r--r--MediaBrowser.Api/Properties/AssemblyInfo.cs21
-rw-r--r--MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs2
-rw-r--r--MediaBrowser.Api/UserLibrary/ItemsService.cs10
-rw-r--r--MediaBrowser.Common/Plugins/BasePlugin.cs4
-rw-r--r--MediaBrowser.Common/Properties/AssemblyInfo.cs18
-rw-r--r--MediaBrowser.Controller/Authentication/AuthenticationResult.cs2
-rw-r--r--MediaBrowser.Controller/Channels/IChannelManager.cs4
-rw-r--r--MediaBrowser.Controller/Entities/AggregateFolder.cs4
-rw-r--r--MediaBrowser.Controller/Entities/BaseItem.cs16
-rw-r--r--MediaBrowser.Controller/Entities/Extensions.cs2
-rw-r--r--MediaBrowser.Controller/Entities/Folder.cs6
-rw-r--r--MediaBrowser.Controller/Entities/PeopleHelper.cs8
-rw-r--r--MediaBrowser.Controller/Entities/TagExtensions.cs2
-rw-r--r--MediaBrowser.Controller/Entities/User.cs4
-rw-r--r--MediaBrowser.Controller/Entities/UserItemData.cs2
-rw-r--r--MediaBrowser.Controller/Entities/UserRootFolder.cs4
-rw-r--r--MediaBrowser.Controller/Entities/UserViewBuilder.cs4
-rw-r--r--MediaBrowser.Controller/IO/FileData.cs4
-rw-r--r--MediaBrowser.Controller/Library/ILibraryManager.cs7
-rw-r--r--MediaBrowser.Controller/Library/ItemResolveArgs.cs8
-rw-r--r--MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs8
-rw-r--r--MediaBrowser.Controller/MediaEncoding/JobLogger.cs3
-rw-r--r--MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs15
-rw-r--r--MediaBrowser.Controller/Persistence/IUserRepository.cs3
-rw-r--r--MediaBrowser.Controller/Properties/AssemblyInfo.cs18
-rw-r--r--MediaBrowser.Controller/Security/IAuthenticationRepository.cs4
-rw-r--r--MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs4
-rw-r--r--MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs4
-rw-r--r--MediaBrowser.LocalMetadata/Properties/AssemblyInfo.cs24
-rw-r--r--MediaBrowser.MediaEncoding/BdInfo/BdInfoExaminer.cs4
-rw-r--r--MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs4
-rw-r--r--MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs2
-rw-r--r--MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs6
-rw-r--r--MediaBrowser.MediaEncoding/Properties/AssemblyInfo.cs24
-rw-r--r--MediaBrowser.MediaEncoding/Subtitles/OpenSubtitleDownloader.cs2
-rw-r--r--MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs18
-rw-r--r--MediaBrowser.Model/Diagnostics/IProcessFactory.cs6
-rw-r--r--MediaBrowser.Model/Dlna/SearchCriteria.cs14
-rw-r--r--MediaBrowser.Model/Dlna/StreamBuilder.cs2
-rw-r--r--MediaBrowser.Model/Dlna/StreamInfo.cs4
-rw-r--r--MediaBrowser.Model/Entities/ProviderIdsExtensions.cs4
-rw-r--r--MediaBrowser.Model/Extensions/LinqExtensions.cs4
-rw-r--r--MediaBrowser.Model/Extensions/ListHelper.cs2
-rw-r--r--MediaBrowser.Model/IO/IFileSystem.cs6
-rw-r--r--MediaBrowser.Model/IO/IIsoMounter.cs3
-rw-r--r--MediaBrowser.Model/Net/IpAddressInfo.cs2
-rw-r--r--MediaBrowser.Model/Net/MimeTypes.cs4
-rw-r--r--MediaBrowser.Model/Properties/AssemblyInfo.cs20
-rw-r--r--MediaBrowser.Model/Serialization/IJsonSerializer.cs18
-rw-r--r--MediaBrowser.Model/Services/HttpUtility.cs8
-rw-r--r--MediaBrowser.Model/Services/QueryParamCollection.cs8
-rw-r--r--MediaBrowser.Providers/BoxSets/MovieDbBoxSetProvider.cs2
-rw-r--r--MediaBrowser.Providers/Manager/GenericPriorityQueue.cs8
-rw-r--r--MediaBrowser.Providers/Manager/ImageSaver.cs4
-rw-r--r--MediaBrowser.Providers/Manager/ProviderManager.cs2
-rw-r--r--MediaBrowser.Providers/Manager/ProviderUtils.cs4
-rw-r--r--MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs2
-rw-r--r--MediaBrowser.Providers/Movies/MovieDbProvider.cs4
-rw-r--r--MediaBrowser.Providers/Music/FanArtArtistProvider.cs10
-rw-r--r--MediaBrowser.Providers/Music/MusicBrainzArtistProvider.cs6
-rw-r--r--MediaBrowser.Providers/Omdb/OmdbProvider.cs14
-rw-r--r--MediaBrowser.Providers/Properties/AssemblyInfo.cs21
-rw-r--r--MediaBrowser.Providers/TV/TheMovieDb/MovieDbProviderBase.cs8
-rw-r--r--MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeasonProvider.cs8
-rw-r--r--MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesProvider.cs4
-rw-r--r--MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeProvider.cs5
-rw-r--r--MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesProvider.cs6
-rw-r--r--MediaBrowser.WebDashboard/Api/PackageCreator.cs4
-rw-r--r--MediaBrowser.WebDashboard/Properties/AssemblyInfo.cs21
-rw-r--r--MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs6
-rw-r--r--MediaBrowser.XbmcMetadata/Properties/AssemblyInfo.cs24
-rw-r--r--MediaBrowser.sln7
-rw-r--r--Mono.Nat/Pmp/PmpNatDevice.cs2
-rw-r--r--Mono.Nat/Properties/AssemblyInfo.cs25
-rw-r--r--Mono.Nat/Upnp/Searchers/UpnpSearcher.cs2
-rw-r--r--Mono.Nat/Upnp/UpnpNatDevice.cs2
-rw-r--r--OpenSubtitlesHandler/OpenSubtitles.cs20
-rw-r--r--OpenSubtitlesHandler/Properties/AssemblyInfo.cs23
-rw-r--r--RSSDP/DeviceAvailableEventArgs.cs87
-rw-r--r--RSSDP/DeviceEventArgs.cs4
-rw-r--r--RSSDP/DeviceUnavailableEventArgs.cs4
-rw-r--r--RSSDP/HttpParserBase.cs10
-rw-r--r--RSSDP/HttpRequestParser.cs14
-rw-r--r--RSSDP/HttpResponseParser.cs16
-rw-r--r--RSSDP/IEnumerableExtensions.cs6
-rw-r--r--RSSDP/Properties/AssemblyInfo.cs26
-rw-r--r--RSSDP/SsdpCommunicationsServer.cs8
-rw-r--r--RSSDP/SsdpDevice.cs4
-rw-r--r--RSSDP/SsdpDeviceLocator.cs6
-rw-r--r--RSSDP/SsdpDevicePublisher.cs14
-rw-r--r--SharedVersion.cs3
-rw-r--r--SocketHttpListener/CloseEventArgs.cs4
-rw-r--r--SocketHttpListener/Ext.cs24
-rw-r--r--SocketHttpListener/HttpBase.cs2
-rw-r--r--SocketHttpListener/HttpResponse.cs6
-rw-r--r--SocketHttpListener/MessageEventArgs.cs2
-rw-r--r--SocketHttpListener/Net/ChunkStream.cs4
-rw-r--r--SocketHttpListener/Net/CookieHelper.cs6
-rw-r--r--SocketHttpListener/Net/HttpEndPointListener.cs1
-rw-r--r--SocketHttpListener/Net/HttpListener.cs2
-rw-r--r--SocketHttpListener/Net/HttpListenerBasicIdentity.cs6
-rw-r--r--SocketHttpListener/Net/HttpListenerContext.cs4
-rw-r--r--SocketHttpListener/Net/HttpListenerPrefixCollection.cs2
-rw-r--r--SocketHttpListener/Net/HttpListenerRequest.Managed.cs4
-rw-r--r--SocketHttpListener/Net/HttpListenerRequest.cs2
-rw-r--r--SocketHttpListener/Net/HttpListenerResponse.cs6
-rw-r--r--SocketHttpListener/Net/HttpResponseStream.Managed.cs2
-rw-r--r--SocketHttpListener/Net/WebHeaderCollection.cs26
-rw-r--r--SocketHttpListener/Net/WebSockets/HttpWebSocket.cs12
-rw-r--r--SocketHttpListener/Properties/AssemblyInfo.cs25
-rw-r--r--SocketHttpListener/WebSocket.cs4
335 files changed, 1689 insertions, 2657 deletions
diff --git a/.drone.yml b/.drone.yml
index c6d41b555..98db4884b 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -9,4 +9,4 @@ steps:
- name: build
image: microsoft/dotnet:2-sdk
commands:
- - dotnet publish --configuration release --output /release
+ - dotnet publish --configuration release --output /release Jellyfin.Server
diff --git a/.editorconfig b/.editorconfig
index a3b72c9af..d3a988abc 100644
--- a/.editorconfig
+++ b/.editorconfig
@@ -3,11 +3,11 @@
# For emacs, vim, np++ and other editors, see here: https://github.com/editorconfig
###############################
# Core EditorConfig Options #
-###############################
+###############################
+root = true
# All files
[*]
indent_style = space
-root = true
indent_size = 4
charset = utf-8
trim_trailing_whitespace = true
diff --git a/BDInfo/BDInfo.csproj b/BDInfo/BDInfo.csproj
index 403ecec4e..b64f5e7a7 100644
--- a/BDInfo/BDInfo.csproj
+++ b/BDInfo/BDInfo.csproj
@@ -1,6 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup>
+ <Compile Include="..\SharedVersion.cs" Link="SharedVersion.cs" />
+ </ItemGroup>
+
+ <ItemGroup>
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
</ItemGroup>
diff --git a/BDInfo/BDROM.cs b/BDInfo/BDROM.cs
index f00d9825a..7d8268222 100644
--- a/BDInfo/BDROM.cs
+++ b/BDInfo/BDROM.cs
@@ -77,7 +77,7 @@ namespace BDInfo
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
_fileSystem = fileSystem;
@@ -235,7 +235,7 @@ namespace BDInfo
break;
}
}
- else throw ex;
+ else throw;
}
}
@@ -273,7 +273,7 @@ namespace BDInfo
break;
}
}
- else throw ex;
+ else throw;
}
}
@@ -310,7 +310,7 @@ namespace BDInfo
break;
}
}
- else throw ex;
+ else throw;
}
}
@@ -336,7 +336,7 @@ namespace BDInfo
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
FileSystemMetadata dir = _fileSystem.GetDirectoryInfo(path);
diff --git a/BDInfo/Properties/AssemblyInfo.cs b/BDInfo/Properties/AssemblyInfo.cs
index 539645295..77bd9df2a 100644
--- a/BDInfo/Properties/AssemblyInfo.cs
+++ b/BDInfo/Properties/AssemblyInfo.cs
@@ -1,6 +1,5 @@
-using System.Resources;
using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -9,21 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("BDInfo")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("BDInfo")]
-[assembly: AssemblyCopyright("Copyright © 2016")]
+[assembly: AssemblyCompany("Jellyfin Project")]
+[assembly: AssemblyProduct("Jellyfin: The Free Software Media System")]
+[assembly: AssemblyCopyright("Copyright © 2016 CinemaSquid. Copyright © 2019 Jellyfin Contributors. Code released under the GNU General Public License Version 2")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: NeutralResourcesLanguage("en")]
-// 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.1")] \ No newline at end of file
+// 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/DvdLib/DvdLib.csproj b/DvdLib/DvdLib.csproj
index 403ecec4e..b64f5e7a7 100644
--- a/DvdLib/DvdLib.csproj
+++ b/DvdLib/DvdLib.csproj
@@ -1,6 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup>
+ <Compile Include="..\SharedVersion.cs" Link="SharedVersion.cs" />
+ </ItemGroup>
+
+ <ItemGroup>
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
</ItemGroup>
diff --git a/DvdLib/Ifo/Dvd.cs b/DvdLib/Ifo/Dvd.cs
index 508c23db4..b43f0e832 100644
--- a/DvdLib/Ifo/Dvd.cs
+++ b/DvdLib/Ifo/Dvd.cs
@@ -81,7 +81,7 @@ namespace DvdLib.Ifo
private void ReadVTS(ushort vtsNum, List<FileSystemMetadata> allFiles)
{
- var filename = String.Format("VTS_{0:00}_0.IFO", vtsNum);
+ var filename = string.Format("VTS_{0:00}_0.IFO", vtsNum);
var vtsPath = allFiles.FirstOrDefault(i => string.Equals(i.Name, filename, StringComparison.OrdinalIgnoreCase)) ??
allFiles.FirstOrDefault(i => string.Equals(i.Name, Path.ChangeExtension(filename, ".bup"), StringComparison.OrdinalIgnoreCase));
diff --git a/DvdLib/Ifo/DvdTime.cs b/DvdLib/Ifo/DvdTime.cs
index f565f5fdf..072cd8d88 100644
--- a/DvdLib/Ifo/DvdTime.cs
+++ b/DvdLib/Ifo/DvdTime.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@@ -20,7 +20,7 @@ namespace DvdLib.Ifo
else if ((data[3] & 0x40) != 0) FrameRate = 25;
}
- private byte GetBCDValue(byte data)
+ private static byte GetBCDValue(byte data)
{
return (byte)((((data & 0xF0) >> 4) * 10) + (data & 0x0F));
}
diff --git a/DvdLib/Properties/AssemblyInfo.cs b/DvdLib/Properties/AssemblyInfo.cs
index 08c0ed88c..54e2c6b44 100644
--- a/DvdLib/Properties/AssemblyInfo.cs
+++ b/DvdLib/Properties/AssemblyInfo.cs
@@ -1,6 +1,5 @@
-using System.Resources;
using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -9,21 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("DvdLib")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("DvdLib")]
-[assembly: AssemblyCopyright("Copyright © 2016")]
+[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")]
-// 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.1")] \ No newline at end of file
+// 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/ConnectionManager/ConnectionManagerXmlBuilder.cs b/Emby.Dlna/ConnectionManager/ConnectionManagerXmlBuilder.cs
index 0666eda22..db18025e6 100644
--- a/Emby.Dlna/ConnectionManager/ConnectionManagerXmlBuilder.cs
+++ b/Emby.Dlna/ConnectionManager/ConnectionManagerXmlBuilder.cs
@@ -1,4 +1,4 @@
-using Emby.Dlna.Common;
+using Emby.Dlna.Common;
using Emby.Dlna.Service;
using System.Collections.Generic;
@@ -11,7 +11,7 @@ namespace Emby.Dlna.ConnectionManager
return new ServiceXmlBuilder().GetXml(new ServiceActionListBuilder().GetActions(), GetStateVariables());
}
- private IEnumerable<StateVariable> GetStateVariables()
+ private static IEnumerable<StateVariable> GetStateVariables()
{
var list = new List<StateVariable>();
diff --git a/Emby.Dlna/ConnectionManager/ServiceActionListBuilder.cs b/Emby.Dlna/ConnectionManager/ServiceActionListBuilder.cs
index a37f81242..674bc4c8e 100644
--- a/Emby.Dlna/ConnectionManager/ServiceActionListBuilder.cs
+++ b/Emby.Dlna/ConnectionManager/ServiceActionListBuilder.cs
@@ -1,4 +1,4 @@
-using Emby.Dlna.Common;
+using Emby.Dlna.Common;
using System.Collections.Generic;
namespace Emby.Dlna.ConnectionManager
@@ -19,7 +19,7 @@ namespace Emby.Dlna.ConnectionManager
return list;
}
- private ServiceAction PrepareForConnection()
+ private static ServiceAction PrepareForConnection()
{
var action = new ServiceAction
{
@@ -78,7 +78,7 @@ namespace Emby.Dlna.ConnectionManager
return action;
}
- private ServiceAction GetCurrentConnectionInfo()
+ private static ServiceAction GetCurrentConnectionInfo()
{
var action = new ServiceAction
{
diff --git a/Emby.Dlna/ContentDirectory/ContentDirectoryXmlBuilder.cs b/Emby.Dlna/ContentDirectory/ContentDirectoryXmlBuilder.cs
index 05de8259c..2695a5433 100644
--- a/Emby.Dlna/ContentDirectory/ContentDirectoryXmlBuilder.cs
+++ b/Emby.Dlna/ContentDirectory/ContentDirectoryXmlBuilder.cs
@@ -1,4 +1,4 @@
-using Emby.Dlna.Common;
+using Emby.Dlna.Common;
using Emby.Dlna.Service;
using System.Collections.Generic;
@@ -12,7 +12,7 @@ namespace Emby.Dlna.ContentDirectory
GetStateVariables());
}
- private IEnumerable<StateVariable> GetStateVariables()
+ private static IEnumerable<StateVariable> GetStateVariables()
{
var list = new List<StateVariable>();
diff --git a/Emby.Dlna/ContentDirectory/ServiceActionListBuilder.cs b/Emby.Dlna/ContentDirectory/ServiceActionListBuilder.cs
index 26f5b671d..7749a39af 100644
--- a/Emby.Dlna/ContentDirectory/ServiceActionListBuilder.cs
+++ b/Emby.Dlna/ContentDirectory/ServiceActionListBuilder.cs
@@ -1,4 +1,4 @@
-using Emby.Dlna.Common;
+using Emby.Dlna.Common;
using System.Collections.Generic;
namespace Emby.Dlna.ContentDirectory
@@ -20,7 +20,7 @@ namespace Emby.Dlna.ContentDirectory
};
}
- private ServiceAction GetGetSystemUpdateIDAction()
+ private static ServiceAction GetGetSystemUpdateIDAction()
{
var action = new ServiceAction
{
@@ -37,7 +37,7 @@ namespace Emby.Dlna.ContentDirectory
return action;
}
- private ServiceAction GetSearchCapabilitiesAction()
+ private static ServiceAction GetSearchCapabilitiesAction()
{
var action = new ServiceAction
{
@@ -54,7 +54,7 @@ namespace Emby.Dlna.ContentDirectory
return action;
}
- private ServiceAction GetSortCapabilitiesAction()
+ private static ServiceAction GetSortCapabilitiesAction()
{
var action = new ServiceAction
{
@@ -71,7 +71,7 @@ namespace Emby.Dlna.ContentDirectory
return action;
}
- private ServiceAction GetX_GetFeatureListAction()
+ private static ServiceAction GetX_GetFeatureListAction()
{
var action = new ServiceAction
{
@@ -88,7 +88,7 @@ namespace Emby.Dlna.ContentDirectory
return action;
}
- private ServiceAction GetSearchAction()
+ private static ServiceAction GetSearchAction()
{
var action = new ServiceAction
{
diff --git a/Emby.Dlna/Didl/DidlBuilder.cs b/Emby.Dlna/Didl/DidlBuilder.cs
index 7af48ae17..a8217c0d4 100644
--- a/Emby.Dlna/Didl/DidlBuilder.cs
+++ b/Emby.Dlna/Didl/DidlBuilder.cs
@@ -375,7 +375,7 @@ namespace Emby.Dlna.Didl
? GetMimeType(filename)
: mediaProfile.MimeType;
- writer.WriteAttributeString("protocolInfo", String.Format(
+ writer.WriteAttributeString("protocolInfo", string.Format(
"http-get:*:{0}:{1}",
mimeType,
contentFeatures
@@ -573,7 +573,7 @@ namespace Emby.Dlna.Didl
streamInfo.RunTimeTicks ?? 0,
streamInfo.TranscodeSeekInfo);
- writer.WriteAttributeString("protocolInfo", String.Format(
+ writer.WriteAttributeString("protocolInfo", string.Format(
"http-get:*:{0}:{1}",
mimeType,
contentFeatures
@@ -1017,7 +1017,7 @@ namespace Emby.Dlna.Didl
var contentFeatures = new ContentFeatureBuilder(_profile)
.BuildImageHeader(format, width, height, imageInfo.IsDirectStream, org_Pn);
- writer.WriteAttributeString("protocolInfo", String.Format(
+ writer.WriteAttributeString("protocolInfo", string.Format(
"http-get:*:{0}:{1}",
GetMimeType("file." + format),
contentFeatures
diff --git a/Emby.Dlna/DlnaManager.cs b/Emby.Dlna/DlnaManager.cs
index 48a33757b..a8777cbac 100644
--- a/Emby.Dlna/DlnaManager.cs
+++ b/Emby.Dlna/DlnaManager.cs
@@ -95,7 +95,7 @@ namespace Emby.Dlna
{
if (deviceInfo == null)
{
- throw new ArgumentNullException("deviceInfo");
+ throw new ArgumentNullException(nameof(deviceInfo));
}
var profile = GetProfiles()
@@ -207,7 +207,7 @@ namespace Emby.Dlna
{
if (headers == null)
{
- throw new ArgumentNullException("headers");
+ throw new ArgumentNullException(nameof(headers));
}
// Convert to case insensitive
@@ -335,7 +335,7 @@ namespace Emby.Dlna
{
if (string.IsNullOrEmpty(id))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
var info = GetProfileInfosInternal().First(i => string.Equals(i.Info.Id, id, StringComparison.OrdinalIgnoreCase));
diff --git a/Emby.Dlna/Emby.Dlna.csproj b/Emby.Dlna/Emby.Dlna.csproj
index c58144e00..f48816453 100644
--- a/Emby.Dlna/Emby.Dlna.csproj
+++ b/Emby.Dlna/Emby.Dlna.csproj
@@ -1,6 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup>
+ <Compile Include="..\SharedVersion.cs" Link="SharedVersion.cs" />
+ </ItemGroup>
+
+ <ItemGroup>
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
<ProjectReference Include="..\MediaBrowser.Controller\MediaBrowser.Controller.csproj" />
<ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" />
diff --git a/Emby.Dlna/MediaReceiverRegistrar/ControlHandler.cs b/Emby.Dlna/MediaReceiverRegistrar/ControlHandler.cs
index d1a595de0..5ffa30f68 100644
--- a/Emby.Dlna/MediaReceiverRegistrar/ControlHandler.cs
+++ b/Emby.Dlna/MediaReceiverRegistrar/ControlHandler.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Extensions;
+using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Configuration;
using Emby.Dlna.Server;
using Emby.Dlna.Service;
@@ -21,7 +21,7 @@ namespace Emby.Dlna.MediaReceiverRegistrar
throw new ResourceNotFoundException("Unexpected control request name: " + methodName);
}
- private IEnumerable<KeyValuePair<string, string>> HandleIsAuthorized()
+ private static IEnumerable<KeyValuePair<string, string>> HandleIsAuthorized()
{
return new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)
{
@@ -29,7 +29,7 @@ namespace Emby.Dlna.MediaReceiverRegistrar
};
}
- private IEnumerable<KeyValuePair<string, string>> HandleIsValidated()
+ private static IEnumerable<KeyValuePair<string, string>> HandleIsValidated()
{
return new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase)
{
diff --git a/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrarXmlBuilder.cs b/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrarXmlBuilder.cs
index bc4bee7c9..efddbc670 100644
--- a/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrarXmlBuilder.cs
+++ b/Emby.Dlna/MediaReceiverRegistrar/MediaReceiverRegistrarXmlBuilder.cs
@@ -1,4 +1,4 @@
-using Emby.Dlna.Common;
+using Emby.Dlna.Common;
using Emby.Dlna.Service;
using System.Collections.Generic;
@@ -12,7 +12,7 @@ namespace Emby.Dlna.MediaReceiverRegistrar
GetStateVariables());
}
- private IEnumerable<StateVariable> GetStateVariables()
+ private static IEnumerable<StateVariable> GetStateVariables()
{
var list = new List<StateVariable>();
diff --git a/Emby.Dlna/MediaReceiverRegistrar/ServiceActionListBuilder.cs b/Emby.Dlna/MediaReceiverRegistrar/ServiceActionListBuilder.cs
index bce8bfaef..a1f328411 100644
--- a/Emby.Dlna/MediaReceiverRegistrar/ServiceActionListBuilder.cs
+++ b/Emby.Dlna/MediaReceiverRegistrar/ServiceActionListBuilder.cs
@@ -1,4 +1,4 @@
-using Emby.Dlna.Common;
+using Emby.Dlna.Common;
using System.Collections.Generic;
namespace Emby.Dlna.MediaReceiverRegistrar
@@ -19,7 +19,7 @@ namespace Emby.Dlna.MediaReceiverRegistrar
};
}
- private ServiceAction GetIsValidated()
+ private static ServiceAction GetIsValidated()
{
var action = new ServiceAction
{
@@ -41,7 +41,7 @@ namespace Emby.Dlna.MediaReceiverRegistrar
return action;
}
- private ServiceAction GetIsAuthorized()
+ private static ServiceAction GetIsAuthorized()
{
var action = new ServiceAction
{
@@ -63,7 +63,7 @@ namespace Emby.Dlna.MediaReceiverRegistrar
return action;
}
- private ServiceAction GetRegisterDevice()
+ private static ServiceAction GetRegisterDevice()
{
var action = new ServiceAction
{
@@ -85,7 +85,7 @@ namespace Emby.Dlna.MediaReceiverRegistrar
return action;
}
- private ServiceAction GetGetValidationSucceededUpdateID()
+ private static ServiceAction GetGetValidationSucceededUpdateID()
{
var action = new ServiceAction
{
diff --git a/Emby.Dlna/PlayTo/Device.cs b/Emby.Dlna/PlayTo/Device.cs
index fdd304577..cf53bb861 100644
--- a/Emby.Dlna/PlayTo/Device.cs
+++ b/Emby.Dlna/PlayTo/Device.cs
@@ -311,7 +311,7 @@ namespace Emby.Dlna.PlayTo
throw new InvalidOperationException("Unable to find service");
}
- await new SsdpHttpClient(_httpClient, _config).SendCommandAsync(Properties.BaseUrl, service, command.Name, avCommands.BuildPost(command, service.ServiceType, String.Format("{0:hh}:{0:mm}:{0:ss}", value), "REL_TIME"))
+ await new SsdpHttpClient(_httpClient, _config).SendCommandAsync(Properties.BaseUrl, service, command.Name, avCommands.BuildPost(command, service.ServiceType, string.Format("{0:hh}:{0:mm}:{0:ss}", value), "REL_TIME"))
.ConfigureAwait(false);
RestartTimer(true);
@@ -364,7 +364,7 @@ namespace Emby.Dlna.PlayTo
private string CreateDidlMeta(string value)
{
if (string.IsNullOrEmpty(value))
- return String.Empty;
+ return string.Empty;
return DescriptionXmlBuilder.Escape(value);
}
@@ -783,7 +783,7 @@ namespace Emby.Dlna.PlayTo
{
if (container == null)
{
- throw new ArgumentNullException("container");
+ throw new ArgumentNullException(nameof(container));
}
var url = container.GetValue(uPnpNamespaces.Res);
@@ -810,7 +810,7 @@ namespace Emby.Dlna.PlayTo
{
if (container == null)
{
- throw new ArgumentNullException("container");
+ throw new ArgumentNullException(nameof(container));
}
var resElement = container.Element(uPnpNamespaces.Res);
@@ -979,7 +979,7 @@ namespace Emby.Dlna.PlayTo
if (modelDescription != null)
deviceProperties.ModelDescription = modelDescription.Value;
- deviceProperties.BaseUrl = String.Format("http://{0}:{1}", url.Host, url.Port);
+ deviceProperties.BaseUrl = string.Format("http://{0}:{1}", url.Host, url.Port);
var icon = document.Descendants(uPnpNamespaces.ud.GetName("icon")).FirstOrDefault();
@@ -1021,7 +1021,7 @@ namespace Emby.Dlna.PlayTo
{
if (element == null)
{
- throw new ArgumentNullException("element");
+ throw new ArgumentNullException(nameof(element));
}
var mimeType = element.GetDescendantValue(uPnpNamespaces.ud.GetName("mimetype"));
@@ -1173,7 +1173,7 @@ namespace Emby.Dlna.PlayTo
public override string ToString()
{
- return String.Format("{0} - {1}", Properties.Name, Properties.BaseUrl);
+ return string.Format("{0} - {1}", Properties.Name, Properties.BaseUrl);
}
}
}
diff --git a/Emby.Dlna/PlayTo/PlayToController.cs b/Emby.Dlna/PlayTo/PlayToController.cs
index c51f220ef..c7e45b896 100644
--- a/Emby.Dlna/PlayTo/PlayToController.cs
+++ b/Emby.Dlna/PlayTo/PlayToController.cs
@@ -114,10 +114,10 @@ namespace Emby.Dlna.PlayTo
info.Headers.TryGetValue("NTS", out nts);
string usn;
- if (!info.Headers.TryGetValue("USN", out usn)) usn = String.Empty;
+ if (!info.Headers.TryGetValue("USN", out usn)) usn = string.Empty;
string nt;
- if (!info.Headers.TryGetValue("NT", out nt)) nt = String.Empty;
+ if (!info.Headers.TryGetValue("NT", out nt)) nt = string.Empty;
if (usn.IndexOf(_device.Properties.UUID, StringComparison.OrdinalIgnoreCase) != -1 &&
!_disposed)
@@ -829,7 +829,7 @@ namespace Emby.Dlna.PlayTo
{
if (string.IsNullOrEmpty(url))
{
- throw new ArgumentNullException("url");
+ throw new ArgumentNullException(nameof(url));
}
var parts = url.Split('/');
@@ -855,7 +855,7 @@ namespace Emby.Dlna.PlayTo
{
if (string.IsNullOrEmpty(url))
{
- throw new ArgumentNullException("url");
+ throw new ArgumentNullException(nameof(url));
}
var request = new StreamParams
diff --git a/Emby.Dlna/PlayTo/PlaylistItemFactory.cs b/Emby.Dlna/PlayTo/PlaylistItemFactory.cs
index e2d6e43c0..1080320e0 100644
--- a/Emby.Dlna/PlayTo/PlaylistItemFactory.cs
+++ b/Emby.Dlna/PlayTo/PlaylistItemFactory.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Model.Dlna;
using MediaBrowser.Model.Session;
using System;
@@ -49,7 +49,7 @@ namespace Emby.Dlna.PlayTo
return playlistItem;
}
- private bool IsSupported(DirectPlayProfile profile, Photo item)
+ private static bool IsSupported(DirectPlayProfile profile, Photo item)
{
var mediaPath = item.Path;
diff --git a/Emby.Dlna/PlayTo/SsdpHttpClient.cs b/Emby.Dlna/PlayTo/SsdpHttpClient.cs
index 818744ba8..963577169 100644
--- a/Emby.Dlna/PlayTo/SsdpHttpClient.cs
+++ b/Emby.Dlna/PlayTo/SsdpHttpClient.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Net;
+using MediaBrowser.Common.Net;
using MediaBrowser.Controller.Configuration;
using Emby.Dlna.Common;
using System;
@@ -47,7 +47,7 @@ namespace Emby.Dlna.PlayTo
}
}
- private string NormalizeServiceUrl(string baseUrl, string serviceUrl)
+ private static string NormalizeServiceUrl(string baseUrl, string serviceUrl)
{
// If it's already a complete url, don't stick anything onto the front of it
if (serviceUrl.StartsWith("http", StringComparison.OrdinalIgnoreCase))
diff --git a/Emby.Dlna/PlayTo/TransportCommands.cs b/Emby.Dlna/PlayTo/TransportCommands.cs
index 09a8f0734..e34ce8797 100644
--- a/Emby.Dlna/PlayTo/TransportCommands.cs
+++ b/Emby.Dlna/PlayTo/TransportCommands.cs
@@ -80,7 +80,7 @@ namespace Emby.Dlna.PlayTo
{
if (container == null)
{
- throw new ArgumentNullException("container");
+ throw new ArgumentNullException(nameof(container));
}
return new Argument
diff --git a/Emby.Dlna/PlayTo/UpnpContainer.cs b/Emby.Dlna/PlayTo/UpnpContainer.cs
index 5bfc56bff..4c07f3605 100644
--- a/Emby.Dlna/PlayTo/UpnpContainer.cs
+++ b/Emby.Dlna/PlayTo/UpnpContainer.cs
@@ -10,7 +10,7 @@ namespace Emby.Dlna.PlayTo
{
if (container == null)
{
- throw new ArgumentNullException("container");
+ throw new ArgumentNullException(nameof(container));
}
return new uBaseObject
diff --git a/Emby.Dlna/PlayTo/uBaseObject.cs b/Emby.Dlna/PlayTo/uBaseObject.cs
index 0107b63c5..3d80d7ed0 100644
--- a/Emby.Dlna/PlayTo/uBaseObject.cs
+++ b/Emby.Dlna/PlayTo/uBaseObject.cs
@@ -26,7 +26,7 @@ namespace Emby.Dlna.PlayTo
{
if (obj == null)
{
- throw new ArgumentNullException("obj");
+ throw new ArgumentNullException(nameof(obj));
}
return string.Equals(Id, obj.Id);
diff --git a/Emby.Dlna/PlayTo/uParser.cs b/Emby.Dlna/PlayTo/uParser.cs
index 36ebdbf5c..4d26ee6b3 100644
--- a/Emby.Dlna/PlayTo/uParser.cs
+++ b/Emby.Dlna/PlayTo/uParser.cs
@@ -26,7 +26,7 @@ namespace Emby.Dlna.PlayTo
if (item == null)
return list;
- var uPnpResponse = XElement.Parse((String)item);
+ var uPnpResponse = XElement.Parse((string)item);
var uObjects = from container in uPnpResponse.Elements(uPnpNamespaces.containers)
select new uParserObject { Element = container };
diff --git a/Emby.Dlna/Properties/AssemblyInfo.cs b/Emby.Dlna/Properties/AssemblyInfo.cs
index 6ee7177ce..fd3b43369 100644
--- a/Emby.Dlna/Properties/AssemblyInfo.cs
+++ b/Emby.Dlna/Properties/AssemblyInfo.cs
@@ -1,17 +1,16 @@
-using System.Resources;
+using System.Resources;
using System.Reflection;
-using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 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("Emby.Dlna2")]
+[assembly: AssemblyTitle("Emby.Dlna")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Emby.Dlna2")]
-[assembly: AssemblyCopyright("Copyright © 2016")]
+[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")]
@@ -26,5 +25,3 @@ using System.Runtime.InteropServices;
// 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/Emby.Dlna/Server/DescriptionXmlBuilder.cs b/Emby.Dlna/Server/DescriptionXmlBuilder.cs
index 0c0c367e4..bd57f4c43 100644
--- a/Emby.Dlna/Server/DescriptionXmlBuilder.cs
+++ b/Emby.Dlna/Server/DescriptionXmlBuilder.cs
@@ -1,4 +1,4 @@
-using Emby.Dlna.Common;
+using Emby.Dlna.Common;
using MediaBrowser.Model.Dlna;
using MediaBrowser.Model.Extensions;
using System;
@@ -24,12 +24,12 @@ namespace Emby.Dlna.Server
{
if (string.IsNullOrEmpty(serverUdn))
{
- throw new ArgumentNullException("serverUdn");
+ throw new ArgumentNullException(nameof(serverUdn));
}
if (string.IsNullOrEmpty(serverAddress))
{
- throw new ArgumentNullException("serverAddress");
+ throw new ArgumentNullException(nameof(serverAddress));
}
_profile = profile;
@@ -39,10 +39,7 @@ namespace Emby.Dlna.Server
_serverId = serverId;
}
- private bool EnableAbsoluteUrls
- {
- get { return false; }
- }
+ private static bool EnableAbsoluteUrls => false;
public string GetXml()
{
diff --git a/Emby.Dlna/Service/ServiceXmlBuilder.cs b/Emby.Dlna/Service/ServiceXmlBuilder.cs
index c41f1b3be..68782ffb7 100644
--- a/Emby.Dlna/Service/ServiceXmlBuilder.cs
+++ b/Emby.Dlna/Service/ServiceXmlBuilder.cs
@@ -1,4 +1,4 @@
-using Emby.Dlna.Common;
+using Emby.Dlna.Common;
using System.Collections.Generic;
using System.Security;
using System.Text;
@@ -28,7 +28,7 @@ namespace Emby.Dlna.Service
return builder.ToString();
}
- private void AppendActionList(StringBuilder builder, IEnumerable<ServiceAction> actions)
+ private static void AppendActionList(StringBuilder builder, IEnumerable<ServiceAction> actions)
{
builder.Append("<actionList>");
@@ -59,7 +59,7 @@ namespace Emby.Dlna.Service
builder.Append("</actionList>");
}
- private void AppendServiceStateTable(StringBuilder builder, IEnumerable<StateVariable> stateVariables)
+ private static void AppendServiceStateTable(StringBuilder builder, IEnumerable<StateVariable> stateVariables)
{
builder.Append("<serviceStateTable>");
diff --git a/Emby.Drawing.Skia/Properties/AssemblyInfo.cs b/Emby.Drawing.Skia/Properties/AssemblyInfo.cs
index b8799f986..521010cdb 100644
--- a/Emby.Drawing.Skia/Properties/AssemblyInfo.cs
+++ b/Emby.Drawing.Skia/Properties/AssemblyInfo.cs
@@ -1,6 +1,5 @@
-using System.Resources;
using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -9,17 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("Emby.Drawing.Skia")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Emby.Drawing.Skia")]
-[assembly: AssemblyCopyright("Copyright © 2017")]
+[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")]
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-// \ No newline at end of file
+// 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.Drawing.Skia/SkiaEncoder.cs b/Emby.Drawing.Skia/SkiaEncoder.cs
index 0467794dc..dc5ae77cc 100644
--- a/Emby.Drawing.Skia/SkiaEncoder.cs
+++ b/Emby.Drawing.Skia/SkiaEncoder.cs
@@ -197,7 +197,7 @@ namespace Emby.Drawing.Skia
private static bool HasDiacritics(string text)
{
- return !String.Equals(text, text.RemoveDiacritics(), StringComparison.Ordinal);
+ return !string.Equals(text, text.RemoveDiacritics(), StringComparison.Ordinal);
}
private static bool RequiresSpecialCharacterHack(string path)
@@ -509,11 +509,11 @@ namespace Emby.Drawing.Skia
{
if (string.IsNullOrWhiteSpace(inputPath))
{
- throw new ArgumentNullException("inputPath");
+ throw new ArgumentNullException(nameof(inputPath));
}
if (string.IsNullOrWhiteSpace(inputPath))
{
- throw new ArgumentNullException("outputPath");
+ throw new ArgumentNullException(nameof(outputPath));
}
var skiaOutputFormat = GetImageFormat(selectedOutputFormat);
@@ -594,12 +594,12 @@ namespace Emby.Drawing.Skia
// If foreground layer present then draw
if (hasForegroundColor)
{
- if (!Double.TryParse(options.ForegroundLayer, out double opacity))
+ if (!double.TryParse(options.ForegroundLayer, out double opacity))
{
opacity = .4;
}
- canvas.DrawColor(new SKColor(0, 0, 0, (Byte)((1 - opacity) * 0xFF)), SKBlendMode.SrcOver);
+ canvas.DrawColor(new SKColor(0, 0, 0, (byte)((1 - opacity) * 0xFF)), SKBlendMode.SrcOver);
}
if (hasIndicator)
diff --git a/Emby.Drawing.Skia/StripCollageBuilder.cs b/Emby.Drawing.Skia/StripCollageBuilder.cs
index a98450e08..b3e7dbb5f 100644
--- a/Emby.Drawing.Skia/StripCollageBuilder.cs
+++ b/Emby.Drawing.Skia/StripCollageBuilder.cs
@@ -1,4 +1,4 @@
-using SkiaSharp;
+using SkiaSharp;
using MediaBrowser.Common.Configuration;
using System;
using System.IO;
@@ -20,6 +20,11 @@ namespace Emby.Drawing.Skia
public static SKEncodedImageFormat GetEncodedFormat(string outputPath)
{
+ if (outputPath == null)
+ {
+ throw new ArgumentNullException(nameof(outputPath));
+ }
+
var ext = Path.GetExtension(outputPath).ToLower();
if (ext == ".jpg" || ext == ".jpeg")
diff --git a/Emby.Drawing/Common/ImageHeader.cs b/Emby.Drawing/Common/ImageHeader.cs
index f37f396f5..592705d6c 100644
--- a/Emby.Drawing/Common/ImageHeader.cs
+++ b/Emby.Drawing/Common/ImageHeader.cs
@@ -94,7 +94,7 @@ namespace Emby.Drawing.Common
}
}
- throw new ArgumentException(ErrorMessage, "binaryReader");
+ throw new ArgumentException(ErrorMessage, nameof(binaryReader));
}
/// <summary>
diff --git a/Emby.Drawing/ImageProcessor.cs b/Emby.Drawing/ImageProcessor.cs
index 32f0559c6..4e4b36507 100644
--- a/Emby.Drawing/ImageProcessor.cs
+++ b/Emby.Drawing/ImageProcessor.cs
@@ -80,7 +80,7 @@ namespace Emby.Drawing
{
if (value == null)
{
- throw new ArgumentNullException("value");
+ throw new ArgumentNullException(nameof(value));
}
_imageEncoder = value;
@@ -179,7 +179,7 @@ namespace Emby.Drawing
{
if (options == null)
{
- throw new ArgumentNullException("options");
+ throw new ArgumentNullException(nameof(options));
}
var originalImage = options.Image;
@@ -491,7 +491,7 @@ namespace Emby.Drawing
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
try
@@ -691,12 +691,12 @@ namespace Emby.Drawing
{
if (string.IsNullOrEmpty(originalImagePath))
{
- throw new ArgumentNullException("originalImagePath");
+ throw new ArgumentNullException(nameof(originalImagePath));
}
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
var treatmentRequiresTransparency = false;
@@ -779,16 +779,16 @@ namespace Emby.Drawing
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (string.IsNullOrEmpty(uniqueName))
{
- throw new ArgumentNullException("uniqueName");
+ throw new ArgumentNullException(nameof(uniqueName));
}
if (string.IsNullOrEmpty(fileExtension))
{
- throw new ArgumentNullException("fileExtension");
+ throw new ArgumentNullException(nameof(fileExtension));
}
var filename = uniqueName.GetMD5() + fileExtension;
@@ -811,11 +811,11 @@ namespace Emby.Drawing
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (string.IsNullOrEmpty(filename))
{
- throw new ArgumentNullException("filename");
+ throw new ArgumentNullException(nameof(filename));
}
var prefix = filename.Substring(0, 1);
diff --git a/Emby.Drawing/Properties/AssemblyInfo.cs b/Emby.Drawing/Properties/AssemblyInfo.cs
index aa5619f97..8dfefe0af 100644
--- a/Emby.Drawing/Properties/AssemblyInfo.cs
+++ b/Emby.Drawing/Properties/AssemblyInfo.cs
@@ -1,4 +1,4 @@
-using System.Reflection;
+using System.Reflection;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,9 +7,9 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("Emby.Drawing")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Emby.Drawing")]
-[assembly: AssemblyCopyright("Copyright © 2015")]
+[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("")]
@@ -27,4 +27,4 @@ using System.Runtime.InteropServices;
// Minor Version
// Build Number
// Revision
-// \ No newline at end of file
+//
diff --git a/Emby.IsoMounting/IsoMounter/IsoMounter.csproj b/Emby.IsoMounting/IsoMounter/IsoMounter.csproj
index ee67a1d94..9274f9763 100644
--- a/Emby.IsoMounting/IsoMounter/IsoMounter.csproj
+++ b/Emby.IsoMounting/IsoMounter/IsoMounter.csproj
@@ -1,6 +1,10 @@
<Project Sdk="Microsoft.NET.Sdk">
<ItemGroup>
+ <Compile Include="..\..\SharedVersion.cs" Link="SharedVersion.cs" />
+ </ItemGroup>
+
+ <ItemGroup>
<ProjectReference Include="..\..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
<ProjectReference Include="..\..\MediaBrowser.Common\MediaBrowser.Common.csproj" />
</ItemGroup>
diff --git a/Emby.IsoMounting/IsoMounter/LinuxIsoManager.cs b/Emby.IsoMounting/IsoMounter/LinuxIsoManager.cs
index d82d2f2fb..ab85cb721 100644
--- a/Emby.IsoMounting/IsoMounter/LinuxIsoManager.cs
+++ b/Emby.IsoMounting/IsoMounter/LinuxIsoManager.cs
@@ -87,7 +87,7 @@ 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 {
ExecutablesAvailable = false;
@@ -152,7 +152,7 @@ namespace IsoMounter
return Task.FromResult<IIsoMount>(mountedISO);
}
else {
- throw new IOException(String.Format(
+ throw new IOException(string.Format(
"An error occurred trying to mount image [$0].",
isoPath
));
@@ -217,7 +217,7 @@ 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);
}
}
diff --git a/Emby.IsoMounting/IsoMounter/Properties/AssemblyInfo.cs b/Emby.IsoMounting/IsoMounter/Properties/AssemblyInfo.cs
new file mode 100644
index 000000000..8a26b12a2
--- /dev/null
+++ b/Emby.IsoMounting/IsoMounter/Properties/AssemblyInfo.cs
@@ -0,0 +1,21 @@
+using System.Reflection;
+using System.Resources;
+using System.Runtime.InteropServices;
+
+// 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")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[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)]
diff --git a/Emby.Naming/AudioBook/AudioBookResolver.cs b/Emby.Naming/AudioBook/AudioBookResolver.cs
index 53abbedb2..7c658f43a 100644
--- a/Emby.Naming/AudioBook/AudioBookResolver.cs
+++ b/Emby.Naming/AudioBook/AudioBookResolver.cs
@@ -30,7 +30,7 @@ namespace Emby.Naming.AudioBook
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (IsDirectory)
return null;
diff --git a/Emby.Naming/Emby.Naming.csproj b/Emby.Naming/Emby.Naming.csproj
index f1a736ecc..360ffaabe 100644
--- a/Emby.Naming/Emby.Naming.csproj
+++ b/Emby.Naming/Emby.Naming.csproj
@@ -4,6 +4,10 @@
<TargetFramework>netstandard2.0</TargetFramework>
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup>
+
+ <ItemGroup>
+ <Compile Include="..\SharedVersion.cs" Link="SharedVersion.cs" />
+ </ItemGroup>
<ItemGroup>
<ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" />
diff --git a/Emby.Naming/Properties/AssemblyInfo.cs b/Emby.Naming/Properties/AssemblyInfo.cs
new file mode 100644
index 000000000..15311570b
--- /dev/null
+++ b/Emby.Naming/Properties/AssemblyInfo.cs
@@ -0,0 +1,21 @@
+using System.Reflection;
+using System.Resources;
+using System.Runtime.InteropServices;
+
+// 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("Emby.Naming")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[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)]
diff --git a/Emby.Naming/Subtitles/SubtitleParser.cs b/Emby.Naming/Subtitles/SubtitleParser.cs
index fbf0f60cb..9c279cc09 100644
--- a/Emby.Naming/Subtitles/SubtitleParser.cs
+++ b/Emby.Naming/Subtitles/SubtitleParser.cs
@@ -18,7 +18,7 @@ namespace Emby.Naming.Subtitles
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var extension = Path.GetExtension(path);
@@ -52,7 +52,7 @@ namespace Emby.Naming.Subtitles
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
// Note: the tags need be be surrounded be either a space ( ), hyphen -, dot . or underscore _.
diff --git a/Emby.Naming/TV/EpisodePathParser.cs b/Emby.Naming/TV/EpisodePathParser.cs
index 7f8a6a70e..813be3f7a 100644
--- a/Emby.Naming/TV/EpisodePathParser.cs
+++ b/Emby.Naming/TV/EpisodePathParser.cs
@@ -1,4 +1,4 @@
-using Emby.Naming.Common;
+using Emby.Naming.Common;
using System;
using System.Collections.Generic;
using System.Globalization;
@@ -74,7 +74,7 @@ namespace Emby.Naming.TV
return result ?? new EpisodePathParserResult();
}
- private EpisodePathParserResult Parse(string name, EpisodeExpression expression)
+ private static EpisodePathParserResult Parse(string name, EpisodeExpression expression)
{
var result = new EpisodePathParserResult();
diff --git a/Emby.Naming/TV/EpisodeResolver.cs b/Emby.Naming/TV/EpisodeResolver.cs
index cce4e73b8..ec5ae2fbf 100644
--- a/Emby.Naming/TV/EpisodeResolver.cs
+++ b/Emby.Naming/TV/EpisodeResolver.cs
@@ -19,7 +19,7 @@ namespace Emby.Naming.TV
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var isStub = false;
diff --git a/Emby.Naming/Video/CleanDateTimeParser.cs b/Emby.Naming/Video/CleanDateTimeParser.cs
index e2a2d921c..ee6ec8ba0 100644
--- a/Emby.Naming/Video/CleanDateTimeParser.cs
+++ b/Emby.Naming/Video/CleanDateTimeParser.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using Emby.Naming.Common;
using System.Globalization;
using System.IO;
@@ -63,7 +63,7 @@ namespace Emby.Naming.Video
result;
}
- private CleanDateTimeResult Clean(string name, Regex expression)
+ private static CleanDateTimeResult Clean(string name, Regex expression)
{
var result = new CleanDateTimeResult();
diff --git a/Emby.Naming/Video/CleanStringParser.cs b/Emby.Naming/Video/CleanStringParser.cs
index bddf9589b..02b90310d 100644
--- a/Emby.Naming/Video/CleanStringParser.cs
+++ b/Emby.Naming/Video/CleanStringParser.cs
@@ -1,4 +1,4 @@
-using System.Collections.Generic;
+using System.Collections.Generic;
using System.Text.RegularExpressions;
namespace Emby.Naming.Video
@@ -30,7 +30,7 @@ namespace Emby.Naming.Video
};
}
- private CleanStringResult Clean(string name, Regex expression)
+ private static CleanStringResult Clean(string name, Regex expression)
{
var result = new CleanStringResult();
diff --git a/Emby.Naming/Video/FlagParser.cs b/Emby.Naming/Video/FlagParser.cs
index a2c541eeb..ef785ebf9 100644
--- a/Emby.Naming/Video/FlagParser.cs
+++ b/Emby.Naming/Video/FlagParser.cs
@@ -22,7 +22,7 @@ namespace Emby.Naming.Video
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
// Note: the tags need be be surrounded be either a space ( ), hyphen -, dot . or underscore _.
diff --git a/Emby.Naming/Video/Format3DParser.cs b/Emby.Naming/Video/Format3DParser.cs
index 42737b483..e335d1055 100644
--- a/Emby.Naming/Video/Format3DParser.cs
+++ b/Emby.Naming/Video/Format3DParser.cs
@@ -1,4 +1,4 @@
-using Emby.Naming.Common;
+using Emby.Naming.Common;
using System;
using System.Linq;
@@ -36,7 +36,7 @@ namespace Emby.Naming.Video
return new Format3DResult();
}
- private Format3DResult Parse(string[] videoFlags, Format3DRule rule)
+ private static Format3DResult Parse(string[] videoFlags, Format3DRule rule)
{
var result = new Format3DResult();
diff --git a/Emby.Naming/Video/VideoListResolver.cs b/Emby.Naming/Video/VideoListResolver.cs
index b052c7929..45d4593de 100644
--- a/Emby.Naming/Video/VideoListResolver.cs
+++ b/Emby.Naming/Video/VideoListResolver.cs
@@ -1,4 +1,4 @@
-using Emby.Naming.Common;
+using Emby.Naming.Common;
using System;
using System.Collections.Generic;
using System.IO;
@@ -236,7 +236,7 @@ namespace Emby.Naming.Video
if (testFilename.StartsWith(folderName, StringComparison.OrdinalIgnoreCase))
{
testFilename = testFilename.Substring(folderName.Length).Trim();
- return testFilename.StartsWith("-", StringComparison.OrdinalIgnoreCase)||Regex.Replace(testFilename, @"\[([^]]*)\]", "").Trim() == String.Empty;
+ return testFilename.StartsWith("-", StringComparison.OrdinalIgnoreCase) || Regex.Replace(testFilename, @"\[([^]]*)\]", "").Trim() == string.Empty;
}
return false;
diff --git a/Emby.Naming/Video/VideoResolver.cs b/Emby.Naming/Video/VideoResolver.cs
index c4951c728..f6ab8cb87 100644
--- a/Emby.Naming/Video/VideoResolver.cs
+++ b/Emby.Naming/Video/VideoResolver.cs
@@ -45,7 +45,7 @@ namespace Emby.Naming.Video
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var isStub = false;
diff --git a/Emby.Notifications/Emby.Notifications.csproj b/Emby.Notifications/Emby.Notifications.csproj
index 881be692b..5b5ae445e 100644
--- a/Emby.Notifications/Emby.Notifications.csproj
+++ b/Emby.Notifications/Emby.Notifications.csproj
@@ -6,6 +6,10 @@
</PropertyGroup>
<ItemGroup>
+ <Compile Include="..\SharedVersion.cs" Link="SharedVersion.cs" />
+ </ItemGroup>
+
+ <ItemGroup>
<ProjectReference Include="..\MediaBrowser.Model\MediaBrowser.Model.csproj" />
<ProjectReference Include="..\MediaBrowser.Controller\MediaBrowser.Controller.csproj" />
<ProjectReference Include="..\MediaBrowser.Common\MediaBrowser.Common.csproj" />
diff --git a/Emby.Notifications/Properties/AssemblyInfo.cs b/Emby.Notifications/Properties/AssemblyInfo.cs
index d35c8b289..fd7037551 100644
--- a/Emby.Notifications/Properties/AssemblyInfo.cs
+++ b/Emby.Notifications/Properties/AssemblyInfo.cs
@@ -1,5 +1,5 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -8,29 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("Emby.Notifications")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Emby.Notifications")]
-[assembly: AssemblyCopyright("Copyright © 2018")]
+[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("4d1d313b-60bb-4e11-acf9-cda6745266ef")]
-
-// 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/Emby.Photos/Properties/AssemblyInfo.cs b/Emby.Photos/Properties/AssemblyInfo.cs
index 20e7d952d..262125d38 100644
--- a/Emby.Photos/Properties/AssemblyInfo.cs
+++ b/Emby.Photos/Properties/AssemblyInfo.cs
@@ -1,5 +1,5 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -8,27 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("Emby.Photos")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Emby.Photos")]
-[assembly: AssemblyCopyright("Copyright © 2016")]
+[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("89ab4548-770d-41fd-a891-8daff44f452c")]
-
-// 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.*")] \ No newline at end of file
diff --git a/Emby.Server.Implementations/Activity/ActivityLogEntryPoint.cs b/Emby.Server.Implementations/Activity/ActivityLogEntryPoint.cs
index 3f7b907a9..eca1ff0f5 100644
--- a/Emby.Server.Implementations/Activity/ActivityLogEntryPoint.cs
+++ b/Emby.Server.Implementations/Activity/ActivityLogEntryPoint.cs
@@ -202,7 +202,7 @@ namespace Emby.Server.Implementations.Activity
return name;
}
- private string GetPlaybackNotificationType(string mediaType)
+ private static string GetPlaybackNotificationType(string mediaType)
{
if (string.Equals(mediaType, MediaType.Audio, StringComparison.OrdinalIgnoreCase))
{
@@ -220,7 +220,7 @@ namespace Emby.Server.Implementations.Activity
return null;
}
- private string GetPlaybackStoppedNotificationType(string mediaType)
+ private static string GetPlaybackStoppedNotificationType(string mediaType)
{
if (string.Equals(mediaType, MediaType.Audio, StringComparison.OrdinalIgnoreCase))
{
@@ -577,8 +577,8 @@ namespace Emby.Server.Implementations.Activity
/// <param name="description">The name of this item (singular form)</param>
private static string CreateValueString(int value, string description)
{
- return String.Format("{0:#,##0} {1}",
- value, value == 1 ? description : String.Format("{0}s", description));
+ return string.Format("{0:#,##0} {1}",
+ value, value == 1 ? description : string.Format("{0}s", description));
}
}
}
diff --git a/Emby.Server.Implementations/Activity/ActivityRepository.cs b/Emby.Server.Implementations/Activity/ActivityRepository.cs
index 91a4a5fd4..822219132 100644
--- a/Emby.Server.Implementations/Activity/ActivityRepository.cs
+++ b/Emby.Server.Implementations/Activity/ActivityRepository.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
@@ -83,7 +83,7 @@ namespace Emby.Server.Implementations.Activity
{
if (entry == null)
{
- throw new ArgumentNullException("entry");
+ throw new ArgumentNullException(nameof(entry));
}
using (WriteLock.Write())
@@ -122,7 +122,7 @@ namespace Emby.Server.Implementations.Activity
{
if (entry == null)
{
- throw new ArgumentNullException("entry");
+ throw new ArgumentNullException(nameof(entry));
}
using (WriteLock.Write())
@@ -251,7 +251,7 @@ namespace Emby.Server.Implementations.Activity
}
}
- private ActivityLogEntry GetEntry(IReadOnlyList<IResultSetValue> reader)
+ private static ActivityLogEntry GetEntry(IReadOnlyList<IResultSetValue> reader)
{
var index = 0;
diff --git a/Emby.Server.Implementations/AppBase/BaseApplicationPaths.cs b/Emby.Server.Implementations/AppBase/BaseApplicationPaths.cs
index 3e12bc0b6..3ad2d4b91 100644
--- a/Emby.Server.Implementations/AppBase/BaseApplicationPaths.cs
+++ b/Emby.Server.Implementations/AppBase/BaseApplicationPaths.cs
@@ -55,61 +55,31 @@ namespace Emby.Server.Implementations.AppBase
}
private const string _virtualDataPath = "%AppDataPath%";
- public string VirtualDataPath
- {
- get
- {
- return _virtualDataPath;
- }
- }
+ public string VirtualDataPath => _virtualDataPath;
/// <summary>
/// Gets the image cache path.
/// </summary>
/// <value>The image cache path.</value>
- public string ImageCachePath
- {
- get
- {
- return Path.Combine(CachePath, "images");
- }
- }
+ public string ImageCachePath => Path.Combine(CachePath, "images");
/// <summary>
/// Gets the path to the plugin directory
/// </summary>
/// <value>The plugins path.</value>
- public string PluginsPath
- {
- get
- {
- return Path.Combine(ProgramDataPath, "plugins");
- }
- }
+ public string PluginsPath => Path.Combine(ProgramDataPath, "plugins");
/// <summary>
/// Gets the path to the plugin configurations directory
/// </summary>
/// <value>The plugin configurations path.</value>
- public string PluginConfigurationsPath
- {
- get
- {
- return Path.Combine(PluginsPath, "configurations");
- }
- }
+ public string PluginConfigurationsPath => Path.Combine(PluginsPath, "configurations");
/// <summary>
/// Gets the path to where temporary update files will be stored
/// </summary>
/// <value>The plugin configurations path.</value>
- public string TempUpdatePath
- {
- get
- {
- return Path.Combine(ProgramDataPath, "updates");
- }
- }
+ public string TempUpdatePath => Path.Combine(ProgramDataPath, "updates");
/// <summary>
/// The _log directory
@@ -133,10 +103,7 @@ namespace Emby.Server.Implementations.AppBase
return _logDirectoryPath;
}
- set
- {
- _logDirectoryPath = value;
- }
+ set => _logDirectoryPath = value;
}
/// <summary>
@@ -161,23 +128,14 @@ namespace Emby.Server.Implementations.AppBase
return _configurationDirectoryPath;
}
- set
- {
- _configurationDirectoryPath = value;
- }
+ set => _configurationDirectoryPath = value;
}
/// <summary>
/// Gets the path to the system configuration file
/// </summary>
/// <value>The system configuration file path.</value>
- public string SystemConfigurationFilePath
- {
- get
- {
- return Path.Combine(ConfigurationDirectoryPath, "system.xml");
- }
- }
+ public string SystemConfigurationFilePath => Path.Combine(ConfigurationDirectoryPath, "system.xml");
/// <summary>
/// The _cache directory
@@ -200,22 +158,13 @@ namespace Emby.Server.Implementations.AppBase
return _cachePath;
}
- set
- {
- _cachePath = value;
- }
+ set => _cachePath = value;
}
/// <summary>
/// Gets the folder path to the temp directory within the cache folder
/// </summary>
/// <value>The temp directory.</value>
- public string TempDirectory
- {
- get
- {
- return Path.Combine(CachePath, "temp");
- }
- }
+ public string TempDirectory => Path.Combine(CachePath, "temp");
}
}
diff --git a/Emby.Server.Implementations/AppBase/BaseConfigurationManager.cs b/Emby.Server.Implementations/AppBase/BaseConfigurationManager.cs
index bc5168fe8..222a93a10 100644
--- a/Emby.Server.Implementations/AppBase/BaseConfigurationManager.cs
+++ b/Emby.Server.Implementations/AppBase/BaseConfigurationManager.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.IO;
@@ -99,6 +99,7 @@ namespace Emby.Server.Implementations.AppBase
/// <param name="applicationPaths">The application paths.</param>
/// <param name="loggerFactory">The logger factory.</param>
/// <param name="xmlSerializer">The XML serializer.</param>
+ /// <param name="fileSystem">The file system</param>
protected BaseConfigurationManager(IApplicationPaths applicationPaths, ILoggerFactory loggerFactory, IXmlSerializer xmlSerializer, IFileSystem fileSystem)
{
CommonApplicationPaths = applicationPaths;
@@ -155,7 +156,7 @@ namespace Emby.Server.Implementations.AppBase
{
if (newConfiguration == null)
{
- throw new ArgumentNullException("newConfiguration");
+ throw new ArgumentNullException(nameof(newConfiguration));
}
ValidateCachePath(newConfiguration);
diff --git a/Emby.Server.Implementations/AppBase/ConfigurationHelper.cs b/Emby.Server.Implementations/AppBase/ConfigurationHelper.cs
index d6a41dd67..ee6da95fe 100644
--- a/Emby.Server.Implementations/AppBase/ConfigurationHelper.cs
+++ b/Emby.Server.Implementations/AppBase/ConfigurationHelper.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.IO;
using System.Linq;
using MediaBrowser.Model.IO;
@@ -18,6 +18,7 @@ namespace Emby.Server.Implementations.AppBase
/// <param name="type">The type.</param>
/// <param name="path">The path.</param>
/// <param name="xmlSerializer">The XML serializer.</param>
+ /// <param name="fileSystem">The file system</param>
/// <returns>System.Object.</returns>
public static object GetXmlConfiguration(Type type, string path, IXmlSerializer xmlSerializer, IFileSystem fileSystem)
{
diff --git a/Emby.Server.Implementations/ApplicationHost.cs b/Emby.Server.Implementations/ApplicationHost.cs
index b020b33c3..386f42959 100644
--- a/Emby.Server.Implementations/ApplicationHost.cs
+++ b/Emby.Server.Implementations/ApplicationHost.cs
@@ -1,4 +1,4 @@
-using Emby.Common.Implementations.Serialization;
+using Emby.Common.Implementations.Serialization;
using Emby.Drawing;
using Emby.Photos;
using Emby.Dlna;
@@ -132,13 +132,7 @@ namespace Emby.Server.Implementations
/// Gets or sets a value indicating whether this instance can self update.
/// </summary>
/// <value><c>true</c> if this instance can self update; otherwise, <c>false</c>.</value>
- public virtual bool CanSelfUpdate
- {
- get
- {
- return false;
- }
- }
+ public virtual bool CanSelfUpdate => false;
public virtual bool CanLaunchWebBrowser
{
@@ -245,10 +239,7 @@ namespace Emby.Server.Implementations
}
}
- public virtual string OperatingSystemDisplayName
- {
- get { return EnvironmentInfo.OperatingSystemName; }
- }
+ public virtual string OperatingSystemDisplayName => EnvironmentInfo.OperatingSystemName;
/// <summary>
/// The container
@@ -261,10 +252,7 @@ namespace Emby.Server.Implementations
/// Gets the server configuration manager.
/// </summary>
/// <value>The server configuration manager.</value>
- public IServerConfigurationManager ServerConfigurationManager
- {
- get { return (IServerConfigurationManager)ConfigurationManager; }
- }
+ public IServerConfigurationManager ServerConfigurationManager => (IServerConfigurationManager)ConfigurationManager;
/// <summary>
/// Gets the configuration manager.
@@ -453,13 +441,7 @@ namespace Emby.Server.Implementations
/// Gets the current application version
/// </summary>
/// <value>The application version.</value>
- public Version ApplicationVersion
- {
- get
- {
- return _version ?? (_version = typeof(ApplicationHost).Assembly.GetName().Version);
- }
- }
+ public Version ApplicationVersion => _version ?? (_version = typeof(ApplicationHost).Assembly.GetName().Version);
private DeviceId _deviceId;
public string SystemId
@@ -479,15 +461,9 @@ namespace Emby.Server.Implementations
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get
- {
- return "Emby Server";
- }
- }
+ public string Name => "Emby Server";
- private Tuple<Assembly, string> GetAssembly(Type type)
+ private static Tuple<Assembly, string> GetAssembly(Type type)
{
var assembly = type.GetTypeInfo().Assembly;
string path = null;
@@ -513,7 +489,7 @@ namespace Emby.Server.Implementations
/// <summary>
/// Creates the instance safe.
/// </summary>
- /// <param name="type">The type.</param>
+ /// <param name="typeInfo">The type information.</param>
/// <returns>System.Object.</returns>
protected object CreateInstanceSafe(Tuple<Type, string> typeInfo)
{
@@ -1004,13 +980,7 @@ namespace Emby.Server.Implementations
return s => JsvReader.GetParseFn(propertyType)(s);
}
- public virtual string PackageRuntime
- {
- get
- {
- return "netcore";
- }
- }
+ public virtual string PackageRuntime => "netcore";
public static void LogEnvironmentInfo(ILogger logger, IApplicationPaths appPaths, EnvironmentInfo.EnvironmentInfo environmentInfo)
{
@@ -1049,7 +1019,7 @@ namespace Emby.Server.Implementations
return name + "/" + ApplicationVersion;
}
- private string FormatAttribute(string str)
+ private static string FormatAttribute(string str)
{
var arr = str.ToCharArray();
@@ -1066,13 +1036,7 @@ namespace Emby.Server.Implementations
return result;
}
- protected virtual bool SupportsDualModeSockets
- {
- get
- {
- return true;
- }
- }
+ protected virtual bool SupportsDualModeSockets => true;
private X509Certificate GetCertificate(CertificateInfo info)
{
@@ -1927,18 +1891,9 @@ namespace Emby.Server.Implementations
};
}
- public bool EnableHttps
- {
- get
- {
- return SupportsHttps && ServerConfigurationManager.Configuration.EnableHttps;
- }
- }
+ public bool EnableHttps => SupportsHttps && ServerConfigurationManager.Configuration.EnableHttps;
- public bool SupportsHttps
- {
- get { return Certificate != null || ServerConfigurationManager.Configuration.IsBehindProxy; }
- }
+ public bool SupportsHttps => Certificate != null || ServerConfigurationManager.Configuration.IsBehindProxy;
public async Task<string> GetLocalApiUrl(CancellationToken cancellationToken)
{
@@ -2132,15 +2087,10 @@ namespace Emby.Server.Implementations
}
}
- public string FriendlyName
- {
- get
- {
- return string.IsNullOrEmpty(ServerConfigurationManager.Configuration.ServerName)
- ? Environment.MachineName
- : ServerConfigurationManager.Configuration.ServerName;
- }
- }
+ public string FriendlyName =>
+ string.IsNullOrEmpty(ServerConfigurationManager.Configuration.ServerName)
+ ? Environment.MachineName
+ : ServerConfigurationManager.Configuration.ServerName;
public int HttpPort { get; private set; }
@@ -2177,7 +2127,7 @@ namespace Emby.Server.Implementations
private bool _hasUpdateAvailable;
public bool HasUpdateAvailable
{
- get { return _hasUpdateAvailable; }
+ get => _hasUpdateAvailable;
set
{
var fireEvent = value && !_hasUpdateAvailable;
diff --git a/Emby.Server.Implementations/Channels/ChannelImageProvider.cs b/Emby.Server.Implementations/Channels/ChannelImageProvider.cs
index a6643e83c..7eded70c0 100644
--- a/Emby.Server.Implementations/Channels/ChannelImageProvider.cs
+++ b/Emby.Server.Implementations/Channels/ChannelImageProvider.cs
@@ -30,10 +30,7 @@ namespace Emby.Server.Implementations.Channels
return channel.GetChannelImage(type, cancellationToken);
}
- public string Name
- {
- get { return "Channel Image Provider"; }
- }
+ public string Name => "Channel Image Provider";
public bool Supports(BaseItem item)
{
diff --git a/Emby.Server.Implementations/Channels/ChannelManager.cs b/Emby.Server.Implementations/Channels/ChannelManager.cs
index 398699977..4cc3fd855 100644
--- a/Emby.Server.Implementations/Channels/ChannelManager.cs
+++ b/Emby.Server.Implementations/Channels/ChannelManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Extensions;
+using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller.Channels;
using MediaBrowser.Controller.Configuration;
@@ -67,13 +67,7 @@ namespace Emby.Server.Implementations.Channels
_providerManager = providerManager;
}
- private TimeSpan CacheLength
- {
- get
- {
- return TimeSpan.FromHours(3);
- }
- }
+ private static TimeSpan CacheLength => TimeSpan.FromHours(3);
public void AddParts(IEnumerable<IChannel> channels)
{
@@ -269,6 +263,7 @@ namespace Emby.Server.Implementations.Channels
{
};
+ //TODO Fix The co-variant conversion (internalResult.Items) between Folder[] and BaseItem[], this can generate runtime issues.
var returnItems = _dtoService.GetBaseItemDtos(internalResult.Items, dtoOptions, user);
var result = new QueryResult<BaseItemDto>
@@ -419,7 +414,7 @@ namespace Emby.Server.Implementations.Channels
return list;
}
- private MediaSourceInfo NormalizeMediaSource(BaseItem item, MediaSourceInfo info)
+ private static MediaSourceInfo NormalizeMediaSource(BaseItem item, MediaSourceInfo info)
{
info.RunTimeTicks = info.RunTimeTicks ?? item.RunTimeTicks;
@@ -492,7 +487,7 @@ namespace Emby.Server.Implementations.Channels
return item;
}
- private string GetOfficialRating(ChannelParentalRating rating)
+ private static string GetOfficialRating(ChannelParentalRating rating)
{
switch (rating)
{
@@ -533,7 +528,7 @@ namespace Emby.Server.Implementations.Channels
{
if (string.IsNullOrEmpty(id))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
var channel = GetChannel(id);
@@ -577,7 +572,7 @@ namespace Emby.Server.Implementations.Channels
{
if (string.IsNullOrEmpty(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
return _libraryManager.GetNewItemId("Channel " + name, typeof(Channel));
}
@@ -891,7 +886,7 @@ namespace Emby.Server.Implementations.Channels
filename + ".json");
}
- private string GetIdToHash(string externalId, string channelName)
+ private static string GetIdToHash(string externalId, string channelName)
{
// Increment this as needed to force new downloads
// Incorporate Name because it's being used to convert channel entity to provider
@@ -1187,7 +1182,7 @@ namespace Emby.Server.Implementations.Channels
{
if (channel == null)
{
- throw new ArgumentNullException("channel");
+ throw new ArgumentNullException(nameof(channel));
}
var result = GetAllChannels()
diff --git a/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs b/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs
index 3e270dabc..c1e9fad8a 100644
--- a/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs
+++ b/Emby.Server.Implementations/Channels/RefreshChannelsScheduledTask.cs
@@ -25,35 +25,17 @@ namespace Emby.Server.Implementations.Channels
_libraryManager = libraryManager;
}
- public string Name
- {
- get { return "Refresh Channels"; }
- }
+ public string Name => "Refresh Channels";
- public string Description
- {
- get { return "Refreshes internet channel information."; }
- }
+ public string Description => "Refreshes internet channel information.";
- public string Category
- {
- get { return "Internet Channels"; }
- }
+ public string Category => "Internet Channels";
- public bool IsHidden
- {
- get { return ((ChannelManager)_channelManager).Channels.Length == 0; }
- }
+ public bool IsHidden => ((ChannelManager)_channelManager).Channels.Length == 0;
- public bool IsEnabled
- {
- get { return true; }
- }
+ public bool IsEnabled => true;
- public bool IsLogged
- {
- get { return true; }
- }
+ public bool IsLogged => true;
public async Task Execute(CancellationToken cancellationToken, IProgress<double> progress)
{
@@ -77,9 +59,6 @@ namespace Emby.Server.Implementations.Channels
};
}
- public string Key
- {
- get { return "RefreshInternetChannels"; }
- }
+ public string Key => "RefreshInternetChannels";
}
}
diff --git a/Emby.Server.Implementations/Configuration/ServerConfigurationManager.cs b/Emby.Server.Implementations/Configuration/ServerConfigurationManager.cs
index 015421197..6180645e4 100644
--- a/Emby.Server.Implementations/Configuration/ServerConfigurationManager.cs
+++ b/Emby.Server.Implementations/Configuration/ServerConfigurationManager.cs
@@ -38,28 +38,19 @@ namespace Emby.Server.Implementations.Configuration
/// Gets the type of the configuration.
/// </summary>
/// <value>The type of the configuration.</value>
- protected override Type ConfigurationType
- {
- get { return typeof(ServerConfiguration); }
- }
+ protected override Type ConfigurationType => typeof(ServerConfiguration);
/// <summary>
/// Gets the application paths.
/// </summary>
/// <value>The application paths.</value>
- public IServerApplicationPaths ApplicationPaths
- {
- get { return (IServerApplicationPaths)CommonApplicationPaths; }
- }
+ public IServerApplicationPaths ApplicationPaths => (IServerApplicationPaths)CommonApplicationPaths;
/// <summary>
/// Gets the configuration.
/// </summary>
/// <value>The configuration.</value>
- public ServerConfiguration Configuration
- {
- get { return (ServerConfiguration)CommonConfiguration; }
- }
+ public ServerConfiguration Configuration => (ServerConfiguration)CommonConfiguration;
/// <summary>
/// Called when [configuration updated].
diff --git a/Emby.Server.Implementations/Data/BaseSqliteRepository.cs b/Emby.Server.Implementations/Data/BaseSqliteRepository.cs
index 59776c373..c714ba91b 100644
--- a/Emby.Server.Implementations/Data/BaseSqliteRepository.cs
+++ b/Emby.Server.Implementations/Data/BaseSqliteRepository.cs
@@ -24,15 +24,9 @@ namespace Emby.Server.Implementations.Data
WriteLock = new ReaderWriterLockSlim(LockRecursionPolicy.NoRecursion);
}
- protected TransactionMode TransactionMode
- {
- get { return TransactionMode.Deferred; }
- }
+ protected TransactionMode TransactionMode => TransactionMode.Deferred;
- protected TransactionMode ReadTransactionMode
- {
- get { return TransactionMode.Deferred; }
- }
+ protected TransactionMode ReadTransactionMode => TransactionMode.Deferred;
internal static int ThreadSafeMode { get; set; }
@@ -58,10 +52,7 @@ namespace Emby.Server.Implementations.Data
private string _defaultWal;
protected ManagedConnection _connection;
- protected virtual bool EnableSingleConnection
- {
- get { return true; }
- }
+ protected virtual bool EnableSingleConnection => true;
protected ManagedConnection CreateConnection(bool isReadOnly = false)
{
@@ -238,21 +229,9 @@ namespace Emby.Server.Implementations.Data
Logger.LogInformation("PRAGMA synchronous=" + db.Query("PRAGMA synchronous").SelectScalarString().First());
}
- protected virtual bool EnableTempStoreMemory
- {
- get
- {
- return false;
- }
- }
+ protected virtual bool EnableTempStoreMemory => false;
- protected virtual int? CacheSize
- {
- get
- {
- return null;
- }
- }
+ protected virtual int? CacheSize => null;
internal static void CheckOk(int rc)
{
@@ -276,7 +255,7 @@ namespace Emby.Server.Implementations.Data
{
if (_disposed)
{
- throw new ObjectDisposedException(GetType().Name + " 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/SqliteDisplayPreferencesRepository.cs b/Emby.Server.Implementations/Data/SqliteDisplayPreferencesRepository.cs
index 00e1956cf..49d8f79a2 100644
--- a/Emby.Server.Implementations/Data/SqliteDisplayPreferencesRepository.cs
+++ b/Emby.Server.Implementations/Data/SqliteDisplayPreferencesRepository.cs
@@ -32,13 +32,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>
/// The _json serializer
@@ -94,11 +88,11 @@ namespace Emby.Server.Implementations.Data
{
if (displayPreferences == null)
{
- throw new ArgumentNullException("displayPreferences");
+ throw new ArgumentNullException(nameof(displayPreferences));
}
if (string.IsNullOrEmpty(displayPreferences.Id))
{
- throw new ArgumentNullException("displayPreferences.Id");
+ throw new ArgumentNullException(nameof(displayPreferences.Id));
}
cancellationToken.ThrowIfCancellationRequested();
@@ -142,7 +136,7 @@ namespace Emby.Server.Implementations.Data
{
if (displayPreferences == null)
{
- throw new ArgumentNullException("displayPreferences");
+ throw new ArgumentNullException(nameof(displayPreferences));
}
cancellationToken.ThrowIfCancellationRequested();
@@ -174,7 +168,7 @@ namespace Emby.Server.Implementations.Data
{
if (string.IsNullOrEmpty(displayPreferencesId))
{
- throw new ArgumentNullException("displayPreferencesId");
+ throw new ArgumentNullException(nameof(displayPreferencesId));
}
var guidId = displayPreferencesId.GetMD5();
diff --git a/Emby.Server.Implementations/Data/SqliteExtensions.cs b/Emby.Server.Implementations/Data/SqliteExtensions.cs
index a755c65f4..d9b2db56e 100644
--- a/Emby.Server.Implementations/Data/SqliteExtensions.cs
+++ b/Emby.Server.Implementations/Data/SqliteExtensions.cs
@@ -14,7 +14,7 @@ namespace Emby.Server.Implementations.Data
{
if (queries == null)
{
- throw new ArgumentNullException("queries");
+ throw new ArgumentNullException(nameof(queries));
}
connection.RunInTransaction(conn =>
@@ -134,7 +134,7 @@ namespace Emby.Server.Implementations.Data
{
if (obj == null)
{
- throw new ArgumentNullException("obj");
+ throw new ArgumentNullException(nameof(obj));
}
using (var stream = new MemoryStream())
diff --git a/Emby.Server.Implementations/Data/SqliteItemRepository.cs b/Emby.Server.Implementations/Data/SqliteItemRepository.cs
index f18a0ba08..f1894fd4f 100644
--- a/Emby.Server.Implementations/Data/SqliteItemRepository.cs
+++ b/Emby.Server.Implementations/Data/SqliteItemRepository.cs
@@ -82,11 +82,11 @@ namespace Emby.Server.Implementations.Data
{
if (config == null)
{
- throw new ArgumentNullException("config");
+ throw new ArgumentNullException(nameof(config));
}
if (jsonSerializer == null)
{
- throw new ArgumentNullException("jsonSerializer");
+ throw new ArgumentNullException(nameof(jsonSerializer));
}
_appHost = appHost;
@@ -455,7 +455,7 @@ namespace Emby.Server.Implementations.Data
"ColorTransfer"
};
- private string GetSaveItemCommandText()
+ private static string GetSaveItemCommandText()
{
var saveColumns = new List<string>
{
@@ -558,7 +558,7 @@ namespace Emby.Server.Implementations.Data
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
SaveItems(new List<BaseItem> { item }, cancellationToken);
@@ -568,7 +568,7 @@ namespace Emby.Server.Implementations.Data
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
CheckDisposed();
@@ -605,7 +605,7 @@ namespace Emby.Server.Implementations.Data
{
if (items == null)
{
- throw new ArgumentNullException("items");
+ throw new ArgumentNullException(nameof(items));
}
cancellationToken.ThrowIfCancellationRequested();
@@ -1070,7 +1070,7 @@ namespace Emby.Server.Implementations.Data
saveItemStatement.MoveNext();
}
- private string SerializeProviderIds(BaseItem item)
+ private static string SerializeProviderIds(BaseItem item)
{
// Ideally we shouldn't need this IsNullOrWhiteSpace check but we're seeing some cases of bad data slip through
var ids = item.ProviderIds
@@ -1085,7 +1085,7 @@ namespace Emby.Server.Implementations.Data
return string.Join("|", ids.Select(i => i.Key + "=" + i.Value).ToArray());
}
- private void DeserializeProviderIds(string value, BaseItem item)
+ private static void DeserializeProviderIds(string value, BaseItem item)
{
if (string.IsNullOrWhiteSpace(value))
{
@@ -1226,7 +1226,7 @@ namespace Emby.Server.Implementations.Data
{
if (id.Equals(Guid.Empty))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
CheckDisposed();
@@ -1948,7 +1948,7 @@ namespace Emby.Server.Implementations.Data
return item;
}
- private Guid[] SplitToGuids(string value)
+ private static Guid[] SplitToGuids(string value)
{
var ids = value.Split('|');
@@ -1965,7 +1965,7 @@ namespace Emby.Server.Implementations.Data
/// <summary>
/// Gets chapters for an item
/// </summary>
- /// <param name="id">The id.</param>
+ /// <param name="item">The item.</param>
/// <returns>IEnumerable{ChapterInfo}.</returns>
/// <exception cref="System.ArgumentNullException">id</exception>
public List<ChapterInfo> GetChapters(BaseItem item)
@@ -1996,7 +1996,7 @@ namespace Emby.Server.Implementations.Data
/// <summary>
/// Gets a single chapter for an item
/// </summary>
- /// <param name="id">The id.</param>
+ /// <param name="item">The item.</param>
/// <param name="index">The index.</param>
/// <returns>ChapterInfo.</returns>
/// <exception cref="System.ArgumentNullException">id</exception>
@@ -2067,12 +2067,12 @@ namespace Emby.Server.Implementations.Data
if (id.Equals(Guid.Empty))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
if (chapters == null)
{
- throw new ArgumentNullException("chapters");
+ throw new ArgumentNullException(nameof(chapters));
}
using (WriteLock.Write())
@@ -2144,7 +2144,7 @@ namespace Emby.Server.Implementations.Data
}
}
- private bool EnableJoinUserData(InternalItemsQuery query)
+ private static bool EnableJoinUserData(InternalItemsQuery query)
{
if (query.User == null)
{
@@ -2681,7 +2681,7 @@ namespace Emby.Server.Implementations.Data
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
CheckDisposed();
@@ -2739,7 +2739,7 @@ namespace Emby.Server.Implementations.Data
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
CheckDisposed();
@@ -2928,7 +2928,7 @@ namespace Emby.Server.Implementations.Data
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
CheckDisposed();
@@ -3212,7 +3212,7 @@ namespace Emby.Server.Implementations.Data
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
CheckDisposed();
@@ -3286,7 +3286,7 @@ namespace Emby.Server.Implementations.Data
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
CheckDisposed();
@@ -3362,7 +3362,7 @@ namespace Emby.Server.Implementations.Data
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
CheckDisposed();
@@ -5184,7 +5184,7 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
{
if (id.Equals(Guid.Empty))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
CheckDisposed();
@@ -5233,7 +5233,7 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
CheckDisposed();
@@ -5273,7 +5273,7 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
CheckDisposed();
@@ -5387,12 +5387,12 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
{
if (itemId.Equals(Guid.Empty))
{
- throw new ArgumentNullException("itemId");
+ throw new ArgumentNullException(nameof(itemId));
}
if (ancestorIds == null)
{
- throw new ArgumentNullException("ancestorIds");
+ throw new ArgumentNullException(nameof(ancestorIds));
}
CheckDisposed();
@@ -5556,7 +5556,7 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
if (!query.Limit.HasValue)
@@ -5915,12 +5915,12 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
{
if (itemId.Equals(Guid.Empty))
{
- throw new ArgumentNullException("itemId");
+ throw new ArgumentNullException(nameof(itemId));
}
if (values == null)
{
- throw new ArgumentNullException("keys");
+ throw new ArgumentNullException(nameof(values));
}
CheckDisposed();
@@ -5991,12 +5991,12 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
{
if (itemId.Equals(Guid.Empty))
{
- throw new ArgumentNullException("itemId");
+ throw new ArgumentNullException(nameof(itemId));
}
if (people == null)
{
- throw new ArgumentNullException("people");
+ throw new ArgumentNullException(nameof(people));
}
CheckDisposed();
@@ -6102,7 +6102,7 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
var cmdText = "select " + string.Join(",", _mediaStreamSaveColumns) + " from mediastreams where";
@@ -6158,12 +6158,12 @@ where AncestorIdText not null and ItemValues.Value not null and ItemValues.Type
if (id.Equals(Guid.Empty))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
if (streams == null)
{
- throw new ArgumentNullException("streams");
+ throw new ArgumentNullException(nameof(streams));
}
cancellationToken.ThrowIfCancellationRequested();
diff --git a/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs b/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs
index 6d4ddcedd..cf60b71d6 100644
--- a/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs
+++ b/Emby.Server.Implementations/Data/SqliteUserDataRepository.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
@@ -28,13 +28,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>
/// Opens the connection to the database
@@ -136,13 +130,7 @@ namespace Emby.Server.Implementations.Data
return list;
}
- protected override bool EnableTempStoreMemory
- {
- get
- {
- return true;
- }
- }
+ protected override bool EnableTempStoreMemory => true;
/// <summary>
/// Saves the user data.
@@ -151,15 +139,15 @@ namespace Emby.Server.Implementations.Data
{
if (userData == null)
{
- throw new ArgumentNullException("userData");
+ throw new ArgumentNullException(nameof(userData));
}
if (internalUserId <= 0)
{
- throw new ArgumentNullException("internalUserId");
+ throw new ArgumentNullException(nameof(internalUserId));
}
if (string.IsNullOrEmpty(key))
{
- throw new ArgumentNullException("key");
+ throw new ArgumentNullException(nameof(key));
}
PersistUserData(internalUserId, key, userData, cancellationToken);
@@ -169,11 +157,11 @@ namespace Emby.Server.Implementations.Data
{
if (userData == null)
{
- throw new ArgumentNullException("userData");
+ throw new ArgumentNullException(nameof(userData));
}
if (internalUserId <= 0)
{
- throw new ArgumentNullException("internalUserId");
+ throw new ArgumentNullException(nameof(internalUserId));
}
PersistAllUserData(internalUserId, userData, cancellationToken);
@@ -182,7 +170,7 @@ namespace Emby.Server.Implementations.Data
/// <summary>
/// Persists the user data.
/// </summary>
- /// <param name="userId">The user id.</param>
+ /// <param name="internalUserId">The user id.</param>
/// <param name="key">The key.</param>
/// <param name="userData">The user data.</param>
/// <param name="cancellationToken">The cancellation token.</param>
@@ -203,7 +191,7 @@ namespace Emby.Server.Implementations.Data
}
}
- private void SaveUserData(IDatabaseConnection db, long internalUserId, string key, UserItemData userData)
+ private static void SaveUserData(IDatabaseConnection db, long internalUserId, string key, UserItemData userData)
{
using (var statement = db.PrepareStatement("replace into UserDatas (key, userId, rating,played,playCount,isFavorite,playbackPositionTicks,lastPlayedDate,AudioStreamIndex,SubtitleStreamIndex) values (@key, @userId, @rating,@played,@playCount,@isFavorite,@playbackPositionTicks,@lastPlayedDate,@AudioStreamIndex,@SubtitleStreamIndex)"))
{
@@ -280,7 +268,7 @@ namespace Emby.Server.Implementations.Data
/// <summary>
/// Gets the user data.
/// </summary>
- /// <param name="userId">The user id.</param>
+ /// <param name="internalUserId">The user id.</param>
/// <param name="key">The key.</param>
/// <returns>Task{UserItemData}.</returns>
/// <exception cref="System.ArgumentNullException">
@@ -292,11 +280,11 @@ namespace Emby.Server.Implementations.Data
{
if (internalUserId <= 0)
{
- throw new ArgumentNullException("internalUserId");
+ throw new ArgumentNullException(nameof(internalUserId));
}
if (string.IsNullOrEmpty(key))
{
- throw new ArgumentNullException("key");
+ throw new ArgumentNullException(nameof(key));
}
using (WriteLock.Read())
@@ -323,7 +311,7 @@ namespace Emby.Server.Implementations.Data
{
if (keys == null)
{
- throw new ArgumentNullException("keys");
+ throw new ArgumentNullException(nameof(keys));
}
if (keys.Count == 0)
@@ -337,13 +325,13 @@ namespace Emby.Server.Implementations.Data
/// <summary>
/// Return all user-data associated with the given user
/// </summary>
- /// <param name="userId"></param>
+ /// <param name="internalUserId"></param>
/// <returns></returns>
public List<UserItemData> GetAllUserData(long internalUserId)
{
if (internalUserId <= 0)
{
- throw new ArgumentNullException("internalUserId");
+ throw new ArgumentNullException(nameof(internalUserId));
}
var list = new List<UserItemData>();
diff --git a/Emby.Server.Implementations/Data/SqliteUserRepository.cs b/Emby.Server.Implementations/Data/SqliteUserRepository.cs
index d490a481e..125f254c1 100644
--- a/Emby.Server.Implementations/Data/SqliteUserRepository.cs
+++ b/Emby.Server.Implementations/Data/SqliteUserRepository.cs
@@ -31,13 +31,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>
/// Opens the connection to the database
@@ -85,7 +79,7 @@ namespace Emby.Server.Implementations.Data
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
var serialized = _jsonSerializer.SerializeToBytes(user);
@@ -122,7 +116,7 @@ namespace Emby.Server.Implementations.Data
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
var serialized = _jsonSerializer.SerializeToBytes(user);
@@ -207,14 +201,13 @@ namespace Emby.Server.Implementations.Data
/// Deletes the user.
/// </summary>
/// <param name="user">The user.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
/// <exception cref="System.ArgumentNullException">user</exception>
public void DeleteUser(User user)
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
using (WriteLock.Write())
diff --git a/Emby.Server.Implementations/Data/TypeMapper.cs b/Emby.Server.Implementations/Data/TypeMapper.cs
index f4b37749e..e0c2de918 100644
--- a/Emby.Server.Implementations/Data/TypeMapper.cs
+++ b/Emby.Server.Implementations/Data/TypeMapper.cs
@@ -32,7 +32,7 @@ namespace Emby.Server.Implementations.Data
{
if (string.IsNullOrEmpty(typeName))
{
- throw new ArgumentNullException("typeName");
+ throw new ArgumentNullException(nameof(typeName));
}
return _typeMap.GetOrAdd(typeName, LookupType);
diff --git a/Emby.Server.Implementations/Devices/DeviceId.cs b/Emby.Server.Implementations/Devices/DeviceId.cs
index ce6bd67af..4f5950ac7 100644
--- a/Emby.Server.Implementations/Devices/DeviceId.cs
+++ b/Emby.Server.Implementations/Devices/DeviceId.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.IO;
using System.Text;
using MediaBrowser.Common.Configuration;
@@ -15,10 +15,7 @@ namespace Emby.Server.Implementations.Devices
private readonly object _syncLock = new object();
- private string CachePath
- {
- get { return Path.Combine(_appPaths.DataPath, "device.txt"); }
- }
+ private string CachePath => Path.Combine(_appPaths.DataPath, "device.txt");
private string GetCachedId()
{
@@ -70,7 +67,7 @@ namespace Emby.Server.Implementations.Devices
}
}
- private string GetNewId()
+ private static string GetNewId()
{
return Guid.NewGuid().ToString("N");
}
@@ -92,8 +89,9 @@ namespace Emby.Server.Implementations.Devices
public DeviceId(IApplicationPaths appPaths, ILogger logger, IFileSystem fileSystem)
{
- if (fileSystem == null) {
- throw new ArgumentNullException ("fileSystem");
+ if (fileSystem == null)
+ {
+ throw new ArgumentNullException(nameof(fileSystem));
}
_appPaths = appPaths;
@@ -101,9 +99,6 @@ namespace Emby.Server.Implementations.Devices
_fileSystem = fileSystem;
}
- public string Value
- {
- get { return _id ?? (_id = GetDeviceId()); }
- }
+ public string Value => _id ?? (_id = GetDeviceId());
}
}
diff --git a/Emby.Server.Implementations/Devices/DeviceManager.cs b/Emby.Server.Implementations/Devices/DeviceManager.cs
index d95222e26..c72334577 100644
--- a/Emby.Server.Implementations/Devices/DeviceManager.cs
+++ b/Emby.Server.Implementations/Devices/DeviceManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Configuration;
+using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller.Devices;
using MediaBrowser.Controller.Library;
@@ -360,10 +360,7 @@ namespace Emby.Server.Implementations.Devices
return path;
}
- private string DefaultCameraUploadsPath
- {
- get { return Path.Combine(_config.CommonApplicationPaths.DataPath, "camerauploads"); }
- }
+ private string DefaultCameraUploadsPath => Path.Combine(_config.CommonApplicationPaths.DataPath, "camerauploads");
public bool CanAccessDevice(User user, string deviceId)
{
@@ -373,7 +370,7 @@ namespace Emby.Server.Implementations.Devices
}
if (string.IsNullOrEmpty(deviceId))
{
- throw new ArgumentNullException("deviceId");
+ throw new ArgumentNullException(nameof(deviceId));
}
if (!CanAccessDevice(user.Policy, deviceId))
@@ -389,7 +386,7 @@ namespace Emby.Server.Implementations.Devices
return true;
}
- private bool CanAccessDevice(UserPolicy policy, string id)
+ private static bool CanAccessDevice(UserPolicy policy, string id)
{
if (policy.EnableAllDevices)
{
diff --git a/Emby.Server.Implementations/Diagnostics/CommonProcess.cs b/Emby.Server.Implementations/Diagnostics/CommonProcess.cs
index a709607bd..99871a3c6 100644
--- a/Emby.Server.Implementations/Diagnostics/CommonProcess.cs
+++ b/Emby.Server.Implementations/Diagnostics/CommonProcess.cs
@@ -81,30 +81,15 @@ namespace Emby.Server.Implementations.Diagnostics
}
}
- public ProcessOptions StartInfo
- {
- get { return _options; }
- }
+ public ProcessOptions StartInfo => _options;
- public StreamWriter StandardInput
- {
- get { return _process.StandardInput; }
- }
+ public StreamWriter StandardInput => _process.StandardInput;
- public StreamReader StandardError
- {
- get { return _process.StandardError; }
- }
+ public StreamReader StandardError => _process.StandardError;
- public StreamReader StandardOutput
- {
- get { return _process.StandardOutput; }
- }
+ public StreamReader StandardOutput => _process.StandardOutput;
- public int ExitCode
- {
- get { return _process.ExitCode; }
- }
+ public int ExitCode => _process.ExitCode;
public void Start()
{
diff --git a/Emby.Server.Implementations/Dto/DtoService.cs b/Emby.Server.Implementations/Dto/DtoService.cs
index 7871d3fb3..3d519f35d 100644
--- a/Emby.Server.Implementations/Dto/DtoService.cs
+++ b/Emby.Server.Implementations/Dto/DtoService.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common;
+using MediaBrowser.Common;
using MediaBrowser.Controller.Channels;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Devices;
@@ -189,7 +189,7 @@ namespace Emby.Server.Implementations.Dto
return dto;
}
- private IList<BaseItem> GetTaggedItems(IItemByName byName, User user, DtoOptions options)
+ private static IList<BaseItem> GetTaggedItems(IItemByName byName, User user, DtoOptions options)
{
return byName.GetTaggedItems(new InternalItemsQuery(user)
{
@@ -295,7 +295,7 @@ namespace Emby.Server.Implementations.Dto
return dto;
}
- private void NormalizeMediaSourceContainers(BaseItemDto dto)
+ private static void NormalizeMediaSourceContainers(BaseItemDto dto)
{
foreach (var mediaSource in dto.MediaSources)
{
@@ -347,7 +347,7 @@ namespace Emby.Server.Implementations.Dto
return dto;
}
- private void SetItemByNameInfo(BaseItem item, BaseItemDto dto, IList<BaseItem> taggedItems, User user = null)
+ private static void SetItemByNameInfo(BaseItem item, BaseItemDto dto, IList<BaseItem> taggedItems, User user = null)
{
if (item is MusicArtist)
{
@@ -447,7 +447,7 @@ namespace Emby.Server.Implementations.Dto
}
}
- private int GetChildCount(Folder folder, User user)
+ private static int GetChildCount(Folder folder, User user)
{
// Right now this is too slow to calculate for top level folders on a per-user basis
// Just return something so that apps that are expecting a value won't think the folders are empty
@@ -470,11 +470,11 @@ namespace Emby.Server.Implementations.Dto
return item.Id.ToString("N");
}
- private void SetBookProperties(BaseItemDto dto, Book item)
+ private static void SetBookProperties(BaseItemDto dto, Book item)
{
dto.SeriesName = item.SeriesName;
}
- private void SetPhotoProperties(BaseItemDto dto, Photo item)
+ private static void SetPhotoProperties(BaseItemDto dto, Photo item)
{
dto.CameraMake = item.CameraMake;
dto.CameraModel = item.CameraModel;
@@ -520,13 +520,13 @@ namespace Emby.Server.Implementations.Dto
dto.Album = item.Album;
}
- private void SetGameProperties(BaseItemDto dto, Game item)
+ private static void SetGameProperties(BaseItemDto dto, Game item)
{
dto.GameSystem = item.GameSystem;
dto.MultiPartGameFiles = item.MultiPartGameFiles;
}
- private void SetGameSystemProperties(BaseItemDto dto, GameSystem item)
+ private static void SetGameSystemProperties(BaseItemDto dto, GameSystem item)
{
dto.GameSystem = item.GameSystemName;
}
diff --git a/Emby.Server.Implementations/EntryPoints/ExternalPortForwarding.cs b/Emby.Server.Implementations/EntryPoints/ExternalPortForwarding.cs
index 6cd867921..6c658a695 100644
--- a/Emby.Server.Implementations/EntryPoints/ExternalPortForwarding.cs
+++ b/Emby.Server.Implementations/EntryPoints/ExternalPortForwarding.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Globalization;
using System.Net;
@@ -227,7 +227,7 @@ namespace Emby.Server.Implementations.EntryPoints
{
if (_disposed)
{
- throw new ObjectDisposedException("PortMapper");
+ throw new ObjectDisposedException(GetType().Name);
}
// On some systems the device discovered event seems to fire repeatedly
diff --git a/Emby.Server.Implementations/EntryPoints/LibraryChangedNotifier.cs b/Emby.Server.Implementations/EntryPoints/LibraryChangedNotifier.cs
index bc72228bd..a5c907213 100644
--- a/Emby.Server.Implementations/EntryPoints/LibraryChangedNotifier.cs
+++ b/Emby.Server.Implementations/EntryPoints/LibraryChangedNotifier.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Plugins;
using MediaBrowser.Controller.Session;
@@ -142,7 +142,7 @@ namespace Emby.Server.Implementations.EntryPoints
_providerManager_RefreshProgress(sender, new GenericEventArgs<Tuple<BaseItem, double>>(new Tuple<BaseItem, double>(e.Argument, 100)));
}
- private bool EnableRefreshMessage(BaseItem item)
+ private static bool EnableRefreshMessage(BaseItem item)
{
var folder = item as Folder;
@@ -387,7 +387,7 @@ namespace Emby.Server.Implementations.EntryPoints
};
}
- private bool FilterItem(BaseItem item)
+ private static bool FilterItem(BaseItem item)
{
if (!item.IsFolder && !item.HasPathProtocol)
{
diff --git a/Emby.Server.Implementations/EntryPoints/RecordingNotifier.cs b/Emby.Server.Implementations/EntryPoints/RecordingNotifier.cs
index 0b377dc68..c7bd03960 100644
--- a/Emby.Server.Implementations/EntryPoints/RecordingNotifier.cs
+++ b/Emby.Server.Implementations/EntryPoints/RecordingNotifier.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Linq;
using System.Threading;
using MediaBrowser.Controller.Library;
@@ -62,7 +62,7 @@ namespace Emby.Server.Implementations.EntryPoints
}
catch (ObjectDisposedException)
{
-
+ // TODO Log exception or Investigate and properly fix.
}
catch (Exception ex)
{
diff --git a/Emby.Server.Implementations/EntryPoints/RefreshUsersMetadata.cs b/Emby.Server.Implementations/EntryPoints/RefreshUsersMetadata.cs
index 660ca3a94..f0b834ccb 100644
--- a/Emby.Server.Implementations/EntryPoints/RefreshUsersMetadata.cs
+++ b/Emby.Server.Implementations/EntryPoints/RefreshUsersMetadata.cs
@@ -30,10 +30,7 @@ namespace Emby.Server.Implementations.EntryPoints
public string Description => "Refresh user infos";
- public string Category
- {
- get { return "Library"; }
- }
+ public string Category => "Library";
public bool IsHidden => true;
diff --git a/Emby.Server.Implementations/EnvironmentInfo/EnvironmentInfo.cs b/Emby.Server.Implementations/EnvironmentInfo/EnvironmentInfo.cs
index 655867577..24a3456c4 100644
--- a/Emby.Server.Implementations/EnvironmentInfo/EnvironmentInfo.cs
+++ b/Emby.Server.Implementations/EnvironmentInfo/EnvironmentInfo.cs
@@ -29,14 +29,8 @@ namespace Emby.Server.Implementations.EnvironmentInfo
}
}
- public string OperatingSystemVersion
- {
- get
- {
- return Environment.OSVersion.Version.ToString() + " " + Environment.OSVersion.ServicePack.ToString();
- }
- }
+ public string OperatingSystemVersion => Environment.OSVersion.Version.ToString() + " " + Environment.OSVersion.ServicePack.ToString();
- public Architecture SystemArchitecture { get { return RuntimeInformation.OSArchitecture; } }
+ public Architecture SystemArchitecture => RuntimeInformation.OSArchitecture;
}
}
diff --git a/Emby.Server.Implementations/HttpClientManager/HttpClientManager.cs b/Emby.Server.Implementations/HttpClientManager/HttpClientManager.cs
index d3ba1b683..6494f0c6f 100644
--- a/Emby.Server.Implementations/HttpClientManager/HttpClientManager.cs
+++ b/Emby.Server.Implementations/HttpClientManager/HttpClientManager.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Globalization;
@@ -48,11 +48,11 @@ namespace Emby.Server.Implementations.HttpClientManager
{
if (appPaths == null)
{
- throw new ArgumentNullException("appPaths");
+ throw new ArgumentNullException(nameof(appPaths));
}
if (logger == null)
{
- throw new ArgumentNullException("logger");
+ throw new ArgumentNullException(nameof(logger));
}
_logger = logger;
@@ -87,7 +87,7 @@ namespace Emby.Server.Implementations.HttpClientManager
{
if (string.IsNullOrEmpty(host))
{
- throw new ArgumentNullException("host");
+ throw new ArgumentNullException(nameof(host));
}
HttpClientInfo client;
@@ -104,7 +104,7 @@ namespace Emby.Server.Implementations.HttpClientManager
return client;
}
- private WebRequest CreateWebRequest(string url)
+ private static WebRequest CreateWebRequest(string url)
{
try
{
@@ -185,7 +185,7 @@ namespace Emby.Server.Implementations.HttpClientManager
return request;
}
- private CredentialCache GetCredential(string url, string username, string password)
+ private static CredentialCache GetCredential(string url, string username, string password)
{
//ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;
CredentialCache credentialCache = new CredentialCache();
@@ -220,7 +220,7 @@ namespace Emby.Server.Implementations.HttpClientManager
}
}
- private void SetUserAgent(HttpWebRequest request, string userAgent)
+ private static void SetUserAgent(HttpWebRequest request, string userAgent)
{
request.UserAgent = userAgent;
}
@@ -491,7 +491,7 @@ namespace Emby.Server.Implementations.HttpClientManager
return responseInfo;
}
- private void SetHeaders(WebHeaderCollection headers, HttpResponseInfo responseInfo)
+ private static void SetHeaders(WebHeaderCollection headers, HttpResponseInfo responseInfo)
{
foreach (var key in headers.AllKeys)
{
@@ -541,7 +541,7 @@ namespace Emby.Server.Implementations.HttpClientManager
if (options.Progress == null)
{
- throw new ArgumentNullException("progress");
+ throw new ArgumentException("Options did not have a Progress value.",nameof(options));
}
options.CancellationToken.ThrowIfCancellationRequested();
@@ -616,7 +616,7 @@ namespace Emby.Server.Implementations.HttpClientManager
}
}
- private long? GetContentLength(HttpWebResponse response)
+ private static long? GetContentLength(HttpWebResponse response)
{
var length = response.ContentLength;
@@ -704,7 +704,7 @@ namespace Emby.Server.Implementations.HttpClientManager
{
if (string.IsNullOrEmpty(options.Url))
{
- throw new ArgumentNullException("options");
+ throw new ArgumentNullException(nameof(options));
}
}
@@ -713,7 +713,7 @@ namespace Emby.Server.Implementations.HttpClientManager
/// </summary>
/// <param name="url">The URL.</param>
/// <returns>System.String.</returns>
- private string GetHostFromUrl(string url)
+ private static string GetHostFromUrl(string url)
{
var index = url.IndexOf("://", StringComparison.OrdinalIgnoreCase);
@@ -803,7 +803,7 @@ namespace Emby.Server.Implementations.HttpClientManager
};
}
- private Task<WebResponse> GetResponseAsync(WebRequest request, TimeSpan timeout)
+ private static Task<WebResponse> GetResponseAsync(WebRequest request, TimeSpan timeout)
{
var taskCompletion = new TaskCompletionSource<WebResponse>();
diff --git a/Emby.Server.Implementations/HttpServer/FileWriter.cs b/Emby.Server.Implementations/HttpServer/FileWriter.cs
index 4b864eea5..568432902 100644
--- a/Emby.Server.Implementations/HttpServer/FileWriter.cs
+++ b/Emby.Server.Implementations/HttpServer/FileWriter.cs
@@ -38,10 +38,7 @@ namespace Emby.Server.Implementations.HttpServer
/// Gets the options.
/// </summary>
/// <value>The options.</value>
- public IDictionary<string, string> Headers
- {
- get { return _options; }
- }
+ public IDictionary<string, string> Headers => _options;
public string Path { get; set; }
@@ -49,7 +46,7 @@ namespace Emby.Server.Implementations.HttpServer
{
if (string.IsNullOrEmpty(contentType))
{
- throw new ArgumentNullException("contentType");
+ throw new ArgumentNullException(nameof(contentType));
}
Path = path;
@@ -203,8 +200,8 @@ namespace Emby.Server.Implementations.HttpServer
public HttpStatusCode StatusCode
{
- get { return (HttpStatusCode)Status; }
- set { Status = (int)value; }
+ get => (HttpStatusCode)Status;
+ set => Status = (int)value;
}
public string StatusDescription { get; set; }
diff --git a/Emby.Server.Implementations/HttpServer/HttpListenerHost.cs b/Emby.Server.Implementations/HttpServer/HttpListenerHost.cs
index 27aa2e9f4..d51563d51 100644
--- a/Emby.Server.Implementations/HttpServer/HttpListenerHost.cs
+++ b/Emby.Server.Implementations/HttpServer/HttpListenerHost.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Extensions;
+using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Net;
using Microsoft.Extensions.Logging;
@@ -89,13 +89,7 @@ namespace Emby.Server.Implementations.HttpServer
{typeof (ArgumentException), 400}
};
- protected ILogger Logger
- {
- get
- {
- return _logger;
- }
- }
+ protected ILogger Logger => _logger;
public object CreateInstance(Type type)
{
@@ -190,10 +184,9 @@ namespace Emby.Server.Implementations.HttpServer
}
}
- private Exception GetActualException(Exception ex)
+ private static Exception GetActualException(Exception ex)
{
- var agg = ex as AggregateException;
- if (agg != null)
+ if (ex is AggregateException agg)
{
var inner = agg.InnerException;
if (inner != null)
@@ -346,7 +339,7 @@ namespace Emby.Server.Implementations.HttpServer
return false;
}
- private string GetExtension(string url)
+ private static string GetExtension(string url)
{
var parts = url.Split(new[] { '?' }, 2);
@@ -379,18 +372,18 @@ namespace Emby.Server.Implementations.HttpServer
string pagePathWithoutQueryString = url.Split(new[] { '?' }, StringSplitOptions.RemoveEmptyEntries)[0];
return newQueryString.Count > 0
- ? String.Format("{0}?{1}", pagePathWithoutQueryString, newQueryString)
+ ? string.Format("{0}?{1}", pagePathWithoutQueryString, newQueryString)
: pagePathWithoutQueryString;
}
- private string GetUrlToLog(string url)
+ private static string GetUrlToLog(string url)
{
url = RemoveQueryStringByKey(url, "api_key");
return url;
}
- private string NormalizeConfiguredLocalAddress(string address)
+ private static string NormalizeConfiguredLocalAddress(string address)
{
var index = address.Trim('/').IndexOf('/');
@@ -727,7 +720,7 @@ namespace Emby.Server.Implementations.HttpServer
return null;
}
- private Task Write(IResponse response, string text)
+ private static Task Write(IResponse response, string text)
{
var bOutput = Encoding.UTF8.GetBytes(text);
response.SetContentLength(bOutput.Length);
@@ -853,7 +846,9 @@ namespace Emby.Server.Implementations.HttpServer
return _jsonSerializer.DeserializeFromStreamAsync(stream, type);
}
- private string NormalizeEmbyRoutePath(string path)
+ //TODO Add Jellyfin Route Path Normalizer
+
+ private static string NormalizeEmbyRoutePath(string path)
{
if (path.StartsWith("/", StringComparison.OrdinalIgnoreCase))
{
@@ -863,7 +858,7 @@ namespace Emby.Server.Implementations.HttpServer
return "emby/" + path;
}
- private string NormalizeMediaBrowserRoutePath(string path)
+ private static string NormalizeMediaBrowserRoutePath(string path)
{
if (path.StartsWith("/", StringComparison.OrdinalIgnoreCase))
{
@@ -873,7 +868,7 @@ namespace Emby.Server.Implementations.HttpServer
return "mediabrowser/" + path;
}
- private string DoubleNormalizeEmbyRoutePath(string path)
+ private static string DoubleNormalizeEmbyRoutePath(string path)
{
if (path.StartsWith("/", StringComparison.OrdinalIgnoreCase))
{
diff --git a/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs b/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs
index b3244640d..e6dbcf65d 100644
--- a/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs
+++ b/Emby.Server.Implementations/HttpServer/HttpResultFactory.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Extensions;
+using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Net;
using Microsoft.Extensions.Logging;
using MediaBrowser.Model.Serialization;
@@ -207,7 +207,7 @@ namespace Emby.Server.Implementations.HttpServer
{
if (result == null)
{
- throw new ArgumentNullException("result");
+ throw new ArgumentNullException(nameof(result));
}
if (responseHeaders == null)
@@ -245,7 +245,7 @@ namespace Emby.Server.Implementations.HttpServer
return GetCompressionType(request);
}
- private string GetCompressionType(IRequest request)
+ private static string GetCompressionType(IRequest request)
{
var acceptEncoding = request.Headers["Accept-Encoding"];
@@ -365,7 +365,7 @@ namespace Emby.Server.Implementations.HttpServer
return _brotliCompressor.Compress(bytes);
}
- private byte[] Deflate(byte[] bytes)
+ private static byte[] Deflate(byte[] bytes)
{
// In .NET FX incompat-ville, you can't access compressed bytes without closing DeflateStream
// Which means we must use MemoryStream since you have to use ToArray() on a closed Stream
@@ -379,7 +379,7 @@ namespace Emby.Server.Implementations.HttpServer
}
}
- private byte[] GZip(byte[] buffer)
+ private static byte[] GZip(byte[] buffer)
{
using (var ms = new MemoryStream())
using (var zipStream = new GZipStream(ms, CompressionMode.Compress))
@@ -398,7 +398,7 @@ namespace Emby.Server.Implementations.HttpServer
: contentType.Split(';')[0].ToLower().Trim();
}
- private string SerializeToXmlString(object from)
+ private static string SerializeToXmlString(object from)
{
using (var ms = new MemoryStream())
{
@@ -453,7 +453,7 @@ namespace Emby.Server.Implementations.HttpServer
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
return GetStaticFileResult(requestContext, new StaticFileResultOptions
@@ -471,7 +471,7 @@ namespace Emby.Server.Implementations.HttpServer
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (fileShare != FileShareMode.Read && fileShare != FileShareMode.ReadWrite)
@@ -661,7 +661,7 @@ namespace Emby.Server.Implementations.HttpServer
/// <summary>
/// Adds the expires header.
/// </summary>
- private void AddExpiresHeader(IDictionary<string, string> responseHeaders, string cacheKey, TimeSpan? cacheDuration)
+ private static void AddExpiresHeader(IDictionary<string, string> responseHeaders, string cacheKey, TimeSpan? cacheDuration)
{
if (cacheDuration.HasValue)
{
@@ -678,7 +678,7 @@ namespace Emby.Server.Implementations.HttpServer
/// </summary>
/// <param name="responseHeaders">The responseHeaders.</param>
/// <param name="lastDateModified">The last date modified.</param>
- private void AddAgeHeader(IDictionary<string, string> responseHeaders, DateTime? lastDateModified)
+ private static void AddAgeHeader(IDictionary<string, string> responseHeaders, DateTime? lastDateModified)
{
if (lastDateModified.HasValue)
{
@@ -771,7 +771,7 @@ namespace Emby.Server.Implementations.HttpServer
/// </summary>
/// <param name="date">The date.</param>
/// <returns>DateTime.</returns>
- private DateTime NormalizeDateForComparison(DateTime date)
+ private static DateTime NormalizeDateForComparison(DateTime date)
{
return new DateTime(date.Year, date.Month, date.Day, date.Hour, date.Minute, date.Second, date.Kind);
}
@@ -781,7 +781,7 @@ namespace Emby.Server.Implementations.HttpServer
/// </summary>
/// <param name="hasHeaders">The has options.</param>
/// <param name="responseHeaders">The response headers.</param>
- private void AddResponseHeaders(IHasHeaders hasHeaders, IEnumerable<KeyValuePair<string, string>> responseHeaders)
+ private static void AddResponseHeaders(IHasHeaders hasHeaders, IEnumerable<KeyValuePair<string, string>> responseHeaders)
{
foreach (var item in responseHeaders)
{
diff --git a/Emby.Server.Implementations/HttpServer/RangeRequestWriter.cs b/Emby.Server.Implementations/HttpServer/RangeRequestWriter.cs
index dc20ee1a2..f08112f9c 100644
--- a/Emby.Server.Implementations/HttpServer/RangeRequestWriter.cs
+++ b/Emby.Server.Implementations/HttpServer/RangeRequestWriter.cs
@@ -1,4 +1,4 @@
-using Microsoft.Extensions.Logging;
+using Microsoft.Extensions.Logging;
using System;
using System.Collections.Generic;
using System.Globalization;
@@ -46,10 +46,7 @@ namespace Emby.Server.Implementations.HttpServer
/// Additional HTTP Headers
/// </summary>
/// <value>The headers.</value>
- public IDictionary<string, string> Headers
- {
- get { return _options; }
- }
+ public IDictionary<string, string> Headers => _options;
/// <summary>
/// Initializes a new instance of the <see cref="StreamWriter" /> class.
@@ -62,7 +59,7 @@ namespace Emby.Server.Implementations.HttpServer
{
if (string.IsNullOrEmpty(contentType))
{
- throw new ArgumentNullException("contentType");
+ throw new ArgumentNullException(nameof(contentType));
}
RangeHeader = rangeHeader;
@@ -186,7 +183,7 @@ namespace Emby.Server.Implementations.HttpServer
}
}
- private async Task CopyToInternalAsync(Stream source, Stream destination, long copyLength)
+ private static async Task CopyToInternalAsync(Stream source, Stream destination, long copyLength)
{
var array = new byte[BufferSize];
int bytesRead;
@@ -220,8 +217,8 @@ namespace Emby.Server.Implementations.HttpServer
public HttpStatusCode StatusCode
{
- get { return (HttpStatusCode)Status; }
- set { Status = (int)value; }
+ get => (HttpStatusCode)Status;
+ set => Status = (int)value;
}
public string StatusDescription { get; set; }
diff --git a/Emby.Server.Implementations/HttpServer/Security/AuthService.cs b/Emby.Server.Implementations/HttpServer/Security/AuthService.cs
index e153d6f71..fb5bfa601 100644
--- a/Emby.Server.Implementations/HttpServer/Security/AuthService.cs
+++ b/Emby.Server.Implementations/HttpServer/Security/AuthService.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Configuration;
+using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Connect;
using MediaBrowser.Controller.Devices;
using MediaBrowser.Controller.Entities;
@@ -173,7 +173,7 @@ namespace Emby.Server.Implementations.HttpServer.Security
return false;
}
- private void ValidateRoles(string[] roles, User user)
+ private static void ValidateRoles(string[] roles, User user)
{
if (roles.Contains("admin", StringComparer.OrdinalIgnoreCase))
{
@@ -207,7 +207,7 @@ namespace Emby.Server.Implementations.HttpServer.Security
}
}
- private AuthenticationInfo GetTokenInfo(IRequest request)
+ private static AuthenticationInfo GetTokenInfo(IRequest request)
{
object info;
request.Items.TryGetValue("OriginalAuthenticationInfo", out info);
diff --git a/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs b/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs
index 56e1095f6..f561c3d60 100644
--- a/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs
+++ b/Emby.Server.Implementations/HttpServer/Security/AuthorizationContext.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Connect;
+using MediaBrowser.Controller.Connect;
using MediaBrowser.Controller.Net;
using MediaBrowser.Controller.Security;
using System;
@@ -227,7 +227,7 @@ namespace Emby.Server.Implementations.HttpServer.Security
return result;
}
- private string NormalizeValue(string value)
+ private static string NormalizeValue(string value)
{
if (string.IsNullOrEmpty(value))
{
diff --git a/Emby.Server.Implementations/HttpServer/StreamWriter.cs b/Emby.Server.Implementations/HttpServer/StreamWriter.cs
index 0a44a5fe5..df0d74685 100644
--- a/Emby.Server.Implementations/HttpServer/StreamWriter.cs
+++ b/Emby.Server.Implementations/HttpServer/StreamWriter.cs
@@ -35,10 +35,7 @@ namespace Emby.Server.Implementations.HttpServer
/// Gets the options.
/// </summary>
/// <value>The options.</value>
- public IDictionary<string, string> Headers
- {
- get { return _options; }
- }
+ public IDictionary<string, string> Headers => _options;
public Action OnComplete { get; set; }
public Action OnError { get; set; }
@@ -53,7 +50,7 @@ namespace Emby.Server.Implementations.HttpServer
{
if (string.IsNullOrEmpty(contentType))
{
- throw new ArgumentNullException("contentType");
+ throw new ArgumentNullException(nameof(contentType));
}
SourceStream = source;
@@ -77,7 +74,7 @@ namespace Emby.Server.Implementations.HttpServer
{
if (string.IsNullOrEmpty(contentType))
{
- throw new ArgumentNullException("contentType");
+ throw new ArgumentNullException(nameof(contentType));
}
SourceBytes = source;
diff --git a/Emby.Server.Implementations/HttpServer/WebSocketConnection.cs b/Emby.Server.Implementations/HttpServer/WebSocketConnection.cs
index 914fa9dbc..5426114f6 100644
--- a/Emby.Server.Implementations/HttpServer/WebSocketConnection.cs
+++ b/Emby.Server.Implementations/HttpServer/WebSocketConnection.cs
@@ -82,19 +82,19 @@ namespace Emby.Server.Implementations.HttpServer
{
if (socket == null)
{
- throw new ArgumentNullException("socket");
+ throw new ArgumentNullException(nameof(socket));
}
if (string.IsNullOrEmpty(remoteEndPoint))
{
- throw new ArgumentNullException("remoteEndPoint");
+ throw new ArgumentNullException(nameof(remoteEndPoint));
}
if (jsonSerializer == null)
{
- throw new ArgumentNullException("jsonSerializer");
+ throw new ArgumentNullException(nameof(jsonSerializer));
}
if (logger == null)
{
- throw new ArgumentNullException("logger");
+ throw new ArgumentNullException(nameof(logger));
}
Id = Guid.NewGuid();
@@ -148,7 +148,8 @@ namespace Emby.Server.Implementations.HttpServer
/// <summary>
/// Called when [receive].
/// </summary>
- /// <param name="bytes">The bytes.</param>
+ /// <param name="memory">The memory block.</param>
+ /// <param name="length">The length of the memory block.</param>
private void OnReceiveInternal(Memory<byte> memory, int length)
{
LastActivityDate = DateTime.UtcNow;
@@ -219,7 +220,7 @@ namespace Emby.Server.Implementations.HttpServer
{
if (message == null)
{
- throw new ArgumentNullException("message");
+ throw new ArgumentNullException(nameof(message));
}
var json = _jsonSerializer.SerializeToString(message);
@@ -237,7 +238,7 @@ namespace Emby.Server.Implementations.HttpServer
{
if (buffer == null)
{
- throw new ArgumentNullException("buffer");
+ throw new ArgumentNullException(nameof(buffer));
}
cancellationToken.ThrowIfCancellationRequested();
@@ -249,7 +250,7 @@ namespace Emby.Server.Implementations.HttpServer
{
if (string.IsNullOrEmpty(text))
{
- throw new ArgumentNullException("text");
+ throw new ArgumentNullException(nameof(text));
}
cancellationToken.ThrowIfCancellationRequested();
@@ -261,10 +262,7 @@ namespace Emby.Server.Implementations.HttpServer
/// Gets the state.
/// </summary>
/// <value>The state.</value>
- public WebSocketState State
- {
- get { return _socket.State; }
- }
+ public WebSocketState State => _socket.State;
/// <summary>
/// Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
diff --git a/Emby.Server.Implementations/IO/FileRefresher.cs b/Emby.Server.Implementations/IO/FileRefresher.cs
index 3212c41e9..3256ea7e6 100644
--- a/Emby.Server.Implementations/IO/FileRefresher.cs
+++ b/Emby.Server.Implementations/IO/FileRefresher.cs
@@ -51,7 +51,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (!_affectedPaths.Contains(path, StringComparer.Ordinal))
@@ -64,7 +64,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
lock (_timerLock)
diff --git a/Emby.Server.Implementations/IO/IsoManager.cs b/Emby.Server.Implementations/IO/IsoManager.cs
index 903d5f301..e0cf32868 100644
--- a/Emby.Server.Implementations/IO/IsoManager.cs
+++ b/Emby.Server.Implementations/IO/IsoManager.cs
@@ -29,7 +29,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(isoPath))
{
- throw new ArgumentNullException("isoPath");
+ throw new ArgumentNullException(nameof(isoPath));
}
var mounter = _mounters.FirstOrDefault(i => i.CanMount(isoPath));
diff --git a/Emby.Server.Implementations/IO/LibraryMonitor.cs b/Emby.Server.Implementations/IO/LibraryMonitor.cs
index ca5810fd6..9a224bd0e 100644
--- a/Emby.Server.Implementations/IO/LibraryMonitor.cs
+++ b/Emby.Server.Implementations/IO/LibraryMonitor.cs
@@ -77,7 +77,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
TemporarilyIgnore(path);
@@ -95,7 +95,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
// This is an arbitraty amount of time, but delay it because file system writes often trigger events long after the file was actually written to.
@@ -145,7 +145,7 @@ namespace Emby.Server.Implementations.IO
{
if (taskManager == null)
{
- throw new ArgumentNullException("taskManager");
+ throw new ArgumentNullException(nameof(taskManager));
}
LibraryManager = libraryManager;
@@ -268,7 +268,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
path = path.TrimEnd(Path.DirectorySeparatorChar);
@@ -469,7 +469,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var filename = Path.GetFileName(path);
diff --git a/Emby.Server.Implementations/IO/ManagedFileSystem.cs b/Emby.Server.Implementations/IO/ManagedFileSystem.cs
index 1e89c1370..bee96c785 100644
--- a/Emby.Server.Implementations/IO/ManagedFileSystem.cs
+++ b/Emby.Server.Implementations/IO/ManagedFileSystem.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.IO;
@@ -85,17 +85,11 @@ namespace Emby.Server.Implementations.IO
{
// Be consistent across platforms because the windows server will fail to query network shares that don't follow windows conventions
// https://referencesource.microsoft.com/#mscorlib/system/io/path.cs
- _invalidFileNameChars = new char[] { '\"', '<', '>', '|', '\0', (Char)1, (Char)2, (Char)3, (Char)4, (Char)5, (Char)6, (Char)7, (Char)8, (Char)9, (Char)10, (Char)11, (Char)12, (Char)13, (Char)14, (Char)15, (Char)16, (Char)17, (Char)18, (Char)19, (Char)20, (Char)21, (Char)22, (Char)23, (Char)24, (Char)25, (Char)26, (Char)27, (Char)28, (Char)29, (Char)30, (Char)31, ':', '*', '?', '\\', '/' };
+ _invalidFileNameChars = new char[] { '\"', '<', '>', '|', '\0', (char)1, (char)2, (char)3, (char)4, (char)5, (char)6, (char)7, (char)8, (char)9, (char)10, (char)11, (char)12, (char)13, (char)14, (char)15, (char)16, (char)17, (char)18, (char)19, (char)20, (char)21, (char)22, (char)23, (char)24, (char)25, (char)26, (char)27, (char)28, (char)29, (char)30, (char)31, ':', '*', '?', '\\', '/' };
}
}
- public char DirectorySeparatorChar
- {
- get
- {
- return Path.DirectorySeparatorChar;
- }
- }
+ public char DirectorySeparatorChar => Path.DirectorySeparatorChar;
public string GetFullPath(string path)
{
@@ -112,7 +106,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(filename))
{
- throw new ArgumentNullException("filename");
+ throw new ArgumentNullException(nameof(filename));
}
var extension = Path.GetExtension(filename);
@@ -129,7 +123,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(filename))
{
- throw new ArgumentNullException("filename");
+ throw new ArgumentNullException(nameof(filename));
}
var extension = Path.GetExtension(filename);
@@ -145,7 +139,7 @@ namespace Emby.Server.Implementations.IO
public string MakeAbsolutePath(string folderPath, string filePath)
{
- if (String.IsNullOrWhiteSpace(filePath)) return filePath;
+ if (string.IsNullOrWhiteSpace(filePath)) return filePath;
if (filePath.Contains(@"://")) return filePath; //stream
if (filePath.Length > 3 && filePath[1] == ':' && filePath[2] == '/') return filePath; //absolute local path
@@ -200,12 +194,12 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(shortcutPath))
{
- throw new ArgumentNullException("shortcutPath");
+ throw new ArgumentNullException(nameof(shortcutPath));
}
if (string.IsNullOrEmpty(target))
{
- throw new ArgumentNullException("target");
+ throw new ArgumentNullException(nameof(target));
}
var extension = Path.GetExtension(shortcutPath);
@@ -321,7 +315,7 @@ namespace Emby.Server.Implementations.IO
return result;
}
- private ExtendedFileSystemInfo GetExtendedFileSystemInfo(string path)
+ private static ExtendedFileSystemInfo GetExtendedFileSystemInfo(string path)
{
var result = new ExtendedFileSystemInfo();
@@ -456,13 +450,13 @@ namespace Emby.Server.Implementations.IO
return new FileStream(path, GetFileMode(mode), GetFileAccess(access), GetFileShare(share), defaultBufferSize, GetFileOptions(fileOpenOptions));
}
- private FileOptions GetFileOptions(FileOpenOptions mode)
+ private static FileOptions GetFileOptions(FileOpenOptions mode)
{
var val = (int)mode;
return (FileOptions)val;
}
- private FileMode GetFileMode(FileOpenMode mode)
+ private static FileMode GetFileMode(FileOpenMode mode)
{
switch (mode)
{
@@ -483,7 +477,7 @@ namespace Emby.Server.Implementations.IO
}
}
- private FileAccess GetFileAccess(FileAccessMode mode)
+ private static FileAccess GetFileAccess(FileAccessMode mode)
{
switch (mode)
{
@@ -498,7 +492,7 @@ namespace Emby.Server.Implementations.IO
}
}
- private FileShare GetFileShare(FileShareMode mode)
+ private static FileShare GetFileShare(FileShareMode mode)
{
switch (mode)
{
@@ -619,12 +613,12 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(file1))
{
- throw new ArgumentNullException("file1");
+ throw new ArgumentNullException(nameof(file1));
}
if (string.IsNullOrEmpty(file2))
{
- throw new ArgumentNullException("file2");
+ throw new ArgumentNullException(nameof(file2));
}
var temp1 = Path.Combine(_tempPath, Guid.NewGuid().ToString("N"));
@@ -640,7 +634,7 @@ namespace Emby.Server.Implementations.IO
CopyFile(temp1, file2, true);
}
- private char GetDirectorySeparatorChar(string path)
+ private static char GetDirectorySeparatorChar(string path)
{
return Path.DirectorySeparatorChar;
}
@@ -649,12 +643,12 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(parentPath))
{
- throw new ArgumentNullException("parentPath");
+ throw new ArgumentNullException(nameof(parentPath));
}
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var separatorChar = GetDirectorySeparatorChar(parentPath);
@@ -666,7 +660,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var parent = GetDirectoryName(path);
@@ -688,7 +682,7 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (path.EndsWith(":\\", StringComparison.OrdinalIgnoreCase))
@@ -772,7 +766,7 @@ namespace Emby.Server.Implementations.IO
}).ToList();
}
- private string GetName(DriveInfo drive)
+ private static string GetName(DriveInfo drive)
{
return drive.Name;
}
@@ -972,7 +966,7 @@ namespace Emby.Server.Implementations.IO
}
}
- private void RunProcess(string path, string args, string workingDirectory)
+ private static void RunProcess(string path, string args, string workingDirectory)
{
using (var process = Process.Start(new ProcessStartInfo
{
diff --git a/Emby.Server.Implementations/IO/MbLinkShortcutHandler.cs b/Emby.Server.Implementations/IO/MbLinkShortcutHandler.cs
index aef53751e..8ac662f78 100644
--- a/Emby.Server.Implementations/IO/MbLinkShortcutHandler.cs
+++ b/Emby.Server.Implementations/IO/MbLinkShortcutHandler.cs
@@ -15,16 +15,13 @@ namespace Emby.Server.Implementations.IO
_fileSystem = fileSystem;
}
- public string Extension
- {
- get { return ".mblink"; }
- }
+ public string Extension => ".mblink";
public string Resolve(string shortcutPath)
{
if (string.IsNullOrEmpty(shortcutPath))
{
- throw new ArgumentNullException("filenshortcutPathame");
+ throw new ArgumentException("Shortcut path is empty or null.", nameof(shortcutPath));
}
if (string.Equals(Path.GetExtension(shortcutPath), ".mblink", StringComparison.OrdinalIgnoreCase))
@@ -41,12 +38,12 @@ namespace Emby.Server.Implementations.IO
{
if (string.IsNullOrEmpty(shortcutPath))
{
- throw new ArgumentNullException("shortcutPath");
+ throw new ArgumentNullException(nameof(shortcutPath));
}
if (string.IsNullOrEmpty(targetPath))
{
- throw new ArgumentNullException("targetPath");
+ throw new ArgumentNullException(nameof(targetPath));
}
_fileSystem.WriteAllText(shortcutPath, targetPath);
diff --git a/Emby.Server.Implementations/IO/ThrottledStream.cs b/Emby.Server.Implementations/IO/ThrottledStream.cs
index 81760b639..3635ee1db 100644
--- a/Emby.Server.Implementations/IO/ThrottledStream.cs
+++ b/Emby.Server.Implementations/IO/ThrottledStream.cs
@@ -42,13 +42,7 @@ namespace Emby.Server.Implementations.IO
/// Gets the current milliseconds.
/// </summary>
/// <value>The current milliseconds.</value>
- protected long CurrentMilliseconds
- {
- get
- {
- return Environment.TickCount;
- }
- }
+ protected long CurrentMilliseconds => Environment.TickCount;
/// <summary>
/// Gets or sets the maximum bytes per second that can be transferred through the base stream.
@@ -56,10 +50,7 @@ namespace Emby.Server.Implementations.IO
/// <value>The maximum bytes per second.</value>
public long MaximumBytesPerSecond
{
- get
- {
- return _maximumBytesPerSecond;
- }
+ get => _maximumBytesPerSecond;
set
{
if (MaximumBytesPerSecond != value)
@@ -74,39 +65,21 @@ namespace Emby.Server.Implementations.IO
/// Gets a value indicating whether the current stream supports reading.
/// </summary>
/// <returns>true if the stream supports reading; otherwise, false.</returns>
- public override bool CanRead
- {
- get
- {
- return _baseStream.CanRead;
- }
- }
+ public override bool CanRead => _baseStream.CanRead;
/// <summary>
/// Gets a value indicating whether the current stream supports seeking.
/// </summary>
/// <value></value>
/// <returns>true if the stream supports seeking; otherwise, false.</returns>
- public override bool CanSeek
- {
- get
- {
- return _baseStream.CanSeek;
- }
- }
+ public override bool CanSeek => _baseStream.CanSeek;
/// <summary>
/// Gets a value indicating whether the current stream supports writing.
/// </summary>
/// <value></value>
/// <returns>true if the stream supports writing; otherwise, false.</returns>
- public override bool CanWrite
- {
- get
- {
- return _baseStream.CanWrite;
- }
- }
+ public override bool CanWrite => _baseStream.CanWrite;
/// <summary>
/// Gets the length in bytes of the stream.
@@ -115,13 +88,7 @@ namespace Emby.Server.Implementations.IO
/// <returns>A long value representing the length of the stream in bytes.</returns>
/// <exception cref="T:System.NotSupportedException">The base stream does not support seeking. </exception>
/// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
- public override long Length
- {
- get
- {
- return _baseStream.Length;
- }
- }
+ public override long Length => _baseStream.Length;
/// <summary>
/// Gets or sets the position within the current stream.
@@ -133,14 +100,8 @@ namespace Emby.Server.Implementations.IO
/// <exception cref="T:System.ObjectDisposedException">Methods were called after the stream was closed. </exception>
public override long Position
{
- get
- {
- return _baseStream.Position;
- }
- set
- {
- _baseStream.Position = value;
- }
+ get => _baseStream.Position;
+ set => _baseStream.Position = value;
}
#endregion
@@ -158,12 +119,12 @@ namespace Emby.Server.Implementations.IO
{
if (baseStream == null)
{
- throw new ArgumentNullException("baseStream");
+ throw new ArgumentNullException(nameof(baseStream));
}
if (maximumBytesPerSecond < 0)
{
- throw new ArgumentOutOfRangeException("maximumBytesPerSecond",
+ throw new ArgumentOutOfRangeException(nameof(maximumBytesPerSecond),
maximumBytesPerSecond, "The maximum number of bytes per second can't be negative.");
}
diff --git a/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs b/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs
index be17893d8..964e38962 100644
--- a/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs
+++ b/Emby.Server.Implementations/Images/BaseDynamicImageProvider.cs
@@ -193,10 +193,7 @@ namespace Emby.Server.Implementations.Images
return outputPath;
}
- public string Name
- {
- get { return "Dynamic Image Provider"; }
- }
+ public string Name => "Dynamic Image Provider";
protected virtual string CreateImage(BaseItem item,
List<BaseItem> itemsWithImages,
@@ -232,10 +229,7 @@ namespace Emby.Server.Implementations.Images
throw new ArgumentException("Unexpected image type");
}
- protected virtual int MaxImageAgeDays
- {
- get { return 7; }
- }
+ protected virtual int MaxImageAgeDays => 7;
public bool HasChanged(BaseItem item, IDirectoryService directoryServicee)
{
@@ -293,14 +287,7 @@ namespace Emby.Server.Implementations.Images
return true;
}
- public int Order
- {
- get
- {
- // Run before the default image provider which will download placeholders
- return 0;
- }
- }
+ public int Order => 0;
protected string CreateSingleImage(List<BaseItem> itemsWithImages, string outputPathWithoutExtension, ImageType imageType)
{
diff --git a/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs b/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs
index 7c79a7c69..775b5d283 100644
--- a/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs
+++ b/Emby.Server.Implementations/Library/DefaultAuthenticationProvider.cs
@@ -67,7 +67,7 @@ namespace Emby.Server.Implementations.Library
if (string.IsNullOrWhiteSpace(newPasswordHash))
{
- throw new ArgumentNullException("newPasswordHash");
+ throw new ArgumentNullException(nameof(newPasswordHash));
}
user.Password = newPasswordHash;
diff --git a/Emby.Server.Implementations/Library/LibraryManager.cs b/Emby.Server.Implementations/Library/LibraryManager.cs
index 3d3ef43b8..d901381cd 100644
--- a/Emby.Server.Implementations/Library/LibraryManager.cs
+++ b/Emby.Server.Implementations/Library/LibraryManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Extensions;
+using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.Progress;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Entities;
@@ -147,13 +147,7 @@ namespace Emby.Server.Implementations.Library
/// Gets the library items cache.
/// </summary>
/// <value>The library items cache.</value>
- private ConcurrentDictionary<Guid, BaseItem> LibraryItemsCache
- {
- get
- {
- return _libraryItemsCache;
- }
- }
+ private ConcurrentDictionary<Guid, BaseItem> LibraryItemsCache => _libraryItemsCache;
private readonly IFileSystem _fileSystem;
@@ -188,7 +182,6 @@ namespace Emby.Server.Implementations.Library
/// Adds the parts.
/// </summary>
/// <param name="rules">The rules.</param>
- /// <param name="pluginFolders">The plugin folders.</param>
/// <param name="resolvers">The resolvers.</param>
/// <param name="introProviders">The intro providers.</param>
/// <param name="itemComparers">The item comparers.</param>
@@ -277,7 +270,7 @@ namespace Emby.Server.Implementations.Library
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
if (item is IItemByName)
{
@@ -317,7 +310,7 @@ namespace Emby.Server.Implementations.Library
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
var parent = item.GetOwner() ?? item.GetParent();
@@ -329,7 +322,7 @@ namespace Emby.Server.Implementations.Library
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
if (item.SourceType == SourceType.Channel)
@@ -449,7 +442,7 @@ namespace Emby.Server.Implementations.Library
ReportItemRemoved(item, parent);
}
- private IEnumerable<string> GetMetadataPaths(BaseItem item, IEnumerable<BaseItem> children)
+ private static IEnumerable<string> GetMetadataPaths(BaseItem item, IEnumerable<BaseItem> children)
{
var list = new List<string>
{
@@ -502,11 +495,11 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrEmpty(key))
{
- throw new ArgumentNullException("key");
+ throw new ArgumentNullException(nameof(key));
}
if (type == null)
{
- throw new ArgumentNullException("type");
+ throw new ArgumentNullException(nameof(type));
}
if (key.StartsWith(ConfigurationManager.ApplicationPaths.ProgramDataPath))
@@ -542,7 +535,7 @@ namespace Emby.Server.Implementations.Library
{
if (fileInfo == null)
{
- throw new ArgumentNullException("fileInfo");
+ throw new ArgumentNullException(nameof(fileInfo));
}
var fullPath = fileInfo.FullName;
@@ -823,7 +816,7 @@ namespace Emby.Server.Implementations.Library
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
//_logger.LogInformation("FindByPath {0}", path);
@@ -921,7 +914,7 @@ namespace Emby.Server.Implementations.Library
{
if (value <= 0)
{
- throw new ArgumentOutOfRangeException("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);
@@ -1249,7 +1242,7 @@ namespace Emby.Server.Implementations.Library
{
if (id.Equals(Guid.Empty))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
BaseItem item;
@@ -1828,7 +1821,7 @@ namespace Emby.Server.Implementations.Library
/// Creates the item.
/// </summary>
/// <param name="item">The item.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
+ /// <param name="parent">The parent item.</param>
/// <returns>Task.</returns>
public void CreateItem(BaseItem item, BaseItem parent)
{
@@ -2023,7 +2016,7 @@ namespace Emby.Server.Implementations.Library
return GetCollectionFoldersInternal(item, allUserRootChildren);
}
- private List<Folder> GetCollectionFoldersInternal(BaseItem item, List<Folder> allUserRootChildren)
+ private static List<Folder> GetCollectionFoldersInternal(BaseItem item, List<Folder> allUserRootChildren)
{
return allUserRootChildren
.Where(i => string.Equals(i.Path, item.Path, StringComparison.OrdinalIgnoreCase) || i.PhysicalLocations.Contains(item.Path, StringComparer.OrdinalIgnoreCase))
@@ -2247,7 +2240,7 @@ namespace Emby.Server.Implementations.Library
{
if (parent == null)
{
- throw new ArgumentNullException("parent");
+ throw new ArgumentNullException(nameof(parent));
}
var name = parent.Name;
@@ -2313,7 +2306,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrEmpty(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
var parentIdString = parentId.Equals(Guid.Empty) ? null : parentId.ToString("N");
@@ -2708,15 +2701,15 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrWhiteSpace(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (string.IsNullOrWhiteSpace(from))
{
- throw new ArgumentNullException("from");
+ throw new ArgumentNullException(nameof(from));
}
if (string.IsNullOrWhiteSpace(to))
{
- throw new ArgumentNullException("to");
+ throw new ArgumentNullException(nameof(to));
}
from = from.Trim();
@@ -2864,7 +2857,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrWhiteSpace(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
name = _fileSystem.GetValidFilename(name);
@@ -2937,7 +2930,7 @@ namespace Emby.Server.Implementations.Library
});
}
- private bool ValidateNetworkPath(string path)
+ private static bool ValidateNetworkPath(string path)
{
//if (Environment.OSVersion.Platform == PlatformID.Win32NT)
//{
@@ -2962,14 +2955,14 @@ namespace Emby.Server.Implementations.Library
{
if (pathInfo == null)
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(pathInfo));
}
var path = pathInfo.Path;
if (string.IsNullOrWhiteSpace(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (!_fileSystem.DirectoryExists(path))
@@ -3017,7 +3010,7 @@ namespace Emby.Server.Implementations.Library
{
if (pathInfo == null)
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(pathInfo));
}
if (!string.IsNullOrWhiteSpace(pathInfo.NetworkPath) && !ValidateNetworkPath(pathInfo.NetworkPath))
@@ -3075,7 +3068,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrWhiteSpace(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
var rootFolderPath = ConfigurationManager.ApplicationPaths.DefaultUserViewsPath;
@@ -3116,7 +3109,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrWhiteSpace(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var removeList = new List<NameValuePair>();
@@ -3148,7 +3141,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrEmpty(mediaPath))
{
- throw new ArgumentNullException("mediaPath");
+ throw new ArgumentNullException(nameof(mediaPath));
}
var rootFolderPath = ConfigurationManager.ApplicationPaths.DefaultUserViewsPath;
diff --git a/Emby.Server.Implementations/Library/MediaSourceManager.cs b/Emby.Server.Implementations/Library/MediaSourceManager.cs
index ddda4b2c3..3578d8763 100644
--- a/Emby.Server.Implementations/Library/MediaSourceManager.cs
+++ b/Emby.Server.Implementations/Library/MediaSourceManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Extensions;
+using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Library;
@@ -74,7 +74,7 @@ namespace Emby.Server.Implementations.Library
return list;
}
- private bool StreamSupportsExternalStream(MediaStream stream)
+ private static bool StreamSupportsExternalStream(MediaStream stream)
{
if (stream.IsExternal)
{
@@ -261,7 +261,7 @@ namespace Emby.Server.Implementations.Library
}
}
- private void SetKeyProperties(IMediaSourceProvider provider, MediaSourceInfo mediaSource)
+ private static void SetKeyProperties(IMediaSourceProvider provider, MediaSourceInfo mediaSource)
{
var prefix = provider.GetType().FullName.GetMD5().ToString("N") + LiveStreamIdDelimeter;
@@ -292,7 +292,7 @@ namespace Emby.Server.Implementations.Library
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
var hasMediaSources = (IHasMediaSources)item;
@@ -401,7 +401,7 @@ namespace Emby.Server.Implementations.Library
}
}
- private IEnumerable<MediaSourceInfo> SortMediaSources(IEnumerable<MediaSourceInfo> sources)
+ private static IEnumerable<MediaSourceInfo> SortMediaSources(IEnumerable<MediaSourceInfo> sources)
{
return sources.OrderBy(i =>
{
@@ -501,7 +501,7 @@ namespace Emby.Server.Implementations.Library
}, liveStream as IDirectStreamProvider);
}
- private void AddMediaInfo(MediaSourceInfo mediaSource, bool isAudio)
+ private static void AddMediaInfo(MediaSourceInfo mediaSource, bool isAudio)
{
mediaSource.DefaultSubtitleStreamIndex = null;
@@ -629,6 +629,7 @@ namespace Emby.Server.Implementations.Library
}
catch (Exception ex)
{
+ _logger.LogDebug(ex, "_jsonSerializer.DeserializeFromFile threw an exception.");
}
}
@@ -759,7 +760,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrEmpty(id))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
var info = await GetLiveStreamInfo(id, cancellationToken).ConfigureAwait(false);
@@ -770,7 +771,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrEmpty(id))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
await _liveStreamSemaphore.WaitAsync(cancellationToken).ConfigureAwait(false);
@@ -803,7 +804,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrEmpty(id))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
await _liveStreamSemaphore.WaitAsync().ConfigureAwait(false);
diff --git a/Emby.Server.Implementations/Library/PathExtensions.cs b/Emby.Server.Implementations/Library/PathExtensions.cs
index 28ed2f53c..2d3019d17 100644
--- a/Emby.Server.Implementations/Library/PathExtensions.cs
+++ b/Emby.Server.Implementations/Library/PathExtensions.cs
@@ -16,12 +16,12 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrEmpty(str))
{
- throw new ArgumentNullException("str");
+ throw new ArgumentNullException(nameof(str));
}
if (string.IsNullOrEmpty(attrib))
{
- throw new ArgumentNullException("attrib");
+ throw new ArgumentNullException(nameof(attrib));
}
string srch = "[" + attrib + "=";
diff --git a/Emby.Server.Implementations/Library/ResolverHelper.cs b/Emby.Server.Implementations/Library/ResolverHelper.cs
index 14b28966a..027d82c58 100644
--- a/Emby.Server.Implementations/Library/ResolverHelper.cs
+++ b/Emby.Server.Implementations/Library/ResolverHelper.cs
@@ -117,15 +117,15 @@ namespace Emby.Server.Implementations.Library
{
if (fileSystem == null)
{
- throw new ArgumentNullException("fileSystem");
+ throw new ArgumentNullException(nameof(fileSystem));
}
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
if (args == null)
{
- throw new ArgumentNullException("args");
+ throw new ArgumentNullException(nameof(args));
}
// See if a different path came out of the resolver than what went in
diff --git a/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs
index 9b030c0b7..bac39122b 100644
--- a/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Audio/AudioResolver.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Library;
+using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Resolvers;
using MediaBrowser.Model.Entities;
using System;
@@ -30,10 +30,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Audio
/// Gets the priority.
/// </summary>
/// <value>The priority.</value>
- public override ResolverPriority Priority
- {
- get { return ResolverPriority.Fourth; }
- }
+ public override ResolverPriority Priority => ResolverPriority.Fourth;
public MultiItemResolverResult ResolveMultiple(Folder parent,
List<FileSystemMetadata> files,
@@ -264,12 +261,12 @@ namespace Emby.Server.Implementations.Library.Resolvers.Audio
result.Extras.Any(i => ContainsFile(i, file));
}
- private bool ContainsFile(AudioBookFileInfo result, FileSystemMetadata file)
+ private static bool ContainsFile(AudioBookFileInfo result, FileSystemMetadata file)
{
return string.Equals(result.Path, file.FullName, StringComparison.OrdinalIgnoreCase);
}
- private bool IsIgnored(string filename)
+ private static bool IsIgnored(string filename)
{
return false;
}
diff --git a/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs
index 47d752129..da5fe48cd 100644
--- a/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicAlbumResolver.cs
@@ -36,14 +36,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Audio
/// Gets the priority.
/// </summary>
/// <value>The priority.</value>
- public override ResolverPriority Priority
- {
- get
- {
- // Behind special folder resolver
- return ResolverPriority.Second;
- }
- }
+ public override ResolverPriority Priority => ResolverPriority.Second;
/// <summary>
/// Resolves the specified args.
diff --git a/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs
index c887cbd40..b3a5c27c8 100644
--- a/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Audio/MusicArtistResolver.cs
@@ -35,14 +35,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Audio
/// Gets the priority.
/// </summary>
/// <value>The priority.</value>
- public override ResolverPriority Priority
- {
- get
- {
- // Behind special folder resolver
- return ResolverPriority.Second;
- }
- }
+ public override ResolverPriority Priority => ResolverPriority.Second;
/// <summary>
/// Resolves the specified args.
diff --git a/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs b/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs
index 5e73baa5c..47e7f7344 100644
--- a/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/FolderResolver.cs
@@ -13,10 +13,7 @@ namespace Emby.Server.Implementations.Library.Resolvers
/// Gets the priority.
/// </summary>
/// <value>The priority.</value>
- public override ResolverPriority Priority
- {
- get { return ResolverPriority.Last; }
- }
+ public override ResolverPriority Priority => ResolverPriority.Last;
/// <summary>
/// Resolves the specified args.
diff --git a/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs b/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs
index b4a37be5f..529916619 100644
--- a/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/ItemResolver.cs
@@ -25,13 +25,7 @@ namespace Emby.Server.Implementations.Library.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/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs
index b9aca1417..d3ab4dd37 100644
--- a/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Movies/BoxSetResolver.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Movies;
using MediaBrowser.Controller.Library;
using MediaBrowser.Model.Entities;
@@ -61,7 +61,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
/// Sets the provider id from path.
/// </summary>
/// <param name="item">The item.</param>
- private void SetProviderIdFromPath(BaseItem item)
+ private static void SetProviderIdFromPath(BaseItem item)
{
//we need to only look at the name of this actual item (not parents)
var justName = Path.GetFileName(item.Path);
diff --git a/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs b/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs
index dd383f195..0a45317a4 100644
--- a/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/Movies/MovieResolver.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.Library;
@@ -27,17 +27,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
/// Gets the priority.
/// </summary>
/// <value>The priority.</value>
- public override ResolverPriority Priority
- {
- get
- {
- // Give plugins a chance to catch iso's first
- // Also since we have to loop through child files looking for videos,
- // see if we can avoid some of that by letting other resolvers claim folders first
- // Also run after series resolver
- return ResolverPriority.Third;
- }
- }
+ public override ResolverPriority Priority => ResolverPriority.Third;
public MultiItemResolverResult ResolveMultiple(Folder parent,
List<FileSystemMetadata> files,
@@ -176,7 +166,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
return result;
}
- private bool IsIgnored(string filename)
+ private static bool IsIgnored(string filename)
{
// Ignore samples
var sampleFilename = " " + filename.Replace(".", " ", StringComparison.OrdinalIgnoreCase)
@@ -204,7 +194,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
result.Extras.Any(i => ContainsFile(i, file));
}
- private bool ContainsFile(VideoFileInfo result, FileSystemMetadata file)
+ private static bool ContainsFile(VideoFileInfo result, FileSystemMetadata file)
{
return string.Equals(result.Path, file.FullName, StringComparison.OrdinalIgnoreCase);
}
@@ -330,7 +320,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.Movies
/// Sets the provider id from path.
/// </summary>
/// <param name="item">The item.</param>
- private void SetProviderIdsFromPath(Video item)
+ private static void SetProviderIdsFromPath(Video item)
{
if (item is Movie || item is MusicVideo)
{
diff --git a/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs b/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs
index 311abf14e..a073e0bd5 100644
--- a/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/PhotoAlbumResolver.cs
@@ -79,13 +79,6 @@ namespace Emby.Server.Implementations.Library.Resolvers
return false;
}
- public override ResolverPriority Priority
- {
- get
- {
- // Behind special folder resolver
- return ResolverPriority.Second;
- }
- }
+ public override ResolverPriority Priority => ResolverPriority.Second;
}
}
diff --git a/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs b/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs
index 6a1f8ec6f..5cf5cd3ad 100644
--- a/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/SpecialFolderResolver.cs
@@ -26,10 +26,7 @@ namespace Emby.Server.Implementations.Library.Resolvers
/// Gets the priority.
/// </summary>
/// <value>The priority.</value>
- public override ResolverPriority Priority
- {
- get { return ResolverPriority.First; }
- }
+ public override ResolverPriority Priority => ResolverPriority.First;
/// <summary>
/// Resolves the specified args.
diff --git a/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs b/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs
index 0fe42fa73..4bfedf3c6 100644
--- a/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/TV/SeasonResolver.cs
@@ -1,4 +1,4 @@
-using System.Globalization;
+using System.Globalization;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Library;
@@ -28,6 +28,9 @@ namespace Emby.Server.Implementations.Library.Resolvers.TV
/// Initializes a new instance of the <see cref="SeasonResolver"/> class.
/// </summary>
/// <param name="config">The config.</param>
+ /// <param name="libraryManager">The library manager.</param>
+ /// <param name="localization">The localization</param>
+ /// <param name="logger">The logger</param>
public SeasonResolver(IServerConfigurationManager config, ILibraryManager libraryManager, ILocalizationManager localization, ILogger logger)
{
_config = config;
diff --git a/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs b/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
index 32e8b6120..7d2865f0d 100644
--- a/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
+++ b/Emby.Server.Implementations/Library/Resolvers/TV/SeriesResolver.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities.TV;
+using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Controller.Resolvers;
@@ -38,13 +38,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.TV
/// Gets the priority.
/// </summary>
/// <value>The priority.</value>
- public override ResolverPriority Priority
- {
- get
- {
- return ResolverPriority.Second;
- }
- }
+ public override ResolverPriority Priority => ResolverPriority.Second;
/// <summary>
/// Resolves the specified args.
@@ -195,7 +189,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.TV
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var extension = Path.GetExtension(path);
@@ -236,7 +230,7 @@ namespace Emby.Server.Implementations.Library.Resolvers.TV
/// </summary>
/// <param name="item">The item.</param>
/// <param name="path">The path.</param>
- private void SetProviderIdFromPath(Series item, string path)
+ private static void SetProviderIdFromPath(Series item, string path)
{
var justName = Path.GetFileName(path);
diff --git a/Emby.Server.Implementations/Library/SearchEngine.cs b/Emby.Server.Implementations/Library/SearchEngine.cs
index 1212ba549..bbb139439 100644
--- a/Emby.Server.Implementations/Library/SearchEngine.cs
+++ b/Emby.Server.Implementations/Library/SearchEngine.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Library;
using Microsoft.Extensions.Logging;
@@ -64,7 +64,7 @@ namespace Emby.Server.Implementations.Library
};
}
- private void AddIfMissing(List<string> list, string value)
+ private static void AddIfMissing(List<string> list, string value)
{
if (!list.Contains(value, StringComparer.OrdinalIgnoreCase))
{
@@ -85,7 +85,7 @@ namespace Emby.Server.Implementations.Library
if (string.IsNullOrEmpty(searchTerm))
{
- throw new ArgumentNullException("searchTerm");
+ throw new ArgumentNullException(nameof(searchTerm));
}
searchTerm = searchTerm.Trim().RemoveDiacritics();
diff --git a/Emby.Server.Implementations/Library/UserDataManager.cs b/Emby.Server.Implementations/Library/UserDataManager.cs
index 27ba32c0c..3ca4b6b10 100644
--- a/Emby.Server.Implementations/Library/UserDataManager.cs
+++ b/Emby.Server.Implementations/Library/UserDataManager.cs
@@ -53,11 +53,11 @@ namespace Emby.Server.Implementations.Library
{
if (userData == null)
{
- throw new ArgumentNullException("userData");
+ throw new ArgumentNullException(nameof(userData));
}
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
cancellationToken.ThrowIfCancellationRequested();
@@ -150,7 +150,7 @@ namespace Emby.Server.Implementations.Library
/// Gets the internal key.
/// </summary>
/// <returns>System.String.</returns>
- private string GetCacheKey(long internalUserId, Guid itemId)
+ private static string GetCacheKey(long internalUserId, Guid itemId)
{
return internalUserId.ToString(CultureInfo.InvariantCulture) + "-" + itemId.ToString("N");
}
@@ -198,7 +198,7 @@ namespace Emby.Server.Implementations.Library
{
if (data == null)
{
- throw new ArgumentNullException("data");
+ throw new ArgumentNullException(nameof(data));
}
return new UserItemDataDto
@@ -226,7 +226,7 @@ namespace Emby.Server.Implementations.Library
// If a position has been reported, and if we know the duration
if (positionTicks > 0 && hasRuntime)
{
- var pctIn = Decimal.Divide(positionTicks, runtimeTicks) * 100;
+ var pctIn = decimal.Divide(positionTicks, runtimeTicks) * 100;
// Don't track in very beginning
if (pctIn < _config.Configuration.MinResumePct)
diff --git a/Emby.Server.Implementations/Library/UserManager.cs b/Emby.Server.Implementations/Library/UserManager.cs
index 3a8945c22..c059cbc75 100644
--- a/Emby.Server.Implementations/Library/UserManager.cs
+++ b/Emby.Server.Implementations/Library/UserManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Events;
+using MediaBrowser.Common.Events;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller;
using MediaBrowser.Controller.Configuration;
@@ -44,7 +44,7 @@ namespace Emby.Server.Implementations.Library
/// Gets the users.
/// </summary>
/// <value>The users.</value>
- public IEnumerable<User> Users { get { return _users; } }
+ public IEnumerable<User> Users => _users;
private User[] _users;
@@ -163,7 +163,7 @@ namespace Emby.Server.Implementations.Library
{
if (id.Equals(Guid.Empty))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
return Users.FirstOrDefault(u => u.Id == id);
@@ -183,7 +183,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrWhiteSpace(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
return Users.FirstOrDefault(u => string.Equals(u.Name, name, StringComparison.OrdinalIgnoreCase));
@@ -222,7 +222,7 @@ namespace Emby.Server.Implementations.Library
return true;
}
- private bool IsValidUsernameCharacter(char i)
+ private static bool IsValidUsernameCharacter(char i)
{
return !char.Equals(i, '<') && !char.Equals(i, '>');
}
@@ -251,7 +251,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrWhiteSpace(username))
{
- throw new ArgumentNullException("username");
+ throw new ArgumentNullException(nameof(username));
}
var user = Users
@@ -344,7 +344,7 @@ namespace Emby.Server.Implementations.Library
return success ? user : null;
}
- private string GetAuthenticationProviderId(IAuthenticationProvider provider)
+ private static string GetAuthenticationProviderId(IAuthenticationProvider provider)
{
return provider.GetType().FullName;
}
@@ -526,7 +526,7 @@ namespace Emby.Server.Implementations.Library
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
var hasConfiguredPassword = GetAuthenticationProvider(user).HasPassword(user).Result;
@@ -625,12 +625,12 @@ namespace Emby.Server.Implementations.Library
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
if (string.IsNullOrEmpty(newName))
{
- throw new ArgumentNullException("newName");
+ throw new ArgumentNullException(nameof(newName));
}
if (Users.Any(u => u.Id != user.Id && u.Name.Equals(newName, StringComparison.OrdinalIgnoreCase)))
@@ -658,7 +658,7 @@ namespace Emby.Server.Implementations.Library
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
if (user.Id.Equals(Guid.Empty) || !Users.Any(u => u.Id.Equals(user.Id)))
@@ -689,7 +689,7 @@ namespace Emby.Server.Implementations.Library
{
if (string.IsNullOrWhiteSpace(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
if (!IsValidUsername(name))
@@ -737,7 +737,7 @@ namespace Emby.Server.Implementations.Library
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
var allUsers = Users.ToList();
@@ -804,7 +804,7 @@ namespace Emby.Server.Implementations.Library
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
if (user.ConnectLinkType.HasValue && user.ConnectLinkType.Value == UserLinkType.Guest)
@@ -823,7 +823,7 @@ namespace Emby.Server.Implementations.Library
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
if (newPassword != null)
@@ -833,7 +833,7 @@ namespace Emby.Server.Implementations.Library
if (string.IsNullOrWhiteSpace(newPasswordHash))
{
- throw new ArgumentNullException("newPasswordHash");
+ throw new ArgumentNullException(nameof(newPasswordHash));
}
user.EasyPassword = newPasswordHash;
@@ -848,7 +848,7 @@ namespace Emby.Server.Implementations.Library
/// </summary>
/// <param name="name">The name.</param>
/// <returns>User.</returns>
- private User InstantiateNewUser(string name)
+ private static User InstantiateNewUser(string name)
{
return new User
{
@@ -861,10 +861,7 @@ namespace Emby.Server.Implementations.Library
};
}
- private string PasswordResetFile
- {
- get { return Path.Combine(ConfigurationManager.ApplicationPaths.ProgramDataPath, "passwordreset.txt"); }
- }
+ private string PasswordResetFile => Path.Combine(ConfigurationManager.ApplicationPaths.ProgramDataPath, "passwordreset.txt");
private string _lastPin;
private PasswordPinCreationResult _lastPasswordPinCreationResult;
@@ -1047,7 +1044,7 @@ namespace Emby.Server.Implementations.Library
}
}
- private UserPolicy GetDefaultPolicy(User user)
+ private static UserPolicy GetDefaultPolicy(User user)
{
return new UserPolicy
{
@@ -1109,12 +1106,12 @@ namespace Emby.Server.Implementations.Library
}
}
- private string GetPolicyFilePath(User user)
+ private static string GetPolicyFilePath(User user)
{
return Path.Combine(user.ConfigurationDirectoryPath, "policy.xml");
}
- private string GetConfigurationFilePath(User user)
+ private static string GetConfigurationFilePath(User user)
{
return Path.Combine(user.ConfigurationDirectoryPath, "config.xml");
}
diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
index ccd6cebca..75ac625ef 100644
--- a/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
+++ b/Emby.Server.Implementations/LiveTv/EmbyTV/EmbyTV.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Globalization;
@@ -254,27 +254,15 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
if (requiresRefresh)
{
- await _libraryManager.ValidateMediaLibrary(new SimpleProgress<Double>(), CancellationToken.None);
+ await _libraryManager.ValidateMediaLibrary(new SimpleProgress<double>(), CancellationToken.None);
}
}
- public string Name
- {
- get { return "Emby"; }
- }
+ public string Name => "Emby";
- public string DataPath
- {
- get { return Path.Combine(_config.CommonApplicationPaths.DataPath, "livetv"); }
- }
+ public string DataPath => Path.Combine(_config.CommonApplicationPaths.DataPath, "livetv");
- private string DefaultRecordingPath
- {
- get
- {
- return Path.Combine(DataPath, "recordings");
- }
- }
+ private string DefaultRecordingPath => Path.Combine(DataPath, "recordings");
private string RecordingPath
{
@@ -288,10 +276,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
}
}
- public string HomePageUrl
- {
- get { return "https://github.com/jellyfin/jellyfin"; }
- }
+ public string HomePageUrl => "https://github.com/jellyfin/jellyfin";
public async Task RefreshSeriesTimers(CancellationToken cancellationToken, IProgress<double> progress)
{
@@ -491,7 +476,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
return GetEpgChannelFromTunerChannel(info, tunerChannel, epgChannels);
}
- private string GetMappedChannel(string channelId, NameValuePair[] mappings)
+ private static string GetMappedChannel(string channelId, NameValuePair[] mappings)
{
foreach (NameValuePair mapping in mappings)
{
@@ -850,7 +835,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
return Task.CompletedTask;
}
- private void UpdateExistingTimerWithNewMetadata(TimerInfo existingTimer, TimerInfo updatedTimer)
+ private static void UpdateExistingTimerWithNewMetadata(TimerInfo existingTimer, TimerInfo updatedTimer)
{
// Update the program info but retain the status
existingTimer.ChannelId = updatedTimer.ChannelId;
@@ -980,7 +965,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
if (string.IsNullOrWhiteSpace(tunerHostId))
{
- throw new ArgumentNullException("tunerHostId");
+ throw new ArgumentNullException(nameof(tunerHostId));
}
return info.EnabledTuners.Contains(tunerHostId, StringComparer.OrdinalIgnoreCase);
@@ -1114,7 +1099,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
{
if (string.IsNullOrWhiteSpace(channelId))
{
- throw new ArgumentNullException("channelId");
+ throw new ArgumentNullException(nameof(channelId));
}
foreach (var hostInstance in _liveTvManager.TunerHosts)
@@ -1342,7 +1327,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
{
if (timer == null)
{
- throw new ArgumentNullException("timer");
+ throw new ArgumentNullException(nameof(timer));
}
LiveTvProgram programInfo = null;
@@ -1795,7 +1780,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
}
}
- private string GetPostProcessArguments(string path, string arguments)
+ private static string GetPostProcessArguments(string path, string arguments)
{
return arguments.Replace("{path}", path, StringComparison.OrdinalIgnoreCase);
}
@@ -2501,7 +2486,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
{
if (seriesTimer == null)
{
- throw new ArgumentNullException("seriesTimer");
+ throw new ArgumentNullException(nameof(seriesTimer));
}
var query = new InternalItemsQuery
diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs
index a6222a469..292f3621d 100644
--- a/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs
+++ b/Emby.Server.Implementations/LiveTv/EmbyTV/EncodedRecorder.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Globalization;
@@ -55,14 +55,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
_assemblyInfo = assemblyInfo;
}
- private bool CopySubtitles
- {
- get
- {
- return false;
- //return string.Equals(OutputFormat, "mkv", StringComparison.OrdinalIgnoreCase);
- }
- }
+ private static bool CopySubtitles => false;
public string GetOutputPath(MediaSourceInfo mediaSource, string targetFile)
{
@@ -226,7 +219,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
return inputModifier + " " + commandLineArgs;
}
- private string GetAudioArgs(MediaSourceInfo mediaSource)
+ private static string GetAudioArgs(MediaSourceInfo mediaSource)
{
var mediaStreams = mediaSource.MediaStreams ?? new List<MediaStream>();
var inputAudioCodec = mediaStreams.Where(i => i.Type == MediaStreamType.Audio).Select(i => i.Codec).FirstOrDefault() ?? string.Empty;
@@ -242,7 +235,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
//return "-codec:a:0 aac -strict experimental -ab 320000";
}
- private bool EncodeVideo(MediaSourceInfo mediaSource)
+ private static bool EncodeVideo(MediaSourceInfo mediaSource)
{
return false;
}
@@ -383,6 +376,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
}
catch (ObjectDisposedException)
{
+ // TODO Investigate and properly fix.
// Don't spam the log. This doesn't seem to throw in windows, but sometimes under linux
}
catch (Exception ex)
diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs
index 9f179dc2c..593f98881 100644
--- a/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs
+++ b/Emby.Server.Implementations/LiveTv/EmbyTV/ItemDataProvider.cs
@@ -68,7 +68,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
{
if (newList == null)
{
- throw new ArgumentNullException("newList");
+ throw new ArgumentNullException(nameof(newList));
}
var file = _dataPath + ".json";
@@ -85,7 +85,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
var list = GetAll().ToList();
@@ -106,7 +106,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
var list = GetAll().ToList();
diff --git a/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs b/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs
index e4ab34770..bdc6ae009 100644
--- a/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs
+++ b/Emby.Server.Implementations/LiveTv/EmbyTV/TimerManager.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Concurrent;
using System.Globalization;
using System.Linq;
@@ -90,7 +90,7 @@ namespace Emby.Server.Implementations.LiveTv.EmbyTV
AddOrUpdateSystemTimer(item);
}
- private bool ShouldStartTimer(TimerInfo item)
+ private static bool ShouldStartTimer(TimerInfo item)
{
if (item.Status == RecordingStatus.Completed ||
item.Status == RecordingStatus.Cancelled)
diff --git a/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs b/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs
index e8ffd0caa..0ba8c8b42 100644
--- a/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs
+++ b/Emby.Server.Implementations/LiveTv/Listings/SchedulesDirect.cs
@@ -1,4 +1,4 @@
-using System.Net;
+using System.Net;
using MediaBrowser.Common;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller.LiveTv;
@@ -38,12 +38,9 @@ namespace Emby.Server.Implementations.LiveTv.Listings
_appHost = appHost;
}
- private string UserAgent
- {
- get { return "Emby/" + _appHost.ApplicationVersion; }
- }
+ private string UserAgent => "Emby/" + _appHost.ApplicationVersion;
- private List<string> GetScheduleRequestDates(DateTime startDateUtc, DateTime endDateUtc)
+ private static List<string> GetScheduleRequestDates(DateTime startDateUtc, DateTime endDateUtc)
{
List<string> dates = new List<string>();
@@ -63,7 +60,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
{
if (string.IsNullOrEmpty(channelId))
{
- throw new ArgumentNullException("channelId");
+ throw new ArgumentNullException(nameof(channelId));
}
// Normalize incoming input
@@ -189,7 +186,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
}
}
- private int GetSizeOrder(ScheduleDirect.ImageData image)
+ private static int GetSizeOrder(ScheduleDirect.ImageData image)
{
if (!string.IsNullOrWhiteSpace(image.height))
{
@@ -202,7 +199,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
return 0;
}
- private string GetChannelNumber(ScheduleDirect.Map map)
+ private static string GetChannelNumber(ScheduleDirect.Map map)
{
var channelNumber = map.logicalChannelNumber;
@@ -218,7 +215,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
return channelNumber.TrimStart('0');
}
- private bool IsMovie(ScheduleDirect.ProgramDetails programInfo)
+ private static bool IsMovie(ScheduleDirect.ProgramDetails programInfo)
{
return string.Equals(programInfo.entityType, "movie", StringComparison.OrdinalIgnoreCase);
}
@@ -390,7 +387,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
return info;
}
- private DateTime GetDate(string value)
+ private static DateTime GetDate(string value)
{
var date = DateTime.ParseExact(value, "yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'", CultureInfo.InvariantCulture);
@@ -429,7 +426,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
}
}
- private double GetAspectRatio(ScheduleDirect.ImageData i)
+ private static double GetAspectRatio(ScheduleDirect.ImageData i)
{
int width = 0;
int height = 0;
@@ -664,7 +661,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
}
}
- options.RequestHeaders["token"] = await GetToken(providerInfo, options.CancellationToken).ConfigureAwait(false);;
+ options.RequestHeaders["token"] = await GetToken(providerInfo, options.CancellationToken).ConfigureAwait(false);
return await Post(options, false, providerInfo).ConfigureAwait(false);
}
@@ -765,16 +762,10 @@ namespace Emby.Server.Implementations.LiveTv.Listings
}
}
- public string Name
- {
- get { return "Schedules Direct"; }
- }
+ public string Name => "Schedules Direct";
public static string TypeName = "SchedulesDirect";
- public string Type
- {
- get { return TypeName; }
- }
+ public string Type => TypeName;
private async Task<bool> HasLineup(ListingsProviderInfo info, CancellationToken cancellationToken)
{
@@ -951,7 +942,7 @@ namespace Emby.Server.Implementations.LiveTv.Listings
return null;
}
- private string NormalizeName(string value)
+ private static string NormalizeName(string value)
{
return value.Replace(" ", string.Empty).Replace("-", string.Empty);
}
diff --git a/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs b/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs
index 4d7c7fef4..2b1ee84a8 100644
--- a/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs
+++ b/Emby.Server.Implementations/LiveTv/Listings/XmlTvListingsProvider.cs
@@ -36,15 +36,9 @@ namespace Jellyfin.Server.Implementations.LiveTv.Listings
_zipClient = zipClient;
}
- public string Name
- {
- get { return "XmlTV"; }
- }
+ public string Name => "XmlTV";
- public string Type
- {
- get { return "xmltv"; }
- }
+ public string Type => "xmltv";
private string GetLanguage(ListingsProviderInfo info)
{
@@ -78,7 +72,7 @@ namespace Jellyfin.Server.Implementations.LiveTv.Listings
{
CancellationToken = cancellationToken,
Url = path,
- Progress = new SimpleProgress<Double>(),
+ Progress = new SimpleProgress<double>(),
DecompressionMethod = CompressionMethod.Gzip,
// It's going to come back gzipped regardless of this value
@@ -164,7 +158,7 @@ namespace Jellyfin.Server.Implementations.LiveTv.Listings
{
if (string.IsNullOrWhiteSpace(channelId))
{
- throw new ArgumentNullException("channelId");
+ throw new ArgumentNullException(nameof(channelId));
}
/*
@@ -187,7 +181,7 @@ namespace Jellyfin.Server.Implementations.LiveTv.Listings
.Select(p => GetProgramInfo(p, info));
}
- private ProgramInfo GetProgramInfo(XmlTvProgram program, ListingsProviderInfo info)
+ private static ProgramInfo GetProgramInfo(XmlTvProgram program, ListingsProviderInfo info)
{
string episodeTitle = program.Episode?.Title;
@@ -210,9 +204,9 @@ namespace Jellyfin.Server.Implementations.LiveTv.Listings
IsMovie = program.Categories.Any(c => info.MovieCategories.Contains(c, StringComparer.OrdinalIgnoreCase)),
IsNews = program.Categories.Any(c => info.NewsCategories.Contains(c, StringComparer.OrdinalIgnoreCase)),
IsSports = program.Categories.Any(c => info.SportsCategories.Contains(c, StringComparer.OrdinalIgnoreCase)),
- ImageUrl = program.Icon != null && !String.IsNullOrEmpty(program.Icon.Source) ? program.Icon.Source : null,
- HasImage = program.Icon != null && !String.IsNullOrEmpty(program.Icon.Source),
- OfficialRating = program.Rating != null && !String.IsNullOrEmpty(program.Rating.Value) ? program.Rating.Value : null,
+ ImageUrl = program.Icon != null && !string.IsNullOrEmpty(program.Icon.Source) ? program.Icon.Source : null,
+ HasImage = program.Icon != null && !string.IsNullOrEmpty(program.Icon.Source),
+ OfficialRating = program.Rating != null && !string.IsNullOrEmpty(program.Rating.Value) ? program.Rating.Value : null,
CommunityRating = program.StarRating,
SeriesId = program.Episode == null ? null : program.Title.GetMD5().ToString("N")
};
@@ -246,7 +240,7 @@ namespace Jellyfin.Server.Implementations.LiveTv.Listings
}
// Construct an id from the channel and start date
- programInfo.Id = String.Format("{0}_{1:O}", program.ChannelId, program.StartDate);
+ programInfo.Id = string.Format("{0}_{1:O}", program.ChannelId, program.StartDate);
if (programInfo.IsMovie)
{
@@ -294,7 +288,7 @@ namespace Jellyfin.Server.Implementations.LiveTv.Listings
{
Id = c.Id,
Name = c.DisplayName,
- ImageUrl = c.Icon != null && !String.IsNullOrEmpty(c.Icon.Source) ? c.Icon.Source : null,
+ ImageUrl = c.Icon != null && !string.IsNullOrEmpty(c.Icon.Source) ? c.Icon.Source : null,
Number = string.IsNullOrWhiteSpace(c.Number) ? c.Id : c.Number
}).ToList();
diff --git a/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs b/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs
index 6fe578715..7397d4b60 100644
--- a/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs
+++ b/Emby.Server.Implementations/LiveTv/LiveTvDtoService.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common;
+using MediaBrowser.Common;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Drawing;
using MediaBrowser.Controller.Dto;
@@ -321,6 +321,7 @@ namespace Emby.Server.Implementations.LiveTv
}
catch (Exception ex)
{
+ _logger.LogDebug(ex, "GetImageCacheTag raised an exception in LiveTvDtoService.FillImages.");
}
}
@@ -331,10 +332,10 @@ namespace Emby.Server.Implementations.LiveTv
{
try
{
- dto.ParentBackdropImageTags = new string[]
- {
- _imageProcessor.GetImageCacheTag(program, image)
- };
+ dto.ParentBackdropImageTags = new[]
+ {
+ _imageProcessor.GetImageCacheTag(program, image)
+ };
dto.ParentBackdropItemId = program.Id.ToString("N");
}
catch (Exception ex)
diff --git a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs
index b84b4682a..4e38ad7be 100644
--- a/Emby.Server.Implementations/LiveTv/LiveTvManager.cs
+++ b/Emby.Server.Implementations/LiveTv/LiveTvManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Configuration;
+using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.Progress;
using MediaBrowser.Controller.Configuration;
@@ -104,10 +104,7 @@ namespace Emby.Server.Implementations.LiveTv
/// Gets the services.
/// </summary>
/// <value>The services.</value>
- public IReadOnlyList<ILiveTvService> Services
- {
- get { return _services; }
- }
+ public IReadOnlyList<ILiveTvService> Services => _services;
private LiveTvOptions GetConfiguration()
{
@@ -167,15 +164,9 @@ namespace Emby.Server.Implementations.LiveTv
});
}
- public ITunerHost[] TunerHosts
- {
- get { return _tunerHosts; }
- }
+ public ITunerHost[] TunerHosts => _tunerHosts;
- public IListingsProvider[] ListingProviders
- {
- get { return _listingProviders; }
- }
+ public IListingsProvider[] ListingProviders => _listingProviders;
public List<NameIdPair> GetTunerHostTypes()
{
@@ -323,7 +314,7 @@ namespace Emby.Server.Implementations.LiveTv
return _services.FirstOrDefault(i => string.Equals(i.Name, name, StringComparison.OrdinalIgnoreCase));
}
- private void Normalize(MediaSourceInfo mediaSource, ILiveTvService service, bool isVideo)
+ private static void Normalize(MediaSourceInfo mediaSource, ILiveTvService service, bool isVideo)
{
// Not all of the plugins are setting this
mediaSource.IsInfiniteStream = true;
@@ -1418,6 +1409,7 @@ namespace Emby.Server.Implementations.LiveTv
if (query.IsInProgress ?? false)
{
+ //TODO Fix The co-variant conversion between Video[] and BaseItem[], this can generate runtime issues.
result.Items = result
.Items
.OfType<Video>()
@@ -2188,7 +2180,7 @@ namespace Emby.Server.Implementations.LiveTv
return Services.Select(GetServiceInfo).ToArray();
}
- private LiveTvServiceInfo GetServiceInfo(ILiveTvService service)
+ private static LiveTvServiceInfo GetServiceInfo(ILiveTvService service)
{
return new LiveTvServiceInfo
{
@@ -2245,7 +2237,7 @@ namespace Emby.Server.Implementations.LiveTv
return service.ResetTuner(parts[1], cancellationToken);
}
- private void RemoveFields(DtoOptions options)
+ private static void RemoveFields(DtoOptions options)
{
var fields = options.Fields.ToList();
diff --git a/Emby.Server.Implementations/LiveTv/RefreshChannelsScheduledTask.cs b/Emby.Server.Implementations/LiveTv/RefreshChannelsScheduledTask.cs
index 8e4fcc099..29196a068 100644
--- a/Emby.Server.Implementations/LiveTv/RefreshChannelsScheduledTask.cs
+++ b/Emby.Server.Implementations/LiveTv/RefreshChannelsScheduledTask.cs
@@ -20,20 +20,11 @@ namespace Emby.Server.Implementations.LiveTv
_config = config;
}
- public string Name
- {
- get { return "Refresh Guide"; }
- }
+ public string Name => "Refresh Guide";
- public string Description
- {
- get { return "Downloads channel information from live tv services."; }
- }
+ public string Description => "Downloads channel information from live tv services.";
- public string Category
- {
- get { return "Live TV"; }
- }
+ public string Category => "Live TV";
public Task Execute(System.Threading.CancellationToken cancellationToken, IProgress<double> progress)
{
@@ -60,24 +51,12 @@ namespace Emby.Server.Implementations.LiveTv
return _config.GetConfiguration<LiveTvOptions>("livetv");
}
- public bool IsHidden
- {
- get { return _liveTvManager.Services.Count == 1 && GetConfiguration().TunerHosts.Length == 0; }
- }
+ public bool IsHidden => _liveTvManager.Services.Count == 1 && GetConfiguration().TunerHosts.Length == 0;
- public bool IsEnabled
- {
- get { return true; }
- }
+ public bool IsEnabled => true;
- public bool IsLogged
- {
- get { return true; }
- }
+ public bool IsLogged => true;
- public string Key
- {
- get { return "RefreshGuide"; }
- }
+ public string Key => "RefreshGuide";
}
}
diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs
index ef2010ba6..78514c1d9 100644
--- a/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs
+++ b/Emby.Server.Implementations/LiveTv/TunerHosts/BaseTunerHost.cs
@@ -40,13 +40,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts
FileSystem = fileSystem;
}
- public virtual bool IsSupported
- {
- get
- {
- return true;
- }
- }
+ public virtual bool IsSupported => true;
protected abstract Task<List<ChannelInfo>> GetChannelsInternal(TunerHostInfo tuner, CancellationToken cancellationToken);
public abstract string Type { get; }
@@ -140,7 +134,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts
{
if (string.IsNullOrEmpty(channelId))
{
- throw new ArgumentNullException("channelId");
+ throw new ArgumentNullException(nameof(channelId));
}
if (IsValidChannelId(channelId))
@@ -175,7 +169,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts
{
if (string.IsNullOrEmpty(channelId))
{
- throw new ArgumentNullException("channelId");
+ throw new ArgumentNullException(nameof(channelId));
}
if (!IsValidChannelId(channelId))
@@ -228,18 +222,13 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts
throw new LiveTvConflictException();
}
- protected virtual string ChannelIdPrefix
- {
- get
- {
- return Type + "_";
- }
- }
+ protected virtual string ChannelIdPrefix => Type + "_";
+
protected virtual bool IsValidChannelId(string channelId)
{
if (string.IsNullOrEmpty(channelId))
{
- throw new ArgumentNullException("channelId");
+ throw new ArgumentNullException(nameof(channelId));
}
return channelId.StartsWith(ChannelIdPrefix, StringComparison.OrdinalIgnoreCase);
diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs
index edeafdd93..3ae47f3ab 100644
--- a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs
+++ b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunHost.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Configuration;
+using MediaBrowser.Common.Configuration;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller.LiveTv;
using MediaBrowser.Model.Dto;
@@ -42,28 +42,13 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
_environment = environment;
}
- public string Name
- {
- get { return "HD Homerun"; }
- }
+ public string Name => "HD Homerun";
- public override string Type
- {
- get { return DeviceType; }
- }
+ public override string Type => DeviceType;
- public static string DeviceType
- {
- get { return "hdhomerun"; }
- }
+ public static string DeviceType => "hdhomerun";
- protected override string ChannelIdPrefix
- {
- get
- {
- return "hdhr_";
- }
- }
+ protected override string ChannelIdPrefix => "hdhr_";
private string GetChannelId(TunerHostInfo info, Channels i)
{
@@ -274,8 +259,8 @@ 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 name = string.Format("Tuner {0}", i + 1);
+ 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;
tuners.Add(new LiveTvTunerInfo
@@ -325,7 +310,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
return await GetTunerInfosHttp(info, cancellationToken).ConfigureAwait(false);
}
- private string GetApiUrl(TunerHostInfo info)
+ private static string GetApiUrl(TunerHostInfo info)
{
var url = info.Url;
@@ -359,7 +344,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
return Config.GetConfiguration<EncodingOptions>("encoding");
}
- private string GetHdHrIdFromChannelId(string channelId)
+ private static string GetHdHrIdFromChannelId(string channelId)
{
return channelId.Split('_')[1];
}
diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs
index 0e84622bd..335fc4cb4 100644
--- a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs
+++ b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunManager.cs
@@ -37,10 +37,10 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
{
var commands = new List<Tuple<string, string>>();
- if (!String.IsNullOrEmpty(_channel))
+ if (!string.IsNullOrEmpty(_channel))
commands.Add(Tuple.Create("channel", _channel));
- if (!String.IsNullOrEmpty(_program))
+ if (!string.IsNullOrEmpty(_program))
commands.Add(Tuple.Create("program", _program));
return commands;
}
@@ -61,11 +61,11 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
{
var commands = new List<Tuple<string, string>>();
- if (!String.IsNullOrEmpty(_channel))
+ if (!string.IsNullOrEmpty(_channel))
{
if (!string.IsNullOrEmpty(_profile) && !string.Equals(_profile, "native", StringComparison.OrdinalIgnoreCase))
{
- commands.Add(Tuple.Create("vchannel", String.Format("{0} transcode={1}", _channel, _profile)));
+ commands.Add(Tuple.Create("vchannel", string.Format("{0} transcode={1}", _channel, _profile)));
}
else
{
@@ -123,7 +123,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
}
}
- private async Task<bool> CheckTunerAvailability(ISocket socket, IpAddressInfo remoteIp, int tuner, CancellationToken cancellationToken)
+ private static async Task<bool> CheckTunerAvailability(ISocket socket, IpAddressInfo remoteIp, int tuner, CancellationToken cancellationToken)
{
var ipEndPoint = new IpEndPointInfo(remoteIp, HdHomeRunPort);
@@ -164,7 +164,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
continue;
_activeTuner = i;
- var lockKeyString = String.Format("{0:d}", lockKeyValue);
+ var lockKeyString = string.Format("{0:d}", lockKeyValue);
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);
@@ -188,7 +188,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
}
- var targetValue = String.Format("rtp://{0}:{1}", localIp, localPort);
+ var targetValue = string.Format("rtp://{0}:{1}", localIp, localPort);
var targetMsg = CreateSetMessage(i, "target", targetValue, lockKeyValue);
await tcpClient.SendToAsync(targetMsg, 0, targetMsg.Length, ipEndPoint, cancellationToken).ConfigureAwait(false);
@@ -262,7 +262,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
private static byte[] CreateGetMessage(int tuner, string name)
{
- var byteName = Encoding.UTF8.GetBytes(String.Format("/tuner{0}/{1}\0", tuner, name));
+ var byteName = Encoding.UTF8.GetBytes(string.Format("/tuner{0}/{1}\0", tuner, name));
int messageLength = byteName.Length + 10; // 4 bytes for header + 4 bytes for crc + 2 bytes for tag name and length
var message = new byte[messageLength];
@@ -280,10 +280,10 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
return message;
}
- private static byte[] CreateSetMessage(int tuner, String name, String value, uint? lockkey)
+ private static byte[] CreateSetMessage(int tuner, string name, string value, uint? lockkey)
{
- var byteName = Encoding.UTF8.GetBytes(String.Format("/tuner{0}/{1}\0", tuner, name));
- var byteValue = Encoding.UTF8.GetBytes(String.Format("{0}\0", value));
+ var byteName = Encoding.UTF8.GetBytes(string.Format("/tuner{0}/{1}\0", tuner, name));
+ var byteValue = Encoding.UTF8.GetBytes(string.Format("{0}\0", value));
int messageLength = byteName.Length + byteValue.Length + 12;
if (lockkey.HasValue)
@@ -360,7 +360,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
private static bool ParseReturnMessage(byte[] buf, int numBytes, out string returnVal)
{
- returnVal = String.Empty;
+ returnVal = string.Empty;
if (numBytes < 4)
return false;
@@ -411,7 +411,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
private class HdHomerunCrc
{
- private static UInt32[] crc_table = {
+ private static uint[] crc_table = {
0x00000000, 0x77073096, 0xee0e612c, 0x990951ba,
0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3,
0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988,
@@ -477,7 +477,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94,
0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d };
- public static UInt32 GetCrc32(byte[] bytes, int numBytes)
+ public static uint GetCrc32(byte[] bytes, int numBytes)
{
var hash = 0xffffffff;
for (var i = 0; i < numBytes; i++)
diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunUdpStream.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunUdpStream.cs
index c781bccbb..fd78dfa8e 100644
--- a/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunUdpStream.cs
+++ b/Emby.Server.Implementations/LiveTv/TunerHosts/HdHomerun/HdHomerunUdpStream.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.IO;
using System.Threading;
using System.Threading.Tasks;
@@ -38,7 +38,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
EnableStreamSharing = true;
}
- private Socket CreateSocket(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType)
+ private static Socket CreateSocket(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType)
{
var socket = new Socket(addressFamily, SocketType.Stream, ProtocolType.Tcp);
@@ -144,7 +144,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
});
}
- private void Resolve(TaskCompletionSource<bool> openTaskCompletionSource)
+ private static void Resolve(TaskCompletionSource<bool> openTaskCompletionSource)
{
Task.Run(() =>
{
@@ -204,16 +204,16 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
public override async Task<int> ReadAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken)
{
if (buffer == null)
- throw new ArgumentNullException("buffer");
+ throw new ArgumentNullException(nameof(buffer));
if (offset + count < 0)
- throw new ArgumentOutOfRangeException("offset + count must not be negative", "offset+count");
+ throw new ArgumentOutOfRangeException(nameof(offset), "offset + count must not be negative");
if (offset + count > buffer.Length)
- throw new ArgumentException("offset + count must not be greater than the length of buffer", "offset+count");
+ throw new ArgumentException("offset + count must not be greater than the length of buffer");
if (disposed)
- throw new ObjectDisposedException(typeof(UdpClientStream).ToString());
+ throw new ObjectDisposedException(nameof(UdpClientStream));
// This will always receive a 1328 packet size (PacketSize + RtpHeaderSize)
// The RTP header will be stripped so see how many reads we need to make to fill the buffer.
@@ -238,16 +238,16 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
public override int Read(byte[] buffer, int offset, int count)
{
if (buffer == null)
- throw new ArgumentNullException("buffer");
+ throw new ArgumentNullException(nameof(buffer));
if (offset + count < 0)
throw new ArgumentOutOfRangeException("offset + count must not be negative", "offset+count");
if (offset + count > buffer.Length)
- throw new ArgumentException("offset + count must not be greater than the length of buffer", "offset+count");
+ throw new ArgumentException("offset + count must not be greater than the length of buffer");
if (disposed)
- throw new ObjectDisposedException(typeof(UdpClientStream).ToString());
+ throw new ObjectDisposedException(nameof(UdpClientStream));
// This will always receive a 1328 packet size (PacketSize + RtpHeaderSize)
// The RTP header will be stripped so see how many reads we need to make to fill the buffer.
@@ -274,49 +274,19 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts.HdHomerun
disposed = true;
}
- public override bool CanRead
- {
- get
- {
- throw new NotImplementedException();
- }
- }
+ public override bool CanRead => throw new NotImplementedException();
- public override bool CanSeek
- {
- get
- {
- throw new NotImplementedException();
- }
- }
+ public override bool CanSeek => throw new NotImplementedException();
- public override bool CanWrite
- {
- get
- {
- throw new NotImplementedException();
- }
- }
+ public override bool CanWrite => throw new NotImplementedException();
- 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 void Flush()
diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs
index 4a2b4ebb2..b55b02ddc 100644
--- a/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs
+++ b/Emby.Server.Implementations/LiveTv/TunerHosts/LiveStream.cs
@@ -217,13 +217,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts
}
}
- protected virtual int EmptyReadLimit
- {
- get
- {
- return 1000;
- }
- }
+ protected virtual int EmptyReadLimit => 1000;
private void TrySeek(FileStream stream, long offset)
{
diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/M3UTunerHost.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/M3UTunerHost.cs
index a54bd1613..ab8731c39 100644
--- a/Emby.Server.Implementations/LiveTv/TunerHosts/M3UTunerHost.cs
+++ b/Emby.Server.Implementations/LiveTv/TunerHosts/M3UTunerHost.cs
@@ -39,15 +39,9 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts
_mediaSourceManager = mediaSourceManager;
}
- public override string Type
- {
- get { return "m3u"; }
- }
+ public override string Type => "m3u";
- public virtual string Name
- {
- get { return "M3U Tuner"; }
- }
+ public virtual string Name => "M3U Tuner";
private string GetFullChannelIdPrefix(TunerHostInfo info)
{
diff --git a/Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs b/Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs
index 208225c1e..f83f95802 100644
--- a/Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs
+++ b/Emby.Server.Implementations/LiveTv/TunerHosts/M3uParser.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
@@ -251,7 +251,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts
return numberString;
}
- private bool IsValidChannelNumber(string numberString)
+ private static bool IsValidChannelNumber(string numberString)
{
if (string.IsNullOrWhiteSpace(numberString) ||
string.Equals(numberString, "-1", StringComparison.OrdinalIgnoreCase) ||
@@ -269,7 +269,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts
return true;
}
- private string GetChannelName(string extInf, Dictionary<string, string> attributes)
+ private static string GetChannelName(string extInf, Dictionary<string, string> attributes)
{
var nameParts = extInf.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
var nameInExtInf = nameParts.Length > 1 ? nameParts.Last().Trim() : null;
@@ -314,7 +314,7 @@ namespace Emby.Server.Implementations.LiveTv.TunerHosts
return name;
}
- private Dictionary<string, string> ParseExtInf(string line, out string remaining)
+ private static Dictionary<string, string> ParseExtInf(string line, out string remaining)
{
var dict = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
diff --git a/Emby.Server.Implementations/Localization/LocalizationManager.cs b/Emby.Server.Implementations/Localization/LocalizationManager.cs
index c6de9d957..a2c47cd79 100644
--- a/Emby.Server.Implementations/Localization/LocalizationManager.cs
+++ b/Emby.Server.Implementations/Localization/LocalizationManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Model.Extensions;
+using MediaBrowser.Model.Extensions;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Globalization;
@@ -165,13 +165,7 @@ namespace Emby.Server.Implementations.Localization
/// Gets the localization path.
/// </summary>
/// <value>The localization path.</value>
- public string LocalizationPath
- {
- get
- {
- return Path.Combine(_configurationManager.ApplicationPaths.ProgramDataPath, "localization");
- }
- }
+ public string LocalizationPath => Path.Combine(_configurationManager.ApplicationPaths.ProgramDataPath, "localization");
public string RemoveDiacritics(string text)
{
@@ -357,7 +351,7 @@ namespace Emby.Server.Implementations.Localization
{
if (string.IsNullOrEmpty(rating))
{
- throw new ArgumentNullException("rating");
+ throw new ArgumentNullException(nameof(rating));
}
if (_unratedValues.Contains(rating, StringComparer.OrdinalIgnoreCase))
@@ -452,7 +446,7 @@ namespace Emby.Server.Implementations.Localization
{
if (string.IsNullOrEmpty(culture))
{
- throw new ArgumentNullException("culture");
+ throw new ArgumentNullException(nameof(culture));
}
const string prefix = "Core";
@@ -465,7 +459,7 @@ namespace Emby.Server.Implementations.Localization
{
if (string.IsNullOrEmpty(culture))
{
- throw new ArgumentNullException("culture");
+ throw new ArgumentNullException(nameof(culture));
}
var dictionary = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
@@ -494,7 +488,7 @@ namespace Emby.Server.Implementations.Localization
}
}
- private string GetResourceFilename(string culture)
+ private static string GetResourceFilename(string culture)
{
var parts = culture.Split('-');
diff --git a/Emby.Server.Implementations/Localization/TextLocalizer.cs b/Emby.Server.Implementations/Localization/TextLocalizer.cs
index 3ea04265d..09445d428 100644
--- a/Emby.Server.Implementations/Localization/TextLocalizer.cs
+++ b/Emby.Server.Implementations/Localization/TextLocalizer.cs
@@ -12,13 +12,13 @@ namespace Emby.Server.Implementations.Localization
{
if (text == null)
{
- throw new ArgumentNullException("text");
+ throw new ArgumentNullException(nameof(text));
}
var chars = Normalize(text, NormalizationForm.FormD)
.Where(ch => CharUnicodeInfo.GetUnicodeCategory(ch) != UnicodeCategory.NonSpacingMark);
- return Normalize(String.Concat(chars), NormalizationForm.FormC);
+ return Normalize(string.Concat(chars), NormalizationForm.FormC);
}
private static string Normalize(string text, NormalizationForm form, bool stripStringOnFailure = true)
diff --git a/Emby.Server.Implementations/MediaEncoder/EncodingManager.cs b/Emby.Server.Implementations/MediaEncoder/EncodingManager.cs
index 792ffb3c4..2db7b01db 100644
--- a/Emby.Server.Implementations/MediaEncoder/EncodingManager.cs
+++ b/Emby.Server.Implementations/MediaEncoder/EncodingManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Chapters;
+using MediaBrowser.Controller.Chapters;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Movies;
using MediaBrowser.Controller.Entities.TV;
@@ -46,7 +46,7 @@ namespace Emby.Server.Implementations.MediaEncoder
/// Gets the chapter images data path.
/// </summary>
/// <value>The chapter images data path.</value>
- private string GetChapterImagesPath(BaseItem item)
+ private static string GetChapterImagesPath(BaseItem item)
{
return Path.Combine(item.GetInternalMetadataPath(), "chapters");
}
@@ -202,7 +202,7 @@ namespace Emby.Server.Implementations.MediaEncoder
return Path.Combine(GetChapterImagesPath(video), filename);
}
- private List<string> GetSavedChapterImages(Video video, IDirectoryService directoryService)
+ private static List<string> GetSavedChapterImages(Video video, IDirectoryService directoryService)
{
var path = GetChapterImagesPath(video);
diff --git a/Emby.Server.Implementations/Net/DisposableManagedObjectBase.cs b/Emby.Server.Implementations/Net/DisposableManagedObjectBase.cs
index b721e8a26..9d880b0c9 100644
--- a/Emby.Server.Implementations/Net/DisposableManagedObjectBase.cs
+++ b/Emby.Server.Implementations/Net/DisposableManagedObjectBase.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
namespace Emby.Server.Implementations.Net
{
@@ -16,15 +16,17 @@ namespace Emby.Server.Implementations.Net
/// <param name="disposing">True if managed objects should be disposed, if false, only unmanaged resources should be released.</param>
protected abstract void Dispose(bool disposing);
+
+ //TODO Remove and reimplement using the IsDisposed property directly.
/// <summary>
- /// Throws and <see cref="System.ObjectDisposedException"/> if the <see cref="IsDisposed"/> property is true.
+ /// Throws an <see cref="System.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>
/// <seealso cref="Dispose()"/>
protected virtual void ThrowIfDisposed()
{
- if (this.IsDisposed) throw new ObjectDisposedException(this.GetType().FullName);
+ if (IsDisposed) throw new ObjectDisposedException(GetType().Name);
}
#endregion
diff --git a/Emby.Server.Implementations/Net/SocketFactory.cs b/Emby.Server.Implementations/Net/SocketFactory.cs
index 515f99f3c..51d08bd6f 100644
--- a/Emby.Server.Implementations/Net/SocketFactory.cs
+++ b/Emby.Server.Implementations/Net/SocketFactory.cs
@@ -23,7 +23,7 @@ namespace Emby.Server.Implementations.Net
{
if (logger == null)
{
- throw new ArgumentNullException("logger");
+ throw new ArgumentNullException(nameof(logger));
}
_logger = logger;
@@ -31,7 +31,7 @@ namespace Emby.Server.Implementations.Net
public ISocket CreateTcpSocket(IpAddressInfo remoteAddress, int remotePort)
{
- if (remotePort < 0) throw new ArgumentException("remotePort cannot be less than zero.", "remotePort");
+ if (remotePort < 0) throw new ArgumentException("remotePort cannot be less than zero.", nameof(remotePort));
var addressFamily = remoteAddress.AddressFamily == IpAddressFamily.InterNetwork
? AddressFamily.InterNetwork
@@ -67,7 +67,7 @@ namespace Emby.Server.Implementations.Net
/// <param name="localPort">An integer specifying the local port to bind the acceptSocket to.</param>
public ISocket CreateUdpSocket(int localPort)
{
- if (localPort < 0) throw new ArgumentException("localPort cannot be less than zero.", "localPort");
+ if (localPort < 0) throw new ArgumentException("localPort cannot be less than zero.", nameof(localPort));
var retVal = new Socket(AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Dgram, System.Net.Sockets.ProtocolType.Udp);
try
@@ -86,7 +86,7 @@ namespace Emby.Server.Implementations.Net
public ISocket CreateUdpBroadcastSocket(int localPort)
{
- if (localPort < 0) throw new ArgumentException("localPort cannot be less than zero.", "localPort");
+ if (localPort < 0) throw new ArgumentException("localPort cannot be less than zero.", nameof(localPort));
var retVal = new Socket(AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Dgram, System.Net.Sockets.ProtocolType.Udp);
try
@@ -111,7 +111,7 @@ namespace Emby.Server.Implementations.Net
/// <returns>An implementation of the <see cref="ISocket"/> interface used by RSSDP components to perform acceptSocket operations.</returns>
public ISocket CreateSsdpUdpSocket(IpAddressInfo localIpAddress, int localPort)
{
- if (localPort < 0) throw new ArgumentException("localPort cannot be less than zero.", "localPort");
+ if (localPort < 0) throw new ArgumentException("localPort cannot be less than zero.", nameof(localPort));
var retVal = new Socket(AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Dgram, System.Net.Sockets.ProtocolType.Udp);
try
@@ -142,10 +142,10 @@ namespace Emby.Server.Implementations.Net
/// <returns></returns>
public ISocket CreateUdpMulticastSocket(string ipAddress, int multicastTimeToLive, int localPort)
{
- if (ipAddress == null) throw new ArgumentNullException("ipAddress");
- if (ipAddress.Length == 0) throw new ArgumentException("ipAddress cannot be an empty string.", "ipAddress");
- if (multicastTimeToLive <= 0) throw new ArgumentException("multicastTimeToLive cannot be zero or less.", "multicastTimeToLive");
- if (localPort < 0) throw new ArgumentException("localPort cannot be less than zero.", "localPort");
+ if (ipAddress == null) throw new ArgumentNullException(nameof(ipAddress));
+ if (ipAddress.Length == 0) throw new ArgumentException("ipAddress cannot be an empty string.", nameof(ipAddress));
+ if (multicastTimeToLive <= 0) throw new ArgumentException("multicastTimeToLive cannot be zero or less.", nameof(multicastTimeToLive));
+ if (localPort < 0) throw new ArgumentException("localPort cannot be less than zero.", nameof(localPort));
var retVal = new Socket(AddressFamily.InterNetwork, System.Net.Sockets.SocketType.Dgram, System.Net.Sockets.ProtocolType.Udp);
@@ -212,26 +212,18 @@ namespace Emby.Server.Implementations.Net
{
}
- 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/Emby.Server.Implementations/Net/UdpSocket.cs b/Emby.Server.Implementations/Net/UdpSocket.cs
index 8d5b671f2..39f25e024 100644
--- a/Emby.Server.Implementations/Net/UdpSocket.cs
+++ b/Emby.Server.Implementations/Net/UdpSocket.cs
@@ -16,10 +16,7 @@ namespace Emby.Server.Implementations.Net
private Socket _Socket;
private int _LocalPort;
- public Socket Socket
- {
- get { return _Socket; }
- }
+ public Socket Socket => _Socket;
private readonly SocketAsyncEventArgs _receiveSocketAsyncEventArgs = new SocketAsyncEventArgs()
{
@@ -36,7 +33,7 @@ namespace Emby.Server.Implementations.Net
public UdpSocket(Socket socket, int localPort, IPAddress ip)
{
- if (socket == null) throw new ArgumentNullException("socket");
+ if (socket == null) throw new ArgumentNullException(nameof(socket));
_Socket = socket;
_LocalPort = localPort;
@@ -102,7 +99,7 @@ namespace Emby.Server.Implementations.Net
public UdpSocket(Socket socket, IpEndPointInfo endPoint)
{
- if (socket == null) throw new ArgumentNullException("socket");
+ if (socket == null) throw new ArgumentNullException(nameof(socket));
_Socket = socket;
_Socket.Connect(NetworkManager.ToIPEndPoint(endPoint));
diff --git a/Emby.Server.Implementations/Networking/IPNetwork/IPAddressCollection.cs b/Emby.Server.Implementations/Networking/IPNetwork/IPAddressCollection.cs
index 2b31a0a32..7fe6a8d3d 100644
--- a/Emby.Server.Implementations/Networking/IPNetwork/IPAddressCollection.cs
+++ b/Emby.Server.Implementations/Networking/IPNetwork/IPAddressCollection.cs
@@ -19,13 +19,7 @@ namespace System.Net
#region Count, Array, Enumerator
- public BigInteger Count
- {
- get
- {
- return this._ipnetwork.Total;
- }
- }
+ public BigInteger Count => this._ipnetwork.Total;
public IPAddress this[BigInteger i]
{
@@ -33,7 +27,7 @@ namespace System.Net
{
if (i >= this.Count)
{
- throw new ArgumentOutOfRangeException("i");
+ throw new ArgumentOutOfRangeException(nameof(i));
}
byte width = this._ipnetwork.AddressFamily == Sockets.AddressFamily.InterNetwork ? (byte)32 : (byte)128;
IPNetworkCollection ipn = this._ipnetwork.Subnet(width);
@@ -57,10 +51,7 @@ namespace System.Net
#region IEnumerator<IPNetwork> Members
- public IPAddress Current
- {
- get { return this[this._enumerator]; }
- }
+ public IPAddress Current => this[this._enumerator];
#endregion
@@ -76,10 +67,7 @@ namespace System.Net
#region IEnumerator Members
- object IEnumerator.Current
- {
- get { return this.Current; }
- }
+ object IEnumerator.Current => this.Current;
public bool MoveNext()
{
diff --git a/Emby.Server.Implementations/Networking/IPNetwork/IPNetwork.cs b/Emby.Server.Implementations/Networking/IPNetwork/IPNetwork.cs
index da858e44e..9a0020de7 100644
--- a/Emby.Server.Implementations/Networking/IPNetwork/IPNetwork.cs
+++ b/Emby.Server.Implementations/Networking/IPNetwork/IPNetwork.cs
@@ -41,44 +41,19 @@ namespace System.Net
/// <summary>
/// Network address
/// </summary>
- public IPAddress Network
- {
- get
- {
-
- return IPNetwork.ToIPAddress(this._network, this._family);
- }
- }
+ public IPAddress Network => IPNetwork.ToIPAddress(this._network, this._family);
/// <summary>
/// Address Family
/// </summary>
- public AddressFamily AddressFamily
- {
- get
- {
- return this._family;
- }
- }
+ public AddressFamily AddressFamily => this._family;
- private BigInteger _netmask
- {
- get
- {
- return IPNetwork.ToUint(this._cidr, this._family);
- }
- }
+ private BigInteger _netmask => IPNetwork.ToUint(this._cidr, this._family);
/// <summary>
/// Netmask
/// </summary>
- public IPAddress Netmask
- {
- get
- {
- return IPNetwork.ToIPAddress(this._netmask, this._family);
- }
- }
+ public IPAddress Netmask => IPNetwork.ToIPAddress(this._netmask, this._family);
private BigInteger _broadcast
{
@@ -171,13 +146,7 @@ namespace System.Net
/// <summary>
/// The CIDR netmask notation
/// </summary>
- public byte Cidr
- {
- get
- {
- return this._cidr;
- }
- }
+ public byte Cidr => this._cidr;
#endregion
@@ -195,7 +164,7 @@ namespace System.Net
int maxCidr = family == Sockets.AddressFamily.InterNetwork ? 32 : 128;
if (cidr > maxCidr)
{
- throw new ArgumentOutOfRangeException("cidr");
+ throw new ArgumentOutOfRangeException(nameof(cidr));
}
this._ipaddress = ipaddress;
@@ -427,7 +396,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentNullException("ipaddress");
+ throw new ArgumentNullException(nameof(ipaddress));
}
ipnetwork = null;
return;
@@ -437,7 +406,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentNullException("netmask");
+ throw new ArgumentNullException(nameof(netmask));
}
ipnetwork = null;
return;
@@ -477,7 +446,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentNullException("network");
+ throw new ArgumentNullException(nameof(network));
}
ipnetwork = null;
return;
@@ -538,7 +507,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentNullException("ipaddress");
+ throw new ArgumentNullException(nameof(ipaddress));
}
ipnetwork = null;
return;
@@ -548,7 +517,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentNullException("netmask");
+ throw new ArgumentNullException(nameof(netmask));
}
ipnetwork = null;
return;
@@ -596,7 +565,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentNullException("ipaddress");
+ throw new ArgumentNullException(nameof(ipaddress));
}
ipnetwork = null;
return;
@@ -680,7 +649,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentNullException("ipaddress");
+ throw new ArgumentNullException(nameof(ipaddress));
}
uintIpAddress = null;
return;
@@ -751,7 +720,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentOutOfRangeException("cidr");
+ throw new ArgumentOutOfRangeException(nameof(cidr));
}
uintNetmask = null;
return;
@@ -761,7 +730,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentOutOfRangeException("cidr");
+ throw new ArgumentOutOfRangeException(nameof(cidr));
}
uintNetmask = null;
return;
@@ -872,7 +841,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentNullException("netmask");
+ throw new ArgumentNullException(nameof(netmask));
}
cidr = null;
return;
@@ -976,7 +945,7 @@ namespace System.Net
{
if (tryParse == false)
{
- throw new ArgumentOutOfRangeException("cidr");
+ throw new ArgumentOutOfRangeException(nameof(cidr));
}
netmask = null;
return;
@@ -1042,7 +1011,7 @@ namespace System.Net
if (netmask == null)
{
- throw new ArgumentNullException("netmask");
+ throw new ArgumentNullException(nameof(netmask));
}
BigInteger uintNetmask = IPNetwork.ToBigInteger(netmask);
bool valid = IPNetwork.InternalValidNetmask(uintNetmask, netmask.AddressFamily);
@@ -1145,7 +1114,7 @@ namespace System.Net
if (ipaddress == null)
{
- throw new ArgumentNullException("ipaddress");
+ throw new ArgumentNullException(nameof(ipaddress));
}
if (AddressFamily != ipaddress.AddressFamily)
@@ -1174,7 +1143,7 @@ namespace System.Net
if (network2 == null)
{
- throw new ArgumentNullException("network2");
+ throw new ArgumentNullException(nameof(network2));
}
BigInteger uintNetwork = _network;
@@ -1203,7 +1172,7 @@ namespace System.Net
if (network2 == null)
{
- throw new ArgumentNullException("network2");
+ throw new ArgumentNullException(nameof(network2));
}
BigInteger uintNetwork = _network;
@@ -1242,37 +1211,19 @@ namespace System.Net
/// 10.0.0.0/8
/// </summary>
/// <returns></returns>
- public static IPNetwork IANA_ABLK_RESERVED1
- {
- get
- {
- return _iana_ablock_reserved.Value;
- }
- }
+ public static IPNetwork IANA_ABLK_RESERVED1 => _iana_ablock_reserved.Value;
/// <summary>
/// 172.12.0.0/12
/// </summary>
/// <returns></returns>
- public static IPNetwork IANA_BBLK_RESERVED1
- {
- get
- {
- return _iana_bblock_reserved.Value;
- }
- }
+ public static IPNetwork IANA_BBLK_RESERVED1 => _iana_bblock_reserved.Value;
/// <summary>
/// 192.168.0.0/16
/// </summary>
/// <returns></returns>
- public static IPNetwork IANA_CBLK_RESERVED1
- {
- get
- {
- return _iana_cblock_reserved.Value;
- }
- }
+ public static IPNetwork IANA_CBLK_RESERVED1 => _iana_cblock_reserved.Value;
/// <summary>
/// return true if ipaddress is contained in
@@ -1285,7 +1236,7 @@ namespace System.Net
if (ipaddress == null)
{
- throw new ArgumentNullException("ipaddress");
+ throw new ArgumentNullException(nameof(ipaddress));
}
return IPNetwork.IANA_ABLK_RESERVED1.Contains(ipaddress)
@@ -1356,7 +1307,7 @@ namespace System.Net
{
if (trySubnet == false)
{
- throw new ArgumentNullException("network");
+ throw new ArgumentNullException(nameof(network));
}
ipnetworkCollection = null;
return;
@@ -1367,7 +1318,7 @@ namespace System.Net
{
if (trySubnet == false)
{
- throw new ArgumentOutOfRangeException("cidr");
+ throw new ArgumentOutOfRangeException(nameof(cidr));
}
ipnetworkCollection = null;
return;
@@ -1438,7 +1389,7 @@ namespace System.Net
{
if (trySupernet == false)
{
- throw new ArgumentNullException("network1");
+ throw new ArgumentNullException(nameof(network1));
}
supernet = null;
return;
@@ -1448,7 +1399,7 @@ namespace System.Net
{
if (trySupernet == false)
{
- throw new ArgumentNullException("network2");
+ throw new ArgumentNullException(nameof(network2));
}
supernet = null;
return;
@@ -1492,7 +1443,7 @@ namespace System.Net
{
if (trySupernet == false)
{
- throw new ArgumentOutOfRangeException("network");
+ throw new ArgumentOutOfRangeException(nameof(trySupernet), "TrySupernet was false while the first and last networks are not adjacent.");
}
supernet = null;
return;
@@ -1536,8 +1487,7 @@ namespace System.Net
/// 192.168.0.0/24 + 192.168.1.0/24 = 192.168.0.0/23
/// 192.168.0.0/24 + 192.168.1.0/24 + 192.168.2.0/24 + 192.168.3.0/24 = 192.168.0.0/22
/// </summary>
- /// <param name="ipnetworks"></param>
- /// <param name="supernet"></param>
+ /// <param name="ipnetworks">The IP networks</param>
/// <returns></returns>
public static IPNetwork[] Supernet(IPNetwork[] ipnetworks)
{
@@ -1573,7 +1523,7 @@ namespace System.Net
{
if (trySupernet == false)
{
- throw new ArgumentNullException("ipnetworks");
+ throw new ArgumentNullException(nameof(ipnetworks));
}
supernet = null;
return false;
@@ -1684,12 +1634,12 @@ namespace System.Net
if (string.IsNullOrEmpty(start))
{
- throw new ArgumentNullException("start");
+ throw new ArgumentNullException(nameof(start));
}
if (string.IsNullOrEmpty(end))
{
- throw new ArgumentNullException("end");
+ throw new ArgumentNullException(nameof(end));
}
IPAddress startIP;
@@ -1750,7 +1700,7 @@ namespace System.Net
{
if (tryWide == false)
{
- throw new ArgumentNullException("ipnetworks");
+ throw new ArgumentNullException(nameof(ipnetworks));
}
ipnetwork = null;
return;
@@ -1973,7 +1923,7 @@ namespace System.Net
#region IComparable<IPNetwork> Members
- public static Int32 Compare(IPNetwork left, IPNetwork right)
+ public static int Compare(IPNetwork left, IPNetwork right)
{
// two null IPNetworks are equal
if (ReferenceEquals(left, null) && ReferenceEquals(right, null)) return 0;
@@ -1994,12 +1944,12 @@ namespace System.Net
return result;
}
- public Int32 CompareTo(IPNetwork other)
+ public int CompareTo(IPNetwork other)
{
return Compare(this, other);
}
- public Int32 CompareTo(Object obj)
+ public int CompareTo(object obj)
{
// null is at less
if (obj == null) return 1;
@@ -2012,7 +1962,7 @@ namespace System.Net
{
throw new ArgumentException(
"The supplied parameter is an invalid type. Please supply an IPNetwork type.",
- "obj");
+ nameof(obj));
}
// perform the comparision
@@ -2023,17 +1973,17 @@ namespace System.Net
#region IEquatable<IPNetwork> Members
- public static Boolean Equals(IPNetwork left, IPNetwork right)
+ public static bool Equals(IPNetwork left, IPNetwork right)
{
return Compare(left, right) == 0;
}
- public Boolean Equals(IPNetwork other)
+ public bool Equals(IPNetwork other)
{
return Equals(this, other);
}
- public override Boolean Equals(Object obj)
+ public override bool Equals(object obj)
{
return Equals(this, obj as IPNetwork);
}
@@ -2042,22 +1992,22 @@ namespace System.Net
#region Operators
- public static Boolean operator ==(IPNetwork left, IPNetwork right)
+ public static bool operator ==(IPNetwork left, IPNetwork right)
{
return Equals(left, right);
}
- public static Boolean operator !=(IPNetwork left, IPNetwork right)
+ public static bool operator !=(IPNetwork left, IPNetwork right)
{
return !Equals(left, right);
}
- public static Boolean operator <(IPNetwork left, IPNetwork right)
+ public static bool operator <(IPNetwork left, IPNetwork right)
{
return Compare(left, right) < 0;
}
- public static Boolean operator >(IPNetwork left, IPNetwork right)
+ public static bool operator >(IPNetwork left, IPNetwork right)
{
return Compare(left, right) > 0;
}
diff --git a/Emby.Server.Implementations/Networking/IPNetwork/IPNetworkCollection.cs b/Emby.Server.Implementations/Networking/IPNetwork/IPNetworkCollection.cs
index 35cff88dc..48d404124 100644
--- a/Emby.Server.Implementations/Networking/IPNetwork/IPNetworkCollection.cs
+++ b/Emby.Server.Implementations/Networking/IPNetwork/IPNetworkCollection.cs
@@ -11,22 +11,12 @@ namespace System.Net
private byte _cidrSubnet;
private IPNetwork _ipnetwork;
- private byte _cidr
- {
- get { return this._ipnetwork.Cidr; }
- }
- private BigInteger _broadcast
- {
- get { return IPNetwork.ToBigInteger(this._ipnetwork.Broadcast); }
- }
- private BigInteger _lastUsable
- {
- get { return IPNetwork.ToBigInteger(this._ipnetwork.LastUsable); }
- }
- private BigInteger _network
- {
- get { return IPNetwork.ToBigInteger(this._ipnetwork.Network); }
- }
+ private byte _cidr => this._ipnetwork.Cidr;
+
+ private BigInteger _broadcast => IPNetwork.ToBigInteger(this._ipnetwork.Broadcast);
+
+ private BigInteger _lastUsable => IPNetwork.ToBigInteger(this._ipnetwork.LastUsable);
+ private BigInteger _network => IPNetwork.ToBigInteger(this._ipnetwork.Network);
#if TRAVISCI
public
#else
@@ -38,7 +28,7 @@ namespace System.Net
int maxCidr = ipnetwork.AddressFamily == Sockets.AddressFamily.InterNetwork ? 32 : 128;
if (cidrSubnet > maxCidr)
{
- throw new ArgumentOutOfRangeException("cidrSubnet");
+ throw new ArgumentOutOfRangeException(nameof(cidrSubnet));
}
if (cidrSubnet < ipnetwork.Cidr)
@@ -68,7 +58,7 @@ namespace System.Net
{
if (i >= this.Count)
{
- throw new ArgumentOutOfRangeException("i");
+ throw new ArgumentOutOfRangeException(nameof(i));
}
BigInteger last = this._ipnetwork.AddressFamily == Sockets.AddressFamily.InterNetworkV6
@@ -96,10 +86,7 @@ namespace System.Net
#region IEnumerator<IPNetwork> Members
- public IPNetwork Current
- {
- get { return this[this._enumerator]; }
- }
+ public IPNetwork Current => this[this._enumerator];
#endregion
@@ -115,10 +102,7 @@ namespace System.Net
#region IEnumerator Members
- object IEnumerator.Current
- {
- get { return this.Current; }
- }
+ object IEnumerator.Current => this.Current;
public bool MoveNext()
{
diff --git a/Emby.Server.Implementations/Networking/NetworkManager.cs b/Emby.Server.Implementations/Networking/NetworkManager.cs
index 260d20e35..dbf89d7e1 100644
--- a/Emby.Server.Implementations/Networking/NetworkManager.cs
+++ b/Emby.Server.Implementations/Networking/NetworkManager.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
@@ -114,7 +114,7 @@ namespace Emby.Server.Implementations.Networking
.ToList();
}
- private bool FilterIpAddress(IPAddress address)
+ private static bool FilterIpAddress(IPAddress address)
{
var addressString = address.ToString();
@@ -228,7 +228,7 @@ namespace Emby.Server.Implementations.Networking
subnet_Test++;
}
- var subnet_Match = String.Join(".", unicastIPAddressInformation.Address.ToString().Split('.').Take(subnet_Test).ToArray());
+ var subnet_Match = string.Join(".", unicastIPAddressInformation.Address.ToString().Split('.').Take(subnet_Test).ToArray());
// TODO: Is this check necessary?
if (adapter.OperationalStatus == OperationalStatus.Up)
@@ -245,7 +245,7 @@ namespace Emby.Server.Implementations.Networking
}
}
- private bool Is172AddressPrivate(string endpoint)
+ private static bool Is172AddressPrivate(string endpoint)
{
for (var i = 16; i <= 31; i++)
{
@@ -268,7 +268,7 @@ namespace Emby.Server.Implementations.Networking
return IsAddressInSubnets(IPAddress.Parse(addressString), addressString, subnets);
}
- private bool IsAddressInSubnets(IPAddress address, string addressString, string[] subnets)
+ private static bool IsAddressInSubnets(IPAddress address, string addressString, string[] subnets)
{
foreach (var subnet in subnets)
{
@@ -296,7 +296,7 @@ namespace Emby.Server.Implementations.Networking
{
if (string.IsNullOrEmpty(endpoint))
{
- throw new ArgumentNullException("endpoint");
+ throw new ArgumentNullException(nameof(endpoint));
}
IPAddress address;
@@ -380,7 +380,7 @@ namespace Emby.Server.Implementations.Networking
return false;
}
- private Task<IPAddress[]> GetIpAddresses(string hostName)
+ private static Task<IPAddress[]> GetIpAddresses(string hostName)
{
return Dns.GetHostAddressesAsync(hostName);
}
@@ -436,7 +436,7 @@ namespace Emby.Server.Implementations.Networking
.ToList();
}
- private async Task<IEnumerable<IPAddress>> GetLocalIpAddressesFallback()
+ private static async Task<IEnumerable<IPAddress>> GetLocalIpAddressesFallback()
{
var host = await Dns.GetHostEntryAsync(Dns.GetHostName()).ConfigureAwait(false);
@@ -480,7 +480,7 @@ namespace Emby.Server.Implementations.Networking
return _macAddresses;
}
- private List<string> GetMacAddressesInternal()
+ private static List<string> GetMacAddressesInternal()
{
return NetworkInterface.GetAllNetworkInterfaces()
.Where(i => i.NetworkInterfaceType != NetworkInterfaceType.Loopback)
@@ -497,8 +497,9 @@ namespace Emby.Server.Implementations.Networking
return physicalAddress.ToString();
}
- catch (Exception ex)
+ catch (Exception)
{
+ //TODO Log exception.
return null;
}
})
@@ -526,7 +527,7 @@ namespace Emby.Server.Implementations.Networking
/// <exception cref="System.FormatException"></exception>
private static async Task<IPEndPoint> Parse(string endpointstring, int defaultport)
{
- if (String.IsNullOrEmpty(endpointstring)
+ if (string.IsNullOrEmpty(endpointstring)
|| endpointstring.Trim().Length == 0)
{
throw new ArgumentException("Endpoint descriptor may not be empty.");
@@ -536,7 +537,7 @@ namespace Emby.Server.Implementations.Networking
(defaultport < IPEndPoint.MinPort
|| defaultport > IPEndPoint.MaxPort))
{
- throw new ArgumentException(String.Format("Invalid default port '{0}'", defaultport));
+ throw new ArgumentException(string.Format("Invalid default port '{0}'", defaultport));
}
string[] values = endpointstring.Split(new char[] { ':' });
@@ -557,7 +558,7 @@ namespace Emby.Server.Implementations.Networking
//could [a:b:c]:d
if (values[0].StartsWith("[") && values[values.Length - 2].EndsWith("]"))
{
- string ipaddressstring = String.Join(":", values.Take(values.Length - 1).ToArray());
+ string ipaddressstring = string.Join(":", values.Take(values.Length - 1).ToArray());
ipaddy = IPAddress.Parse(ipaddressstring);
port = GetPort(values[values.Length - 1]);
}
@@ -569,11 +570,11 @@ namespace Emby.Server.Implementations.Networking
}
else
{
- throw new FormatException(String.Format("Invalid endpoint ipaddress '{0}'", endpointstring));
+ throw new FormatException(string.Format("Invalid endpoint ipaddress '{0}'", endpointstring));
}
if (port == -1)
- throw new ArgumentException(String.Format("No port specified: '{0}'", endpointstring));
+ throw new ArgumentException(string.Format("No port specified: '{0}'", endpointstring));
return new IPEndPoint(ipaddy, port);
}
@@ -590,11 +591,11 @@ namespace Emby.Server.Implementations.Networking
{
int port;
- if (!Int32.TryParse(p, out port)
+ if (!int.TryParse(p, out port)
|| port < IPEndPoint.MinPort
|| port > IPEndPoint.MaxPort)
{
- throw new FormatException(String.Format("Invalid end point port '{0}'", p));
+ throw new FormatException(string.Format("Invalid end point port '{0}'", p));
}
return port;
@@ -611,7 +612,7 @@ namespace Emby.Server.Implementations.Networking
var hosts = await Dns.GetHostAddressesAsync(p).ConfigureAwait(false);
if (hosts == null || hosts.Length == 0)
- throw new ArgumentException(String.Format("Host not found: {0}", p));
+ throw new ArgumentException(string.Format("Host not found: {0}", p));
return hosts[0];
}
diff --git a/Emby.Server.Implementations/Playlists/ManualPlaylistsFolder.cs b/Emby.Server.Implementations/Playlists/ManualPlaylistsFolder.cs
index 908fa65de..f2bc4c07d 100644
--- a/Emby.Server.Implementations/Playlists/ManualPlaylistsFolder.cs
+++ b/Emby.Server.Implementations/Playlists/ManualPlaylistsFolder.cs
@@ -25,28 +25,13 @@ namespace Emby.Server.Implementations.Playlists
}
[IgnoreDataMember]
- public override bool IsHidden
- {
- get
- {
- return true;
- }
- }
+ public override bool IsHidden => true;
[IgnoreDataMember]
- public override bool SupportsInheritedParentImages
- {
- get
- {
- return false;
- }
- }
+ public override bool SupportsInheritedParentImages => false;
[IgnoreDataMember]
- public override string CollectionType
- {
- get { return MediaBrowser.Model.Entities.CollectionType.Playlists; }
- }
+ public override string CollectionType => MediaBrowser.Model.Entities.CollectionType.Playlists;
protected override QueryResult<BaseItem> GetItemsInternal(InternalItemsQuery query)
{
diff --git a/Emby.Server.Implementations/Playlists/PlaylistManager.cs b/Emby.Server.Implementations/Playlists/PlaylistManager.cs
index 470711b9e..38fbac030 100644
--- a/Emby.Server.Implementations/Playlists/PlaylistManager.cs
+++ b/Emby.Server.Implementations/Playlists/PlaylistManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.Playlists;
@@ -455,10 +455,17 @@ namespace Emby.Server.Implementations.Playlists
return MakeRelativePath(_fileSystem.GetDirectoryName(playlistPath), itemPath);
}
- private static String MakeRelativePath(string folderPath, string fileAbsolutePath)
+ private static string MakeRelativePath(string folderPath, string fileAbsolutePath)
{
- if (String.IsNullOrEmpty(folderPath)) throw new ArgumentNullException("folderPath");
- if (String.IsNullOrEmpty(fileAbsolutePath)) throw new ArgumentNullException("filePath");
+ if (string.IsNullOrEmpty(folderPath))
+ {
+ throw new ArgumentException("Folder path was null or empty.", nameof(folderPath));
+ }
+
+ if (string.IsNullOrEmpty(fileAbsolutePath))
+ {
+ throw new ArgumentException("File absolute path was null or empty.", nameof(fileAbsolutePath));
+ }
if (!folderPath.EndsWith(Path.DirectorySeparatorChar.ToString()))
{
@@ -471,7 +478,7 @@ namespace Emby.Server.Implementations.Playlists
if (folderUri.Scheme != fileAbsoluteUri.Scheme) { return fileAbsolutePath; } // path can't be made relative.
Uri relativeUri = folderUri.MakeRelativeUri(fileAbsoluteUri);
- String relativePath = Uri.UnescapeDataString(relativeUri.ToString());
+ string relativePath = Uri.UnescapeDataString(relativeUri.ToString());
if (fileAbsoluteUri.Scheme.Equals("file", StringComparison.CurrentCultureIgnoreCase))
{
diff --git a/Emby.Server.Implementations/Properties/AssemblyInfo.cs b/Emby.Server.Implementations/Properties/AssemblyInfo.cs
index 5987db0eb..9484e2d43 100644
--- a/Emby.Server.Implementations/Properties/AssemblyInfo.cs
+++ b/Emby.Server.Implementations/Properties/AssemblyInfo.cs
@@ -1,6 +1,5 @@
-using System.Resources;
using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -9,20 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("Emby.Server.Implementations")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Emby.Server.Implementations")]
-[assembly: AssemblyCopyright("Copyright © 2016")]
+[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")]
-// 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.*")] \ No newline at end of file
+// 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.Server.Implementations/ScheduledTasks/ChapterImagesTask.cs b/Emby.Server.Implementations/ScheduledTasks/ChapterImagesTask.cs
index 09dcc320a..904e93c56 100644
--- a/Emby.Server.Implementations/ScheduledTasks/ChapterImagesTask.cs
+++ b/Emby.Server.Implementations/ScheduledTasks/ChapterImagesTask.cs
@@ -70,10 +70,7 @@ namespace Emby.Server.Implementations.ScheduledTasks
};
}
- public string Key
- {
- get { return "RefreshChapterImages"; }
- }
+ public string Key => "RefreshChapterImages";
/// <summary>
/// Returns the task to be executed
@@ -156,6 +153,7 @@ namespace Emby.Server.Implementations.ScheduledTasks
}
catch (ObjectDisposedException)
{
+ //TODO Investigate and properly fix.
break;
}
}
@@ -165,33 +163,18 @@ namespace Emby.Server.Implementations.ScheduledTasks
/// Gets the name of the task
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get
- {
- return "Chapter image extraction";
- }
- }
+ public string Name => "Chapter image extraction";
/// <summary>
/// Gets the description.
/// </summary>
/// <value>The description.</value>
- public string Description
- {
- get { return "Creates thumbnails for videos that have chapters."; }
- }
+ public string Description => "Creates thumbnails for videos that have chapters.";
/// <summary>
/// Gets the category.
/// </summary>
/// <value>The category.</value>
- public string Category
- {
- get
- {
- return "Library";
- }
- }
+ public string Category => "Library";
}
}
diff --git a/Emby.Server.Implementations/ScheduledTasks/PeopleValidationTask.cs b/Emby.Server.Implementations/ScheduledTasks/PeopleValidationTask.cs
index db81243e0..366ad889c 100644
--- a/Emby.Server.Implementations/ScheduledTasks/PeopleValidationTask.cs
+++ b/Emby.Server.Implementations/ScheduledTasks/PeopleValidationTask.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Library;
+using MediaBrowser.Controller.Library;
using System;
using System.Collections.Generic;
using System.Threading;
@@ -24,6 +24,7 @@ namespace Emby.Server.Implementations.ScheduledTasks
/// Initializes a new instance of the <see cref="PeopleValidationTask" /> class.
/// </summary>
/// <param name="libraryManager">The library manager.</param>
+ /// <param name="appHost">The server application host</param>
public PeopleValidationTask(ILibraryManager libraryManager, IServerApplicationHost appHost)
{
_libraryManager = libraryManager;
@@ -46,10 +47,7 @@ namespace Emby.Server.Implementations.ScheduledTasks
};
}
- public string Key
- {
- get { return "RefreshPeople"; }
- }
+ public string Key => "RefreshPeople";
/// <summary>
/// Returns the task to be executed
@@ -66,30 +64,18 @@ namespace Emby.Server.Implementations.ScheduledTasks
/// Gets the name of the task
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return "Refresh people"; }
- }
+ public string Name => "Refresh people";
/// <summary>
/// Gets the description.
/// </summary>
/// <value>The description.</value>
- public string Description
- {
- get { return "Updates metadata for actors and directors in your media library."; }
- }
+ public string Description => "Updates metadata for actors and directors in your media library.";
/// <summary>
/// Gets the category.
/// </summary>
/// <value>The category.</value>
- public string Category
- {
- get
- {
- return "Library";
- }
- }
+ public string Category => "Library";
}
}
diff --git a/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs b/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs
index c58af68c8..bd49277ad 100644
--- a/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs
+++ b/Emby.Server.Implementations/ScheduledTasks/RefreshMediaLibraryTask.cs
@@ -62,35 +62,20 @@ namespace Emby.Server.Implementations.ScheduledTasks
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return "Scan media library"; }
- }
+ public string Name => "Scan media library";
/// <summary>
/// Gets the description.
/// </summary>
/// <value>The description.</value>
- public string Description
- {
- get { return "Scans your media library and refreshes metatata based on configuration."; }
- }
+ public string Description => "Scans your media library and refreshes metatata based on configuration.";
/// <summary>
/// Gets the category.
/// </summary>
/// <value>The category.</value>
- public string Category
- {
- get
- {
- return "Library";
- }
- }
+ public string Category => "Library";
- public string Key
- {
- get { return "RefreshLibrary"; }
- }
+ public string Key => "RefreshLibrary";
}
}
diff --git a/Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs b/Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs
index 0bebca8fc..ec54ce71a 100644
--- a/Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs
+++ b/Emby.Server.Implementations/ScheduledTasks/ScheduledTaskWorker.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
@@ -78,23 +78,23 @@ namespace Emby.Server.Implementations.ScheduledTasks
{
if (scheduledTask == null)
{
- throw new ArgumentNullException("scheduledTask");
+ throw new ArgumentNullException(nameof(scheduledTask));
}
if (applicationPaths == null)
{
- throw new ArgumentNullException("applicationPaths");
+ throw new ArgumentNullException(nameof(applicationPaths));
}
if (taskManager == null)
{
- throw new ArgumentNullException("taskManager");
+ throw new ArgumentNullException(nameof(taskManager));
}
if (jsonSerializer == null)
{
- throw new ArgumentNullException("jsonSerializer");
+ throw new ArgumentNullException(nameof(jsonSerializer));
}
if (logger == null)
{
- throw new ArgumentNullException("logger");
+ throw new ArgumentNullException(nameof(logger));
}
ScheduledTask = scheduledTask;
@@ -171,28 +171,19 @@ namespace Emby.Server.Implementations.ScheduledTasks
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ScheduledTask.Name; }
- }
+ public string Name => ScheduledTask.Name;
/// <summary>
/// Gets the description.
/// </summary>
/// <value>The description.</value>
- public string Description
- {
- get { return ScheduledTask.Description; }
- }
+ public string Description => ScheduledTask.Description;
/// <summary>
/// Gets the category.
/// </summary>
/// <value>The category.</value>
- public string Category
- {
- get { return ScheduledTask.Category; }
- }
+ public string Category => ScheduledTask.Category;
/// <summary>
/// Gets the current cancellation token
@@ -241,15 +232,12 @@ namespace Emby.Server.Implementations.ScheduledTasks
/// <value>The triggers.</value>
private Tuple<TaskTriggerInfo, ITaskTrigger>[] InternalTriggers
{
- get
- {
- return _triggers;
- }
+ get => _triggers;
set
{
if (value == null)
{
- throw new ArgumentNullException("value");
+ throw new ArgumentNullException(nameof(value));
}
// Cleanup current triggers
@@ -280,7 +268,7 @@ namespace Emby.Server.Implementations.ScheduledTasks
{
if (value == null)
{
- throw new ArgumentNullException("value");
+ throw new ArgumentNullException(nameof(value));
}
// This null check is not great, but is needed to handle bad user input, or user mucking with the config file incorrectly
@@ -730,7 +718,7 @@ namespace Emby.Server.Implementations.ScheduledTasks
{
if (!info.TimeOfDayTicks.HasValue)
{
- throw new ArgumentNullException();
+ throw new ArgumentException("Info did not contain a TimeOfDayTicks.",nameof(info));
}
return new DailyTrigger
@@ -744,12 +732,12 @@ namespace Emby.Server.Implementations.ScheduledTasks
{
if (!info.TimeOfDayTicks.HasValue)
{
- throw new ArgumentNullException();
+ throw new ArgumentException("Info did not contain a TimeOfDayTicks.", nameof(info));
}
if (!info.DayOfWeek.HasValue)
{
- throw new ArgumentNullException();
+ throw new ArgumentException("Info did not contain a DayOfWeek.", nameof(info));
}
return new WeeklyTrigger
@@ -764,7 +752,7 @@ namespace Emby.Server.Implementations.ScheduledTasks
{
if (!info.IntervalTicks.HasValue)
{
- throw new ArgumentNullException();
+ throw new ArgumentException("Info did not contain a IntervalTicks.", nameof(info));
}
return new IntervalTrigger
@@ -778,7 +766,7 @@ namespace Emby.Server.Implementations.ScheduledTasks
{
if (!info.SystemEvent.HasValue)
{
- throw new ArgumentNullException();
+ throw new ArgumentException("Info did not contain a SystemEvent.", nameof(info));
}
return new SystemEventTrigger(_systemEvents)
diff --git a/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs b/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs
index c6a807521..0716f8d30 100644
--- a/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs
+++ b/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteCacheFileTask.cs
@@ -162,54 +162,30 @@ namespace Emby.Server.Implementations.ScheduledTasks.Tasks
/// Gets the name of the task
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return "Cache file cleanup"; }
- }
+ public string Name => "Cache file cleanup";
- public string Key
- {
- get { return "DeleteCacheFiles"; }
- }
+ public string Key => "DeleteCacheFiles";
/// <summary>
/// Gets the description.
/// </summary>
/// <value>The description.</value>
- public string Description
- {
- get { return "Deletes cache files no longer needed by the system"; }
- }
+ public string Description => "Deletes cache files no longer needed by the system";
/// <summary>
/// Gets the category.
/// </summary>
/// <value>The category.</value>
- public string Category
- {
- get
- {
- return "Maintenance";
- }
- }
+ public string Category => "Maintenance";
/// <summary>
/// Gets a value indicating whether this instance is hidden.
/// </summary>
/// <value><c>true</c> if this instance is hidden; otherwise, <c>false</c>.</value>
- public bool IsHidden
- {
- get { return true; }
- }
+ public bool IsHidden => true;
- public bool IsEnabled
- {
- get { return true; }
- }
+ public bool IsEnabled => true;
- public bool IsLogged
- {
- get { return true; }
- }
+ public bool IsLogged => true;
}
}
diff --git a/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteLogFileTask.cs b/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteLogFileTask.cs
index b8994f471..fea18d9f0 100644
--- a/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteLogFileTask.cs
+++ b/Emby.Server.Implementations/ScheduledTasks/Tasks/DeleteLogFileTask.cs
@@ -81,58 +81,34 @@ namespace Emby.Server.Implementations.ScheduledTasks.Tasks
return Task.CompletedTask;
}
- public string Key
- {
- get { return "CleanLogFiles"; }
- }
+ public string Key => "CleanLogFiles";
/// <summary>
/// Gets the name of the task
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return "Log file cleanup"; }
- }
+ public string Name => "Log file cleanup";
/// <summary>
/// Gets the description.
/// </summary>
/// <value>The description.</value>
- public string Description
- {
- get { return string.Format("Deletes log files that are more than {0} days old.", ConfigurationManager.CommonConfiguration.LogFileRetentionDays); }
- }
+ public string Description => string.Format("Deletes log files that are more than {0} days old.", ConfigurationManager.CommonConfiguration.LogFileRetentionDays);
/// <summary>
/// Gets the category.
/// </summary>
/// <value>The category.</value>
- public string Category
- {
- get
- {
- return "Maintenance";
- }
- }
+ public string Category => "Maintenance";
/// <summary>
/// Gets a value indicating whether this instance is hidden.
/// </summary>
/// <value><c>true</c> if this instance is hidden; otherwise, <c>false</c>.</value>
- public bool IsHidden
- {
- get { return true; }
- }
+ public bool IsHidden => true;
- public bool IsEnabled
- {
- get { return true; }
- }
+ public bool IsEnabled => true;
- public bool IsLogged
- {
- get { return true; }
- }
+ public bool IsLogged => true;
}
}
diff --git a/Emby.Server.Implementations/Security/AuthenticationRepository.cs b/Emby.Server.Implementations/Security/AuthenticationRepository.cs
index 228d511ce..2a6406f25 100644
--- a/Emby.Server.Implementations/Security/AuthenticationRepository.cs
+++ b/Emby.Server.Implementations/Security/AuthenticationRepository.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
@@ -91,7 +91,7 @@ namespace Emby.Server.Implementations.Security
{
if (info == null)
{
- throw new ArgumentNullException("info");
+ throw new ArgumentNullException(nameof(info));
}
using (WriteLock.Write())
@@ -126,7 +126,7 @@ namespace Emby.Server.Implementations.Security
{
if (info == null)
{
- throw new ArgumentNullException("entry");
+ throw new ArgumentNullException(nameof(info));
}
using (WriteLock.Write())
@@ -161,7 +161,7 @@ namespace Emby.Server.Implementations.Security
{
if (info == null)
{
- throw new ArgumentNullException("entry");
+ throw new ArgumentNullException(nameof(info));
}
using (WriteLock.Write())
@@ -183,7 +183,7 @@ namespace Emby.Server.Implementations.Security
private const string BaseSelectText = "select Tokens.Id, AccessToken, DeviceId, AppName, AppVersion, DeviceName, UserId, UserName, DateCreated, DateLastActivity, Devices.CustomName from Tokens left join Devices on Tokens.DeviceId=Devices.Id";
- private void BindAuthenticationQueryParams(AuthenticationInfoQuery query, IStatement statement)
+ private static void BindAuthenticationQueryParams(AuthenticationInfoQuery query, IStatement statement)
{
if (!string.IsNullOrEmpty(query.AccessToken))
{
@@ -205,7 +205,7 @@ namespace Emby.Server.Implementations.Security
{
if (query == null)
{
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
}
var commandText = BaseSelectText;
@@ -306,7 +306,7 @@ namespace Emby.Server.Implementations.Security
}
}
- private AuthenticationInfo Get(IReadOnlyList<IResultSetValue> reader)
+ private static AuthenticationInfo Get(IReadOnlyList<IResultSetValue> reader)
{
var info = new AuthenticationInfo
{
@@ -397,7 +397,7 @@ namespace Emby.Server.Implementations.Security
{
if (options == null)
{
- throw new ArgumentNullException("options");
+ throw new ArgumentNullException(nameof(options));
}
using (WriteLock.Write())
diff --git a/Emby.Server.Implementations/Security/EncryptionManager.cs b/Emby.Server.Implementations/Security/EncryptionManager.cs
index 271b0bbdb..b99e00a67 100644
--- a/Emby.Server.Implementations/Security/EncryptionManager.cs
+++ b/Emby.Server.Implementations/Security/EncryptionManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Security;
+using MediaBrowser.Controller.Security;
using System;
using System.Text;
@@ -14,7 +14,10 @@ namespace Emby.Server.Implementations.Security
/// <exception cref="System.ArgumentNullException">value</exception>
public string EncryptString(string value)
{
- if (value == null) throw new ArgumentNullException("value");
+ if (value == null)
+ {
+ throw new ArgumentNullException(nameof(value));
+ }
return EncryptStringUniversal(value);
}
@@ -27,12 +30,15 @@ namespace Emby.Server.Implementations.Security
/// <exception cref="System.ArgumentNullException">value</exception>
public string DecryptString(string value)
{
- if (value == null) throw new ArgumentNullException("value");
+ if (value == null)
+ {
+ throw new ArgumentNullException(nameof(value));
+ }
return DecryptStringUniversal(value);
}
- private string EncryptStringUniversal(string value)
+ private static string EncryptStringUniversal(string value)
{
// Yes, this isn't good, but ProtectedData in mono is throwing exceptions, so use this for now
@@ -40,7 +46,7 @@ namespace Emby.Server.Implementations.Security
return Convert.ToBase64String(bytes);
}
- private string DecryptStringUniversal(string value)
+ private static string DecryptStringUniversal(string value)
{
// Yes, this isn't good, but ProtectedData in mono is throwing exceptions, so use this for now
diff --git a/Emby.Server.Implementations/Security/MBLicenseFile.cs b/Emby.Server.Implementations/Security/MBLicenseFile.cs
index 485aaba46..fc1c1f0bf 100644
--- a/Emby.Server.Implementations/Security/MBLicenseFile.cs
+++ b/Emby.Server.Implementations/Security/MBLicenseFile.cs
@@ -19,7 +19,7 @@ namespace Emby.Server.Implementations.Security
public string RegKey
{
- get { return _regKey; }
+ get => _regKey;
set
{
_updateRecords.Clear();
@@ -27,13 +27,7 @@ namespace Emby.Server.Implementations.Security
}
}
- private string Filename
- {
- get
- {
- return Path.Combine(_appPaths.ConfigurationDirectoryPath, "mb.lic");
- }
- }
+ private string Filename => Path.Combine(_appPaths.ConfigurationDirectoryPath, "mb.lic");
private readonly ConcurrentDictionary<Guid, FeatureRegInfo> _updateRecords = new ConcurrentDictionary<Guid, FeatureRegInfo>();
private readonly object _fileLock = new object();
diff --git a/Emby.Server.Implementations/Security/PluginSecurityManager.cs b/Emby.Server.Implementations/Security/PluginSecurityManager.cs
index 2b1494c39..dc606f2b9 100644
--- a/Emby.Server.Implementations/Security/PluginSecurityManager.cs
+++ b/Emby.Server.Implementations/Security/PluginSecurityManager.cs
@@ -34,10 +34,7 @@ namespace Emby.Server.Implementations.Security
}
private MBLicenseFile _licenseFile;
- private MBLicenseFile LicenseFile
- {
- get { return _licenseFile ?? (_licenseFile = new MBLicenseFile(_appPaths, _fileSystem, _cryptographyProvider)); }
- }
+ private MBLicenseFile LicenseFile => _licenseFile ?? (_licenseFile = new MBLicenseFile(_appPaths, _fileSystem, _cryptographyProvider));
private readonly IHttpClient _httpClient;
private readonly IJsonSerializer _jsonSerializer;
@@ -55,7 +52,7 @@ namespace Emby.Server.Implementations.Security
{
if (httpClient == null)
{
- throw new ArgumentNullException("httpClient");
+ throw new ArgumentNullException(nameof(httpClient));
}
_appHost = appHost;
@@ -82,14 +79,8 @@ namespace Emby.Server.Implementations.Security
/// <value>The supporter key.</value>
public string SupporterKey
{
- get
- {
- return LicenseFile.RegKey;
- }
- set
- {
- throw new Exception("Please call UpdateSupporterKey");
- }
+ get => LicenseFile.RegKey;
+ set => throw new Exception("Please call UpdateSupporterKey");
}
public async Task UpdateSupporterKey(string newValue)
@@ -138,7 +129,7 @@ namespace Emby.Server.Implementations.Security
_logger.LogError(msg);
throw new ArgumentException(msg);
}
- if (!String.IsNullOrEmpty(reg.key))
+ if (!string.IsNullOrEmpty(reg.key))
{
await UpdateSupporterKey(reg.key).ConfigureAwait(false);
}
diff --git a/Emby.Server.Implementations/Serialization/JsonSerializer.cs b/Emby.Server.Implementations/Serialization/JsonSerializer.cs
index e28acd769..d4b6b2f43 100644
--- a/Emby.Server.Implementations/Serialization/JsonSerializer.cs
+++ b/Emby.Server.Implementations/Serialization/JsonSerializer.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.IO;
using MediaBrowser.Model.IO;
using Microsoft.Extensions.Logging;
@@ -32,12 +32,12 @@ namespace Emby.Common.Implementations.Serialization
{
if (obj == null)
{
- throw new ArgumentNullException("obj");
+ throw new ArgumentNullException(nameof(obj));
}
if (stream == null)
{
- throw new ArgumentNullException("stream");
+ throw new ArgumentNullException(nameof(stream));
}
ServiceStack.Text.JsonSerializer.SerializeToStream(obj, obj.GetType(), stream);
@@ -53,12 +53,12 @@ namespace Emby.Common.Implementations.Serialization
{
if (obj == null)
{
- throw new ArgumentNullException("obj");
+ throw new ArgumentNullException(nameof(obj));
}
if (string.IsNullOrEmpty(file))
{
- throw new ArgumentNullException("file");
+ throw new ArgumentNullException(nameof(file));
}
using (Stream stream = _fileSystem.GetFileStream(file, FileOpenMode.Create, FileAccessMode.Write, FileShareMode.Read))
@@ -67,7 +67,7 @@ namespace Emby.Common.Implementations.Serialization
}
}
- private Stream OpenFile(string path)
+ private static Stream OpenFile(string path)
{
//_logger.LogDebug("Deserializing file {0}", path);
return new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read, 131072);
@@ -84,12 +84,12 @@ namespace Emby.Common.Implementations.Serialization
{
if (type == null)
{
- throw new ArgumentNullException("type");
+ throw new ArgumentNullException(nameof(type));
}
if (string.IsNullOrEmpty(file))
{
- throw new ArgumentNullException("file");
+ throw new ArgumentNullException(nameof(file));
}
using (Stream stream = OpenFile(file))
@@ -110,7 +110,7 @@ namespace Emby.Common.Implementations.Serialization
{
if (string.IsNullOrEmpty(file))
{
- throw new ArgumentNullException("file");
+ throw new ArgumentNullException(nameof(file));
}
using (Stream stream = OpenFile(file))
@@ -130,7 +130,7 @@ namespace Emby.Common.Implementations.Serialization
{
if (stream == null)
{
- throw new ArgumentNullException("stream");
+ throw new ArgumentNullException(nameof(stream));
}
return ServiceStack.Text.JsonSerializer.DeserializeFromStream<T>(stream);
@@ -140,7 +140,7 @@ namespace Emby.Common.Implementations.Serialization
{
if (stream == null)
{
- throw new ArgumentNullException("stream");
+ throw new ArgumentNullException(nameof(stream));
}
@@ -158,7 +158,7 @@ namespace Emby.Common.Implementations.Serialization
{
if (string.IsNullOrEmpty(text))
{
- throw new ArgumentNullException("text");
+ throw new ArgumentNullException(nameof(text));
}
return ServiceStack.Text.JsonSerializer.DeserializeFromString<T>(text);
@@ -175,12 +175,12 @@ namespace Emby.Common.Implementations.Serialization
{
if (stream == null)
{
- throw new ArgumentNullException("stream");
+ throw new ArgumentNullException(nameof(stream));
}
if (type == null)
{
- throw new ArgumentNullException("type");
+ throw new ArgumentNullException(nameof(type));
}
return ServiceStack.Text.JsonSerializer.DeserializeFromStream(type, stream);
@@ -190,12 +190,12 @@ namespace Emby.Common.Implementations.Serialization
{
if (stream == null)
{
- throw new ArgumentNullException("stream");
+ throw new ArgumentNullException(nameof(stream));
}
if (type == null)
{
- throw new ArgumentNullException("type");
+ throw new ArgumentNullException(nameof(type));
}
using (var reader = new StreamReader(stream))
@@ -220,7 +220,7 @@ namespace Emby.Common.Implementations.Serialization
ServiceStack.Text.JsConfig<Guid>.SerializeFn = SerializeGuid;
}
- private string SerializeGuid(Guid guid)
+ private static string SerializeGuid(Guid guid)
{
if (guid.Equals(Guid.Empty))
{
@@ -241,12 +241,12 @@ namespace Emby.Common.Implementations.Serialization
{
if (string.IsNullOrEmpty(json))
{
- throw new ArgumentNullException("json");
+ throw new ArgumentNullException(nameof(json));
}
if (type == null)
{
- throw new ArgumentNullException("type");
+ throw new ArgumentNullException(nameof(type));
}
return ServiceStack.Text.JsonSerializer.DeserializeFromString(json, type);
@@ -262,7 +262,7 @@ namespace Emby.Common.Implementations.Serialization
{
if (obj == null)
{
- throw new ArgumentNullException("obj");
+ throw new ArgumentNullException(nameof(obj));
}
return ServiceStack.Text.JsonSerializer.SerializeToString(obj, obj.GetType());
diff --git a/Emby.Server.Implementations/ServerApplicationPaths.cs b/Emby.Server.Implementations/ServerApplicationPaths.cs
index 8a0f2671a..933b67291 100644
--- a/Emby.Server.Implementations/ServerApplicationPaths.cs
+++ b/Emby.Server.Implementations/ServerApplicationPaths.cs
@@ -30,174 +30,84 @@ namespace Emby.Server.Implementations
/// Gets the path to the base root media directory
/// </summary>
/// <value>The root folder path.</value>
- public string RootFolderPath
- {
- get
- {
- return Path.Combine(ProgramDataPath, "root");
- }
- }
+ public string RootFolderPath => Path.Combine(ProgramDataPath, "root");
/// <summary>
/// Gets the path to the default user view directory. Used if no specific user view is defined.
/// </summary>
/// <value>The default user views path.</value>
- public string DefaultUserViewsPath
- {
- get
- {
- return Path.Combine(RootFolderPath, "default");
- }
- }
+ public string DefaultUserViewsPath => Path.Combine(RootFolderPath, "default");
/// <summary>
/// Gets the path to localization data.
/// </summary>
/// <value>The localization path.</value>
- public string LocalizationPath
- {
- get
- {
- return Path.Combine(ProgramDataPath, "localization");
- }
- }
+ public string LocalizationPath => Path.Combine(ProgramDataPath, "localization");
/// <summary>
/// Gets the path to the People directory
/// </summary>
/// <value>The people path.</value>
- public string PeoplePath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "People");
- }
- }
+ public string PeoplePath => Path.Combine(InternalMetadataPath, "People");
- public string ArtistsPath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "artists");
- }
- }
+ public string ArtistsPath => Path.Combine(InternalMetadataPath, "artists");
/// <summary>
/// Gets the path to the Genre directory
/// </summary>
/// <value>The genre path.</value>
- public string GenrePath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "Genre");
- }
- }
+ public string GenrePath => Path.Combine(InternalMetadataPath, "Genre");
/// <summary>
/// Gets the path to the Genre directory
/// </summary>
/// <value>The genre path.</value>
- public string MusicGenrePath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "MusicGenre");
- }
- }
+ public string MusicGenrePath => Path.Combine(InternalMetadataPath, "MusicGenre");
/// <summary>
/// Gets the path to the Studio directory
/// </summary>
/// <value>The studio path.</value>
- public string StudioPath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "Studio");
- }
- }
+ public string StudioPath => Path.Combine(InternalMetadataPath, "Studio");
/// <summary>
/// Gets the path to the Year directory
/// </summary>
/// <value>The year path.</value>
- public string YearPath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "Year");
- }
- }
+ public string YearPath => Path.Combine(InternalMetadataPath, "Year");
/// <summary>
/// Gets the path to the General IBN directory
/// </summary>
/// <value>The general path.</value>
- public string GeneralPath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "general");
- }
- }
+ public string GeneralPath => Path.Combine(InternalMetadataPath, "general");
/// <summary>
/// Gets the path to the Ratings IBN directory
/// </summary>
/// <value>The ratings path.</value>
- public string RatingsPath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "ratings");
- }
- }
+ public string RatingsPath => Path.Combine(InternalMetadataPath, "ratings");
/// <summary>
/// Gets the media info images path.
/// </summary>
/// <value>The media info images path.</value>
- public string MediaInfoImagesPath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "mediainfo");
- }
- }
+ public string MediaInfoImagesPath => Path.Combine(InternalMetadataPath, "mediainfo");
/// <summary>
/// Gets the path to the user configuration directory
/// </summary>
/// <value>The user configuration directory path.</value>
- public string UserConfigurationDirectoryPath
- {
- get
- {
- return Path.Combine(ConfigurationDirectoryPath, "users");
- }
- }
+ public string UserConfigurationDirectoryPath => Path.Combine(ConfigurationDirectoryPath, "users");
private string _defaultTranscodingTempPath;
- public string DefaultTranscodingTempPath
- {
- get
- {
- return _defaultTranscodingTempPath ?? (_defaultTranscodingTempPath = Path.Combine(ProgramDataPath, "transcoding-temp"));
- }
- }
+ public string DefaultTranscodingTempPath => _defaultTranscodingTempPath ?? (_defaultTranscodingTempPath = Path.Combine(ProgramDataPath, "transcoding-temp"));
private string _transcodingTempPath;
public string TranscodingTempPath
{
- get
- {
- return _transcodingTempPath ?? (_transcodingTempPath = DefaultTranscodingTempPath);
- }
- set
- {
- _transcodingTempPath = value;
- }
+ get => _transcodingTempPath ?? (_transcodingTempPath = DefaultTranscodingTempPath);
+ set => _transcodingTempPath = value;
}
public string GetTranscodingTempPath()
@@ -230,35 +140,16 @@ namespace Emby.Server.Implementations
/// Gets the game genre path.
/// </summary>
/// <value>The game genre path.</value>
- public string GameGenrePath
- {
- get
- {
- return Path.Combine(InternalMetadataPath, "GameGenre");
- }
- }
+ public string GameGenrePath => Path.Combine(InternalMetadataPath, "GameGenre");
private string _internalMetadataPath;
public string InternalMetadataPath
{
- get
- {
- return _internalMetadataPath ?? (_internalMetadataPath = Path.Combine(DataPath, "metadata"));
- }
- set
- {
- _internalMetadataPath = value;
- }
+ get => _internalMetadataPath ?? (_internalMetadataPath = Path.Combine(DataPath, "metadata"));
+ set => _internalMetadataPath = value;
}
private const string _virtualInternalMetadataPath = "%MetadataPath%";
- public string VirtualInternalMetadataPath
- {
- get
- {
- return _virtualInternalMetadataPath;
- }
- }
-
+ public string VirtualInternalMetadataPath => _virtualInternalMetadataPath;
}
}
diff --git a/Emby.Server.Implementations/Services/HttpResult.cs b/Emby.Server.Implementations/Services/HttpResult.cs
index 91314c15a..7ce41a368 100644
--- a/Emby.Server.Implementations/Services/HttpResult.cs
+++ b/Emby.Server.Implementations/Services/HttpResult.cs
@@ -32,8 +32,8 @@ namespace Emby.Server.Implementations.Services
public HttpStatusCode StatusCode
{
- get { return (HttpStatusCode)Status; }
- set { Status = (int)value; }
+ get => (HttpStatusCode)Status;
+ set => Status = (int)value;
}
public IRequest RequestContext { get; set; }
diff --git a/Emby.Server.Implementations/Services/ServicePath.cs b/Emby.Server.Implementations/Services/ServicePath.cs
index ce779a208..0222b3782 100644
--- a/Emby.Server.Implementations/Services/ServicePath.cs
+++ b/Emby.Server.Implementations/Services/ServicePath.cs
@@ -50,7 +50,7 @@ namespace Emby.Server.Implementations.Services
public Type ServiceType { get; private set; }
- public string Path { get { return this.restPath; } }
+ public string Path => this.restPath;
public string Summary { get; private set; }
public string Description { get; private set; }
@@ -58,10 +58,7 @@ namespace Emby.Server.Implementations.Services
public int Priority { get; set; } //passed back to RouteAttribute
- public IEnumerable<string> PathVariables
- {
- get { return this.variablesNames.Where(e => !string.IsNullOrWhiteSpace(e)); }
- }
+ public IEnumerable<string> PathVariables => this.variablesNames.Where(e => !string.IsNullOrWhiteSpace(e));
public static string[] GetPathPartsForMatching(string pathInfo)
{
@@ -117,7 +114,7 @@ namespace Emby.Server.Implementations.Services
var hasSeparators = new List<bool>();
foreach (var component in this.restPath.Split(PathSeperatorChar))
{
- if (String.IsNullOrEmpty(component)) continue;
+ if (string.IsNullOrEmpty(component)) continue;
if (StringContains(component, VariablePrefix)
&& component.IndexOf(ComponentSeperator) != -1)
@@ -354,7 +351,7 @@ namespace Emby.Server.Implementations.Services
if (withPathInfoParts.Length != this.PathComponentsCount && !this.IsWildCardPath)
{
- return false;
+ return false;
}
if (!Verbs.Contains(httpMethod, StringComparer.OrdinalIgnoreCase))
@@ -420,10 +417,10 @@ namespace Emby.Server.Implementations.Services
return pathIx == withPathInfoParts.Length;
}
- private bool LiteralsEqual(string str1, string str2)
+ private static bool LiteralsEqual(string str1, string str2)
{
// Most cases
- if (String.Equals(str1, str2, StringComparison.OrdinalIgnoreCase))
+ if (string.Equals(str1, str2, StringComparison.OrdinalIgnoreCase))
{
return true;
}
@@ -433,7 +430,7 @@ namespace Emby.Server.Implementations.Services
str2 = str2.ToUpperInvariant();
// Invariant IgnoreCase would probably be better but it's not available in PCL
- return String.Equals(str1, str2, StringComparison.CurrentCultureIgnoreCase);
+ return string.Equals(str1, str2, StringComparison.CurrentCultureIgnoreCase);
}
private bool ExplodeComponents(ref string[] withPathInfoParts)
@@ -442,7 +439,7 @@ namespace Emby.Server.Implementations.Services
for (var i = 0; i < withPathInfoParts.Length; i++)
{
var component = withPathInfoParts[i];
- if (String.IsNullOrEmpty(component)) continue;
+ if (string.IsNullOrEmpty(component)) continue;
if (this.PathComponentsCount != this.TotalComponentsCount
&& this.componentsWithSeparators[i])
@@ -473,7 +470,7 @@ namespace Emby.Server.Implementations.Services
&& requestComponents.Length >= this.TotalComponentsCount - this.wildcardCount;
if (!isValidWildCardPath)
- throw new ArgumentException(String.Format(
+ throw new ArgumentException(string.Format(
"Path Mismatch: Request Path '{0}' has invalid number of components compared to: '{1}'",
pathInfo, this.restPath));
}
@@ -492,7 +489,7 @@ namespace Emby.Server.Implementations.Services
string propertyNameOnRequest;
if (!this.propertyNamesMap.TryGetValue(variableName.ToLower(), out propertyNameOnRequest))
{
- if (String.Equals("ignore", variableName, StringComparison.OrdinalIgnoreCase))
+ if (string.Equals("ignore", variableName, StringComparison.OrdinalIgnoreCase))
{
pathIx++;
continue;
@@ -522,12 +519,12 @@ namespace Emby.Server.Implementations.Services
// hits a match for the next element in the definition (which must be a literal)
// It may consume 0 or more path parts
var stopLiteral = i == this.TotalComponentsCount - 1 ? null : this.literalsToMatch[i + 1];
- if (!String.Equals(requestComponents[pathIx], stopLiteral, StringComparison.OrdinalIgnoreCase))
+ if (!string.Equals(requestComponents[pathIx], stopLiteral, StringComparison.OrdinalIgnoreCase))
{
var sb = new StringBuilder();
sb.Append(value);
pathIx++;
- while (!String.Equals(requestComponents[pathIx], stopLiteral, StringComparison.OrdinalIgnoreCase))
+ while (!string.Equals(requestComponents[pathIx], stopLiteral, StringComparison.OrdinalIgnoreCase))
{
sb.Append(PathSeperatorChar + requestComponents[pathIx++]);
}
diff --git a/Emby.Server.Implementations/Session/HttpSessionController.cs b/Emby.Server.Implementations/Session/HttpSessionController.cs
index ff9b3fefc..c61e2aff4 100644
--- a/Emby.Server.Implementations/Session/HttpSessionController.cs
+++ b/Emby.Server.Implementations/Session/HttpSessionController.cs
@@ -36,26 +36,11 @@ namespace Emby.Server.Implementations.Session
_sessionManager = sessionManager;
}
- private string PostUrl
- {
- get
- {
- return string.Format("http://{0}{1}", Session.RemoteEndPoint, _postUrl);
- }
- }
+ private string PostUrl => string.Format("http://{0}{1}", Session.RemoteEndPoint, _postUrl);
- public bool IsSessionActive
- {
- get
- {
- return (DateTime.UtcNow - Session.LastActivityDate).TotalMinutes <= 5;
- }
- }
+ public bool IsSessionActive => (DateTime.UtcNow - Session.LastActivityDate).TotalMinutes <= 5;
- public bool SupportsMediaControl
- {
- get { return true; }
- }
+ public bool SupportsMediaControl => true;
private Task SendMessage(string name, string messageId, CancellationToken cancellationToken)
{
@@ -164,7 +149,7 @@ namespace Emby.Server.Implementations.Session
{
if (typeof(T) == typeof(string))
{
- var str = data as String;
+ var str = data as string;
if (!string.IsNullOrEmpty(str))
{
options.RequestContent = str;
@@ -189,7 +174,7 @@ namespace Emby.Server.Implementations.Session
}
}
- private string ToQueryString(Dictionary<string, string> nvc)
+ private static string ToQueryString(Dictionary<string, string> nvc)
{
var array = (from item in nvc
select string.Format("{0}={1}", WebUtility.UrlEncode(item.Key), WebUtility.UrlEncode(item.Value)))
diff --git a/Emby.Server.Implementations/Session/SessionManager.cs b/Emby.Server.Implementations/Session/SessionManager.cs
index 7321e9f86..4e444ac01 100644
--- a/Emby.Server.Implementations/Session/SessionManager.cs
+++ b/Emby.Server.Implementations/Session/SessionManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Events;
+using MediaBrowser.Common.Events;
using MediaBrowser.Common.Extensions;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller;
@@ -148,10 +148,7 @@ namespace Emby.Server.Implementations.Session
/// Gets all connections.
/// </summary>
/// <value>All connections.</value>
- public IEnumerable<SessionInfo> Sessions
- {
- get { return _activeConnections.Values.OrderByDescending(c => c.LastActivityDate).ToList(); }
- }
+ public IEnumerable<SessionInfo> Sessions => _activeConnections.Values.OrderByDescending(c => c.LastActivityDate).ToList();
private void OnSessionStarted(SessionInfo info)
{
@@ -218,15 +215,15 @@ namespace Emby.Server.Implementations.Session
if (string.IsNullOrEmpty(appName))
{
- throw new ArgumentNullException("appName");
+ throw new ArgumentNullException(nameof(appName));
}
if (string.IsNullOrEmpty(appVersion))
{
- throw new ArgumentNullException("appVersion");
+ throw new ArgumentNullException(nameof(appVersion));
}
if (string.IsNullOrEmpty(deviceId))
{
- throw new ArgumentNullException("deviceId");
+ throw new ArgumentNullException(nameof(deviceId));
}
var activityDate = DateTime.UtcNow;
@@ -381,7 +378,7 @@ namespace Emby.Server.Implementations.Session
}
}
- private string GetSessionKey(string appName, string deviceId)
+ private static string GetSessionKey(string appName, string deviceId)
{
return appName + deviceId;
}
@@ -402,7 +399,7 @@ namespace Emby.Server.Implementations.Session
if (string.IsNullOrEmpty(deviceId))
{
- throw new ArgumentNullException("deviceId");
+ throw new ArgumentNullException(nameof(deviceId));
}
var key = GetSessionKey(appName, deviceId);
@@ -582,7 +579,7 @@ namespace Emby.Server.Implementations.Session
if (info == null)
{
- throw new ArgumentNullException("info");
+ throw new ArgumentNullException(nameof(info));
}
var session = GetSession(info.SessionId);
@@ -631,7 +628,7 @@ namespace Emby.Server.Implementations.Session
/// <summary>
/// Called when [playback start].
/// </summary>
- /// <param name="userId">The user identifier.</param>
+ /// <param name="user">The user object.</param>
/// <param name="item">The item.</param>
private void OnPlaybackStart(User user, BaseItem item)
{
@@ -669,7 +666,7 @@ namespace Emby.Server.Implementations.Session
if (info == null)
{
- throw new ArgumentNullException("info");
+ throw new ArgumentNullException(nameof(info));
}
var session = GetSession(info.SessionId);
@@ -742,7 +739,7 @@ namespace Emby.Server.Implementations.Session
}
- private bool UpdatePlaybackSettings(User user, PlaybackProgressInfo info, UserItemData data)
+ private static bool UpdatePlaybackSettings(User user, PlaybackProgressInfo info, UserItemData data)
{
var changed = false;
@@ -796,12 +793,12 @@ namespace Emby.Server.Implementations.Session
if (info == null)
{
- throw new ArgumentNullException("info");
+ throw new ArgumentNullException(nameof(info));
}
if (info.PositionTicks.HasValue && info.PositionTicks.Value < 0)
{
- throw new ArgumentOutOfRangeException("positionTicks");
+ throw new ArgumentOutOfRangeException(nameof(info),"The PlaybackStopInfo's PositionTicks was negative.");
}
var session = GetSession(info.SessionId);
@@ -993,7 +990,7 @@ namespace Emby.Server.Implementations.Session
return SendMessageToSession(session, "GeneralCommand", command, cancellationToken);
}
- private async Task SendMessageToSession<T>(SessionInfo session, string name, T data, CancellationToken cancellationToken)
+ private static async Task SendMessageToSession<T>(SessionInfo session, string name, T data, CancellationToken cancellationToken)
{
var controllers = session.SessionControllers.ToArray();
var messageId = Guid.NewGuid().ToString("N");
@@ -1192,11 +1189,11 @@ namespace Emby.Server.Implementations.Session
{
if (session == null)
{
- throw new ArgumentNullException("session");
+ throw new ArgumentNullException(nameof(session));
}
if (controllingSession == null)
{
- throw new ArgumentNullException("controllingSession");
+ throw new ArgumentNullException(nameof(controllingSession));
}
}
@@ -1490,7 +1487,7 @@ namespace Emby.Server.Implementations.Session
if (string.IsNullOrEmpty(accessToken))
{
- throw new ArgumentNullException("accessToken");
+ throw new ArgumentNullException(nameof(accessToken));
}
var existing = _authRepo.Get(new AuthenticationInfoQuery
@@ -1611,7 +1608,7 @@ namespace Emby.Server.Implementations.Session
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
var dtoOptions = _itemInfoDtoOptions;
@@ -1684,7 +1681,7 @@ namespace Emby.Server.Implementations.Session
{
if (string.IsNullOrEmpty(itemId))
{
- throw new ArgumentNullException("itemId");
+ throw new ArgumentNullException(nameof(itemId));
}
//var item = _libraryManager.GetItemById(new Guid(itemId));
@@ -1726,7 +1723,7 @@ namespace Emby.Server.Implementations.Session
{
if (info == null)
{
- throw new ArgumentNullException("info");
+ throw new ArgumentNullException(nameof(info));
}
var user = info.UserId.Equals(Guid.Empty)
diff --git a/Emby.Server.Implementations/Session/SessionWebSocketListener.cs b/Emby.Server.Implementations/Session/SessionWebSocketListener.cs
index 3bb022b32..116e455cf 100644
--- a/Emby.Server.Implementations/Session/SessionWebSocketListener.cs
+++ b/Emby.Server.Implementations/Session/SessionWebSocketListener.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Net;
+using MediaBrowser.Controller.Net;
using MediaBrowser.Controller.Session;
using MediaBrowser.Model.Events;
using Microsoft.Extensions.Logging;
@@ -43,7 +43,6 @@ namespace Emby.Server.Implementations.Session
/// <param name="loggerFactory">The logger factory.</param>
/// <param name="json">The json.</param>
/// <param name="httpServer">The HTTP server.</param>
- /// <param name="serverManager">The server manager.</param>
public SessionWebSocketListener(ISessionManager sessionManager, ILoggerFactory loggerFactory, IJsonSerializer json, IHttpServer httpServer)
{
_sessionManager = sessionManager;
@@ -71,7 +70,7 @@ namespace Emby.Server.Implementations.Session
{
if (queryString == null)
{
- throw new ArgumentNullException("queryString");
+ throw new ArgumentNullException(nameof(queryString));
}
var token = queryString["api_key"];
diff --git a/Emby.Server.Implementations/Session/WebSocketController.cs b/Emby.Server.Implementations/Session/WebSocketController.cs
index bdae5cf8f..ed34f8721 100644
--- a/Emby.Server.Implementations/Session/WebSocketController.cs
+++ b/Emby.Server.Implementations/Session/WebSocketController.cs
@@ -31,23 +31,11 @@ namespace Emby.Server.Implementations.Session
Sockets = new List<IWebSocketConnection>();
}
- private bool HasOpenSockets
- {
- get { return GetActiveSockets().Any(); }
- }
+ private bool HasOpenSockets => GetActiveSockets().Any();
- public bool SupportsMediaControl
- {
- get { return HasOpenSockets; }
- }
+ public bool SupportsMediaControl => HasOpenSockets;
- public bool IsSessionActive
- {
- get
- {
- return HasOpenSockets;
- }
- }
+ public bool IsSessionActive => HasOpenSockets;
private IEnumerable<IWebSocketConnection> GetActiveSockets()
{
diff --git a/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs b/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs
index 494668cb9..1b2974c27 100644
--- a/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs
+++ b/Emby.Server.Implementations/Sorting/AiredEpisodeOrderComparer.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
@@ -16,6 +16,16 @@ namespace Emby.Server.Implementations.Sorting
/// <returns>System.Int32.</returns>
public int Compare(BaseItem x, BaseItem y)
{
+ if (x == null)
+ {
+ throw new ArgumentNullException(nameof(x));
+ }
+
+ if (y == null)
+ {
+ throw new ArgumentNullException(nameof(y));
+ }
+
if (x.PremiereDate.HasValue && y.PremiereDate.HasValue)
{
var val = DateTime.Compare(x.PremiereDate.Value, y.PremiereDate.Value);
@@ -70,7 +80,7 @@ namespace Emby.Server.Implementations.Sorting
return CompareEpisodeToSpecial(y, x) * -1;
}
- private int CompareEpisodeToSpecial(Episode x, Episode y)
+ private static int CompareEpisodeToSpecial(Episode x, Episode y)
{
// http://thetvdb.com/wiki/index.php?title=Special_Episodes
@@ -119,7 +129,7 @@ namespace Emby.Server.Implementations.Sorting
return GetSpecialCompareValue(x).CompareTo(GetSpecialCompareValue(y));
}
- private int GetSpecialCompareValue(Episode item)
+ private static int GetSpecialCompareValue(Episode item)
{
// First sort by season number
// Since there are three sort orders, pad with 9 digits (3 for each, figure 1000 episode buffer should be enough)
@@ -140,7 +150,7 @@ namespace Emby.Server.Implementations.Sorting
return val;
}
- private int CompareEpisodes(Episode x, Episode y)
+ private static int CompareEpisodes(Episode x, Episode y)
{
var xValue = (x.ParentIndexNumber ?? -1) * 1000 + (x.IndexNumber ?? -1);
var yValue = (y.ParentIndexNumber ?? -1) * 1000 + (y.IndexNumber ?? -1);
@@ -152,9 +162,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.AiredEpisodeOrder; }
- }
+ public string Name => ItemSortBy.AiredEpisodeOrder;
}
}
diff --git a/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs b/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs
index cd3834080..df64d816f 100644
--- a/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs
+++ b/Emby.Server.Implementations/Sorting/AlbumArtistComparer.cs
@@ -1,4 +1,4 @@
-using System.Linq;
+using System.Linq;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Sorting;
@@ -28,7 +28,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>System.String.</returns>
- private string GetValue(BaseItem x)
+ private static string GetValue(BaseItem x)
{
var audio = x as IHasAlbumArtist;
@@ -39,9 +39,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.AlbumArtist; }
- }
+ public string Name => ItemSortBy.AlbumArtist;
}
}
diff --git a/Emby.Server.Implementations/Sorting/AlbumComparer.cs b/Emby.Server.Implementations/Sorting/AlbumComparer.cs
index 68f5f173e..dda1c5478 100644
--- a/Emby.Server.Implementations/Sorting/AlbumComparer.cs
+++ b/Emby.Server.Implementations/Sorting/AlbumComparer.cs
@@ -27,7 +27,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>System.String.</returns>
- private string GetValue(BaseItem x)
+ private static string GetValue(BaseItem x)
{
var audio = x as Audio;
@@ -38,9 +38,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.Album; }
- }
+ public string Name => ItemSortBy.Album;
}
}
diff --git a/Emby.Server.Implementations/Sorting/ArtistComparer.cs b/Emby.Server.Implementations/Sorting/ArtistComparer.cs
index 616aff673..b0f0549e3 100644
--- a/Emby.Server.Implementations/Sorting/ArtistComparer.cs
+++ b/Emby.Server.Implementations/Sorting/ArtistComparer.cs
@@ -27,7 +27,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>System.String.</returns>
- private string GetValue(BaseItem x)
+ private static string GetValue(BaseItem x)
{
var audio = x as Audio;
@@ -43,9 +43,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.Artist; }
- }
+ public string Name => ItemSortBy.Artist;
}
}
diff --git a/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs b/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs
index 396bbbdb9..994759171 100644
--- a/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs
+++ b/Emby.Server.Implementations/Sorting/CommunityRatingComparer.cs
@@ -1,6 +1,7 @@
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
+using System;
namespace Emby.Server.Implementations.Sorting
{
@@ -14,6 +15,12 @@ namespace Emby.Server.Implementations.Sorting
/// <returns>System.Int32.</returns>
public int Compare(BaseItem x, BaseItem y)
{
+ if (x == null)
+ throw new ArgumentNullException(nameof(x));
+
+ if (y == null)
+ throw new ArgumentNullException(nameof(y));
+
return (x.CommunityRating ?? 0).CompareTo(y.CommunityRating ?? 0);
}
@@ -21,9 +28,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.CommunityRating; }
- }
+ public string Name => ItemSortBy.CommunityRating;
}
}
diff --git a/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs b/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs
index 877dbfcc1..5c4aeaf86 100644
--- a/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs
+++ b/Emby.Server.Implementations/Sorting/CriticRatingComparer.cs
@@ -20,7 +20,7 @@ namespace Emby.Server.Implementations.Sorting
return GetValue(x).CompareTo(GetValue(y));
}
- private float GetValue(BaseItem x)
+ private static float GetValue(BaseItem x)
{
return x.CriticRating ?? 0;
}
@@ -29,9 +29,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.CriticRating; }
- }
+ public string Name => ItemSortBy.CriticRating;
}
}
diff --git a/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs b/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs
index c436fcb4a..1c5149517 100644
--- a/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/DateCreatedComparer.cs
@@ -18,6 +18,12 @@ namespace Emby.Server.Implementations.Sorting
/// <returns>System.Int32.</returns>
public int Compare(BaseItem x, BaseItem y)
{
+ if (x == null)
+ throw new ArgumentNullException(nameof(x));
+
+ if (y == null)
+ throw new ArgumentNullException(nameof(y));
+
return DateTime.Compare(x.DateCreated, y.DateCreated);
}
@@ -25,9 +31,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.DateCreated; }
- }
+ public string Name => ItemSortBy.DateCreated;
}
}
diff --git a/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs b/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs
index fc92505ac..ffe7fbaec 100644
--- a/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/DateLastMediaAddedComparer.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;
@@ -42,7 +42,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>DateTime.</returns>
- private DateTime GetDate(BaseItem x)
+ private static DateTime GetDate(BaseItem x)
{
var folder = x as Folder;
@@ -61,9 +61,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.DateLastContentAdded; }
- }
+ public string Name => ItemSortBy.DateLastContentAdded;
}
}
diff --git a/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs b/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs
index 5939a9442..c11c1986c 100644
--- a/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/DatePlayedComparer.cs
@@ -61,9 +61,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.DatePlayed; }
- }
+ public string Name => ItemSortBy.DatePlayed;
}
}
diff --git a/Emby.Server.Implementations/Sorting/GameSystemComparer.cs b/Emby.Server.Implementations/Sorting/GameSystemComparer.cs
index 4ee30397d..0b534b3cb 100644
--- a/Emby.Server.Implementations/Sorting/GameSystemComparer.cs
+++ b/Emby.Server.Implementations/Sorting/GameSystemComparer.cs
@@ -23,7 +23,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>System.String.</returns>
- private string GetValue(BaseItem x)
+ private static string GetValue(BaseItem x)
{
var game = x as Game;
@@ -46,9 +46,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.GameSystem; }
- }
+ public string Name => ItemSortBy.GameSystem;
}
}
diff --git a/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs b/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs
index 27485f09e..48e3172ce 100644
--- a/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs
+++ b/Emby.Server.Implementations/Sorting/IsFavoriteOrLikeComparer.cs
@@ -38,10 +38,7 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.IsFavoriteOrLiked; }
- }
+ public string Name => ItemSortBy.IsFavoriteOrLiked;
/// <summary>
/// Gets or sets the user data repository.
diff --git a/Emby.Server.Implementations/Sorting/IsFolderComparer.cs b/Emby.Server.Implementations/Sorting/IsFolderComparer.cs
index 756d13bd8..8b6cbb2db 100644
--- a/Emby.Server.Implementations/Sorting/IsFolderComparer.cs
+++ b/Emby.Server.Implementations/Sorting/IsFolderComparer.cs
@@ -22,7 +22,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>System.String.</returns>
- private int GetValue(BaseItem x)
+ private static int GetValue(BaseItem x)
{
return x.IsFolder ? 0 : 1;
}
@@ -31,9 +31,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.IsFolder; }
- }
+ public string Name => ItemSortBy.IsFolder;
}
}
diff --git a/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs b/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs
index 987dc54a5..9f4fc2c06 100644
--- a/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/IsPlayedComparer.cs
@@ -38,10 +38,7 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.IsUnplayed; }
- }
+ public string Name => ItemSortBy.IsUnplayed;
/// <summary>
/// Gets or sets the user data repository.
diff --git a/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs b/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs
index 0f4e4c37e..d145aa8dd 100644
--- a/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs
+++ b/Emby.Server.Implementations/Sorting/IsUnplayedComparer.cs
@@ -38,10 +38,7 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.IsUnplayed; }
- }
+ public string Name => ItemSortBy.IsUnplayed;
/// <summary>
/// Gets or sets the user data repository.
diff --git a/Emby.Server.Implementations/Sorting/NameComparer.cs b/Emby.Server.Implementations/Sorting/NameComparer.cs
index 8ab5e5172..cfd810a6b 100644
--- a/Emby.Server.Implementations/Sorting/NameComparer.cs
+++ b/Emby.Server.Implementations/Sorting/NameComparer.cs
@@ -18,6 +18,12 @@ namespace Emby.Server.Implementations.Sorting
/// <returns>System.Int32.</returns>
public int Compare(BaseItem x, BaseItem y)
{
+ if (x == null)
+ throw new ArgumentNullException(nameof(x));
+
+ if (y == null)
+ throw new ArgumentNullException(nameof(y));
+
return string.Compare(x.Name, y.Name, StringComparison.CurrentCultureIgnoreCase);
}
@@ -25,9 +31,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.Name; }
- }
+ public string Name => ItemSortBy.Name;
}
}
diff --git a/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs b/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs
index 3eab4fccc..cd48e3048 100644
--- a/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs
+++ b/Emby.Server.Implementations/Sorting/OfficialRatingComparer.cs
@@ -2,6 +2,7 @@
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Globalization;
using MediaBrowser.Model.Querying;
+using System;
namespace Emby.Server.Implementations.Sorting
{
@@ -22,6 +23,12 @@ namespace Emby.Server.Implementations.Sorting
/// <returns>System.Int32.</returns>
public int Compare(BaseItem x, BaseItem y)
{
+ if (x == null)
+ throw new ArgumentNullException(nameof(x));
+
+ if (y == null)
+ throw new ArgumentNullException(nameof(y));
+
var levelX = string.IsNullOrEmpty(x.OfficialRating) ? 0 : _localization.GetRatingLevel(x.OfficialRating) ?? 0;
var levelY = string.IsNullOrEmpty(y.OfficialRating) ? 0 : _localization.GetRatingLevel(y.OfficialRating) ?? 0;
@@ -32,9 +39,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.OfficialRating; }
- }
+ public string Name => ItemSortBy.OfficialRating;
}
}
diff --git a/Emby.Server.Implementations/Sorting/PlayCountComparer.cs b/Emby.Server.Implementations/Sorting/PlayCountComparer.cs
index 6acec8012..b7165ab8c 100644
--- a/Emby.Server.Implementations/Sorting/PlayCountComparer.cs
+++ b/Emby.Server.Implementations/Sorting/PlayCountComparer.cs
@@ -43,10 +43,7 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.PlayCount; }
- }
+ public string Name => ItemSortBy.PlayCount;
/// <summary>
/// Gets or sets the user data repository.
diff --git a/Emby.Server.Implementations/Sorting/PlayersComparer.cs b/Emby.Server.Implementations/Sorting/PlayersComparer.cs
index 3b54517c3..5b50ea48a 100644
--- a/Emby.Server.Implementations/Sorting/PlayersComparer.cs
+++ b/Emby.Server.Implementations/Sorting/PlayersComparer.cs
@@ -22,7 +22,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>System.String.</returns>
- private int GetValue(BaseItem x)
+ private static int GetValue(BaseItem x)
{
var game = x as Game;
@@ -38,9 +38,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.Players; }
- }
+ public string Name => ItemSortBy.Players;
}
}
diff --git a/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs b/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs
index b42aabe25..26c6badaa 100644
--- a/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs
+++ b/Emby.Server.Implementations/Sorting/PremiereDateComparer.cs
@@ -26,7 +26,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>DateTime.</returns>
- private DateTime GetDate(BaseItem x)
+ private static DateTime GetDate(BaseItem x)
{
if (x.PremiereDate.HasValue)
{
@@ -51,9 +51,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.PremiereDate; }
- }
+ public string Name => ItemSortBy.PremiereDate;
}
}
diff --git a/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs b/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs
index ea479419a..0aa5e833b 100644
--- a/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs
+++ b/Emby.Server.Implementations/Sorting/ProductionYearComparer.cs
@@ -25,7 +25,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>DateTime.</returns>
- private int GetValue(BaseItem x)
+ private static int GetValue(BaseItem x)
{
if (x.ProductionYear.HasValue)
{
@@ -44,9 +44,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.ProductionYear; }
- }
+ public string Name => ItemSortBy.ProductionYear;
}
}
diff --git a/Emby.Server.Implementations/Sorting/RandomComparer.cs b/Emby.Server.Implementations/Sorting/RandomComparer.cs
index 1fbecde56..c69ebe41a 100644
--- a/Emby.Server.Implementations/Sorting/RandomComparer.cs
+++ b/Emby.Server.Implementations/Sorting/RandomComparer.cs
@@ -25,9 +25,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.Random; }
- }
+ public string Name => ItemSortBy.Random;
}
}
diff --git a/Emby.Server.Implementations/Sorting/RuntimeComparer.cs b/Emby.Server.Implementations/Sorting/RuntimeComparer.cs
index 63c4758cb..77851d702 100644
--- a/Emby.Server.Implementations/Sorting/RuntimeComparer.cs
+++ b/Emby.Server.Implementations/Sorting/RuntimeComparer.cs
@@ -1,6 +1,7 @@
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
+using System;
namespace Emby.Server.Implementations.Sorting
{
@@ -17,6 +18,12 @@ namespace Emby.Server.Implementations.Sorting
/// <returns>System.Int32.</returns>
public int Compare(BaseItem x, BaseItem y)
{
+ if (x == null)
+ throw new ArgumentNullException(nameof(x));
+
+ if (y == null)
+ throw new ArgumentNullException(nameof(y));
+
return (x.RunTimeTicks ?? 0).CompareTo(y.RunTimeTicks ?? 0);
}
@@ -24,9 +31,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.Runtime; }
- }
+ public string Name => ItemSortBy.Runtime;
}
}
diff --git a/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs b/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs
index b441a29c1..1bbe30b95 100644
--- a/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs
+++ b/Emby.Server.Implementations/Sorting/SeriesSortNameComparer.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
using System;
@@ -18,7 +18,7 @@ namespace Emby.Server.Implementations.Sorting
return string.Compare(GetValue(x), GetValue(y), StringComparison.CurrentCultureIgnoreCase);
}
- private string GetValue(BaseItem item)
+ private static string GetValue(BaseItem item)
{
var hasSeries = item as IHasSeries;
@@ -29,9 +29,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.SeriesSortName; }
- }
+ public string Name => ItemSortBy.SeriesSortName;
}
}
diff --git a/Emby.Server.Implementations/Sorting/SortNameComparer.cs b/Emby.Server.Implementations/Sorting/SortNameComparer.cs
index f2a764840..6c42ed988 100644
--- a/Emby.Server.Implementations/Sorting/SortNameComparer.cs
+++ b/Emby.Server.Implementations/Sorting/SortNameComparer.cs
@@ -18,6 +18,12 @@ namespace Emby.Server.Implementations.Sorting
/// <returns>System.Int32.</returns>
public int Compare(BaseItem x, BaseItem y)
{
+ if (x == null)
+ throw new ArgumentNullException(nameof(x));
+
+ if (y == null)
+ throw new ArgumentNullException(nameof(y));
+
return string.Compare(x.SortName, y.SortName, StringComparison.CurrentCultureIgnoreCase);
}
@@ -25,9 +31,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.SortName; }
- }
+ public string Name => ItemSortBy.SortName;
}
}
diff --git a/Emby.Server.Implementations/Sorting/StartDateComparer.cs b/Emby.Server.Implementations/Sorting/StartDateComparer.cs
index 6be5f4883..7ae8037d9 100644
--- a/Emby.Server.Implementations/Sorting/StartDateComparer.cs
+++ b/Emby.Server.Implementations/Sorting/StartDateComparer.cs
@@ -24,7 +24,7 @@ namespace Emby.Server.Implementations.Sorting
/// </summary>
/// <param name="x">The x.</param>
/// <returns>DateTime.</returns>
- private DateTime GetDate(BaseItem x)
+ private static DateTime GetDate(BaseItem x)
{
var hasStartDate = x as LiveTvProgram;
@@ -39,9 +39,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.StartDate; }
- }
+ public string Name => ItemSortBy.StartDate;
}
}
diff --git a/Emby.Server.Implementations/Sorting/StudioComparer.cs b/Emby.Server.Implementations/Sorting/StudioComparer.cs
index 6735022af..605d65154 100644
--- a/Emby.Server.Implementations/Sorting/StudioComparer.cs
+++ b/Emby.Server.Implementations/Sorting/StudioComparer.cs
@@ -1,6 +1,7 @@
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Sorting;
using MediaBrowser.Model.Querying;
+using System;
using System.Linq;
namespace Emby.Server.Implementations.Sorting
@@ -15,6 +16,11 @@ namespace Emby.Server.Implementations.Sorting
/// <returns>System.Int32.</returns>
public int Compare(BaseItem x, BaseItem y)
{
+ if (x == null)
+ throw new ArgumentNullException(nameof(x));
+
+ if (y == null)
+ throw new ArgumentNullException(nameof(y));
return AlphanumComparator.CompareValues(x.Studios.FirstOrDefault() ?? string.Empty, y.Studios.FirstOrDefault() ?? string.Empty);
}
@@ -22,9 +28,6 @@ namespace Emby.Server.Implementations.Sorting
/// Gets the name.
/// </summary>
/// <value>The name.</value>
- public string Name
- {
- get { return ItemSortBy.Studio; }
- }
+ public string Name => ItemSortBy.Studio;
}
}
diff --git a/Emby.Server.Implementations/TV/TVSeriesManager.cs b/Emby.Server.Implementations/TV/TVSeriesManager.cs
index 1f9cb9164..652557466 100644
--- a/Emby.Server.Implementations/TV/TVSeriesManager.cs
+++ b/Emby.Server.Implementations/TV/TVSeriesManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Library;
using MediaBrowser.Controller.TV;
@@ -171,12 +171,12 @@ namespace Emby.Server.Implementations.TV
.Where(i => i != null);
}
- private string GetUniqueSeriesKey(Episode episode)
+ private static string GetUniqueSeriesKey(Episode episode)
{
return episode.SeriesPresentationUniqueKey;
}
- private string GetUniqueSeriesKey(Series series)
+ private static string GetUniqueSeriesKey(Series series)
{
return series.GetPresentationUniqueKey();
}
@@ -238,7 +238,7 @@ namespace Emby.Server.Implementations.TV
return new Tuple<DateTime, Func<Episode>>(DateTime.MinValue, getEpisode);
}
- private QueryResult<BaseItem> GetResult(IEnumerable<BaseItem> items, NextUpQuery query)
+ private static QueryResult<BaseItem> GetResult(IEnumerable<BaseItem> items, NextUpQuery query)
{
int totalCount = 0;
diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/CharExtensions.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/CharExtensions.cs
index 59076bd66..cd77a30eb 100644
--- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/CharExtensions.cs
+++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/CharExtensions.cs
@@ -333,7 +333,7 @@ namespace NLangDetect.Core.Extensions
if (!IsValidCodePoint(codePoint))
{
- throw new ArgumentException("Argument is not a valid code point.", "ch");
+ throw new ArgumentException("Argument is not a valid code point.", nameof(ch));
}
int top, bottom, current;
diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/StringExtensions.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/StringExtensions.cs
index 1ea92232b..5db68bbf1 100644
--- a/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/StringExtensions.cs
+++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/Extensions/StringExtensions.cs
@@ -1,25 +1,25 @@
-using System;
+using System;
namespace NLangDetect.Core.Extensions
{
- public static class StringExtensions
- {
- /// <summary>
- /// Returns a new character sequence that is a subsequence of this sequence. The subsequence starts with the character at the specified index and ends with the character at index end - 1. The length of the returned sequence is end - start, so if start == end then an empty sequence is returned.
- /// </summary>
- /// <param name="s"></param>
- /// <param name="start">the start index, inclusive</param>
- /// <param name="end">the end index, exclusive</param>
- /// <returns>the specified subsequence</returns>
- /// <exception cref="IndexOutOfRangeException"> if start or end are negative, if end is greater than length(), or if start is greater than end</exception>
- public static string SubSequence(this string s, int start, int end)
+ public static class StringExtensions
{
- if (start < 0) throw new ArgumentOutOfRangeException("start", "Argument must not be negative.");
- if (end < 0) throw new ArgumentOutOfRangeException("end", "Argument must not be negative.");
- if (end > s.Length) throw new ArgumentOutOfRangeException("end", "Argument must not be greater than the input string's length.");
- if (start > end) throw new ArgumentOutOfRangeException("start", "Argument must not be greater than the 'end' argument.");
+ /// <summary>
+ /// Returns a new character sequence that is a subsequence of this sequence. The subsequence starts with the character at the specified index and ends with the character at index end - 1. The length of the returned sequence is end - start, so if start == end then an empty sequence is returned.
+ /// </summary>
+ /// <param name="s"></param>
+ /// <param name="start">the start index, inclusive</param>
+ /// <param name="end">the end index, exclusive</param>
+ /// <returns>the specified subsequence</returns>
+ /// <exception cref="IndexOutOfRangeException"> if start or end are negative, if end is greater than length(), or if start is greater than end</exception>
+ public static string SubSequence(this string s, int start, int end)
+ {
+ if (start < 0) throw new ArgumentOutOfRangeException(nameof(start), "Argument must not be negative.");
+ if (end < 0) throw new ArgumentOutOfRangeException(nameof(end), "Argument must not be negative.");
+ if (end > s.Length) throw new ArgumentOutOfRangeException(nameof(end), "Argument must not be greater than the input string's length.");
+ if (start > end) throw new ArgumentOutOfRangeException(nameof(start), "Argument must not be greater than the 'end' argument.");
- return s.Substring(start, end - start);
+ return s.Substring(start, end - start);
+ }
}
- }
}
diff --git a/Emby.Server.Implementations/TextEncoding/NLangDetect/LanguageDetector.cs b/Emby.Server.Implementations/TextEncoding/NLangDetect/LanguageDetector.cs
index fc7d420a9..044c7e759 100644
--- a/Emby.Server.Implementations/TextEncoding/NLangDetect/LanguageDetector.cs
+++ b/Emby.Server.Implementations/TextEncoding/NLangDetect/LanguageDetector.cs
@@ -23,7 +23,7 @@ namespace NLangDetect.Core
public static string DetectLanguage(string plainText)
{
- if (string.IsNullOrEmpty(plainText)) { throw new ArgumentException("Argument can't be null nor empty.", "plainText"); }
+ if (string.IsNullOrEmpty(plainText)) { throw new ArgumentException("Argument can't be null nor empty.", nameof(plainText)); }
Detector detector = DetectorFactory.Create(_DefaultAlpha);
diff --git a/Emby.Server.Implementations/TextEncoding/TextEncoding.cs b/Emby.Server.Implementations/TextEncoding/TextEncoding.cs
index f30c181a0..8f15d5a7b 100644
--- a/Emby.Server.Implementations/TextEncoding/TextEncoding.cs
+++ b/Emby.Server.Implementations/TextEncoding/TextEncoding.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Text;
using MediaBrowser.Model.IO;
using Microsoft.Extensions.Logging;
@@ -27,7 +27,7 @@ namespace Emby.Server.Implementations.TextEncoding
return Encoding.ASCII;
}
- private Encoding GetInitialEncoding(byte[] buffer, int count)
+ private static Encoding GetInitialEncoding(byte[] buffer, int count)
{
if (count >= 3)
{
@@ -137,6 +137,7 @@ namespace Emby.Server.Implementations.TextEncoding
}
catch (NLangDetectException ex)
{
+ _logger.LogDebug(ex, "LanguageDetector.DetectLanguage threw a NLangDetectException.");
}
try
@@ -145,6 +146,7 @@ namespace Emby.Server.Implementations.TextEncoding
}
catch (NLangDetectException ex)
{
+ _logger.LogDebug(ex, "LanguageDetector.DetectLanguage threw a NLangDetectException.");
}
try
@@ -153,6 +155,7 @@ namespace Emby.Server.Implementations.TextEncoding
}
catch (NLangDetectException ex)
{
+ _logger.LogDebug(ex, "LanguageDetector.DetectLanguage threw a NLangDetectException.");
}
return null;
@@ -162,7 +165,7 @@ namespace Emby.Server.Implementations.TextEncoding
{
if (string.IsNullOrWhiteSpace(charset))
{
- throw new ArgumentNullException("charset");
+ throw new ArgumentNullException(nameof(charset));
}
_logger.LogDebug("Getting encoding object for character set: {0}", charset);
@@ -187,7 +190,7 @@ namespace Emby.Server.Implementations.TextEncoding
return GetEncodingFromCharset(charset);
}
- private string GetFileCharacterSetFromLanguage(string language)
+ private static string GetFileCharacterSetFromLanguage(string language)
{
// https://developer.xamarin.com/api/type/System.Text.Encoding/
@@ -245,7 +248,7 @@ namespace Emby.Server.Implementations.TextEncoding
}
}
- private string DetectCharset(byte[] bytes, int index, int count, string language)
+ private static string DetectCharset(byte[] bytes, int index, int count, string language)
{
var detector = new CharsetDetector();
detector.Feed(bytes, index, count);
diff --git a/Emby.Server.Implementations/TextEncoding/TextEncodingDetect.cs b/Emby.Server.Implementations/TextEncoding/TextEncodingDetect.cs
index 441606e2c..15f1ce91e 100644
--- a/Emby.Server.Implementations/TextEncoding/TextEncodingDetect.cs
+++ b/Emby.Server.Implementations/TextEncoding/TextEncodingDetect.cs
@@ -61,10 +61,7 @@
/// </summary>
public bool NullSuggestsBinary
{
- set
- {
- _nullSuggestsBinary = value;
- }
+ set => _nullSuggestsBinary = value;
}
public double Utf16ExpectedNullPercent
diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/CharsetDetector.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/CharsetDetector.cs
index 18b3b306e..922239c54 100644
--- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/CharsetDetector.cs
+++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/CharsetDetector.cs
@@ -100,14 +100,10 @@ namespace UniversalDetector
this.confidence = 0.0f;
base.Reset();
}
+
+ public string Charset => charset;
- public string Charset {
- get { return charset; }
- }
-
- public float Confidence {
- get { return confidence; }
- }
+ public float Confidence => confidence;
protected override void Report(string charset, float confidence)
{
diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CodingStateMachine.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CodingStateMachine.cs
index 484bbca36..34f24161d 100644
--- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CodingStateMachine.cs
+++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/CodingStateMachine.cs
@@ -77,14 +77,8 @@ namespace UniversalDetector.Core
currentState = SMModel.START;
}
- public int CurrentCharLen
- {
- get { return currentCharLen; }
- }
+ public int CurrentCharLen => currentCharLen;
- public string ModelName
- {
- get { return model.Name; }
- }
+ public string ModelName => model.Name;
}
}
diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SMModel.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SMModel.cs
index 451a3e59c..cb2f201aa 100644
--- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SMModel.cs
+++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SMModel.cs
@@ -54,19 +54,15 @@ namespace UniversalDetector.Core
public int[] charLenTable;
private string name;
-
- public string Name {
- get { return name; }
- }
+
+ public string Name => name;
private int classFactor;
- public int ClassFactor {
- get { return classFactor; }
- }
+ public int ClassFactor => classFactor;
public SMModel(BitPackage classTable, int classFactor,
- BitPackage stateTable, int[] charLenTable, String name)
+ BitPackage stateTable, int[] charLenTable, string name)
{
this.classTable = classTable;
this.classFactor = classFactor;
diff --git a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SequenceModel.cs b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SequenceModel.cs
index fc824b5a2..b813dda76 100644
--- a/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SequenceModel.cs
+++ b/Emby.Server.Implementations/TextEncoding/UniversalDetector/Core/SequenceModel.cs
@@ -51,30 +51,24 @@ namespace UniversalDetector.Core
// freqSeqs / totalSeqs
protected float typicalPositiveRatio;
+
+ public float TypicalPositiveRatio => typicalPositiveRatio;
- public float TypicalPositiveRatio {
- get { return typicalPositiveRatio; }
- }
-
- // not used
+ // not used
protected bool keepEnglishLetter;
+
+ public bool KeepEnglishLetter => keepEnglishLetter;
- public bool KeepEnglishLetter {
- get { return keepEnglishLetter; }
- }
+ protected string charsetName;
- protected String charsetName;
-
- public string CharsetName {
- get { return charsetName; }
- }
+ public string CharsetName => charsetName;
public SequenceModel(
byte[] charToOrderMap,
byte[] precedenceMatrix,
float typicalPositiveRatio,
bool keepEnglishLetter,
- String charsetName)
+ string charsetName)
{
this.charToOrderMap = charToOrderMap;
this.precedenceMatrix = precedenceMatrix;
diff --git a/Emby.Server.Implementations/Udp/UdpServer.cs b/Emby.Server.Implementations/Udp/UdpServer.cs
index 7db814c4a..7a59d95bf 100644
--- a/Emby.Server.Implementations/Udp/UdpServer.cs
+++ b/Emby.Server.Implementations/Udp/UdpServer.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller;
+using MediaBrowser.Controller;
using MediaBrowser.Model.ApiClient;
using Microsoft.Extensions.Logging;
using MediaBrowser.Model.Serialization;
@@ -169,6 +169,7 @@ namespace Emby.Server.Implementations.Udp
}
catch (ObjectDisposedException)
{
+ //TODO Investigate and properly fix.
}
catch (Exception ex)
{
@@ -191,6 +192,7 @@ namespace Emby.Server.Implementations.Udp
}
catch (ObjectDisposedException)
{
+ //TODO Investigate and properly fix.
}
catch (Exception ex)
{
@@ -263,12 +265,12 @@ namespace Emby.Server.Implementations.Udp
if (bytes == null)
{
- throw new ArgumentNullException("bytes");
+ throw new ArgumentNullException(nameof(bytes));
}
if (remoteEndPoint == null)
{
- throw new ArgumentNullException("remoteEndPoint");
+ throw new ArgumentNullException(nameof(remoteEndPoint));
}
try
diff --git a/Emby.Server.Implementations/Updates/InstallationManager.cs b/Emby.Server.Implementations/Updates/InstallationManager.cs
index 4943d0ccc..0d5d723b7 100644
--- a/Emby.Server.Implementations/Updates/InstallationManager.cs
+++ b/Emby.Server.Implementations/Updates/InstallationManager.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.IO;
@@ -42,10 +42,7 @@ namespace Emby.Server.Implementations.Updates
/// </summary>
private ConcurrentBag<InstallationInfo> CompletedInstallationsInternal { get; set; }
- public IEnumerable<InstallationInfo> CompletedInstallations
- {
- get { return CompletedInstallationsInternal; }
- }
+ public IEnumerable<InstallationInfo> CompletedInstallations => CompletedInstallationsInternal;
#region PluginUninstalled Event
/// <summary>
@@ -129,7 +126,7 @@ namespace Emby.Server.Implementations.Updates
{
if (logger == null)
{
- throw new ArgumentNullException("logger");
+ throw new ArgumentNullException(nameof(logger));
}
CurrentInstallations = new List<Tuple<InstallationInfo, CancellationTokenSource>>();
@@ -147,7 +144,7 @@ namespace Emby.Server.Implementations.Updates
_logger = logger;
}
- private Version GetPackageVersion(PackageVersionInfo version)
+ private static Version GetPackageVersion(PackageVersionInfo version)
{
return new Version(ValueOrDefault(version.versionStr, "0.0.0.1"));
}
@@ -214,7 +211,7 @@ namespace Emby.Server.Implementations.Updates
{
Url = "https://www.mb3admin.local/admin/service/EmbyPackages.json",
CancellationToken = cancellationToken,
- Progress = new SimpleProgress<Double>(),
+ Progress = new SimpleProgress<double>(),
CacheLength = GetCacheLength(),
CacheMode = CacheMode.Unconditional
@@ -232,7 +229,7 @@ namespace Emby.Server.Implementations.Updates
return _applicationHost.SystemUpdateLevel;
}
- private TimeSpan GetCacheLength()
+ private static TimeSpan GetCacheLength()
{
return TimeSpan.FromMinutes(3);
}
@@ -313,7 +310,7 @@ namespace Emby.Server.Implementations.Updates
/// <param name="packageVersionInfo">The package version info.</param>
/// <param name="currentServerVersion">The current server version.</param>
/// <returns><c>true</c> if [is package version up to date] [the specified package version info]; otherwise, <c>false</c>.</returns>
- private bool IsPackageVersionUpToDate(PackageVersionInfo packageVersionInfo, Version currentServerVersion)
+ private static bool IsPackageVersionUpToDate(PackageVersionInfo packageVersionInfo, Version currentServerVersion)
{
if (string.IsNullOrEmpty(packageVersionInfo.requiredVersionStr))
{
@@ -423,12 +420,12 @@ namespace Emby.Server.Implementations.Updates
{
if (package == null)
{
- throw new ArgumentNullException("package");
+ throw new ArgumentNullException(nameof(package));
}
if (progress == null)
{
- throw new ArgumentNullException("progress");
+ throw new ArgumentNullException(nameof(progress));
}
var installationInfo = new InstallationInfo
@@ -587,7 +584,7 @@ namespace Emby.Server.Implementations.Updates
{
using (var stream = _fileSystem.OpenRead(tempFile))
{
- var check = Guid.Parse(BitConverter.ToString(_cryptographyProvider.ComputeMD5(stream)).Replace("-", String.Empty));
+ var check = Guid.Parse(BitConverter.ToString(_cryptographyProvider.ComputeMD5(stream)).Replace("-", string.Empty));
if (check != packageChecksum)
{
throw new Exception(string.Format("Download validation failed for {0}. Probably corrupted during transfer.", package.name));
diff --git a/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs b/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs
index c75033261..95b2e65be 100644
--- a/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs
+++ b/Emby.Server.Implementations/UserViews/DynamicImageProvider.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Configuration;
+using MediaBrowser.Common.Configuration;
using MediaBrowser.Controller.Drawing;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
@@ -112,7 +112,7 @@ namespace Emby.Server.Implementations.UserViews
return false;
}
- private bool IsUsingCollectionStrip(UserView view)
+ private static bool IsUsingCollectionStrip(UserView view)
{
string[] collectionStripViewTypes =
{
diff --git a/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs b/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs
index 72f1630b7..aa4840664 100644
--- a/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs
+++ b/Emby.XmlTv/Emby.XmlTv/Classes/XmlTvReader.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
@@ -32,7 +32,7 @@ namespace Emby.XmlTv.Classes
_language = language;
}
- private XmlReader CreateXmlTextReader(string path)
+ private static XmlReader CreateXmlTextReader(string path)
{
XmlReaderSettings settings = new XmlReaderSettings();
@@ -315,7 +315,7 @@ namespace Emby.XmlTv.Classes
if (reader.NodeType == XmlNodeType.Element)
{
var language = reader.GetAttribute("lang");
- if (!String.IsNullOrEmpty(language))
+ if (!string.IsNullOrEmpty(language))
{
if (!results.ContainsKey(language))
{
@@ -780,7 +780,7 @@ namespace Emby.XmlTv.Classes
var isPopulated = false;
var source = reader.GetAttribute("src");
- if (!String.IsNullOrEmpty(source))
+ if (!string.IsNullOrEmpty(source))
{
result.Source = source;
isPopulated = true;
@@ -788,7 +788,7 @@ namespace Emby.XmlTv.Classes
var widthString = reader.GetAttribute("width");
var width = 0;
- if (!String.IsNullOrEmpty(widthString) && Int32.TryParse(widthString, out width))
+ if (!string.IsNullOrEmpty(widthString) && int.TryParse(widthString, out width))
{
result.Width = width;
isPopulated = true;
@@ -796,7 +796,7 @@ namespace Emby.XmlTv.Classes
var heightString = reader.GetAttribute("height");
var height = 0;
- if (!String.IsNullOrEmpty(heightString) && Int32.TryParse(heightString, out height))
+ if (!string.IsNullOrEmpty(heightString) && int.TryParse(heightString, out height))
{
result.Height = height;
isPopulated = true;
@@ -971,7 +971,7 @@ namespace Emby.XmlTv.Classes
while (reader.Name == currentElementName)
{
var language = reader.GetAttribute("lang");
- if (String.IsNullOrEmpty(_language) || String.IsNullOrEmpty(language) || language == _language)
+ if (string.IsNullOrEmpty(_language) || string.IsNullOrEmpty(language) || language == _language)
{
setter(reader.ReadElementContentAsString());
}
@@ -1032,7 +1032,7 @@ namespace Emby.XmlTv.Classes
if (match.Success)
{
dateComponent = match.Groups["dateDigits"].Value;
- if (!String.IsNullOrEmpty(match.Groups["dateOffset"].Value))
+ if (!string.IsNullOrEmpty(match.Groups["dateOffset"].Value))
{
dateOffset = match.Groups["dateOffset"].Value; // Add in the colon to ease parsing later
if (dateOffset.Length == 5)
@@ -1052,7 +1052,7 @@ namespace Emby.XmlTv.Classes
dateComponent = dateComponent + completeDate.Substring(dateComponent.Length, completeDate.Length - dateComponent.Length);
}
- var standardDate = String.Format("{0} {1}", dateComponent, dateOffset);
+ var standardDate = string.Format("{0} {1}", dateComponent, dateOffset);
DateTimeOffset parsedDateTime;
if (DateTimeOffset.TryParseExact(standardDate, "yyyyMMddHHmmss zzz", CultureInfo.CurrentCulture, DateTimeStyles.None, out parsedDateTime))
{
@@ -1086,7 +1086,7 @@ namespace Emby.XmlTv.Classes
dateComponent = dateComponent + completeDate.Substring(dateComponent.Length, completeDate.Length - dateComponent.Length);
}
- return String.Format("{0} {1}", dateComponent, dateOffset);
+ return string.Format("{0} {1}", dateComponent, dateOffset);
}
}
}
diff --git a/Emby.XmlTv/Emby.XmlTv/Emby.XmlTv.csproj b/Emby.XmlTv/Emby.XmlTv/Emby.XmlTv.csproj
index b10551b99..41dd9dd97 100644
--- a/Emby.XmlTv/Emby.XmlTv/Emby.XmlTv.csproj
+++ b/Emby.XmlTv/Emby.XmlTv/Emby.XmlTv.csproj
@@ -6,4 +6,8 @@
<GenerateAssemblyInfo>false</GenerateAssemblyInfo>
</PropertyGroup>
+ <ItemGroup>
+ <Compile Include="..\..\SharedVersion.cs" Link="SharedVersion.cs" />
+ </ItemGroup>
+
</Project>
diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvChannel.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvChannel.cs
index 632a9945f..2240fd9d4 100644
--- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvChannel.cs
+++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvChannel.cs
@@ -5,9 +5,9 @@ namespace Emby.XmlTv.Entities
{
public class XmlTvChannel : IEquatable<XmlTvChannel>
{
- public String Id { get; set; }
- public String DisplayName { get; set; }
- public String Number { get; set; }
+ public string Id { get; set; }
+ public string DisplayName { get; set; }
+ public string Number { get; set; }
public string Url { get; set; }
public XmlTvIcon Icon { get; set; }
diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCredit.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCredit.cs
index af9c82d3f..0077a3e6e 100644
--- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCredit.cs
+++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvCredit.cs
@@ -9,7 +9,7 @@ namespace Emby.XmlTv.Entities
public override string ToString()
{
- return String.Format("{0} - ({1})", Name, Type);
+ return string.Format("{0} - ({1})", Name, Type);
}
}
}
diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvEpisode.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvEpisode.cs
index 98a035467..de84ab5ba 100644
--- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvEpisode.cs
+++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvEpisode.cs
@@ -27,7 +27,7 @@ namespace Emby.XmlTv.Entities
if (Episode.HasValue || EpisodeCount.HasValue)
{
- builder.Append(builder.Length > 0 ? ", " : String.Empty);
+ builder.Append(builder.Length > 0 ? ", " : string.Empty);
builder.AppendFormat("Episode {0}", Episode.HasValue ? Episode.Value.ToString() : "?");
if (EpisodeCount.HasValue)
{
@@ -37,7 +37,7 @@ namespace Emby.XmlTv.Entities
if (Part.HasValue || PartCount.HasValue)
{
- builder.Append(builder.Length > 0 ? ", " : String.Empty);
+ builder.Append(builder.Length > 0 ? ", " : string.Empty);
builder.AppendFormat("Part {0}", Part.HasValue ? Part.Value.ToString() : "?");
if (PartCount.HasValue)
{
diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvIcon.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvIcon.cs
index d0a91cabf..3417a717b 100644
--- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvIcon.cs
+++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvIcon.cs
@@ -5,9 +5,9 @@ namespace Emby.XmlTv.Entities
{
public class XmlTvIcon
{
- public String Source { get; set; }
- public Int32? Width { get; set; }
- public Int32? Height { get; set; }
+ public string Source { get; set; }
+ public int? Width { get; set; }
+ public int? Height { get; set; }
public override string ToString()
{
diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvLanguage.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvLanguage.cs
index 41c4cedb8..fea387244 100644
--- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvLanguage.cs
+++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvLanguage.cs
@@ -7,11 +7,11 @@ namespace Emby.XmlTv.Entities
/// <summary>
/// The name.
/// </summary>
- public String Name { get; set; }
+ public string Name { get; set; }
/// <summary>
/// The relevance (number of occurances) of the language, can be used to order (desc)
/// </summary>
- public Int32 Relevance { get; set; }
+ public int Relevance { get; set; }
}
}
diff --git a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvRating.cs b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvRating.cs
index e55e70701..381294e7e 100644
--- a/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvRating.cs
+++ b/Emby.XmlTv/Emby.XmlTv/Entities/XmlTvRating.cs
@@ -14,7 +14,7 @@ namespace Emby.XmlTv.Entities
/// The literal name of the rating system
/// </summary>
/// <example>MPAA</example>
- public String System { get; set; }
+ public string System { get; set; }
/// <summary>
/// Describes the rating using the system specificed
@@ -25,12 +25,12 @@ namespace Emby.XmlTv.Entities
public override string ToString()
{
var builder = new StringBuilder();
- if (!String.IsNullOrEmpty(Value))
+ if (!string.IsNullOrEmpty(Value))
{
builder.Append(Value);
}
- if (!String.IsNullOrEmpty(System))
+ if (!string.IsNullOrEmpty(System))
{
builder.AppendFormat(" ({0})", System);
}
diff --git a/Emby.XmlTv/Emby.XmlTv/Properties/AssemblyInfo.cs b/Emby.XmlTv/Emby.XmlTv/Properties/AssemblyInfo.cs
index d85258419..ff2efb078 100644
--- a/Emby.XmlTv/Emby.XmlTv/Properties/AssemblyInfo.cs
+++ b/Emby.XmlTv/Emby.XmlTv/Properties/AssemblyInfo.cs
@@ -1,5 +1,5 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -8,25 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("XmlTv")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("XmlTv")]
-[assembly: AssemblyCopyright("Copyright © 2015")]
+[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)]
-
-// 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")]
diff --git a/Jellyfin.Server/Properties/AssemblyInfo.cs b/Jellyfin.Server/Properties/AssemblyInfo.cs
new file mode 100644
index 000000000..1934b6bc1
--- /dev/null
+++ b/Jellyfin.Server/Properties/AssemblyInfo.cs
@@ -0,0 +1,21 @@
+using System.Reflection;
+using System.Resources;
+using System.Runtime.InteropServices;
+
+// 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")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[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)]
diff --git a/Jellyfin.Server/SocketSharp/RequestMono.cs b/Jellyfin.Server/SocketSharp/RequestMono.cs
index 81ccef550..4c3d8d1d5 100644
--- a/Jellyfin.Server/SocketSharp/RequestMono.cs
+++ b/Jellyfin.Server/SocketSharp/RequestMono.cs
@@ -138,7 +138,7 @@ namespace Jellyfin.SocketSharp
if (v.Length > 20)
v = v.Substring(0, 16) + "...\"";
- string msg = String.Format("A potentially dangerous Request.{0} value was " +
+ string msg = string.Format("A potentially dangerous Request.{0} value was " +
"detected from the client ({1}={2}).", name, key, v);
throw new Exception(msg);
@@ -328,13 +328,13 @@ namespace Jellyfin.SocketSharp
public override int Read(byte[] buffer, int dest_offset, int count)
{
if (buffer == null)
- throw new ArgumentNullException("buffer");
+ throw new ArgumentNullException(nameof(buffer));
if (dest_offset < 0)
- throw new ArgumentOutOfRangeException("dest_offset", "< 0");
+ throw new ArgumentOutOfRangeException(nameof(dest_offset), "< 0");
if (count < 0)
- throw new ArgumentOutOfRangeException("count", "< 0");
+ throw new ArgumentOutOfRangeException(nameof(count), "< 0");
int len = buffer.Length;
if (dest_offset > len)
diff --git a/Jellyfin.Server/SocketSharp/SharpWebSocket.cs b/Jellyfin.Server/SocketSharp/SharpWebSocket.cs
index 77de50267..7101f83d9 100644
--- a/Jellyfin.Server/SocketSharp/SharpWebSocket.cs
+++ b/Jellyfin.Server/SocketSharp/SharpWebSocket.cs
@@ -29,12 +29,12 @@ namespace Jellyfin.SocketSharp
{
if (socket == null)
{
- throw new ArgumentNullException("socket");
+ throw new ArgumentNullException(nameof(socket));
}
if (logger == null)
{
- throw new ArgumentNullException("logger");
+ throw new ArgumentNullException(nameof(logger));
}
_logger = logger;
diff --git a/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs b/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs
index c360a8fce..468c4c5ca 100644
--- a/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs
+++ b/Jellyfin.Server/SocketSharp/WebSocketSharpListener.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Security.Cryptography.X509Certificates;
using System.Threading;
@@ -202,6 +202,7 @@ namespace Jellyfin.SocketSharp
}
catch (ObjectDisposedException)
{
+ //TODO Investigate and properly fix.
}
catch (Exception ex)
{
diff --git a/Jellyfin.Server/SocketSharp/WebSocketSharpRequest.cs b/Jellyfin.Server/SocketSharp/WebSocketSharpRequest.cs
index 7c9dc8f88..149842bd4 100644
--- a/Jellyfin.Server/SocketSharp/WebSocketSharpRequest.cs
+++ b/Jellyfin.Server/SocketSharp/WebSocketSharpRequest.cs
@@ -82,7 +82,7 @@ namespace Jellyfin.SocketSharp
{
get
{
- return String.IsNullOrEmpty(request.Headers["X-Forwarded-For"]) ? null : request.Headers["X-Forwarded-For"];
+ return string.IsNullOrEmpty(request.Headers["X-Forwarded-For"]) ? null : request.Headers["X-Forwarded-For"];
}
}
@@ -106,7 +106,7 @@ namespace Jellyfin.SocketSharp
{
get
{
- return String.IsNullOrEmpty(request.Headers["X-Real-IP"]) ? null : request.Headers["X-Real-IP"];
+ return string.IsNullOrEmpty(request.Headers["X-Real-IP"]) ? null : request.Headers["X-Real-IP"];
}
}
diff --git a/MediaBrowser.Api/ApiEntryPoint.cs b/MediaBrowser.Api/ApiEntryPoint.cs
index 7f7e48a3a..ef782ddfc 100644
--- a/MediaBrowser.Api/ApiEntryPoint.cs
+++ b/MediaBrowser.Api/ApiEntryPoint.cs
@@ -388,7 +388,7 @@ namespace MediaBrowser.Api
{
if (string.IsNullOrEmpty(playSessionId))
{
- throw new ArgumentNullException("playSessionId");
+ throw new ArgumentNullException(nameof(playSessionId));
}
//Logger.LogDebug("PingTranscodingJob PlaySessionId={0} isUsedPaused: {1}", playSessionId, isUserPaused);
diff --git a/MediaBrowser.Api/EnvironmentService.cs b/MediaBrowser.Api/EnvironmentService.cs
index 6794a9304..d67867820 100644
--- a/MediaBrowser.Api/EnvironmentService.cs
+++ b/MediaBrowser.Api/EnvironmentService.cs
@@ -124,7 +124,7 @@ namespace MediaBrowser.Api
{
if (networkManager == null)
{
- throw new ArgumentNullException("networkManager");
+ throw new ArgumentNullException(nameof(networkManager));
}
_networkManager = networkManager;
@@ -193,7 +193,7 @@ namespace MediaBrowser.Api
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("Path");
+ throw new ArgumentNullException(nameof(Path));
}
var networkPrefix = UncSeparatorString + UncSeparatorString;
diff --git a/MediaBrowser.Api/Library/LibraryStructureService.cs b/MediaBrowser.Api/Library/LibraryStructureService.cs
index bba89acec..cd839e0f8 100644
--- a/MediaBrowser.Api/Library/LibraryStructureService.cs
+++ b/MediaBrowser.Api/Library/LibraryStructureService.cs
@@ -192,7 +192,7 @@ namespace MediaBrowser.Api.Library
{
if (appPaths == null)
{
- throw new ArgumentNullException("appPaths");
+ throw new ArgumentNullException(nameof(appPaths));
}
_appPaths = appPaths;
@@ -244,12 +244,12 @@ namespace MediaBrowser.Api.Library
{
if (string.IsNullOrWhiteSpace(request.Name))
{
- throw new ArgumentNullException("request");
+ throw new ArgumentNullException(nameof(request));
}
if (string.IsNullOrWhiteSpace(request.NewName))
{
- throw new ArgumentNullException("request");
+ throw new ArgumentNullException(nameof(request));
}
var rootFolderPath = _appPaths.DefaultUserViewsPath;
@@ -322,7 +322,7 @@ namespace MediaBrowser.Api.Library
{
if (string.IsNullOrWhiteSpace(request.Name))
{
- throw new ArgumentNullException("request");
+ throw new ArgumentNullException(nameof(request));
}
_libraryMonitor.Stop();
@@ -370,7 +370,7 @@ namespace MediaBrowser.Api.Library
{
if (string.IsNullOrWhiteSpace(request.Name))
{
- throw new ArgumentNullException("request");
+ throw new ArgumentNullException(nameof(request));
}
_libraryManager.UpdateMediaPath(request.Name, request.PathInfo);
@@ -384,7 +384,7 @@ namespace MediaBrowser.Api.Library
{
if (string.IsNullOrWhiteSpace(request.Name))
{
- throw new ArgumentNullException("request");
+ throw new ArgumentNullException(nameof(request));
}
_libraryMonitor.Stop();
diff --git a/MediaBrowser.Api/LiveTv/LiveTvService.cs b/MediaBrowser.Api/LiveTv/LiveTvService.cs
index ef9ce9aec..fc645898c 100644
--- a/MediaBrowser.Api/LiveTv/LiveTvService.cs
+++ b/MediaBrowser.Api/LiveTv/LiveTvService.cs
@@ -1030,7 +1030,7 @@ namespace MediaBrowser.Api.LiveTv
query.IsKids = request.IsKids;
query.IsSports = request.IsSports;
query.SeriesTimerId = request.SeriesTimerId;
- query.Genres = (request.Genres ?? String.Empty).Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
+ query.Genres = (request.Genres ?? string.Empty).Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
query.GenreIds = GetGuids(request.GenreIds);
if (!request.LibrarySeriesId.Equals(Guid.Empty))
diff --git a/MediaBrowser.Api/Playback/BaseStreamingService.cs b/MediaBrowser.Api/Playback/BaseStreamingService.cs
index 9cddcde49..ba7f7070b 100644
--- a/MediaBrowser.Api/Playback/BaseStreamingService.cs
+++ b/MediaBrowser.Api/Playback/BaseStreamingService.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Extensions;
+using MediaBrowser.Common.Extensions;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Devices;
using MediaBrowser.Controller.Dlna;
@@ -595,8 +595,10 @@ namespace MediaBrowser.Api.Playback
/// <param name="request">The stream request.</param>
private void ParseStreamOptions(StreamRequest request)
{
- foreach (var param in Request.QueryString) {
- if (Char.IsLower(param.Name[0])) {
+ foreach (var param in Request.QueryString)
+ {
+ if (char.IsLower(param.Name[0]))
+ {
// This was probably not parsed initially and should be a StreamOptions
// TODO: This should be incorporated either in the lower framework for parsing requests
// or the generated URL should correctly serialize it
diff --git a/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs b/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs
index 954963b2f..3e17d0b74 100644
--- a/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs
+++ b/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs
@@ -269,7 +269,7 @@ namespace MediaBrowser.Api.Playback.Hls
{
var outputTsArg = Path.Combine(FileSystem.GetDirectoryName(outputPath), Path.GetFileNameWithoutExtension(outputPath)) + "%d" + GetSegmentFileExtension(state.Request);
- var timeDeltaParam = String.Empty;
+ var timeDeltaParam = string.Empty;
var segmentFormat = GetSegmentFileExtension(state.Request).TrimStart('.');
if (string.Equals(segmentFormat, "ts", StringComparison.OrdinalIgnoreCase))
diff --git a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
index 5361e313c..ff3712f8a 100644
--- a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
+++ b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs
@@ -934,7 +934,7 @@ namespace MediaBrowser.Api.Playback.Hls
var outputTsArg = Path.Combine(FileSystem.GetDirectoryName(outputPath), Path.GetFileNameWithoutExtension(outputPath)) + "%d" + GetSegmentFileExtension(state.Request);
- var timeDeltaParam = String.Empty;
+ var timeDeltaParam = string.Empty;
if (isEncoding && startNumber > 0)
{
diff --git a/MediaBrowser.Api/Playback/MediaInfoService.cs b/MediaBrowser.Api/Playback/MediaInfoService.cs
index a0b0b2ced..b0154cc7e 100644
--- a/MediaBrowser.Api/Playback/MediaInfoService.cs
+++ b/MediaBrowser.Api/Playback/MediaInfoService.cs
@@ -262,6 +262,7 @@ namespace MediaBrowser.Api.Playback
catch (Exception ex)
{
mediaSources = new List<MediaSourceInfo>();
+ // TODO Log exception
// TODO PlaybackException ??
//result.ErrorCode = ex.ErrorCode;
}
diff --git a/MediaBrowser.Api/PluginService.cs b/MediaBrowser.Api/PluginService.cs
index 12488b712..c5a94e77c 100644
--- a/MediaBrowser.Api/PluginService.cs
+++ b/MediaBrowser.Api/PluginService.cs
@@ -155,7 +155,7 @@ namespace MediaBrowser.Api
{
if (jsonSerializer == null)
{
- throw new ArgumentNullException("jsonSerializer");
+ throw new ArgumentNullException(nameof(jsonSerializer));
}
_appHost = appHost;
diff --git a/MediaBrowser.Api/Properties/AssemblyInfo.cs b/MediaBrowser.Api/Properties/AssemblyInfo.cs
index 2755924c8..f86723031 100644
--- a/MediaBrowser.Api/Properties/AssemblyInfo.cs
+++ b/MediaBrowser.Api/Properties/AssemblyInfo.cs
@@ -1,4 +1,5 @@
-using System.Reflection;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,24 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("MediaBrowser.Api")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("MediaBrowser.Api")]
-[assembly: AssemblyCopyright("Copyright © 2012")]
+[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("13464b02-f033-48b8-9e1c-d071f8860935")]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-//
diff --git a/MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs b/MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs
index ef9b3c1ae..719e80082 100644
--- a/MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs
+++ b/MediaBrowser.Api/ScheduledTasks/ScheduledTaskService.cs
@@ -101,7 +101,7 @@ namespace MediaBrowser.Api.ScheduledTasks
{
if (taskManager == null)
{
- throw new ArgumentNullException("taskManager");
+ throw new ArgumentNullException(nameof(taskManager));
}
TaskManager = taskManager;
diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs
index aa17e85f3..e2febc25d 100644
--- a/MediaBrowser.Api/UserLibrary/ItemsService.cs
+++ b/MediaBrowser.Api/UserLibrary/ItemsService.cs
@@ -62,19 +62,19 @@ namespace MediaBrowser.Api.UserLibrary
{
if (userManager == null)
{
- throw new ArgumentNullException("userManager");
+ throw new ArgumentNullException(nameof(userManager));
}
if (libraryManager == null)
{
- throw new ArgumentNullException("libraryManager");
+ throw new ArgumentNullException(nameof(libraryManager));
}
if (localization == null)
{
- throw new ArgumentNullException("localization");
+ throw new ArgumentNullException(nameof(localization));
}
if (dtoService == null)
{
- throw new ArgumentNullException("dtoService");
+ throw new ArgumentNullException(nameof(dtoService));
}
_userManager = userManager;
@@ -143,7 +143,7 @@ namespace MediaBrowser.Api.UserLibrary
{
if (request == null)
{
- throw new ArgumentNullException("request");
+ throw new ArgumentNullException(nameof(request));
}
var result = GetItems(request);
diff --git a/MediaBrowser.Common/Plugins/BasePlugin.cs b/MediaBrowser.Common/Plugins/BasePlugin.cs
index 82eb6ba4b..2fdee381d 100644
--- a/MediaBrowser.Common/Plugins/BasePlugin.cs
+++ b/MediaBrowser.Common/Plugins/BasePlugin.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Configuration;
+using MediaBrowser.Common.Configuration;
using MediaBrowser.Model.Plugins;
using MediaBrowser.Model.Serialization;
using System;
@@ -241,7 +241,7 @@ namespace MediaBrowser.Common.Plugins
{
if (configuration == null)
{
- throw new ArgumentNullException("configuration");
+ throw new ArgumentNullException(nameof(configuration));
}
Configuration = (TConfigurationType)configuration;
diff --git a/MediaBrowser.Common/Properties/AssemblyInfo.cs b/MediaBrowser.Common/Properties/AssemblyInfo.cs
index 1a7112ad9..1a8fdb618 100644
--- a/MediaBrowser.Common/Properties/AssemblyInfo.cs
+++ b/MediaBrowser.Common/Properties/AssemblyInfo.cs
@@ -1,4 +1,5 @@
-using System.Reflection;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,21 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("MediaBrowser.Common")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("MediaBrowser.Common")]
-[assembly: AssemblyCopyright("Copyright © 2012")]
+[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)]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-// \ No newline at end of file
diff --git a/MediaBrowser.Controller/Authentication/AuthenticationResult.cs b/MediaBrowser.Controller/Authentication/AuthenticationResult.cs
index 6dd8f02d8..3c65156e3 100644
--- a/MediaBrowser.Controller/Authentication/AuthenticationResult.cs
+++ b/MediaBrowser.Controller/Authentication/AuthenticationResult.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Session;
+using MediaBrowser.Controller.Session;
using MediaBrowser.Model.Dto;
diff --git a/MediaBrowser.Controller/Channels/IChannelManager.cs b/MediaBrowser.Controller/Channels/IChannelManager.cs
index a9839e1fb..b345001a6 100644
--- a/MediaBrowser.Controller/Channels/IChannelManager.cs
+++ b/MediaBrowser.Controller/Channels/IChannelManager.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Model.Channels;
using MediaBrowser.Model.Dto;
@@ -46,14 +46,12 @@ namespace MediaBrowser.Controller.Channels
/// Gets the channels internal.
/// </summary>
/// <param name="query">The query.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
QueryResult<Channel> GetChannelsInternal(ChannelQuery query);
/// <summary>
/// Gets the channels.
/// </summary>
/// <param name="query">The query.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
QueryResult<BaseItemDto> GetChannels(ChannelQuery query);
/// <summary>
diff --git a/MediaBrowser.Controller/Entities/AggregateFolder.cs b/MediaBrowser.Controller/Entities/AggregateFolder.cs
index a4601c270..6425fa41b 100644
--- a/MediaBrowser.Controller/Entities/AggregateFolder.cs
+++ b/MediaBrowser.Controller/Entities/AggregateFolder.cs
@@ -187,7 +187,7 @@ namespace MediaBrowser.Controller.Entities
{
if (child == null)
{
- throw new ArgumentNullException();
+ throw new ArgumentNullException(nameof(child));
}
_virtualChildren.Add(child);
@@ -203,7 +203,7 @@ namespace MediaBrowser.Controller.Entities
{
if (id.Equals(Guid.Empty))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
foreach (var child in _virtualChildren)
diff --git a/MediaBrowser.Controller/Entities/BaseItem.cs b/MediaBrowser.Controller/Entities/BaseItem.cs
index 4703b9d40..8298f4087 100644
--- a/MediaBrowser.Controller/Entities/BaseItem.cs
+++ b/MediaBrowser.Controller/Entities/BaseItem.cs
@@ -1139,7 +1139,7 @@ namespace MediaBrowser.Controller.Entities
{
if (item == null)
{
- throw new ArgumentNullException("media");
+ throw new ArgumentNullException(nameof(item));
}
var protocol = item.PathProtocol;
@@ -1756,7 +1756,7 @@ namespace MediaBrowser.Controller.Entities
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
if (!IsVisibleViaTags(user))
@@ -1906,7 +1906,7 @@ namespace MediaBrowser.Controller.Entities
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
return IsParentalAllowed(user);
@@ -2087,7 +2087,7 @@ namespace MediaBrowser.Controller.Entities
{
if (string.IsNullOrEmpty(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
var current = Studios;
@@ -2120,7 +2120,7 @@ namespace MediaBrowser.Controller.Entities
{
if (string.IsNullOrEmpty(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
var genres = Genres;
@@ -2146,7 +2146,7 @@ namespace MediaBrowser.Controller.Entities
{
if (user == null)
{
- throw new ArgumentNullException();
+ throw new ArgumentNullException(nameof(user));
}
var data = UserDataManager.GetUserData(user, this);
@@ -2181,7 +2181,7 @@ namespace MediaBrowser.Controller.Entities
{
if (user == null)
{
- throw new ArgumentNullException();
+ throw new ArgumentNullException(nameof(user));
}
var data = UserDataManager.GetUserData(user, this);
@@ -2579,7 +2579,7 @@ namespace MediaBrowser.Controller.Entities
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
var userdata = UserDataManager.GetUserData(user, this);
diff --git a/MediaBrowser.Controller/Entities/Extensions.cs b/MediaBrowser.Controller/Entities/Extensions.cs
index ee135a14e..91f78b902 100644
--- a/MediaBrowser.Controller/Entities/Extensions.cs
+++ b/MediaBrowser.Controller/Entities/Extensions.cs
@@ -17,7 +17,7 @@ namespace MediaBrowser.Controller.Entities
{
if (string.IsNullOrEmpty(url))
{
- throw new ArgumentNullException("url");
+ throw new ArgumentNullException(nameof(url));
}
var current = item.RemoteTrailers.FirstOrDefault(i => string.Equals(i.Url, url, StringComparison.OrdinalIgnoreCase));
diff --git a/MediaBrowser.Controller/Entities/Folder.cs b/MediaBrowser.Controller/Entities/Folder.cs
index a2522cf5d..d9952cea8 100644
--- a/MediaBrowser.Controller/Entities/Folder.cs
+++ b/MediaBrowser.Controller/Entities/Folder.cs
@@ -997,7 +997,7 @@ namespace MediaBrowser.Controller.Entities
{
if (items == null)
{
- throw new ArgumentNullException("items");
+ throw new ArgumentNullException(nameof(items));
}
if (CollapseBoxSetItems(query, queryParent, user, configurationManager))
@@ -1252,7 +1252,7 @@ namespace MediaBrowser.Controller.Entities
{
if (user == null)
{
- throw new ArgumentNullException();
+ throw new ArgumentNullException(nameof(user));
}
//the true root should return our users root folder children
@@ -1332,7 +1332,7 @@ namespace MediaBrowser.Controller.Entities
{
if (user == null)
{
- throw new ArgumentNullException("user");
+ throw new ArgumentNullException(nameof(user));
}
var result = new Dictionary<Guid, BaseItem>();
diff --git a/MediaBrowser.Controller/Entities/PeopleHelper.cs b/MediaBrowser.Controller/Entities/PeopleHelper.cs
index 9f85b2aea..d09ef3a15 100644
--- a/MediaBrowser.Controller/Entities/PeopleHelper.cs
+++ b/MediaBrowser.Controller/Entities/PeopleHelper.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Model.Entities;
+using MediaBrowser.Model.Entities;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -11,12 +11,12 @@ namespace MediaBrowser.Controller.Entities
{
if (person == null)
{
- throw new ArgumentNullException("person");
+ throw new ArgumentNullException(nameof(person));
}
if (string.IsNullOrEmpty(person.Name))
{
- throw new ArgumentNullException();
+ throw new ArgumentException("The person's name was empty or null.", nameof(person));
}
// Normalize
@@ -103,7 +103,7 @@ namespace MediaBrowser.Controller.Entities
{
if (string.IsNullOrEmpty(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
foreach (var i in people)
diff --git a/MediaBrowser.Controller/Entities/TagExtensions.cs b/MediaBrowser.Controller/Entities/TagExtensions.cs
index 84e61be4f..3e079a2a8 100644
--- a/MediaBrowser.Controller/Entities/TagExtensions.cs
+++ b/MediaBrowser.Controller/Entities/TagExtensions.cs
@@ -9,7 +9,7 @@ namespace MediaBrowser.Controller.Entities
{
if (string.IsNullOrWhiteSpace(name))
{
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
}
var current = item.Tags;
diff --git a/MediaBrowser.Controller/Entities/User.cs b/MediaBrowser.Controller/Entities/User.cs
index 1cecfe44e..57e3210a1 100644
--- a/MediaBrowser.Controller/Entities/User.cs
+++ b/MediaBrowser.Controller/Entities/User.cs
@@ -182,7 +182,7 @@ namespace MediaBrowser.Controller.Entities
{
if (string.IsNullOrEmpty(newName))
{
- throw new ArgumentNullException("newName");
+ throw new ArgumentNullException(nameof(newName));
}
// If only the casing is changing, leave the file system alone
@@ -259,7 +259,7 @@ namespace MediaBrowser.Controller.Entities
{
if (string.IsNullOrEmpty(username))
{
- throw new ArgumentNullException("username");
+ throw new ArgumentNullException(nameof(username));
}
var safeFolderName = FileSystem.GetValidFilename(username);
diff --git a/MediaBrowser.Controller/Entities/UserItemData.cs b/MediaBrowser.Controller/Entities/UserItemData.cs
index fd118be9e..9bd58417a 100644
--- a/MediaBrowser.Controller/Entities/UserItemData.cs
+++ b/MediaBrowser.Controller/Entities/UserItemData.cs
@@ -41,7 +41,7 @@ namespace MediaBrowser.Controller.Entities
{
if (value.Value < 0 || value.Value > 10)
{
- throw new ArgumentOutOfRangeException("value", "A 0 to 10 rating is required for UserItemData.");
+ throw new ArgumentOutOfRangeException(nameof(value), "A 0 to 10 rating is required for UserItemData.");
}
}
diff --git a/MediaBrowser.Controller/Entities/UserRootFolder.cs b/MediaBrowser.Controller/Entities/UserRootFolder.cs
index f8e843d92..abfcd7984 100644
--- a/MediaBrowser.Controller/Entities/UserRootFolder.cs
+++ b/MediaBrowser.Controller/Entities/UserRootFolder.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Model.Serialization;
+using MediaBrowser.Model.Serialization;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Library;
using MediaBrowser.Model.Querying;
@@ -78,7 +78,7 @@ namespace MediaBrowser.Controller.Entities
return new QueryResult<BaseItem>
{
TotalRecordCount = totalCount,
- Items = itemsArray
+ Items = itemsArray //TODO Fix The co-variant conversion between Folder[] and BaseItem[], this can generate runtime issues.
};
}
diff --git a/MediaBrowser.Controller/Entities/UserViewBuilder.cs b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
index b50a12d52..284ff2a53 100644
--- a/MediaBrowser.Controller/Entities/UserViewBuilder.cs
+++ b/MediaBrowser.Controller/Entities/UserViewBuilder.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities.Audio;
+using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Entities.Movies;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Library;
@@ -412,7 +412,7 @@ namespace MediaBrowser.Controller.Entities
{
return new QueryResult<BaseItem>
{
- Items = result.Items,
+ Items = result.Items, //TODO Fix The co-variant conversion between T[] and BaseItem[], this can generate runtime issues if T is not BaseItem.
TotalRecordCount = result.TotalRecordCount
};
}
diff --git a/MediaBrowser.Controller/IO/FileData.cs b/MediaBrowser.Controller/IO/FileData.cs
index c0cf51ab2..a95d562a2 100644
--- a/MediaBrowser.Controller/IO/FileData.cs
+++ b/MediaBrowser.Controller/IO/FileData.cs
@@ -46,11 +46,11 @@ namespace MediaBrowser.Controller.IO
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (args == null)
{
- throw new ArgumentNullException("args");
+ throw new ArgumentNullException(nameof(args));
}
var entries = directoryService.GetFileSystemEntries(path);
diff --git a/MediaBrowser.Controller/Library/ILibraryManager.cs b/MediaBrowser.Controller/Library/ILibraryManager.cs
index d572716fa..cefa9ebdf 100644
--- a/MediaBrowser.Controller/Library/ILibraryManager.cs
+++ b/MediaBrowser.Controller/Library/ILibraryManager.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Providers;
@@ -163,7 +163,6 @@ namespace MediaBrowser.Controller.Library
/// Adds the parts.
/// </summary>
/// <param name="rules">The rules.</param>
- /// <param name="pluginFolders">The plugin folders.</param>
/// <param name="resolvers">The resolvers.</param>
/// <param name="introProviders">The intro providers.</param>
/// <param name="itemComparers">The item comparers.</param>
@@ -298,7 +297,7 @@ namespace MediaBrowser.Controller.Library
string name,
Guid parentId,
string viewType,
- string sortNamen);
+ string sortName);
/// <summary>
/// Gets the named view.
@@ -547,4 +546,4 @@ namespace MediaBrowser.Controller.Library
string videoPath,
string[] files);
}
-} \ No newline at end of file
+}
diff --git a/MediaBrowser.Controller/Library/ItemResolveArgs.cs b/MediaBrowser.Controller/Library/ItemResolveArgs.cs
index 238dd2880..4d1a4ed2f 100644
--- a/MediaBrowser.Controller/Library/ItemResolveArgs.cs
+++ b/MediaBrowser.Controller/Library/ItemResolveArgs.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Providers;
using System;
using System.Collections.Generic;
@@ -155,7 +155,7 @@ namespace MediaBrowser.Controller.Library
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException();
+ throw new ArgumentException("The path was empty or null.", nameof(path));
}
if (AdditionalLocations == null)
@@ -190,7 +190,7 @@ namespace MediaBrowser.Controller.Library
{
if (string.IsNullOrEmpty(name))
{
- throw new ArgumentNullException();
+ throw new ArgumentException("The name was empty or null.", nameof(name));
}
return GetFileSystemEntryByPath(System.IO.Path.Combine(Path, name));
@@ -206,7 +206,7 @@ namespace MediaBrowser.Controller.Library
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException();
+ throw new ArgumentException("The path was empty or null.", nameof(path));
}
foreach (var file in FileSystemChildren)
diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
index a6c437e62..5dca45c1e 100644
--- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
+++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Globalization;
using System.IO;
@@ -1137,7 +1137,7 @@ namespace MediaBrowser.Controller.MediaEncoding
/// <summary>
/// Gets the number of audio channels to specify on the command line
/// </summary>
- /// <param name="request">The request.</param>
+ /// <param name="state">The state.</param>
/// <param name="audioStream">The audio stream.</param>
/// <param name="outputAudioCodec">The output audio codec.</param>
/// <returns>System.Nullable{System.Int32}.</returns>
@@ -1908,11 +1908,11 @@ namespace MediaBrowser.Controller.MediaEncoding
{
if (state == null)
{
- throw new ArgumentNullException("state");
+ throw new ArgumentNullException(nameof(state));
}
if (mediaSource == null)
{
- throw new ArgumentNullException("mediaSource");
+ throw new ArgumentNullException(nameof(mediaSource));
}
var path = mediaSource.Path;
diff --git a/MediaBrowser.Controller/MediaEncoding/JobLogger.cs b/MediaBrowser.Controller/MediaEncoding/JobLogger.cs
index 8bb826bd1..0554822a8 100644
--- a/MediaBrowser.Controller/MediaEncoding/JobLogger.cs
+++ b/MediaBrowser.Controller/MediaEncoding/JobLogger.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Model.Extensions;
+using MediaBrowser.Model.Extensions;
using System;
using System.Globalization;
using System.IO;
@@ -39,6 +39,7 @@ namespace MediaBrowser.Controller.MediaEncoding
}
catch (ObjectDisposedException)
{
+ //TODO Investigate and properly fix.
// Don't spam the log. This doesn't seem to throw in windows, but sometimes under linux
}
catch (Exception ex)
diff --git a/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs b/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs
index 7bcd66e56..b97b2f97d 100644
--- a/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs
+++ b/MediaBrowser.Controller/Net/BasePeriodicWebSocketListener.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Model.Net;
+using MediaBrowser.Model.Net;
using MediaBrowser.Model.Threading;
using System.Collections.Generic;
using System.Globalization;
@@ -50,7 +50,7 @@ namespace MediaBrowser.Controller.Net
{
if (logger == null)
{
- throw new ArgumentNullException("logger");
+ throw new ArgumentNullException(nameof(logger));
}
Logger = logger;
@@ -65,7 +65,7 @@ namespace MediaBrowser.Controller.Net
{
if (message == null)
{
- throw new ArgumentNullException("message");
+ throw new ArgumentNullException(nameof(message));
}
if (string.Equals(message.MessageType, Name + "Start", StringComparison.OrdinalIgnoreCase))
@@ -269,7 +269,7 @@ namespace MediaBrowser.Controller.Net
}
catch (ObjectDisposedException)
{
-
+ //TODO Investigate and properly fix.
}
}
@@ -280,10 +280,13 @@ namespace MediaBrowser.Controller.Net
}
catch (ObjectDisposedException)
{
-
+ //TODO Investigate and properly fix.
}
- ActiveConnections.Remove(connection);
+ lock (ActiveConnections)
+ {
+ ActiveConnections.Remove(connection);
+ }
}
/// <summary>
diff --git a/MediaBrowser.Controller/Persistence/IUserRepository.cs b/MediaBrowser.Controller/Persistence/IUserRepository.cs
index 2817c4255..7d56924b6 100644
--- a/MediaBrowser.Controller/Persistence/IUserRepository.cs
+++ b/MediaBrowser.Controller/Persistence/IUserRepository.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using System.Collections.Generic;
using System.Threading;
@@ -13,7 +13,6 @@ namespace MediaBrowser.Controller.Persistence
/// Deletes the user.
/// </summary>
/// <param name="user">The user.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
void DeleteUser(User user);
diff --git a/MediaBrowser.Controller/Properties/AssemblyInfo.cs b/MediaBrowser.Controller/Properties/AssemblyInfo.cs
index a28296c18..007a1d739 100644
--- a/MediaBrowser.Controller/Properties/AssemblyInfo.cs
+++ b/MediaBrowser.Controller/Properties/AssemblyInfo.cs
@@ -1,4 +1,5 @@
-using System.Reflection;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,21 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("MediaBrowser.Controller")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("MediaBrowser.Controller")]
-[assembly: AssemblyCopyright("Copyright © 2012")]
+[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)]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-// \ No newline at end of file
diff --git a/MediaBrowser.Controller/Security/IAuthenticationRepository.cs b/MediaBrowser.Controller/Security/IAuthenticationRepository.cs
index 2843c6b73..4f454f895 100644
--- a/MediaBrowser.Controller/Security/IAuthenticationRepository.cs
+++ b/MediaBrowser.Controller/Security/IAuthenticationRepository.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Model.Devices;
+using MediaBrowser.Model.Devices;
using MediaBrowser.Model.Querying;
using System.Threading;
@@ -10,7 +10,6 @@ namespace MediaBrowser.Controller.Security
/// Creates the specified information.
/// </summary>
/// <param name="info">The information.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
void Create(AuthenticationInfo info);
@@ -18,7 +17,6 @@ namespace MediaBrowser.Controller.Security
/// Updates the specified information.
/// </summary>
/// <param name="info">The information.</param>
- /// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task.</returns>
void Update(AuthenticationInfo info);
diff --git a/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs b/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs
index e46709b78..890ceee31 100644
--- a/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs
+++ b/MediaBrowser.LocalMetadata/Images/LocalImageProvider.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Entities;
+using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.Audio;
using MediaBrowser.Controller.Entities.TV;
using MediaBrowser.Controller.Providers;
@@ -63,7 +63,7 @@ namespace MediaBrowser.LocalMetadata.Images
return false;
}
- private IEnumerable<FileSystemMetadata> GetFiles(BaseItem item, bool includeDirectories, IDirectoryService directoryService)
+ private static IEnumerable<FileSystemMetadata> GetFiles(BaseItem item, bool includeDirectories, IDirectoryService directoryService)
{
if (!item.IsFileProtocol)
{
diff --git a/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs b/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs
index c22ca4d60..c3960bc8b 100644
--- a/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs
+++ b/MediaBrowser.LocalMetadata/Parsers/BaseItemXmlParser.cs
@@ -56,12 +56,12 @@ namespace MediaBrowser.LocalMetadata.Parsers
{
if (item == null)
{
- throw new ArgumentNullException();
+ throw new ArgumentNullException(nameof(item));
}
if (string.IsNullOrEmpty(metadataFile))
{
- throw new ArgumentNullException();
+ throw new ArgumentException("The metadata file was empty or null.",nameof(metadataFile));
}
var settings = XmlReaderSettingsFactory.Create(false);
diff --git a/MediaBrowser.LocalMetadata/Properties/AssemblyInfo.cs b/MediaBrowser.LocalMetadata/Properties/AssemblyInfo.cs
index bffe0469f..3eac83708 100644
--- a/MediaBrowser.LocalMetadata/Properties/AssemblyInfo.cs
+++ b/MediaBrowser.LocalMetadata/Properties/AssemblyInfo.cs
@@ -1,4 +1,5 @@
-using System.Reflection;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,27 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("MediaBrowser.LocalMetadata")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("MediaBrowser.LocalMetadata")]
-[assembly: AssemblyCopyright("Copyright © 2014")]
+[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("1c669501-2113-493a-b0ed-f8fd26311941")]
-
-// 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.*")] \ No newline at end of file
diff --git a/MediaBrowser.MediaEncoding/BdInfo/BdInfoExaminer.cs b/MediaBrowser.MediaEncoding/BdInfo/BdInfoExaminer.cs
index 557f4d637..da96f3855 100644
--- a/MediaBrowser.MediaEncoding/BdInfo/BdInfoExaminer.cs
+++ b/MediaBrowser.MediaEncoding/BdInfo/BdInfoExaminer.cs
@@ -1,4 +1,4 @@
-using BDInfo;
+using BDInfo;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.MediaInfo;
using System;
@@ -32,7 +32,7 @@ namespace MediaBrowser.MediaEncoding.BdInfo
{
if (string.IsNullOrWhiteSpace(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var bdrom = new BDROM(path, _fileSystem, _textEncoding);
diff --git a/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs b/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs
index a13795548..b19271d11 100644
--- a/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs
+++ b/MediaBrowser.MediaEncoding/Encoder/MediaEncoder.cs
@@ -211,7 +211,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
{
if (string.IsNullOrWhiteSpace(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
if (!FileSystem.FileExists(path) && !FileSystem.DirectoryExists(path))
@@ -607,7 +607,7 @@ namespace MediaBrowser.MediaEncoding.Encoder
{
if (string.IsNullOrEmpty(inputPath))
{
- throw new ArgumentNullException("inputPath");
+ throw new ArgumentNullException(nameof(inputPath));
}
var tempExtractPath = Path.Combine(ConfigurationManager.ApplicationPaths.TempDirectory, Guid.NewGuid() + ".jpg");
diff --git a/MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs b/MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs
index 396c85e21..12d906bb2 100644
--- a/MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs
+++ b/MediaBrowser.MediaEncoding/Probing/FFProbeHelpers.cs
@@ -13,7 +13,7 @@ namespace MediaBrowser.MediaEncoding.Probing
{
if (result == null)
{
- throw new ArgumentNullException("result");
+ throw new ArgumentNullException(nameof(result));
}
if (result.format != null && result.format.tags != null)
diff --git a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
index 0b168f10e..2d3352f64 100644
--- a/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
+++ b/MediaBrowser.MediaEncoding/Probing/ProbeResultNormalizer.cs
@@ -1301,7 +1301,7 @@ namespace MediaBrowser.MediaEncoding.Probing
// OR -> COMMENT. SUBTITLE: DESCRIPTION
// e.g. -> 4/13. The Doctor's Wife: Science fiction drama. When he follows a Time Lord distress signal, the Doctor puts Amy, Rory and his beloved TARDIS in grave danger. Also in HD. [AD,S]
// e.g. -> CBeebies Bedtime Hour. The Mystery: Animated adventures of two friends who live on an island in the middle of the big city. Some of Abney and Teal's favourite objects are missing. [S]
- if (String.IsNullOrWhiteSpace(subTitle) && !String.IsNullOrWhiteSpace(description) && description.Substring(0, Math.Min(description.Length, MaxSubtitleDescriptionExtractionLength)).Contains(":")) // Check within the Subtitle size limit, otherwise from description it can get too long creating an invalid filename
+ if (string.IsNullOrWhiteSpace(subTitle) && !string.IsNullOrWhiteSpace(description) && description.Substring(0, Math.Min(description.Length, MaxSubtitleDescriptionExtractionLength)).Contains(":")) // Check within the Subtitle size limit, otherwise from description it can get too long creating an invalid filename
{
string[] parts = description.Split(':');
if (parts.Length > 0)
@@ -1315,7 +1315,7 @@ namespace MediaBrowser.MediaEncoding.Probing
video.IndexNumber = int.Parse(numbers[0].Replace(".", "").Split('/')[0]);
int totalEpisodesInSeason = int.Parse(numbers[0].Replace(".", "").Split('/')[1]);
- description = String.Join(" ", numbers, 1, numbers.Length - 1).Trim(); // Skip the first, concatenate the rest, clean up spaces and save it
+ description = string.Join(" ", numbers, 1, numbers.Length - 1).Trim(); // Skip the first, concatenate the rest, clean up spaces and save it
}
else
throw new Exception(); // Switch to default parsing
@@ -1323,7 +1323,7 @@ namespace MediaBrowser.MediaEncoding.Probing
catch // Default parsing
{
if (subtitle.Contains(".")) // skip the comment, keep the subtitle
- description = String.Join(".", subtitle.Split('.'), 1, subtitle.Split('.').Length - 1).Trim(); // skip the first
+ description = string.Join(".", subtitle.Split('.'), 1, subtitle.Split('.').Length - 1).Trim(); // skip the first
else
description = subtitle.Trim(); // Clean up whitespaces and save it
}
diff --git a/MediaBrowser.MediaEncoding/Properties/AssemblyInfo.cs b/MediaBrowser.MediaEncoding/Properties/AssemblyInfo.cs
index 2f26648d0..6ecdf89bc 100644
--- a/MediaBrowser.MediaEncoding/Properties/AssemblyInfo.cs
+++ b/MediaBrowser.MediaEncoding/Properties/AssemblyInfo.cs
@@ -1,4 +1,5 @@
-using System.Reflection;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,27 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("MediaBrowser.MediaEncoding")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("MediaBrowser.MediaEncoding")]
-[assembly: AssemblyCopyright("Copyright © 2014")]
+[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("05f49ab9-2a90-4332-9d41-7817a9cccd90")]
-
-// 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.*")] \ No newline at end of file
diff --git a/MediaBrowser.MediaEncoding/Subtitles/OpenSubtitleDownloader.cs b/MediaBrowser.MediaEncoding/Subtitles/OpenSubtitleDownloader.cs
index b62fa8398..1c1906de7 100644
--- a/MediaBrowser.MediaEncoding/Subtitles/OpenSubtitleDownloader.cs
+++ b/MediaBrowser.MediaEncoding/Subtitles/OpenSubtitleDownloader.cs
@@ -121,7 +121,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles
{
if (string.IsNullOrWhiteSpace(id))
{
- throw new ArgumentNullException("id");
+ throw new ArgumentNullException(nameof(id));
}
var idParts = id.Split(new[] { '-' }, 3);
diff --git a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
index 68faffa91..202623c8b 100644
--- a/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
+++ b/MediaBrowser.MediaEncoding/Subtitles/SubtitleEncoder.cs
@@ -130,11 +130,11 @@ namespace MediaBrowser.MediaEncoding.Subtitles
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
if (string.IsNullOrWhiteSpace(mediaSourceId))
{
- throw new ArgumentNullException("mediaSourceId");
+ throw new ArgumentNullException(nameof(mediaSourceId));
}
// TODO network path substition useful ?
@@ -300,7 +300,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles
{
if (string.IsNullOrEmpty(format))
{
- throw new ArgumentNullException("format");
+ throw new ArgumentNullException(nameof(format));
}
if (string.Equals(format, SubtitleFormat.SRT, StringComparison.OrdinalIgnoreCase))
@@ -328,7 +328,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles
{
if (string.IsNullOrEmpty(format))
{
- throw new ArgumentNullException("format");
+ throw new ArgumentNullException(nameof(format));
}
if (string.Equals(format, "json", StringComparison.OrdinalIgnoreCase))
@@ -423,12 +423,12 @@ namespace MediaBrowser.MediaEncoding.Subtitles
{
if (string.IsNullOrEmpty(inputPath))
{
- throw new ArgumentNullException("inputPath");
+ throw new ArgumentNullException(nameof(inputPath));
}
if (string.IsNullOrEmpty(outputPath))
{
- throw new ArgumentNullException("outputPath");
+ throw new ArgumentNullException(nameof(outputPath));
}
_fileSystem.CreateDirectory(_fileSystem.GetDirectoryName(outputPath));
@@ -566,12 +566,12 @@ namespace MediaBrowser.MediaEncoding.Subtitles
{
if (string.IsNullOrEmpty(inputPath))
{
- throw new ArgumentNullException("inputPath");
+ throw new ArgumentNullException(nameof(inputPath));
}
if (string.IsNullOrEmpty(outputPath))
{
- throw new ArgumentNullException("outputPath");
+ throw new ArgumentNullException(nameof(outputPath));
}
_fileSystem.CreateDirectory(_fileSystem.GetDirectoryName(outputPath));
@@ -759,7 +759,7 @@ namespace MediaBrowser.MediaEncoding.Subtitles
return _fileSystem.ReadAllBytes(path);
}
- throw new ArgumentOutOfRangeException("protocol");
+ throw new ArgumentOutOfRangeException(nameof(protocol));
}
}
}
diff --git a/MediaBrowser.Model/Diagnostics/IProcessFactory.cs b/MediaBrowser.Model/Diagnostics/IProcessFactory.cs
index a60c4b4fb..c4ad02fab 100644
--- a/MediaBrowser.Model/Diagnostics/IProcessFactory.cs
+++ b/MediaBrowser.Model/Diagnostics/IProcessFactory.cs
@@ -9,9 +9,9 @@ namespace MediaBrowser.Model.Diagnostics
public class ProcessOptions
{
- public String FileName { get; set; }
- public String Arguments { get; set; }
- public String WorkingDirectory { get; set; }
+ public string FileName { get; set; }
+ public string Arguments { get; set; }
+ public string WorkingDirectory { get; set; }
public bool CreateNoWindow { get; set; }
public bool UseShellExecute { get; set; }
public bool EnableRaisingEvents { get; set; }
diff --git a/MediaBrowser.Model/Dlna/SearchCriteria.cs b/MediaBrowser.Model/Dlna/SearchCriteria.cs
index 4f931d1b1..50ee4a378 100644
--- a/MediaBrowser.Model/Dlna/SearchCriteria.cs
+++ b/MediaBrowser.Model/Dlna/SearchCriteria.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Model.Extensions;
+using MediaBrowser.Model.Extensions;
using System;
using System.Text.RegularExpressions;
@@ -15,7 +15,7 @@ namespace MediaBrowser.Model.Dlna
/// <param name="term">The term.</param>
/// <param name="limit">The limit.</param>
/// <returns>System.String[].</returns>
- private string[] RegexSplit(string str, string term, int limit)
+ private static string[] RegexSplit(string str, string term, int limit)
{
return new Regex(term).Split(str, limit);
}
@@ -26,7 +26,7 @@ namespace MediaBrowser.Model.Dlna
/// <param name="str">The string.</param>
/// <param name="term">The term.</param>
/// <returns>System.String[].</returns>
- private string[] RegexSplit(string str, string term)
+ private static string[] RegexSplit(string str, string term)
{
return Regex.Split(str, term, RegexOptions.IgnoreCase);
}
@@ -35,15 +35,15 @@ namespace MediaBrowser.Model.Dlna
{
if (string.IsNullOrEmpty(search))
{
- throw new ArgumentNullException("search");
+ throw new ArgumentNullException(nameof(search));
}
SearchType = SearchType.Unknown;
- String[] factors = RegexSplit(search, "(and|or)");
- foreach (String factor in factors)
+ string[] factors = RegexSplit(search, "(and|or)");
+ foreach (string factor in factors)
{
- String[] subFactors = RegexSplit(factor.Trim().Trim('(').Trim(')').Trim(), "\\s", 3);
+ string[] subFactors = RegexSplit(factor.Trim().Trim('(').Trim(')').Trim(), "\\s", 3);
if (subFactors.Length == 3)
{
diff --git a/MediaBrowser.Model/Dlna/StreamBuilder.cs b/MediaBrowser.Model/Dlna/StreamBuilder.cs
index b4021e999..c571d8384 100644
--- a/MediaBrowser.Model/Dlna/StreamBuilder.cs
+++ b/MediaBrowser.Model/Dlna/StreamBuilder.cs
@@ -700,7 +700,7 @@ namespace MediaBrowser.Model.Dlna
{
if (item == null)
{
- throw new ArgumentNullException("item");
+ throw new ArgumentNullException(nameof(item));
}
var transcodeReasons = new List<TranscodeReason>();
diff --git a/MediaBrowser.Model/Dlna/StreamInfo.cs b/MediaBrowser.Model/Dlna/StreamInfo.cs
index ba0ac0486..ec76d93f0 100644
--- a/MediaBrowser.Model/Dlna/StreamInfo.cs
+++ b/MediaBrowser.Model/Dlna/StreamInfo.cs
@@ -153,7 +153,7 @@ namespace MediaBrowser.Model.Dlna
if (string.IsNullOrEmpty(baseUrl))
{
- throw new ArgumentNullException(baseUrl);
+ throw new ArgumentNullException(nameof(baseUrl));
}
List<string> list = new List<string>();
@@ -195,7 +195,7 @@ namespace MediaBrowser.Model.Dlna
{
if (string.IsNullOrEmpty(baseUrl))
{
- throw new ArgumentNullException(baseUrl);
+ throw new ArgumentNullException(nameof(baseUrl));
}
string extension = string.IsNullOrEmpty(Container) ? string.Empty : "." + Container;
diff --git a/MediaBrowser.Model/Entities/ProviderIdsExtensions.cs b/MediaBrowser.Model/Entities/ProviderIdsExtensions.cs
index 35900b544..3f8873798 100644
--- a/MediaBrowser.Model/Entities/ProviderIdsExtensions.cs
+++ b/MediaBrowser.Model/Entities/ProviderIdsExtensions.cs
@@ -40,7 +40,7 @@ namespace MediaBrowser.Model.Entities
{
if (instance == null)
{
- throw new ArgumentNullException("instance");
+ throw new ArgumentNullException(nameof(instance));
}
if (instance.ProviderIds == null)
@@ -63,7 +63,7 @@ namespace MediaBrowser.Model.Entities
{
if (instance == null)
{
- throw new ArgumentNullException("instance");
+ throw new ArgumentNullException(nameof(instance));
}
// If it's null remove the key from the dictionary
diff --git a/MediaBrowser.Model/Extensions/LinqExtensions.cs b/MediaBrowser.Model/Extensions/LinqExtensions.cs
index d50b570ea..4e33edb41 100644
--- a/MediaBrowser.Model/Extensions/LinqExtensions.cs
+++ b/MediaBrowser.Model/Extensions/LinqExtensions.cs
@@ -64,8 +64,8 @@ namespace MediaBrowser.Model.Extensions
public static IEnumerable<TSource> DistinctBy<TSource, TKey>(this IEnumerable<TSource> source,
Func<TSource, TKey> keySelector, IEqualityComparer<TKey> comparer)
{
- if (source == null) throw new ArgumentNullException("source");
- if (keySelector == null) throw new ArgumentNullException("keySelector");
+ if (source == null) throw new ArgumentNullException(nameof(source));
+ if (keySelector == null) throw new ArgumentNullException(nameof(keySelector));
return DistinctByImpl(source, keySelector, comparer);
}
diff --git a/MediaBrowser.Model/Extensions/ListHelper.cs b/MediaBrowser.Model/Extensions/ListHelper.cs
index 243ae3105..68379d463 100644
--- a/MediaBrowser.Model/Extensions/ListHelper.cs
+++ b/MediaBrowser.Model/Extensions/ListHelper.cs
@@ -8,7 +8,7 @@ namespace MediaBrowser.Model.Extensions
{
if (value == null)
{
- throw new ArgumentNullException("value");
+ throw new ArgumentNullException(nameof(value));
}
foreach (var item in list)
diff --git a/MediaBrowser.Model/IO/IFileSystem.cs b/MediaBrowser.Model/IO/IFileSystem.cs
index 3200affd6..37fca6ea1 100644
--- a/MediaBrowser.Model/IO/IFileSystem.cs
+++ b/MediaBrowser.Model/IO/IFileSystem.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
@@ -117,7 +117,7 @@ namespace MediaBrowser.Model.IO
/// </summary>
/// <param name="path">The path.</param>
/// <returns>Stream.</returns>
- Stream OpenRead(String path);
+ Stream OpenRead(string path);
string DefaultDirectory { get; }
@@ -328,7 +328,7 @@ namespace MediaBrowser.Model.IO
void SetExecutable(string path);
}
-
+ //TODO Investigate if can be replaced by the one from System.IO ?
public enum FileOpenMode
{
//
diff --git a/MediaBrowser.Model/IO/IIsoMounter.cs b/MediaBrowser.Model/IO/IIsoMounter.cs
index 7efbc2024..f0153a928 100644
--- a/MediaBrowser.Model/IO/IIsoMounter.cs
+++ b/MediaBrowser.Model/IO/IIsoMounter.cs
@@ -1,4 +1,5 @@
-using System;
+using System;
+using System.IO;
using System.Threading;
using System.Threading.Tasks;
diff --git a/MediaBrowser.Model/Net/IpAddressInfo.cs b/MediaBrowser.Model/Net/IpAddressInfo.cs
index 520f8fb54..c2c228faf 100644
--- a/MediaBrowser.Model/Net/IpAddressInfo.cs
+++ b/MediaBrowser.Model/Net/IpAddressInfo.cs
@@ -23,7 +23,7 @@ namespace MediaBrowser.Model.Net
return string.Equals(address.Address, Address, StringComparison.OrdinalIgnoreCase);
}
- public override String ToString()
+ public override string ToString()
{
return Address;
}
diff --git a/MediaBrowser.Model/Net/MimeTypes.cs b/MediaBrowser.Model/Net/MimeTypes.cs
index c22e77beb..93e51633e 100644
--- a/MediaBrowser.Model/Net/MimeTypes.cs
+++ b/MediaBrowser.Model/Net/MimeTypes.cs
@@ -127,7 +127,7 @@ namespace MediaBrowser.Model.Net
{
if (string.IsNullOrEmpty(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
var ext = Path.GetExtension(path) ?? string.Empty;
@@ -333,7 +333,7 @@ namespace MediaBrowser.Model.Net
{
if (string.IsNullOrEmpty(mimeType))
{
- throw new ArgumentNullException("mimeType");
+ throw new ArgumentNullException(nameof(mimeType));
}
// handle text/html; charset=UTF-8
diff --git a/MediaBrowser.Model/Properties/AssemblyInfo.cs b/MediaBrowser.Model/Properties/AssemblyInfo.cs
index e34472f08..e78719e35 100644
--- a/MediaBrowser.Model/Properties/AssemblyInfo.cs
+++ b/MediaBrowser.Model/Properties/AssemblyInfo.cs
@@ -1,5 +1,6 @@
-using System.Reflection;
+using System.Reflection;
using System.Resources;
+using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
@@ -7,17 +8,14 @@ using System.Resources;
[assembly: AssemblyTitle("MediaBrowser.Model")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("MediaBrowser.Model")]
-[assembly: AssemblyCopyright("Copyright © 2012")]
+[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")]
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-// \ No newline at end of file
+// 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/MediaBrowser.Model/Serialization/IJsonSerializer.cs b/MediaBrowser.Model/Serialization/IJsonSerializer.cs
index a582beb7f..06e48f412 100644
--- a/MediaBrowser.Model/Serialization/IJsonSerializer.cs
+++ b/MediaBrowser.Model/Serialization/IJsonSerializer.cs
@@ -11,7 +11,7 @@ namespace MediaBrowser.Model.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>
void SerializeToStream(object obj, Stream stream);
/// <summary>
@@ -19,7 +19,7 @@ namespace MediaBrowser.Model.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>
void SerializeToFile(object obj, string file);
/// <summary>
@@ -28,7 +28,7 @@ namespace MediaBrowser.Model.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>
object DeserializeFromFile(Type type, string file);
/// <summary>
@@ -37,7 +37,7 @@ namespace MediaBrowser.Model.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>
T DeserializeFromFile<T>(string file)
where T : class;
@@ -47,7 +47,7 @@ namespace MediaBrowser.Model.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>
T DeserializeFromStream<T>(Stream stream);
/// <summary>
@@ -56,7 +56,7 @@ namespace MediaBrowser.Model.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>
T DeserializeFromString<T>(string text);
/// <summary>
@@ -65,7 +65,7 @@ namespace MediaBrowser.Model.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>
object DeserializeFromStream(Stream stream, Type type);
/// <summary>
@@ -74,7 +74,7 @@ namespace MediaBrowser.Model.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>
object DeserializeFromString(string json, Type type);
/// <summary>
@@ -82,7 +82,7 @@ namespace MediaBrowser.Model.Serialization
/// </summary>
/// <param name="obj">The obj.</param>
/// <returns>System.String.</returns>
- /// <exception cref="System.ArgumentNullException">obj</exception>
+ /// <exception cref="ArgumentNullException">obj</exception>
string SerializeToString(object obj);
Task<object> DeserializeFromStreamAsync(Stream stream, Type type);
diff --git a/MediaBrowser.Model/Services/HttpUtility.cs b/MediaBrowser.Model/Services/HttpUtility.cs
index cafb9c3b2..1bf3b28d1 100644
--- a/MediaBrowser.Model/Services/HttpUtility.cs
+++ b/MediaBrowser.Model/Services/HttpUtility.cs
@@ -440,7 +440,7 @@ namespace MediaBrowser.Model.Services
public static string HtmlDecode(string s)
{
if (s == null)
- throw new ArgumentNullException("s");
+ throw new ArgumentNullException(nameof(s));
if (s.IndexOf('&') == -1)
return s;
@@ -561,7 +561,7 @@ namespace MediaBrowser.Model.Services
break;
}
- if (Char.IsDigit(c))
+ if (char.IsDigit(c))
{
if (digit_start == 0)
digit_start = i;
@@ -615,9 +615,9 @@ namespace MediaBrowser.Model.Services
public static QueryParamCollection ParseQueryString(string query, Encoding encoding)
{
if (query == null)
- throw new ArgumentNullException("query");
+ throw new ArgumentNullException(nameof(query));
if (encoding == null)
- throw new ArgumentNullException("encoding");
+ throw new ArgumentNullException(nameof(encoding));
if (query.Length == 0 || (query.Length == 1 && query[0] == '?'))
return new QueryParamCollection();
if (query[0] == '?')
diff --git a/MediaBrowser.Model/Services/QueryParamCollection.cs b/MediaBrowser.Model/Services/QueryParamCollection.cs
index 4dd4303a8..05ba6f18d 100644
--- a/MediaBrowser.Model/Services/QueryParamCollection.cs
+++ b/MediaBrowser.Model/Services/QueryParamCollection.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Linq;
using MediaBrowser.Model.Dto;
@@ -20,12 +20,12 @@ namespace MediaBrowser.Model.Services
}
}
- private StringComparison GetStringComparison()
+ private static StringComparison GetStringComparison()
{
return StringComparison.OrdinalIgnoreCase;
}
- private StringComparer GetStringComparer()
+ private static StringComparer GetStringComparer()
{
return StringComparer.OrdinalIgnoreCase;
}
@@ -218,7 +218,7 @@ namespace MediaBrowser.Model.Services
return pair.Name + "=" + pair.Value;
}
- public override String ToString()
+ public override string ToString()
{
var vals = this.Select(GetQueryStringValue).ToArray();
diff --git a/MediaBrowser.Providers/BoxSets/MovieDbBoxSetProvider.cs b/MediaBrowser.Providers/BoxSets/MovieDbBoxSetProvider.cs
index eacc983d5..a196fa398 100644
--- a/MediaBrowser.Providers/BoxSets/MovieDbBoxSetProvider.cs
+++ b/MediaBrowser.Providers/BoxSets/MovieDbBoxSetProvider.cs
@@ -122,7 +122,7 @@ namespace MediaBrowser.Providers.BoxSets
{
if (string.IsNullOrEmpty(tmdbId))
{
- throw new ArgumentNullException("tmdbId");
+ throw new ArgumentNullException(nameof(tmdbId));
}
await EnsureInfo(tmdbId, language, cancellationToken).ConfigureAwait(false);
diff --git a/MediaBrowser.Providers/Manager/GenericPriorityQueue.cs b/MediaBrowser.Providers/Manager/GenericPriorityQueue.cs
index fa080397b..49656a410 100644
--- a/MediaBrowser.Providers/Manager/GenericPriorityQueue.cs
+++ b/MediaBrowser.Providers/Manager/GenericPriorityQueue.cs
@@ -83,7 +83,7 @@ namespace Priority_Queue
#if DEBUG
if (node == null)
{
- throw new ArgumentNullException("node");
+ throw new ArgumentNullException(nameof(node));
}
if (node.QueueIndex < 0 || node.QueueIndex >= _nodes.Length)
{
@@ -106,7 +106,7 @@ namespace Priority_Queue
#if DEBUG
if (node == null)
{
- throw new ArgumentNullException("node");
+ throw new ArgumentNullException(nameof(node));
}
if (_numNodes >= _nodes.Length - 1)
{
@@ -314,7 +314,7 @@ namespace Priority_Queue
#if DEBUG
if (node == null)
{
- throw new ArgumentNullException("node");
+ throw new ArgumentNullException(nameof(node));
}
if (!Contains(node))
{
@@ -353,7 +353,7 @@ namespace Priority_Queue
#if DEBUG
if (node == null)
{
- throw new ArgumentNullException("node");
+ throw new ArgumentNullException(nameof(node));
}
if (!Contains(node))
{
diff --git a/MediaBrowser.Providers/Manager/ImageSaver.cs b/MediaBrowser.Providers/Manager/ImageSaver.cs
index 047c59028..bf5bb5907 100644
--- a/MediaBrowser.Providers/Manager/ImageSaver.cs
+++ b/MediaBrowser.Providers/Manager/ImageSaver.cs
@@ -75,7 +75,7 @@ namespace MediaBrowser.Providers.Manager
{
if (string.IsNullOrEmpty(mimeType))
{
- throw new ArgumentNullException("mimeType");
+ throw new ArgumentNullException(nameof(mimeType));
}
var saveLocally = item.SupportsLocalMetadata && item.IsSaveLocalMetadataEnabled() && !item.ExtraType.HasValue && !(item is Audio);
@@ -504,7 +504,7 @@ namespace MediaBrowser.Providers.Manager
{
if (!imageIndex.HasValue)
{
- throw new ArgumentNullException("imageIndex");
+ throw new ArgumentNullException(nameof(imageIndex));
}
if (imageIndex.Value == 0)
diff --git a/MediaBrowser.Providers/Manager/ProviderManager.cs b/MediaBrowser.Providers/Manager/ProviderManager.cs
index ae3788f34..d21d58cf3 100644
--- a/MediaBrowser.Providers/Manager/ProviderManager.cs
+++ b/MediaBrowser.Providers/Manager/ProviderManager.cs
@@ -179,7 +179,7 @@ namespace MediaBrowser.Providers.Manager
{
if (string.IsNullOrWhiteSpace(source))
{
- throw new ArgumentNullException("source");
+ throw new ArgumentNullException(nameof(source));
}
var fileStream = _fileSystem.GetFileStream(source, FileOpenMode.Open, FileAccessMode.Read, FileShareMode.ReadWrite, true);
diff --git a/MediaBrowser.Providers/Manager/ProviderUtils.cs b/MediaBrowser.Providers/Manager/ProviderUtils.cs
index 3a961fe0e..f83d87ad5 100644
--- a/MediaBrowser.Providers/Manager/ProviderUtils.cs
+++ b/MediaBrowser.Providers/Manager/ProviderUtils.cs
@@ -23,11 +23,11 @@ namespace MediaBrowser.Providers.Manager
if (source == null)
{
- throw new ArgumentNullException("source");
+ throw new ArgumentNullException(nameof(source));
}
if (target == null)
{
- throw new ArgumentNullException("target");
+ throw new ArgumentNullException(nameof(target));
}
if (!lockedFields.Contains(MetadataFields.Name))
diff --git a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
index c2fe392ab..29c94ccd9 100644
--- a/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
+++ b/MediaBrowser.Providers/MediaInfo/FFProbeVideoInfo.cs
@@ -333,7 +333,7 @@ namespace MediaBrowser.Providers.MediaInfo
{
if (string.IsNullOrWhiteSpace(path))
{
- throw new ArgumentNullException("path");
+ throw new ArgumentNullException(nameof(path));
}
try
diff --git a/MediaBrowser.Providers/Movies/MovieDbProvider.cs b/MediaBrowser.Providers/Movies/MovieDbProvider.cs
index 8465634bc..00848c20e 100644
--- a/MediaBrowser.Providers/Movies/MovieDbProvider.cs
+++ b/MediaBrowser.Providers/Movies/MovieDbProvider.cs
@@ -215,7 +215,7 @@ namespace MediaBrowser.Providers.Movies
{
if (string.IsNullOrEmpty(tmdbId))
{
- throw new ArgumentNullException("tmdbId");
+ throw new ArgumentNullException(nameof(tmdbId));
}
var path = GetDataFilePath(tmdbId, language);
@@ -238,7 +238,7 @@ namespace MediaBrowser.Providers.Movies
{
if (string.IsNullOrEmpty(tmdbId))
{
- throw new ArgumentNullException("tmdbId");
+ throw new ArgumentNullException(nameof(tmdbId));
}
var path = GetMovieDataPath(_configurationManager.ApplicationPaths, tmdbId);
diff --git a/MediaBrowser.Providers/Music/FanArtArtistProvider.cs b/MediaBrowser.Providers/Music/FanArtArtistProvider.cs
index f4c59b96c..2e246f614 100644
--- a/MediaBrowser.Providers/Music/FanArtArtistProvider.cs
+++ b/MediaBrowser.Providers/Music/FanArtArtistProvider.cs
@@ -84,7 +84,7 @@ namespace MediaBrowser.Providers.Music
var artistMusicBrainzId = artist.GetProviderId(MetadataProviders.MusicBrainzArtist);
- if (!String.IsNullOrEmpty(artistMusicBrainzId))
+ if (!string.IsNullOrEmpty(artistMusicBrainzId))
{
await EnsureArtistJson(artistMusicBrainzId, cancellationToken).ConfigureAwait(false);
@@ -106,24 +106,24 @@ namespace MediaBrowser.Providers.Music
var language = item.GetPreferredMetadataLanguage();
- var isLanguageEn = String.Equals(language, "en", StringComparison.OrdinalIgnoreCase);
+ var isLanguageEn = string.Equals(language, "en", StringComparison.OrdinalIgnoreCase);
// Sort first by width to prioritize HD versions
return list.OrderByDescending(i => i.Width ?? 0)
.ThenByDescending(i =>
{
- if (String.Equals(language, i.Language, StringComparison.OrdinalIgnoreCase))
+ if (string.Equals(language, i.Language, StringComparison.OrdinalIgnoreCase))
{
return 3;
}
if (!isLanguageEn)
{
- if (String.Equals("en", i.Language, StringComparison.OrdinalIgnoreCase))
+ if (string.Equals("en", i.Language, StringComparison.OrdinalIgnoreCase))
{
return 2;
}
}
- if (String.IsNullOrEmpty(i.Language))
+ if (string.IsNullOrEmpty(i.Language))
{
return isLanguageEn ? 3 : 2;
}
diff --git a/MediaBrowser.Providers/Music/MusicBrainzArtistProvider.cs b/MediaBrowser.Providers/Music/MusicBrainzArtistProvider.cs
index 8e2a47100..54ec1bf03 100644
--- a/MediaBrowser.Providers/Music/MusicBrainzArtistProvider.cs
+++ b/MediaBrowser.Providers/Music/MusicBrainzArtistProvider.cs
@@ -48,7 +48,7 @@ namespace MediaBrowser.Providers.Music
// They seem to throw bad request failures on any term with a slash
var nameToSearch = searchInfo.Name.Replace('/', ' ');
- var url = String.Format("/ws/2/artist/?query=\"{0}\"&dismax=true", UrlEncode(nameToSearch));
+ var url = string.Format("/ws/2/artist/?query=\"{0}\"&dismax=true", UrlEncode(nameToSearch));
using (var response = await MusicBrainzAlbumProvider.Current.GetMusicBrainzResponse(url, true, cancellationToken).ConfigureAwait(false))
{
@@ -66,7 +66,7 @@ namespace MediaBrowser.Providers.Music
if (HasDiacritics(searchInfo.Name))
{
// Try again using the search with accent characters url
- url = String.Format("/ws/2/artist/?query=artistaccent:\"{0}\"", UrlEncode(nameToSearch));
+ url = string.Format("/ws/2/artist/?query=artistaccent:\"{0}\"", UrlEncode(nameToSearch));
using (var response = await MusicBrainzAlbumProvider.Current.GetMusicBrainzResponse(url, true, cancellationToken).ConfigureAwait(false))
{
@@ -271,7 +271,7 @@ namespace MediaBrowser.Providers.Music
/// <returns><c>true</c> if the specified text has diacritics; otherwise, <c>false</c>.</returns>
private bool HasDiacritics(string text)
{
- return !String.Equals(text, text.RemoveDiacritics(), StringComparison.Ordinal);
+ return !string.Equals(text, text.RemoveDiacritics(), StringComparison.Ordinal);
}
/// <summary>
diff --git a/MediaBrowser.Providers/Omdb/OmdbProvider.cs b/MediaBrowser.Providers/Omdb/OmdbProvider.cs
index e8e1e3a29..6aca093ec 100644
--- a/MediaBrowser.Providers/Omdb/OmdbProvider.cs
+++ b/MediaBrowser.Providers/Omdb/OmdbProvider.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Model.IO;
+using MediaBrowser.Model.IO;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Entities;
@@ -41,7 +41,7 @@ namespace MediaBrowser.Providers.Omdb
{
if (string.IsNullOrWhiteSpace(imdbId))
{
- throw new ArgumentNullException("imdbId");
+ throw new ArgumentNullException(nameof(imdbId));
}
T item = itemResult.Item;
@@ -111,7 +111,7 @@ namespace MediaBrowser.Providers.Omdb
{
if (string.IsNullOrWhiteSpace(seriesImdbId))
{
- throw new ArgumentNullException("seriesImdbId");
+ throw new ArgumentNullException(nameof(seriesImdbId));
}
T item = itemResult.Item;
@@ -283,7 +283,7 @@ namespace MediaBrowser.Providers.Omdb
{
if (string.IsNullOrWhiteSpace(imdbId))
{
- throw new ArgumentNullException("imdbId");
+ throw new ArgumentNullException(nameof(imdbId));
}
var imdbParam = imdbId.StartsWith("tt", StringComparison.OrdinalIgnoreCase) ? imdbId : "tt" + imdbId;
@@ -320,7 +320,7 @@ namespace MediaBrowser.Providers.Omdb
{
if (string.IsNullOrWhiteSpace(seriesImdbId))
{
- throw new ArgumentNullException("imdbId");
+ throw new ArgumentException("The series IMDb ID was null or whitespace.", nameof(seriesImdbId));
}
var imdbParam = seriesImdbId.StartsWith("tt", StringComparison.OrdinalIgnoreCase) ? seriesImdbId : "tt" + seriesImdbId;
@@ -368,7 +368,7 @@ namespace MediaBrowser.Providers.Omdb
{
if (string.IsNullOrEmpty(imdbId))
{
- throw new ArgumentNullException("imdbId");
+ throw new ArgumentNullException(nameof(imdbId));
}
var dataPath = Path.Combine(_configurationManager.ApplicationPaths.CachePath, "omdb");
@@ -382,7 +382,7 @@ namespace MediaBrowser.Providers.Omdb
{
if (string.IsNullOrEmpty(imdbId))
{
- throw new ArgumentNullException("imdbId");
+ throw new ArgumentNullException(nameof(imdbId));
}
var dataPath = Path.Combine(_configurationManager.ApplicationPaths.CachePath, "omdb");
diff --git a/MediaBrowser.Providers/Properties/AssemblyInfo.cs b/MediaBrowser.Providers/Properties/AssemblyInfo.cs
index 384ad1419..d2b13fc89 100644
--- a/MediaBrowser.Providers/Properties/AssemblyInfo.cs
+++ b/MediaBrowser.Providers/Properties/AssemblyInfo.cs
@@ -1,4 +1,5 @@
-using System.Reflection;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,24 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("MediaBrowser.Providers")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("MediaBrowser.Providers")]
-[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("1b12f094-879f-4e02-ac92-17b72069feb8")]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-// \ No newline at end of file
diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbProviderBase.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbProviderBase.cs
index 0890d1969..94807aee9 100644
--- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbProviderBase.cs
+++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbProviderBase.cs
@@ -56,11 +56,11 @@ namespace MediaBrowser.Providers.TV
{
if (string.IsNullOrEmpty(tmdbId))
{
- throw new ArgumentNullException("tmdbId");
+ throw new ArgumentNullException(nameof(tmdbId));
}
if (string.IsNullOrEmpty(language))
{
- throw new ArgumentNullException("language");
+ throw new ArgumentNullException(nameof(language));
}
var path = GetDataFilePath(tmdbId, seasonNumber, episodeNumber, language);
@@ -83,11 +83,11 @@ namespace MediaBrowser.Providers.TV
{
if (string.IsNullOrEmpty(tmdbId))
{
- throw new ArgumentNullException("tmdbId");
+ throw new ArgumentNullException(nameof(tmdbId));
}
if (string.IsNullOrEmpty(preferredLanguage))
{
- throw new ArgumentNullException("preferredLanguage");
+ throw new ArgumentNullException(nameof(preferredLanguage));
}
var path = MovieDbSeriesProvider.GetSeriesDataPath(_configurationManager.ApplicationPaths, tmdbId);
diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeasonProvider.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeasonProvider.cs
index f11b8c53d..27edfdea7 100644
--- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeasonProvider.cs
+++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeasonProvider.cs
@@ -145,11 +145,11 @@ namespace MediaBrowser.Providers.TV
{
if (string.IsNullOrEmpty(tmdbId))
{
- throw new ArgumentNullException("tmdbId");
+ throw new ArgumentNullException(nameof(tmdbId));
}
if (string.IsNullOrEmpty(language))
{
- throw new ArgumentNullException("language");
+ throw new ArgumentNullException(nameof(language));
}
var path = GetDataFilePath(tmdbId, seasonNumber, language);
@@ -172,11 +172,11 @@ namespace MediaBrowser.Providers.TV
{
if (string.IsNullOrEmpty(tmdbId))
{
- throw new ArgumentNullException("tmdbId");
+ throw new ArgumentNullException(nameof(tmdbId));
}
if (string.IsNullOrEmpty(preferredLanguage))
{
- throw new ArgumentNullException("preferredLanguage");
+ throw new ArgumentNullException(nameof(preferredLanguage));
}
var path = MovieDbSeriesProvider.GetSeriesDataPath(_configurationManager.ApplicationPaths, tmdbId);
diff --git a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesProvider.cs b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesProvider.cs
index c3981ae8f..c48719e84 100644
--- a/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesProvider.cs
+++ b/MediaBrowser.Providers/TV/TheMovieDb/MovieDbSeriesProvider.cs
@@ -447,7 +447,7 @@ namespace MediaBrowser.Providers.TV
{
if (string.IsNullOrEmpty(tmdbId))
{
- throw new ArgumentNullException("tmdbId");
+ throw new ArgumentNullException(nameof(tmdbId));
}
var path = GetDataFilePath(tmdbId, language);
@@ -470,7 +470,7 @@ namespace MediaBrowser.Providers.TV
{
if (string.IsNullOrEmpty(tmdbId))
{
- throw new ArgumentNullException("tmdbId");
+ throw new ArgumentNullException(nameof(tmdbId));
}
var path = GetSeriesDataPath(_configurationManager.ApplicationPaths, tmdbId);
diff --git a/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeProvider.cs b/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeProvider.cs
index e4c18e7cc..5c00229e8 100644
--- a/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeProvider.cs
+++ b/MediaBrowser.Providers/TV/TheTVDB/TvdbEpisodeProvider.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Net;
+using MediaBrowser.Common.Net;
using MediaBrowser.Controller.Configuration;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Entities.TV;
@@ -165,7 +165,6 @@ namespace MediaBrowser.Providers.TV
/// Fetches the episode data.
/// </summary>
/// <param name="id">The identifier.</param>
- /// <param name="searchNumbers">The search numbers.</param>
/// <param name="seriesDataPath">The series data path.</param>
/// <param name="cancellationToken">The cancellation token.</param>
/// <returns>Task{System.Boolean}.</returns>
@@ -306,7 +305,7 @@ namespace MediaBrowser.Providers.TV
return GetXmlReader(_fileSystem.ReadAllText(xmlFile.FullName, Encoding.UTF8));
}
- private XmlReader GetXmlReader(String xml)
+ private XmlReader GetXmlReader(string xml)
{
var streamReader = new StringReader(xml);
diff --git a/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesProvider.cs b/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesProvider.cs
index 28625418d..232758896 100644
--- a/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesProvider.cs
+++ b/MediaBrowser.Providers/TV/TheTVDB/TvdbSeriesProvider.cs
@@ -195,7 +195,7 @@ namespace MediaBrowser.Providers.TV
{
if (string.IsNullOrWhiteSpace(seriesId))
{
- throw new ArgumentNullException("seriesId");
+ throw new ArgumentNullException(nameof(seriesId));
}
if (!string.Equals(idType, "tvdb", StringComparison.OrdinalIgnoreCase))
@@ -222,7 +222,7 @@ namespace MediaBrowser.Providers.TV
if (string.IsNullOrWhiteSpace(seriesId))
{
- throw new ArgumentNullException("seriesId");
+ throw new ArgumentNullException(nameof(seriesId));
}
var url = string.Format(SeriesGetZip, TVUtils.TvdbApiKey, seriesId, NormalizeLanguage(preferredMetadataLanguage));
@@ -272,7 +272,7 @@ namespace MediaBrowser.Providers.TV
private async Task<string> GetSeriesByRemoteId(string id, string idType, string language, CancellationToken cancellationToken)
{
- String url;
+ string url;
if (string.Equals(idType, MetadataProviders.Zap2It.ToString(), StringComparison.OrdinalIgnoreCase))
{
url = string.Format(GetSeriesByZap2ItId, id, NormalizeLanguage(language));
diff --git a/MediaBrowser.WebDashboard/Api/PackageCreator.cs b/MediaBrowser.WebDashboard/Api/PackageCreator.cs
index f510ed51f..88fb95936 100644
--- a/MediaBrowser.WebDashboard/Api/PackageCreator.cs
+++ b/MediaBrowser.WebDashboard/Api/PackageCreator.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Controller.Configuration;
+using MediaBrowser.Controller.Configuration;
using Microsoft.Extensions.Logging;
using MediaBrowser.Model.Serialization;
using System;
@@ -59,7 +59,7 @@ namespace MediaBrowser.WebDashboard.Api
/// <param name="path">The path.</param>
/// <param name="format">The format.</param>
/// <returns><c>true</c> if the specified path is HTML; otherwise, <c>false</c>.</returns>
- private bool IsFormat(string path, string format)
+ private static bool IsFormat(string path, string format)
{
return Path.GetExtension(path).EndsWith(format, StringComparison.OrdinalIgnoreCase);
}
diff --git a/MediaBrowser.WebDashboard/Properties/AssemblyInfo.cs b/MediaBrowser.WebDashboard/Properties/AssemblyInfo.cs
index 2b083f025..416ce4826 100644
--- a/MediaBrowser.WebDashboard/Properties/AssemblyInfo.cs
+++ b/MediaBrowser.WebDashboard/Properties/AssemblyInfo.cs
@@ -1,4 +1,5 @@
-using System.Reflection;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,24 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("MediaBrowser.WebDashboard")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("MediaBrowser.WebDashboard")]
-[assembly: AssemblyCopyright("Copyright © 2012")]
+[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("c6c73d12-933d-4389-be56-e59973c9ed00")]
-
-// Version information for an assembly consists of the following four values:
-//
-// Major Version
-// Minor Version
-// Build Number
-// Revision
-// \ No newline at end of file
diff --git a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
index 0aaa0b362..5390f5049 100644
--- a/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
+++ b/MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs
@@ -1,4 +1,4 @@
-using MediaBrowser.Common.Configuration;
+using MediaBrowser.Common.Configuration;
using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
@@ -60,12 +60,12 @@ namespace MediaBrowser.XbmcMetadata.Parsers
{
if (item == null)
{
- throw new ArgumentNullException();
+ throw new ArgumentNullException(nameof(item));
}
if (string.IsNullOrEmpty(metadataFile))
{
- throw new ArgumentNullException();
+ throw new ArgumentException("The metadata file was empty or null.", nameof(metadataFile));
}
var settings = XmlReaderSettingsFactory.Create(false);
diff --git a/MediaBrowser.XbmcMetadata/Properties/AssemblyInfo.cs b/MediaBrowser.XbmcMetadata/Properties/AssemblyInfo.cs
index 1fdf365be..11e513f1b 100644
--- a/MediaBrowser.XbmcMetadata/Properties/AssemblyInfo.cs
+++ b/MediaBrowser.XbmcMetadata/Properties/AssemblyInfo.cs
@@ -1,4 +1,5 @@
-using System.Reflection;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,27 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("MediaBrowser.XbmcMetadata")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("MediaBrowser.XbmcMetadata")]
-[assembly: AssemblyCopyright("Copyright © 2014")]
+[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("bbdf434b-65f1-4178-8ddf-067447df3e20")]
-
-// 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.*")] \ No newline at end of file
diff --git a/MediaBrowser.sln b/MediaBrowser.sln
index 13d1e26db..3fd7d8df9 100644
--- a/MediaBrowser.sln
+++ b/MediaBrowser.sln
@@ -150,6 +150,10 @@ Global
{E5AF7B26-2239-4CE0-B477-0AA2018EDAA2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E5AF7B26-2239-4CE0-B477-0AA2018EDAA2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E5AF7B26-2239-4CE0-B477-0AA2018EDAA2}.Release|Any CPU.Build.0 = Release|Any CPU
+ {D45FC504-D06B-41A0-A220-C20B7E8F1304}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {D45FC504-D06B-41A0-A220-C20B7E8F1304}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {D45FC504-D06B-41A0-A220-C20B7E8F1304}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {D45FC504-D06B-41A0-A220-C20B7E8F1304}.Release|Any CPU.Build.0 = Release|Any CPU
{6EAFA7F0-8A82-49E6-B2FA-086C5CAEA95B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{6EAFA7F0-8A82-49E6-B2FA-086C5CAEA95B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6EAFA7F0-8A82-49E6-B2FA-086C5CAEA95B}.Release|Any CPU.ActiveCfg = Release|Any CPU
@@ -174,9 +178,12 @@ Global
SolutionGuid = {3448830C-EBDC-426C-85CD-7BBB9651A7FE}
EndGlobalSection
GlobalSection(AutomaticVersions) = postSolution
+ PrimaryVersionType = AssemblyFileVersionAttribute
UpdateAssemblyVersion = True
UpdateAssemblyFileVersion = True
UpdateAssemblyInfoVersion = True
+ ShouldCreateLogs = True
+ AdvancedSettingsExpanded = True
AssemblyVersionSettings = None.None.None.None
AssemblyFileVersionSettings = None.None.None.None
AssemblyInfoVersionSettings = None.None.None.None
diff --git a/Mono.Nat/Pmp/PmpNatDevice.cs b/Mono.Nat/Pmp/PmpNatDevice.cs
index a3b278304..9398e2bf9 100644
--- a/Mono.Nat/Pmp/PmpNatDevice.cs
+++ b/Mono.Nat/Pmp/PmpNatDevice.cs
@@ -46,7 +46,7 @@ namespace Mono.Nat.Pmp
{
if (localAddress == null)
{
- throw new ArgumentNullException("localAddress");
+ throw new ArgumentNullException(nameof(localAddress));
}
this.localAddress = localAddress;
diff --git a/Mono.Nat/Properties/AssemblyInfo.cs b/Mono.Nat/Properties/AssemblyInfo.cs
index f209ff705..ea1c9dee6 100644
--- a/Mono.Nat/Properties/AssemblyInfo.cs
+++ b/Mono.Nat/Properties/AssemblyInfo.cs
@@ -1,5 +1,5 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -8,27 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("Mono.Nat")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("Mono.Nat")]
-[assembly: AssemblyCopyright("Copyright © 2017")]
+[assembly: AssemblyCompany("Jellyfin Project")]
+[assembly: AssemblyProduct("Jellyfin: The Free Software Media System")]
+[assembly: AssemblyCopyright("Copyright © 2006 Alan McGovern. Copyright © 2007 Ben Motmans. Code releases unde the MIT license. 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("cb7f2326-6497-4a3d-ba03-48513b17a7be")]
-
-// 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.*")] \ No newline at end of file
diff --git a/Mono.Nat/Upnp/Searchers/UpnpSearcher.cs b/Mono.Nat/Upnp/Searchers/UpnpSearcher.cs
index 17ce19768..57ecdeca9 100644
--- a/Mono.Nat/Upnp/Searchers/UpnpSearcher.cs
+++ b/Mono.Nat/Upnp/Searchers/UpnpSearcher.cs
@@ -65,7 +65,7 @@ namespace Mono.Nat
{
if (localAddress == null)
{
- throw new ArgumentNullException("localAddress");
+ throw new ArgumentNullException(nameof(localAddress));
}
try
diff --git a/Mono.Nat/Upnp/UpnpNatDevice.cs b/Mono.Nat/Upnp/UpnpNatDevice.cs
index a3b90677e..f37d6dd0c 100644
--- a/Mono.Nat/Upnp/UpnpNatDevice.cs
+++ b/Mono.Nat/Upnp/UpnpNatDevice.cs
@@ -58,7 +58,7 @@ namespace Mono.Nat.Upnp
{
if (localAddress == null)
{
- throw new ArgumentNullException("localAddress");
+ throw new ArgumentNullException(nameof(localAddress));
}
this.LastSeen = DateTime.Now;
diff --git a/OpenSubtitlesHandler/OpenSubtitles.cs b/OpenSubtitlesHandler/OpenSubtitles.cs
index 10d11ae20..91e1e5104 100644
--- a/OpenSubtitlesHandler/OpenSubtitles.cs
+++ b/OpenSubtitlesHandler/OpenSubtitles.cs
@@ -284,12 +284,12 @@ namespace OpenSubtitlesHandler
if (parameters == null)
{
OSHConsole.UpdateLine("No subtitle search parameter passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle search parameter passed"); ;
+ return new MethodResponseError("Fail", "No subtitle search parameter passed");
}
if (parameters.Length == 0)
{
OSHConsole.UpdateLine("No subtitle search parameter passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle search parameter passed"); ;
+ return new MethodResponseError("Fail", "No subtitle search parameter passed");
}
// Method call ..
List<IXmlRpcValue> parms = new List<IXmlRpcValue>();
@@ -461,12 +461,12 @@ namespace OpenSubtitlesHandler
if (parameters == null)
{
OSHConsole.UpdateLine("No subtitle search parameter passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle search parameter passed"); ;
+ return new MethodResponseError("Fail", "No subtitle search parameter passed");
}
if (parameters.Length == 0)
{
OSHConsole.UpdateLine("No subtitle search parameter passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle search parameter passed"); ;
+ return new MethodResponseError("Fail", "No subtitle search parameter passed");
}
// Method call ..
List<IXmlRpcValue> parms = new List<IXmlRpcValue>();
@@ -646,12 +646,12 @@ namespace OpenSubtitlesHandler
if (subIDS == null)
{
OSHConsole.UpdateLine("No subtitle id passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle id passed"); ;
+ return new MethodResponseError("Fail", "No subtitle id passed");
}
if (subIDS.Length == 0)
{
OSHConsole.UpdateLine("No subtitle id passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle id passed"); ;
+ return new MethodResponseError("Fail", "No subtitle id passed");
}
// Method call ..
List<IXmlRpcValue> parms = new List<IXmlRpcValue>();
@@ -753,12 +753,12 @@ namespace OpenSubtitlesHandler
if (subIDS == null)
{
OSHConsole.UpdateLine("No subtitle id passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle id passed"); ;
+ return new MethodResponseError("Fail", "No subtitle id passed");
}
if (subIDS.Length == 0)
{
OSHConsole.UpdateLine("No subtitle id passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle id passed"); ;
+ return new MethodResponseError("Fail", "No subtitle id passed");
}
// Method call ..
List<IXmlRpcValue> parms = new List<IXmlRpcValue>();
@@ -868,12 +868,12 @@ namespace OpenSubtitlesHandler
if (subIDS == null)
{
OSHConsole.UpdateLine("No subtitle id passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle id passed"); ;
+ return new MethodResponseError("Fail", "No subtitle id passed");
}
if (subIDS.Length == 0)
{
OSHConsole.UpdateLine("No subtitle id passed !!", DebugCode.Error);
- return new MethodResponseError("Fail", "No subtitle id passed"); ;
+ return new MethodResponseError("Fail", "No subtitle id passed");
}
// Method call ..
List<IXmlRpcValue> parms = new List<IXmlRpcValue>();
diff --git a/OpenSubtitlesHandler/Properties/AssemblyInfo.cs b/OpenSubtitlesHandler/Properties/AssemblyInfo.cs
index f82e8c458..ad4fbbb02 100644
--- a/OpenSubtitlesHandler/Properties/AssemblyInfo.cs
+++ b/OpenSubtitlesHandler/Properties/AssemblyInfo.cs
@@ -1,4 +1,5 @@
-using System.Reflection;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -7,29 +8,17 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("OpenSubtitlesHandler")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("OpenSubtitlesHandler")]
-[assembly: AssemblyCopyright("Copyright © 2014")]
+[assembly: AssemblyCompany("Jellyfin Project")]
+[assembly: AssemblyProduct("Jellyfin: The Free Software Media System")]
+[assembly: AssemblyCopyright("Copyright © 2013 Ala Ibrahim Hadid. 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("7c43bda2-2037-449d-8aac-9c0ccee8191f")]
-
-// 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/RSSDP/DeviceAvailableEventArgs.cs b/RSSDP/DeviceAvailableEventArgs.cs
index fe1c81566..edc8687e9 100644
--- a/RSSDP/DeviceAvailableEventArgs.cs
+++ b/RSSDP/DeviceAvailableEventArgs.cs
@@ -16,46 +16,47 @@ namespace Rssdp
#region Fields
private readonly DiscoveredSsdpDevice _DiscoveredDevice;
- private readonly bool _IsNewlyDiscovered;
-
- #endregion
-
- #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)
- {
- if (discoveredDevice == null) throw new ArgumentNullException("discoveredDevice");
-
- _DiscoveredDevice = discoveredDevice;
- _IsNewlyDiscovered = isNewlyDiscovered;
- }
-
- #endregion
-
- #region Public Properties
-
- /// <summary>
- /// Returns true if the device was discovered due to an alive notification, or a search and was not already in the cache. Returns false if the item came from the cache but matched the current search request.
- /// </summary>
- public bool IsNewlyDiscovered
- {
- 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
- {
- get { return _DiscoveredDevice; }
- }
-
- #endregion
- }
-}
+ private readonly bool _IsNewlyDiscovered;
+
+ #endregion
+
+ #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)
+ {
+ if (discoveredDevice == null) throw new ArgumentNullException(nameof(discoveredDevice));
+
+ _DiscoveredDevice = discoveredDevice;
+ _IsNewlyDiscovered = isNewlyDiscovered;
+ }
+
+ #endregion
+
+ #region Public Properties
+
+ /// <summary>
+ /// Returns true if the device was discovered due to an alive notification, or a search and was not already in the cache. Returns false if the item came from the cache but matched the current search request.
+ /// </summary>
+ public bool IsNewlyDiscovered
+ {
+ 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
+ {
+ get { return _DiscoveredDevice; }
+ }
+
+ #endregion
+
+ }
+} \ No newline at end of file
diff --git a/RSSDP/DeviceEventArgs.cs b/RSSDP/DeviceEventArgs.cs
index 5fd441041..55b23b68c 100644
--- a/RSSDP/DeviceEventArgs.cs
+++ b/RSSDP/DeviceEventArgs.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Text;
@@ -25,7 +25,7 @@ namespace Rssdp
/// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception>
public DeviceEventArgs(SsdpDevice device)
{
- if (device == null) throw new ArgumentNullException("device");
+ if (device == null) throw new ArgumentNullException(nameof(device));
_Device = device;
}
diff --git a/RSSDP/DeviceUnavailableEventArgs.cs b/RSSDP/DeviceUnavailableEventArgs.cs
index 1190cfc81..ecba7c013 100644
--- a/RSSDP/DeviceUnavailableEventArgs.cs
+++ b/RSSDP/DeviceUnavailableEventArgs.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
@@ -28,7 +28,7 @@ namespace Rssdp
/// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="discoveredDevice"/> parameter is null.</exception>
public DeviceUnavailableEventArgs(DiscoveredSsdpDevice discoveredDevice, bool expired)
{
- if (discoveredDevice == null) throw new ArgumentNullException("discoveredDevice");
+ if (discoveredDevice == null) throw new ArgumentNullException(nameof(discoveredDevice));
_DiscoveredDevice = discoveredDevice;
_Expired = expired;
diff --git a/RSSDP/HttpParserBase.cs b/RSSDP/HttpParserBase.cs
index e841feab3..000d6db26 100644
--- a/RSSDP/HttpParserBase.cs
+++ b/RSSDP/HttpParserBase.cs
@@ -42,9 +42,9 @@ namespace Rssdp.Infrastructure
[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)
{
- if (data == null) throw new ArgumentNullException("data");
- if (data.Length == 0) throw new ArgumentException("data cannot be an empty string.", "data");
- if (!LineTerminators.Any(data.Contains)) throw new ArgumentException("data is not a valid request, it does not contain any CRLF/LF terminators.", "data");
+ if (data == null) throw new ArgumentNullException(nameof(data));
+ if (data.Length == 0) throw new ArgumentException("data cannot be an empty string.", nameof(data));
+ if (!LineTerminators.Any(data.Contains)) throw new ArgumentException("data is not a valid request, it does not contain any CRLF/LF terminators.", nameof(data));
using (var retVal = new ByteArrayContent(EmptyByteArray))
{
@@ -77,10 +77,10 @@ namespace Rssdp.Infrastructure
/// <returns>A <see cref="Version"/> object containing the parsed version data.</returns>
protected Version ParseHttpVersion(string versionData)
{
- if (versionData == null) throw new ArgumentNullException("versionData");
+ if (versionData == null) throw new ArgumentNullException(nameof(versionData));
var versionSeparatorIndex = versionData.IndexOf('/');
- if (versionSeparatorIndex <= 0 || versionSeparatorIndex == versionData.Length) throw new ArgumentException("request header line is invalid. Http Version not supplied or incorrect format.", "versionData");
+ if (versionSeparatorIndex <= 0 || versionSeparatorIndex == versionData.Length) throw new ArgumentException("request header line is invalid. Http Version not supplied or incorrect format.", nameof(versionData));
return Version.Parse(versionData.Substring(versionSeparatorIndex + 1));
}
diff --git a/RSSDP/HttpRequestParser.cs b/RSSDP/HttpRequestParser.cs
index 8b027ebd5..1af7f0d51 100644
--- a/RSSDP/HttpRequestParser.cs
+++ b/RSSDP/HttpRequestParser.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
@@ -17,9 +17,9 @@ namespace Rssdp.Infrastructure
#region Fields & Constants
private readonly string[] ContentHeaderNames = new string[]
- {
- "Allow", "Content-Disposition", "Content-Encoding", "Content-Language", "Content-Length", "Content-Location", "Content-MD5", "Content-Range", "Content-Type", "Expires", "Last-Modified"
- };
+ {
+ "Allow", "Content-Disposition", "Content-Encoding", "Content-Language", "Content-Length", "Content-Location", "Content-MD5", "Content-Range", "Content-Type", "Expires", "Last-Modified"
+ };
#endregion
@@ -60,11 +60,11 @@ namespace Rssdp.Infrastructure
/// <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>
protected override void ParseStatusLine(string data, HttpRequestMessage message)
{
- if (data == null) throw new ArgumentNullException("data");
- if (message == null) throw new ArgumentNullException("message");
+ if (data == null) throw new ArgumentNullException(nameof(data));
+ if (message == null) throw new ArgumentNullException(nameof(message));
var parts = data.Split(' ');
- if (parts.Length < 2) throw new ArgumentException("Status line is invalid. Insufficient status parts.", "data");
+ if (parts.Length < 2) throw new ArgumentException("Status line is invalid. Insufficient status parts.", nameof(data));
message.Method = new HttpMethod(parts[0].Trim());
Uri requestUri;
diff --git a/RSSDP/HttpResponseParser.cs b/RSSDP/HttpResponseParser.cs
index cbd5517b8..d864a8bb7 100644
--- a/RSSDP/HttpResponseParser.cs
+++ b/RSSDP/HttpResponseParser.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
@@ -17,9 +17,9 @@ namespace Rssdp.Infrastructure
#region Fields & Constants
private readonly string[] ContentHeaderNames = new string[]
- {
- "Allow", "Content-Disposition", "Content-Encoding", "Content-Language", "Content-Length", "Content-Location", "Content-MD5", "Content-Range", "Content-Type", "Expires", "Last-Modified"
- };
+ {
+ "Allow", "Content-Disposition", "Content-Encoding", "Content-Language", "Content-Length", "Content-Location", "Content-MD5", "Content-Range", "Content-Type", "Expires", "Last-Modified"
+ };
#endregion
@@ -71,17 +71,17 @@ namespace Rssdp.Infrastructure
/// <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>
protected override void ParseStatusLine(string data, HttpResponseMessage message)
{
- if (data == null) throw new ArgumentNullException("data");
- if (message == null) throw new ArgumentNullException("message");
+ if (data == null) throw new ArgumentNullException(nameof(data));
+ if (message == null) throw new ArgumentNullException(nameof(message));
var parts = data.Split(' ');
- if (parts.Length < 2) throw new ArgumentException("data status line is invalid. Insufficient status parts.", "data");
+ if (parts.Length < 2) throw new ArgumentException("data status line is invalid. Insufficient status parts.", nameof(data));
message.Version = ParseHttpVersion(parts[0].Trim());
int statusCode = -1;
if (!Int32.TryParse(parts[1].Trim(), out statusCode))
- throw new ArgumentException("data status line is invalid. Status code is not a valid integer.", "data");
+ throw new ArgumentException("data status line is invalid. Status code is not a valid integer.", nameof(data));
message.StatusCode = (HttpStatusCode)statusCode;
diff --git a/RSSDP/IEnumerableExtensions.cs b/RSSDP/IEnumerableExtensions.cs
index 85a72c01d..c96542dca 100644
--- a/RSSDP/IEnumerableExtensions.cs
+++ b/RSSDP/IEnumerableExtensions.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
@@ -9,8 +9,8 @@ namespace Rssdp.Infrastructure
{
public static IEnumerable<T> SelectManyRecursive<T>(this IEnumerable<T> source, Func<T, IEnumerable<T>> selector)
{
- if (source == null) throw new ArgumentNullException("source");
- if (selector == null) throw new ArgumentNullException("selector");
+ if (source == null) throw new ArgumentNullException(nameof(source));
+ if (selector == null) throw new ArgumentNullException(nameof(selector));
return !source.Any() ? source :
source.Concat(
diff --git a/RSSDP/Properties/AssemblyInfo.cs b/RSSDP/Properties/AssemblyInfo.cs
index f0584fa1a..7098279b4 100644
--- a/RSSDP/Properties/AssemblyInfo.cs
+++ b/RSSDP/Properties/AssemblyInfo.cs
@@ -1,30 +1,24 @@
-using System.Resources;
using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Resources;
using System.Runtime.InteropServices;
// 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("RSSDP2")]
+[assembly: AssemblyTitle("RSSDP")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("RSSDP2")]
-[assembly: AssemblyCopyright("Copyright © 2016")]
+[assembly: AssemblyCompany("Jellyfin Project")]
+[assembly: AssemblyProduct("Jellyfin: The Free Software Media System")]
+[assembly: AssemblyCopyright("Copyright © 2015 Troy Willmot. Code released under the MIT license. Copyright © 2019 Jellyfin Contributors. Code released under the GNU General Public License Version 2")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
[assembly: NeutralResourcesLanguage("en")]
-// 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.*")]
+// 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)]
+
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/RSSDP/SsdpCommunicationsServer.cs b/RSSDP/SsdpCommunicationsServer.cs
index e2e5c4e9f..5fc524428 100644
--- a/RSSDP/SsdpCommunicationsServer.cs
+++ b/RSSDP/SsdpCommunicationsServer.cs
@@ -86,8 +86,8 @@ namespace Rssdp.Infrastructure
/// <exception cref="System.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("socketFactory");
- if (multicastTimeToLive <= 0) throw new ArgumentOutOfRangeException("multicastTimeToLive", "multicastTimeToLive must be greater than zero.");
+ if (socketFactory == null) throw new ArgumentNullException(nameof(socketFactory));
+ if (multicastTimeToLive <= 0) throw new ArgumentOutOfRangeException(nameof(multicastTimeToLive), "multicastTimeToLive must be greater than zero.");
_BroadcastListenSocketSynchroniser = new object();
_SendSocketSynchroniser = new object();
@@ -157,7 +157,7 @@ namespace Rssdp.Infrastructure
/// </summary>
public async Task SendMessage(byte[] messageData, IpEndPointInfo destination, IpAddressInfo fromLocalIpAddress, CancellationToken cancellationToken)
{
- if (messageData == null) throw new ArgumentNullException("messageData");
+ if (messageData == null) throw new ArgumentNullException(nameof(messageData));
ThrowIfDisposed();
@@ -242,7 +242,7 @@ namespace Rssdp.Infrastructure
/// </summary>
public async Task SendMulticastMessage(string message, int sendCount, CancellationToken cancellationToken)
{
- if (message == null) throw new ArgumentNullException("messageData");
+ if (message == null) throw new ArgumentNullException(nameof(message));
byte[] messageData = Encoding.UTF8.GetBytes(message);
diff --git a/RSSDP/SsdpDevice.cs b/RSSDP/SsdpDevice.cs
index 865084d05..4508e4f34 100644
--- a/RSSDP/SsdpDevice.cs
+++ b/RSSDP/SsdpDevice.cs
@@ -281,7 +281,7 @@ namespace Rssdp
/// <seealso cref="DeviceAdded"/>
public void AddDevice(SsdpEmbeddedDevice device)
{
- if (device == null) throw new ArgumentNullException("device");
+ if (device == null) throw new ArgumentNullException(nameof(device));
if (device.RootDevice != null && device.RootDevice != this.ToRootDevice()) throw new InvalidOperationException("This device is already associated with a different root device (has been added as a child in another branch).");
if (device == this) throw new InvalidOperationException("Can't add device to itself.");
@@ -309,7 +309,7 @@ namespace Rssdp
/// <seealso cref="DeviceRemoved"/>
public void RemoveDevice(SsdpEmbeddedDevice device)
{
- if (device == null) throw new ArgumentNullException("device");
+ if (device == null) throw new ArgumentNullException(nameof(device));
bool wasRemoved = false;
lock (_Devices)
diff --git a/RSSDP/SsdpDeviceLocator.cs b/RSSDP/SsdpDeviceLocator.cs
index c7daf359d..0a092e6b0 100644
--- a/RSSDP/SsdpDeviceLocator.cs
+++ b/RSSDP/SsdpDeviceLocator.cs
@@ -39,7 +39,7 @@ namespace Rssdp.Infrastructure
/// </summary>
public SsdpDeviceLocator(ISsdpCommunicationsServer communicationsServer, ITimerFactory timerFactory)
{
- if (communicationsServer == null) throw new ArgumentNullException("communicationsServer");
+ if (communicationsServer == null) throw new ArgumentNullException(nameof(communicationsServer));
_CommunicationsServer = communicationsServer;
_timerFactory = timerFactory;
@@ -164,8 +164,8 @@ namespace Rssdp.Infrastructure
private Task SearchAsync(string searchTarget, TimeSpan searchWaitTime, CancellationToken cancellationToken)
{
- if (searchTarget == null) throw new ArgumentNullException("searchTarget");
- if (searchTarget.Length == 0) throw new ArgumentException("searchTarget cannot be an empty string.", "searchTarget");
+ if (searchTarget == null) throw new ArgumentNullException(nameof(searchTarget));
+ if (searchTarget.Length == 0) throw new ArgumentException("searchTarget cannot be an empty string.", nameof(searchTarget));
if (searchWaitTime.TotalSeconds < 0) throw new ArgumentException("searchWaitTime must be a positive time.");
if (searchWaitTime.TotalSeconds > 0 && searchWaitTime.TotalSeconds <= 1) throw new ArgumentException("searchWaitTime must be zero (if you are not using the result and relying entirely in the events), or greater than one second.");
diff --git a/RSSDP/SsdpDevicePublisher.cs b/RSSDP/SsdpDevicePublisher.cs
index 30e1c5a0b..a44dd0c0c 100644
--- a/RSSDP/SsdpDevicePublisher.cs
+++ b/RSSDP/SsdpDevicePublisher.cs
@@ -41,11 +41,11 @@ namespace Rssdp.Infrastructure
/// </summary>
public SsdpDevicePublisher(ISsdpCommunicationsServer communicationsServer, ITimerFactory timerFactory, string osName, string osVersion)
{
- if (communicationsServer == null) throw new ArgumentNullException("communicationsServer");
- if (osName == null) throw new ArgumentNullException("osName");
- if (osName.Length == 0) throw new ArgumentException("osName cannot be an empty string.", "osName");
- if (osVersion == null) throw new ArgumentNullException("osVersion");
- if (osVersion.Length == 0) throw new ArgumentException("osVersion cannot be an empty string.", "osName");
+ if (communicationsServer == null) throw new ArgumentNullException(nameof(communicationsServer));
+ if (osName == null) throw new ArgumentNullException(nameof(osName));
+ if (osName.Length == 0) throw new ArgumentException("osName cannot be an empty string.", nameof(osName));
+ if (osVersion == null) throw new ArgumentNullException(nameof(osVersion));
+ if (osVersion.Length == 0) throw new ArgumentException("osVersion cannot be an empty string.", nameof(osName));
_SupportPnpRootDevice = true;
_timerFactory = timerFactory;
@@ -81,7 +81,7 @@ namespace Rssdp.Infrastructure
[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)
{
- if (device == null) throw new ArgumentNullException("device");
+ if (device == null) throw new ArgumentNullException(nameof(device));
ThrowIfDisposed();
@@ -116,7 +116,7 @@ namespace Rssdp.Infrastructure
/// <exception cref="System.ArgumentNullException">Thrown if the <paramref name="device"/> argument is null.</exception>
public async Task RemoveDevice(SsdpRootDevice device)
{
- if (device == null) throw new ArgumentNullException("device");
+ if (device == null) throw new ArgumentNullException(nameof(device));
bool wasRemoved = false;
TimeSpan minCacheTime = TimeSpan.Zero;
diff --git a/SharedVersion.cs b/SharedVersion.cs
index 0fbf7b925..07026f70a 100644
--- a/SharedVersion.cs
+++ b/SharedVersion.cs
@@ -1,3 +1,4 @@
-using System.Reflection;
+using System.Reflection;
[assembly: AssemblyVersion("10.0.1")]
+[assembly: AssemblyFileVersion("10.0.1")]
diff --git a/SocketHttpListener/CloseEventArgs.cs b/SocketHttpListener/CloseEventArgs.cs
index b1bb4b196..ff30126bc 100644
--- a/SocketHttpListener/CloseEventArgs.cs
+++ b/SocketHttpListener/CloseEventArgs.cs
@@ -33,10 +33,10 @@ namespace SocketHttpListener
_reason = len > 2
? GetUtf8String(data.SubArray (2, len - 2))
- : String.Empty;
+ : string.Empty;
}
- private string GetUtf8String(byte[] bytes)
+ private static string GetUtf8String(byte[] bytes)
{
return Encoding.UTF8.GetString(bytes, 0, bytes.Length);
}
diff --git a/SocketHttpListener/Ext.cs b/SocketHttpListener/Ext.cs
index 125775180..4404235ba 100644
--- a/SocketHttpListener/Ext.cs
+++ b/SocketHttpListener/Ext.cs
@@ -149,7 +149,7 @@ namespace SocketHttpListener
internal static string CheckIfValidControlData(this byte[] data, string paramName)
{
return data.Length > 125
- ? String.Format("'{0}' length must be less.", paramName)
+ ? string.Format("'{0}' length must be less.", paramName)
: null;
}
@@ -222,7 +222,7 @@ namespace SocketHttpListener
internal static bool EqualsWith(this int value, char c, Action<int> action)
{
if (value < 0 || value > 255)
- throw new ArgumentOutOfRangeException("value");
+ throw new ArgumentOutOfRangeException(nameof(value));
action(value);
return value == c - 0;
@@ -248,7 +248,7 @@ namespace SocketHttpListener
? "WebSocket server got an internal error."
: code == CloseStatusCode.TlsHandshakeFailure
? "An error has occurred while handshaking."
- : String.Empty;
+ : string.Empty;
}
internal static string GetNameInternal(this string nameAndValue, string separator)
@@ -329,7 +329,7 @@ namespace SocketHttpListener
{
return value.IsToken()
? value
- : String.Format("\"{0}\"", value.Replace("\"", "\\\""));
+ : string.Format("\"{0}\"", value.Replace("\"", "\\\""));
}
internal static byte[] ReadBytes(this Stream stream, int length)
@@ -484,13 +484,13 @@ namespace SocketHttpListener
this CompressionMethod method, params string[] parameters)
{
if (method == CompressionMethod.None)
- return String.Empty;
+ return string.Empty;
- var m = String.Format("permessage-{0}", method.ToString().ToLower());
+ var m = string.Format("permessage-{0}", method.ToString().ToLower());
if (parameters == null || parameters.Length == 0)
return m;
- return String.Format("{0}; {1}", m, parameters.ToString("; "));
+ return string.Format("{0}; {1}", m, parameters.ToString("; "));
}
internal static List<TSource> ToList<TSource>(this IEnumerable<TSource> source)
@@ -715,7 +715,7 @@ namespace SocketHttpListener
case 507: return "Insufficient Storage";
}
- return String.Empty;
+ return string.Empty;
}
/// <summary>
@@ -855,7 +855,7 @@ namespace SocketHttpListener
public static byte[] ToHostOrder(this byte[] src, ByteOrder srcOrder)
{
if (src == null)
- throw new ArgumentNullException("src");
+ throw new ArgumentNullException(nameof(src));
return src.Length > 1 && !srcOrder.IsHostOrder()
? src.Reverse()
@@ -886,14 +886,14 @@ namespace SocketHttpListener
public static string ToString<T>(this T[] array, string separator)
{
if (array == null)
- throw new ArgumentNullException("array");
+ throw new ArgumentNullException(nameof(array));
var len = array.Length;
if (len == 0)
- return String.Empty;
+ return string.Empty;
if (separator == null)
- separator = String.Empty;
+ separator = string.Empty;
var buff = new StringBuilder(64);
(len - 1).Times(i => buff.AppendFormat("{0}{1}", array[i].ToString(), separator));
diff --git a/SocketHttpListener/HttpBase.cs b/SocketHttpListener/HttpBase.cs
index 5172ba497..d4ae857ff 100644
--- a/SocketHttpListener/HttpBase.cs
+++ b/SocketHttpListener/HttpBase.cs
@@ -49,7 +49,7 @@ namespace SocketHttpListener
return data != null && data.Length > 0
? getEncoding(_headers["Content-Type"]).GetString(data, 0, data.Length)
- : String.Empty;
+ : string.Empty;
}
}
diff --git a/SocketHttpListener/HttpResponse.cs b/SocketHttpListener/HttpResponse.cs
index 154a3d8e9..535fde031 100644
--- a/SocketHttpListener/HttpResponse.cs
+++ b/SocketHttpListener/HttpResponse.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Specialized;
using System.IO;
using System.Net;
@@ -56,7 +56,7 @@ namespace SocketHttpListener
}
}
- private CookieCollection GetCookies(QueryParamCollection headers, bool response)
+ private static CookieCollection GetCookies(QueryParamCollection headers, bool response)
{
var name = response ? "Set-Cookie" : "Cookie";
return headers == null || !headers.Contains(name)
@@ -156,4 +156,4 @@ namespace SocketHttpListener
#endregion
}
-} \ No newline at end of file
+}
diff --git a/SocketHttpListener/MessageEventArgs.cs b/SocketHttpListener/MessageEventArgs.cs
index 9dbadb9ab..86614c43c 100644
--- a/SocketHttpListener/MessageEventArgs.cs
+++ b/SocketHttpListener/MessageEventArgs.cs
@@ -85,7 +85,7 @@ namespace SocketHttpListener
private static string convertToString (Opcode opcode, byte [] data)
{
return data.Length == 0
- ? String.Empty
+ ? string.Empty
: opcode == Opcode.Text
? Encoding.UTF8.GetString (data, 0, data.Length)
: opcode.ToString ();
diff --git a/SocketHttpListener/Net/ChunkStream.cs b/SocketHttpListener/Net/ChunkStream.cs
index 662be6313..5cc01614f 100644
--- a/SocketHttpListener/Net/ChunkStream.cs
+++ b/SocketHttpListener/Net/ChunkStream.cs
@@ -271,7 +271,7 @@ namespace SocketHttpListener.Net
{
if (_saved.Length > 0)
{
- _chunkSize = Int32.Parse(RemoveChunkExtension(_saved.ToString()), NumberStyles.HexNumber);
+ _chunkSize = int.Parse(RemoveChunkExtension(_saved.ToString()), NumberStyles.HexNumber);
}
}
catch (Exception)
@@ -285,7 +285,7 @@ namespace SocketHttpListener.Net
_chunkRead = 0;
try
{
- _chunkSize = Int32.Parse(RemoveChunkExtension(_saved.ToString()), NumberStyles.HexNumber);
+ _chunkSize = int.Parse(RemoveChunkExtension(_saved.ToString()), NumberStyles.HexNumber);
}
catch (Exception)
{
diff --git a/SocketHttpListener/Net/CookieHelper.cs b/SocketHttpListener/Net/CookieHelper.cs
index a32131956..6c1764e09 100644
--- a/SocketHttpListener/Net/CookieHelper.cs
+++ b/SocketHttpListener/Net/CookieHelper.cs
@@ -36,7 +36,7 @@ namespace SocketHttpListener.Net
if (pair.StartsWith("version", StringComparison.OrdinalIgnoreCase))
{
if (cookie != null)
- cookie.Version = Int32.Parse(pair.GetValueInternal("=").Trim('"'));
+ cookie.Version = int.Parse(pair.GetValueInternal("=").Trim('"'));
}
else if (pair.StartsWith("expires", StringComparison.OrdinalIgnoreCase))
{
@@ -58,7 +58,7 @@ namespace SocketHttpListener.Net
}
else if (pair.StartsWith("max-age", StringComparison.OrdinalIgnoreCase))
{
- var max = Int32.Parse(pair.GetValueInternal("=").Trim('"'));
+ var max = int.Parse(pair.GetValueInternal("=").Trim('"'));
var expires = DateTime.Now.AddSeconds((double)max);
if (cookie != null)
cookie.Expires = expires;
@@ -113,7 +113,7 @@ namespace SocketHttpListener.Net
cookies.Add(cookie);
string name;
- string val = String.Empty;
+ string val = string.Empty;
var pos = pair.IndexOf('=');
if (pos == -1)
diff --git a/SocketHttpListener/Net/HttpEndPointListener.cs b/SocketHttpListener/Net/HttpEndPointListener.cs
index 35f60a9fb..a108e7dd4 100644
--- a/SocketHttpListener/Net/HttpEndPointListener.cs
+++ b/SocketHttpListener/Net/HttpEndPointListener.cs
@@ -168,6 +168,7 @@ namespace SocketHttpListener.Net
}
catch (ObjectDisposedException)
{
+ // TODO Investigate or properly fix.
}
catch (Exception ex)
{
diff --git a/SocketHttpListener/Net/HttpListener.cs b/SocketHttpListener/Net/HttpListener.cs
index 4c4832336..a159cd273 100644
--- a/SocketHttpListener/Net/HttpListener.cs
+++ b/SocketHttpListener/Net/HttpListener.cs
@@ -248,7 +248,7 @@ namespace SocketHttpListener.Net
internal void CheckDisposed()
{
if (disposed)
- throw new ObjectDisposedException(GetType().ToString());
+ throw new ObjectDisposedException(GetType().Name);
}
internal void RegisterContext(HttpListenerContext context)
diff --git a/SocketHttpListener/Net/HttpListenerBasicIdentity.cs b/SocketHttpListener/Net/HttpListenerBasicIdentity.cs
index faa26693d..d20e72777 100644
--- a/SocketHttpListener/Net/HttpListenerBasicIdentity.cs
+++ b/SocketHttpListener/Net/HttpListenerBasicIdentity.cs
@@ -26,7 +26,7 @@ namespace SocketHttpListener.Net
public GenericIdentity(string name)
{
if (name == null)
- throw new System.ArgumentNullException("name");
+ throw new System.ArgumentNullException(nameof(name));
m_name = name;
m_type = "";
@@ -35,9 +35,9 @@ namespace SocketHttpListener.Net
public GenericIdentity(string name, string type)
{
if (name == null)
- throw new System.ArgumentNullException("name");
+ throw new System.ArgumentNullException(nameof(name));
if (type == null)
- throw new System.ArgumentNullException("type");
+ throw new System.ArgumentNullException(nameof(type));
m_name = name;
m_type = type;
diff --git a/SocketHttpListener/Net/HttpListenerContext.cs b/SocketHttpListener/Net/HttpListenerContext.cs
index 0aaac1ad5..e3e6eb906 100644
--- a/SocketHttpListener/Net/HttpListenerContext.cs
+++ b/SocketHttpListener/Net/HttpListenerContext.cs
@@ -49,7 +49,7 @@ namespace SocketHttpListener.Net
public GenericPrincipal(IIdentity identity, string[] roles)
{
if (identity == null)
- throw new ArgumentNullException("identity");
+ throw new ArgumentNullException(nameof(identity));
m_identity = identity;
if (roles != null)
@@ -81,7 +81,7 @@ namespace SocketHttpListener.Net
for (int i = 0; i < m_roles.Length; ++i)
{
- if (m_roles[i] != null && String.Compare(m_roles[i], role, StringComparison.OrdinalIgnoreCase) == 0)
+ if (m_roles[i] != null && string.Compare(m_roles[i], role, StringComparison.OrdinalIgnoreCase) == 0)
return true;
}
return false;
diff --git a/SocketHttpListener/Net/HttpListenerPrefixCollection.cs b/SocketHttpListener/Net/HttpListenerPrefixCollection.cs
index ed99af1a6..f0e496a5a 100644
--- a/SocketHttpListener/Net/HttpListenerPrefixCollection.cs
+++ b/SocketHttpListener/Net/HttpListenerPrefixCollection.cs
@@ -85,7 +85,7 @@ namespace SocketHttpListener.Net
{
listener.CheckDisposed();
if (uriPrefix == null)
- throw new ArgumentNullException("uriPrefix");
+ throw new ArgumentNullException(nameof(uriPrefix));
bool result = prefixes.Remove(uriPrefix);
if (result && listener.IsListening)
diff --git a/SocketHttpListener/Net/HttpListenerRequest.Managed.cs b/SocketHttpListener/Net/HttpListenerRequest.Managed.cs
index 47a6dfcfd..8b68afe33 100644
--- a/SocketHttpListener/Net/HttpListenerRequest.Managed.cs
+++ b/SocketHttpListener/Net/HttpListenerRequest.Managed.cs
@@ -183,14 +183,14 @@ namespace SocketHttpListener.Net
}
}
- if (String.Compare(Headers[HttpKnownHeaderNames.Expect], "100-continue", StringComparison.OrdinalIgnoreCase) == 0)
+ if (string.Compare(Headers[HttpKnownHeaderNames.Expect], "100-continue", StringComparison.OrdinalIgnoreCase) == 0)
{
HttpResponseStream output = _context.Connection.GetResponseStream();
output.InternalWrite(s_100continue, 0, s_100continue.Length);
}
}
- internal static string Unquote(String str)
+ internal static string Unquote(string str)
{
int start = str.IndexOf('\"');
int end = str.LastIndexOf('\"');
diff --git a/SocketHttpListener/Net/HttpListenerRequest.cs b/SocketHttpListener/Net/HttpListenerRequest.cs
index 1b369dfa8..16e245611 100644
--- a/SocketHttpListener/Net/HttpListenerRequest.cs
+++ b/SocketHttpListener/Net/HttpListenerRequest.cs
@@ -27,7 +27,7 @@ namespace SocketHttpListener.Net
public string[] UserLanguages => Helpers.ParseMultivalueHeader(Headers[HttpKnownHeaderNames.AcceptLanguage]);
- private CookieCollection ParseCookies(Uri uri, string setCookieHeader)
+ private static CookieCollection ParseCookies(Uri uri, string setCookieHeader)
{
CookieCollection cookies = new CookieCollection();
return cookies;
diff --git a/SocketHttpListener/Net/HttpListenerResponse.cs b/SocketHttpListener/Net/HttpListenerResponse.cs
index 1cbd6165e..351a206ee 100644
--- a/SocketHttpListener/Net/HttpListenerResponse.cs
+++ b/SocketHttpListener/Net/HttpListenerResponse.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.IO;
using System.Net;
@@ -71,7 +71,7 @@ namespace SocketHttpListener.Net
public bool SendChunked
{
- get { return EntitySendFormat == EntitySendFormat.Chunked; ; }
+ get { return EntitySendFormat == EntitySendFormat.Chunked; }
set { EntitySendFormat = value ? EntitySendFormat.Chunked : EntitySendFormat.ContentLength; }
}
@@ -104,7 +104,7 @@ namespace SocketHttpListener.Net
}
else
{
- throw new ArgumentOutOfRangeException("net_clsmall");
+ throw new ArgumentOutOfRangeException(nameof(value));
}
}
}
diff --git a/SocketHttpListener/Net/HttpResponseStream.Managed.cs b/SocketHttpListener/Net/HttpResponseStream.Managed.cs
index 6c33c31c9..719dfcc12 100644
--- a/SocketHttpListener/Net/HttpResponseStream.Managed.cs
+++ b/SocketHttpListener/Net/HttpResponseStream.Managed.cs
@@ -157,7 +157,7 @@ namespace SocketHttpListener.Net
private static byte[] s_crlf = new byte[] { 13, 10 };
private static byte[] GetChunkSizeBytes(int size, bool final)
{
- string str = String.Format("{0:x}\r\n{1}", size, final ? "\r\n" : "");
+ string str = string.Format("{0:x}\r\n{1}", size, final ? "\r\n" : "");
return Encoding.ASCII.GetBytes(str);
}
diff --git a/SocketHttpListener/Net/WebHeaderCollection.cs b/SocketHttpListener/Net/WebHeaderCollection.cs
index 2b1c630d6..ed3cb921c 100644
--- a/SocketHttpListener/Net/WebHeaderCollection.cs
+++ b/SocketHttpListener/Net/WebHeaderCollection.cs
@@ -93,10 +93,10 @@ namespace SocketHttpListener.Net
public void Add(string header)
{
if (header == null)
- throw new ArgumentNullException("header");
+ throw new ArgumentNullException(nameof(header));
int pos = header.IndexOf(':');
if (pos == -1)
- throw new ArgumentException("no colon found", "header");
+ throw new ArgumentException("no colon found", nameof(header));
this.Add(header.Substring(0, pos), header.Substring(pos + 1));
}
@@ -104,7 +104,7 @@ namespace SocketHttpListener.Net
public override void Add(string name, string value)
{
if (name == null)
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
this.AddWithoutValidate(name, value);
}
@@ -112,13 +112,13 @@ namespace SocketHttpListener.Net
protected void AddWithoutValidate(string headerName, string headerValue)
{
if (!IsHeaderName(headerName))
- throw new ArgumentException("invalid header name: " + headerName, "headerName");
+ throw new ArgumentException("invalid header name: " + headerName, nameof(headerName));
if (headerValue == null)
- headerValue = String.Empty;
+ headerValue = string.Empty;
else
headerValue = headerValue.Trim();
if (!IsHeaderValue(headerValue))
- throw new ArgumentException("invalid header value: " + headerValue, "headerValue");
+ throw new ArgumentException("invalid header value: " + headerValue, nameof(headerValue));
AddValue(headerName, headerValue);
}
@@ -131,7 +131,7 @@ namespace SocketHttpListener.Net
internal List<string> GetValues_internal(string header, bool split)
{
if (header == null)
- throw new ArgumentNullException("header");
+ throw new ArgumentNullException(nameof(header));
var values = base.GetValues(header);
if (values == null || values.Count == 0)
@@ -205,10 +205,10 @@ namespace SocketHttpListener.Net
public static bool IsRestricted(string headerName, bool response)
{
if (headerName == null)
- throw new ArgumentNullException("headerName");
+ throw new ArgumentNullException(nameof(headerName));
if (headerName.Length == 0)
- throw new ArgumentException("empty string", "headerName");
+ throw new ArgumentException("empty string", nameof(headerName));
if (!IsHeaderName(headerName))
throw new ArgumentException("Invalid character in header");
@@ -224,11 +224,11 @@ namespace SocketHttpListener.Net
public override void Set(string name, string value)
{
if (name == null)
- throw new ArgumentNullException("name");
+ throw new ArgumentNullException(nameof(name));
if (!IsHeaderName(name))
throw new ArgumentException("invalid header name");
if (value == null)
- value = String.Empty;
+ value = string.Empty;
else
value = value.Trim();
if (!IsHeaderValue(value))
@@ -288,7 +288,7 @@ namespace SocketHttpListener.Net
{
int pos = header.IndexOf(':');
if (pos == -1)
- throw new ArgumentException("no colon found", "header");
+ throw new ArgumentException("no colon found", nameof(header));
SetInternal(header.Substring(0, pos), header.Substring(pos + 1));
}
@@ -296,7 +296,7 @@ namespace SocketHttpListener.Net
internal void SetInternal(string name, string value)
{
if (value == null)
- value = String.Empty;
+ value = string.Empty;
else
value = value.Trim();
if (!IsHeaderValue(value))
diff --git a/SocketHttpListener/Net/WebSockets/HttpWebSocket.cs b/SocketHttpListener/Net/WebSockets/HttpWebSocket.cs
index 1649050d9..f72a139f3 100644
--- a/SocketHttpListener/Net/WebSockets/HttpWebSocket.cs
+++ b/SocketHttpListener/Net/WebSockets/HttpWebSocket.cs
@@ -1,4 +1,4 @@
-using System;
+using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics.CodeAnalysis;
@@ -86,27 +86,27 @@ namespace SocketHttpListener.Net.WebSockets
if (receiveBufferSize < MinReceiveBufferSize)
{
- throw new ArgumentOutOfRangeException("net_WebSockets_ArgumentOutOfRange_TooSmall");
+ throw new ArgumentOutOfRangeException(nameof(receiveBufferSize), "The receiveBufferSize was too small.");
}
if (sendBufferSize < MinSendBufferSize)
{
- throw new ArgumentOutOfRangeException("net_WebSockets_ArgumentOutOfRange_TooSmall");
+ throw new ArgumentOutOfRangeException(nameof(sendBufferSize), "The sendBufferSize was too small.");
}
if (receiveBufferSize > MaxBufferSize)
{
- throw new ArgumentOutOfRangeException("net_WebSockets_ArgumentOutOfRange_TooBig");
+ throw new ArgumentOutOfRangeException(nameof(receiveBufferSize), "The receiveBufferSize was too large.");
}
if (sendBufferSize > MaxBufferSize)
{
- throw new ArgumentOutOfRangeException("net_WebSockets_ArgumentOutOfRange_TooBig");
+ throw new ArgumentOutOfRangeException(nameof(sendBufferSize), "The sendBufferSize was too large.");
}
if (keepAliveInterval < Timeout.InfiniteTimeSpan) // -1 millisecond
{
- throw new ArgumentOutOfRangeException("net_WebSockets_ArgumentOutOfRange_TooSmall");
+ throw new ArgumentOutOfRangeException(nameof(keepAliveInterval), "The keepAliveInterval was too small.");
}
}
diff --git a/SocketHttpListener/Properties/AssemblyInfo.cs b/SocketHttpListener/Properties/AssemblyInfo.cs
index 4151e83e3..a69bd176f 100644
--- a/SocketHttpListener/Properties/AssemblyInfo.cs
+++ b/SocketHttpListener/Properties/AssemblyInfo.cs
@@ -1,5 +1,5 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
+using System.Reflection;
+using System.Resources;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
@@ -8,27 +8,14 @@ using System.Runtime.InteropServices;
[assembly: AssemblyTitle("SocketHttpListener")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("SocketHttpListener")]
-[assembly: AssemblyCopyright("Copyright © 2017")]
+[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("1d74413b-e7cf-455b-b021-f52bdf881542")]
-
-// 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.*")]
diff --git a/SocketHttpListener/WebSocket.cs b/SocketHttpListener/WebSocket.cs
index 7d61850e6..d926a58c9 100644
--- a/SocketHttpListener/WebSocket.cs
+++ b/SocketHttpListener/WebSocket.cs
@@ -740,7 +740,7 @@ namespace SocketHttpListener
{
if (data == null)
{
- throw new ArgumentNullException("data");
+ throw new ArgumentNullException(nameof(data));
}
var msg = _readyState.CheckIfOpen();
@@ -765,7 +765,7 @@ namespace SocketHttpListener
{
if (data == null)
{
- throw new ArgumentNullException("data");
+ throw new ArgumentNullException(nameof(data));
}
var msg = _readyState.CheckIfOpen();