diff options
Diffstat (limited to 'MediaBrowser.Api')
23 files changed, 103 insertions, 199 deletions
diff --git a/MediaBrowser.Api/ApiEntryPoint.cs b/MediaBrowser.Api/ApiEntryPoint.cs index ed0a0c81a9..ef782ddfc6 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); @@ -397,7 +397,7 @@ namespace MediaBrowser.Api lock (_activeTranscodingJobs) { - // This is really only needed for HLS. + // This is really only needed for HLS. // Progressive streams can stop on their own reliably jobs = _activeTranscodingJobs.Where(j => string.Equals(playSessionId, j.PlaySessionId, StringComparison.OrdinalIgnoreCase)).ToList(); } @@ -499,7 +499,7 @@ namespace MediaBrowser.Api lock (_activeTranscodingJobs) { - // This is really only needed for HLS. + // This is really only needed for HLS. // Progressive streams can stop on their own reliably jobs.AddRange(_activeTranscodingJobs.Where(killJob)); } diff --git a/MediaBrowser.Api/DisplayPreferencesService.cs b/MediaBrowser.Api/DisplayPreferencesService.cs index 6bc2f7e4af..eea83490ad 100644 --- a/MediaBrowser.Api/DisplayPreferencesService.cs +++ b/MediaBrowser.Api/DisplayPreferencesService.cs @@ -41,7 +41,7 @@ namespace MediaBrowser.Api [ApiMember(Name = "Client", Description = "Client", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "GET")] public string Client { get; set; } } - + /// <summary> /// Class DisplayPreferencesService /// </summary> diff --git a/MediaBrowser.Api/EnvironmentService.cs b/MediaBrowser.Api/EnvironmentService.cs index ea3920d38d..d678678206 100644 --- a/MediaBrowser.Api/EnvironmentService.cs +++ b/MediaBrowser.Api/EnvironmentService.cs @@ -98,7 +98,7 @@ namespace MediaBrowser.Api [Route("/Environment/DefaultDirectoryBrowser", "GET", Summary = "Gets the parent path of a given path")] public class GetDefaultDirectoryBrowser : IReturn<DefaultDirectoryBrowserInfo> { - + } /// <summary> @@ -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/Images/ImageByNameService.cs b/MediaBrowser.Api/Images/ImageByNameService.cs index 2100e9e91e..7d328a3739 100644 --- a/MediaBrowser.Api/Images/ImageByNameService.cs +++ b/MediaBrowser.Api/Images/ImageByNameService.cs @@ -133,7 +133,7 @@ namespace MediaBrowser.Api.Images { try { - return _fileSystem.GetFiles(path, BaseItem.SupportedImageExtensions, false, true) + return _fileSystem.GetFiles(path, BaseItem.SupportedImageExtensions, false, true) .Select(i => new ImageByNameInfo { Name = _fileSystem.GetFileNameWithoutExtension(i), @@ -185,7 +185,7 @@ namespace MediaBrowser.Api.Images var paths = BaseItem.SupportedImageExtensions.Select(i => Path.Combine(_appPaths.GeneralPath, request.Name, filename + i)).ToList(); - var path = paths.FirstOrDefault(_fileSystem.FileExists) ?? paths.FirstOrDefault(); + var path = paths.FirstOrDefault(_fileSystem.FileExists) ?? paths.FirstOrDefault(); return _resultFactory.GetStaticFileResult(Request, path); } @@ -199,11 +199,11 @@ namespace MediaBrowser.Api.Images { var themeFolder = Path.Combine(_appPaths.RatingsPath, request.Theme); - if (_fileSystem.DirectoryExists(themeFolder)) + if (_fileSystem.DirectoryExists(themeFolder)) { var path = BaseItem.SupportedImageExtensions .Select(i => Path.Combine(themeFolder, request.Name + i)) - .FirstOrDefault(_fileSystem.FileExists); + .FirstOrDefault(_fileSystem.FileExists); if (!string.IsNullOrEmpty(path)) { @@ -213,14 +213,14 @@ namespace MediaBrowser.Api.Images var allFolder = Path.Combine(_appPaths.RatingsPath, "all"); - if (_fileSystem.DirectoryExists(allFolder)) + if (_fileSystem.DirectoryExists(allFolder)) { // Avoid implicitly captured closure var currentRequest = request; var path = BaseItem.SupportedImageExtensions .Select(i => Path.Combine(allFolder, currentRequest.Name + i)) - .FirstOrDefault(_fileSystem.FileExists); + .FirstOrDefault(_fileSystem.FileExists); if (!string.IsNullOrEmpty(path)) { @@ -240,10 +240,10 @@ namespace MediaBrowser.Api.Images { var themeFolder = Path.Combine(_appPaths.MediaInfoImagesPath, request.Theme); - if (_fileSystem.DirectoryExists(themeFolder)) + if (_fileSystem.DirectoryExists(themeFolder)) { var path = BaseItem.SupportedImageExtensions.Select(i => Path.Combine(themeFolder, request.Name + i)) - .FirstOrDefault(_fileSystem.FileExists); + .FirstOrDefault(_fileSystem.FileExists); if (!string.IsNullOrEmpty(path)) { @@ -253,13 +253,13 @@ namespace MediaBrowser.Api.Images var allFolder = Path.Combine(_appPaths.MediaInfoImagesPath, "all"); - if (_fileSystem.DirectoryExists(allFolder)) + if (_fileSystem.DirectoryExists(allFolder)) { // Avoid implicitly captured closure var currentRequest = request; var path = BaseItem.SupportedImageExtensions.Select(i => Path.Combine(allFolder, currentRequest.Name + i)) - .FirstOrDefault(_fileSystem.FileExists); + .FirstOrDefault(_fileSystem.FileExists); if (!string.IsNullOrEmpty(path)) { diff --git a/MediaBrowser.Api/Library/LibraryStructureService.cs b/MediaBrowser.Api/Library/LibraryStructureService.cs index bba89acec6..cd839e0f84 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 ef9ce9aec7..fc645898c7 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/NewsService.cs b/MediaBrowser.Api/NewsService.cs deleted file mode 100644 index cbc77bfc9a..0000000000 --- a/MediaBrowser.Api/NewsService.cs +++ /dev/null @@ -1,46 +0,0 @@ -using MediaBrowser.Model.News; -using MediaBrowser.Model.Querying; -using MediaBrowser.Model.Services; - -namespace MediaBrowser.Api -{ - [Route("/News/Product", "GET", Summary = "Gets the latest product news.")] - public class GetProductNews : IReturn<QueryResult<NewsItem>> - { - /// <summary> - /// Skips over a given number of items within the results. Use for paging. - /// </summary> - /// <value>The start index.</value> - [ApiMember(Name = "StartIndex", Description = "Optional. The record index to start at. All items with a lower index will be dropped from the results.", IsRequired = false, DataType = "int", ParameterType = "query", Verb = "GET")] - public int? StartIndex { get; set; } - - /// <summary> - /// The maximum number of items to return - /// </summary> - /// <value>The limit.</value> - [ApiMember(Name = "Limit", Description = "Optional. The maximum number of records to return", IsRequired = false, DataType = "int", ParameterType = "query", Verb = "GET")] - public int? Limit { get; set; } - } - - public class NewsService : BaseApiService - { - private readonly INewsService _newsService; - - public NewsService(INewsService newsService) - { - _newsService = newsService; - } - - public object Get(GetProductNews request) - { - var result = _newsService.GetProductNews(new NewsQuery - { - StartIndex = request.StartIndex, - Limit = request.Limit - - }); - - return ToOptimizedResult(result); - } - } -} diff --git a/MediaBrowser.Api/Playback/BaseStreamingService.cs b/MediaBrowser.Api/Playback/BaseStreamingService.cs index fa6502bda1..ba7f7070b6 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 @@ -882,7 +884,7 @@ namespace MediaBrowser.Api.Playback if (profile == null) { - // Don't use settings from the default profile. + // Don't use settings from the default profile. // Only use a specific profile if it was requested. return; } diff --git a/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs b/MediaBrowser.Api/Playback/Hls/BaseHlsService.cs index 7ef7b81e63..3e17d0b748 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)) @@ -296,7 +296,7 @@ namespace MediaBrowser.Api.Playback.Hls ).Trim(); } - // add when stream copying? + // add when stream copying? // -avoid_negative_ts make_zero -fflags +genpts var args = string.Format("{0} {1} {2} -map_metadata -1 -map_chapters -1 -threads {3} {4} {5} -max_delay 5000000 -avoid_negative_ts disabled -start_at_zero {6} -hls_time {7} -individual_header_trailer 0 -start_number {8} -hls_list_size {9}{10} -y \"{11}\"", diff --git a/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs b/MediaBrowser.Api/Playback/Hls/DynamicHlsService.cs index 5361e313cb..ff3712f8af 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 6dafe134ce..b0154cc7e7 100644 --- a/MediaBrowser.Api/Playback/MediaInfoService.cs +++ b/MediaBrowser.Api/Playback/MediaInfoService.cs @@ -118,7 +118,7 @@ namespace MediaBrowser.Api.Playback var authInfo = _authContext.GetAuthorizationInfo(Request); var result = await _mediaSourceManager.OpenLiveStream(request, CancellationToken.None).ConfigureAwait(false); - + var profile = request.DeviceProfile; if (profile == null) { @@ -262,6 +262,7 @@ namespace MediaBrowser.Api.Playback catch (Exception ex) { mediaSources = new List<MediaSourceInfo>(); + // TODO Log exception // TODO PlaybackException ?? //result.ErrorCode = ex.ErrorCode; } @@ -386,10 +387,10 @@ namespace MediaBrowser.Api.Playback } else { - Logger.LogInformation("User policy for {0}. EnablePlaybackRemuxing: {1} EnableVideoPlaybackTranscoding: {2} EnableAudioPlaybackTranscoding: {3}", + Logger.LogInformation("User policy for {0}. EnablePlaybackRemuxing: {1} EnableVideoPlaybackTranscoding: {2} EnableAudioPlaybackTranscoding: {3}", user.Name, user.Policy.EnablePlaybackRemuxing, - user.Policy.EnableVideoPlaybackTranscoding, + user.Policy.EnableVideoPlaybackTranscoding, user.Policy.EnableAudioPlaybackTranscoding); } diff --git a/MediaBrowser.Api/Playback/StreamRequest.cs b/MediaBrowser.Api/Playback/StreamRequest.cs index d95c30d657..6b0725f317 100644 --- a/MediaBrowser.Api/Playback/StreamRequest.cs +++ b/MediaBrowser.Api/Playback/StreamRequest.cs @@ -19,7 +19,7 @@ namespace MediaBrowser.Api.Playback [ApiMember(Name = "MediaSourceId", Description = "The media version id, if playing an alternate version", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "GET")] public string MediaSourceId { get; set; } - + [ApiMember(Name = "DeviceId", Description = "The device id of the client requesting. Used to stop encoding processes when needed.", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET")] public string DeviceId { get; set; } diff --git a/MediaBrowser.Api/Playback/StreamState.cs b/MediaBrowser.Api/Playback/StreamState.cs index 67fb04d0c2..73741d527b 100644 --- a/MediaBrowser.Api/Playback/StreamState.cs +++ b/MediaBrowser.Api/Playback/StreamState.cs @@ -117,7 +117,7 @@ namespace MediaBrowser.Api.Playback public string UserAgent { get; set; } - public StreamState(IMediaSourceManager mediaSourceManager, ILogger logger, TranscodingJobType transcodingType) + public StreamState(IMediaSourceManager mediaSourceManager, ILogger logger, TranscodingJobType transcodingType) : base(logger, mediaSourceManager, transcodingType) { _mediaSourceManager = mediaSourceManager; diff --git a/MediaBrowser.Api/PluginService.cs b/MediaBrowser.Api/PluginService.cs index 1f1bb36144..17822fb54f 100644 --- a/MediaBrowser.Api/PluginService.cs +++ b/MediaBrowser.Api/PluginService.cs @@ -1,16 +1,13 @@ using MediaBrowser.Common; using MediaBrowser.Common.Net; -using MediaBrowser.Common.Security; using MediaBrowser.Common.Updates; using MediaBrowser.Controller.Devices; using MediaBrowser.Controller.Net; -using MediaBrowser.Model.Entities; using MediaBrowser.Model.Plugins; using MediaBrowser.Model.Serialization; using System; using System.IO; using System.Linq; -using System.Threading; using System.Threading.Tasks; using MediaBrowser.Model.Services; using MediaBrowser.Common.Plugins; @@ -79,6 +76,16 @@ namespace MediaBrowser.Api public Stream RequestStream { get; set; } } + //TODO Once we have proper apps and plugins and decide to break compatibility with paid plugins, + // delete all these registration endpoints. They are only kept for compatibility. + [Route("/Registrations/{Name}", "GET", Summary = "Gets registration status for a feature", IsHidden = true)] + [Authenticated] + public class GetRegistration : IReturn<RegistrationInfo> + { + [ApiMember(Name = "Name", Description = "Feature Name", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "GET")] + public string Name { get; set; } + } + /// <summary> /// Class GetPluginSecurityInfo /// </summary> @@ -105,14 +112,7 @@ namespace MediaBrowser.Api public string Name { get; set; } } - [Route("/Registrations/{Name}", "GET", Summary = "Gets registration status for a feature", IsHidden = true)] - [Authenticated] - public class GetRegistration : IReturn<RegistrationInfo> - { - [ApiMember(Name = "Name", Description = "Feature Name", IsRequired = true, DataType = "string", ParameterType = "path", Verb = "GET")] - public string Name { get; set; } - } - + // TODO these two classes are only kept for compability with paid plugins and should be removed public class RegistrationInfo { public string Name { get; set; } @@ -121,14 +121,21 @@ namespace MediaBrowser.Api public bool IsRegistered { get; set; } } - [Route("/Appstore/Register", "POST", Summary = "Registers an appstore sale", IsHidden = true)] - [Authenticated] - public class RegisterAppstoreSale + public class MBRegistrationRecord { - [ApiMember(Name = "Parameters", Description = "Java representation of parameters to pass through to admin server", IsRequired = true, DataType = "string", ParameterType = "query", Verb = "POST")] - public string Parameters { get; set; } + public DateTime ExpirationDate { get; set; } + public bool IsRegistered { get; set; } + public bool RegChecked { get; set; } + public bool RegError { get; set; } + public bool TrialVersion { get; set; } + public bool IsValid { get; set; } } + public class PluginSecurityInfo + { + public string SupporterKey { get; set; } + public bool IsMBSupporter { get; set; } + } /// <summary> /// Class PluginsService /// </summary> @@ -143,23 +150,19 @@ namespace MediaBrowser.Api /// The _app host /// </summary> private readonly IApplicationHost _appHost; - - private readonly ISecurityManager _securityManager; - private readonly IInstallationManager _installationManager; private readonly INetworkManager _network; private readonly IDeviceManager _deviceManager; - public PluginService(IJsonSerializer jsonSerializer, IApplicationHost appHost, ISecurityManager securityManager, IInstallationManager installationManager, INetworkManager network, IDeviceManager deviceManager) + public PluginService(IJsonSerializer jsonSerializer, IApplicationHost appHost, IInstallationManager installationManager, INetworkManager network, IDeviceManager deviceManager) : base() { if (jsonSerializer == null) { - throw new ArgumentNullException("jsonSerializer"); + throw new ArgumentNullException(nameof(jsonSerializer)); } _appHost = appHost; - _securityManager = securityManager; _installationManager = installationManager; _network = network; _deviceManager = deviceManager; @@ -173,20 +176,26 @@ namespace MediaBrowser.Api /// <returns>System.Object.</returns> public async Task<object> Get(GetRegistrationStatus request) { - var result = await _securityManager.GetRegistrationStatus(request.Name).ConfigureAwait(false); + var record = new MBRegistrationRecord + { + IsRegistered = true, + RegChecked = true, + TrialVersion = false, + IsValid = true, + RegError = false + }; - return ToOptimizedResult(result); + return ToOptimizedResult(record); } + //TODO this function is only kept for compatibility and should be removed once paid plugins break public async Task<object> Get(GetRegistration request) { - var result = await _securityManager.GetRegistrationStatus(request.Name).ConfigureAwait(false); - var info = new RegistrationInfo { - ExpirationDate = result.ExpirationDate, - IsRegistered = result.IsRegistered, - IsTrial = result.TrialVersion, + ExpirationDate = DateTime.Now.AddYears(100), + IsRegistered = true, + IsTrial = false, Name = request.Name }; @@ -201,45 +210,6 @@ namespace MediaBrowser.Api public async Task<object> Get(GetPlugins request) { var result = _appHost.Plugins.OrderBy(p => p.Name).Select(p => p.GetPluginInfo()).ToArray(); - var requireAppStoreEnabled = request.IsAppStoreEnabled.HasValue && request.IsAppStoreEnabled.Value; - - // Don't fail just on account of image url's - try - { - var packages = (await _installationManager.GetAvailablePackagesWithoutRegistrationInfo(CancellationToken.None)); - - foreach (var plugin in result) - { - var pkg = packages.FirstOrDefault(i => !string.IsNullOrWhiteSpace(i.guid) && string.Equals(i.guid.Replace("-", string.Empty), plugin.Id.Replace("-", string.Empty), StringComparison.OrdinalIgnoreCase)); - - if (pkg != null) - { - plugin.ImageUrl = pkg.thumbImage; - } - } - - if (requireAppStoreEnabled) - { - result = result - .Where(plugin => - { - var pkg = packages.FirstOrDefault(i => !string.IsNullOrWhiteSpace(i.guid) && new Guid(plugin.Id).Equals(new Guid(i.guid))); - return pkg != null && pkg.enableInAppStore; - - }) - .ToArray(); - } - } - catch (Exception ex) - { - Logger.LogError(ex, "Error getting plugin list"); - // Play it safe here - if (requireAppStoreEnabled) - { - result = new PluginInfo[] { }; - } - } - return ToOptimizedResult(result); } @@ -265,30 +235,20 @@ namespace MediaBrowser.Api { var result = new PluginSecurityInfo { - IsMBSupporter = await _securityManager.IsSupporter().ConfigureAwait(false), - SupporterKey = _securityManager.SupporterKey + IsMBSupporter = true, + SupporterKey = "IAmTotallyLegit" }; return ToOptimizedResult(result); } /// <summary> - /// Post app store sale - /// </summary> - /// <param name="request"></param> - /// <returns></returns> - public Task Post(RegisterAppstoreSale request) - { - return _securityManager.RegisterAppStoreSale(request.Parameters); - } - - /// <summary> /// Posts the specified request. /// </summary> /// <param name="request">The request.</param> public Task Post(UpdatePluginSecurityInfo request) { - return _securityManager.UpdateSupporterKey(request.SupporterKey); + return Task.CompletedTask; } /// <summary> diff --git a/MediaBrowser.Api/Properties/AssemblyInfo.cs b/MediaBrowser.Api/Properties/AssemblyInfo.cs index c689522916..f867230311 100644 --- a/MediaBrowser.Api/Properties/AssemblyInfo.cs +++ b/MediaBrowser.Api/Properties/AssemblyInfo.cs @@ -1,30 +1,21 @@ -using System.Reflection; +using System.Reflection; +using System.Resources; using System.Runtime.InteropServices; -// General Information about an assembly is controlled through the following +// General Information about an assembly is controlled through the following // set of attributes. Change these attribute values to modify the information // associated with an assembly. [assembly: AssemblyTitle("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 +// 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 959bdcd550..719e80082b 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; @@ -155,7 +155,7 @@ namespace MediaBrowser.Api.ScheduledTasks return isEnabled == val; }); } - + var infos = result .Select(ScheduledTaskHelpers.GetTaskInfo) .ToArray(); diff --git a/MediaBrowser.Api/System/ActivityLogWebSocketListener.cs b/MediaBrowser.Api/System/ActivityLogWebSocketListener.cs index b61ff8d932..29f01eab93 100644 --- a/MediaBrowser.Api/System/ActivityLogWebSocketListener.cs +++ b/MediaBrowser.Api/System/ActivityLogWebSocketListener.cs @@ -47,7 +47,7 @@ namespace MediaBrowser.Api.System { return Task.FromResult(new List<ActivityLogEntry>()); } - + protected override void Dispose(bool dispose) { diff --git a/MediaBrowser.Api/System/SystemService.cs b/MediaBrowser.Api/System/SystemService.cs index 52e14dbcc9..c2c2386ac4 100644 --- a/MediaBrowser.Api/System/SystemService.cs +++ b/MediaBrowser.Api/System/SystemService.cs @@ -1,6 +1,5 @@ using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Net; -using MediaBrowser.Common.Security; using MediaBrowser.Controller; using MediaBrowser.Controller.Net; using MediaBrowser.Model.System; @@ -100,8 +99,6 @@ namespace MediaBrowser.Api.System private readonly INetworkManager _network; - private readonly ISecurityManager _security; - /// <summary> /// Initializes a new instance of the <see cref="SystemService" /> class. /// </summary> @@ -109,13 +106,12 @@ namespace MediaBrowser.Api.System /// <param name="appPaths">The application paths.</param> /// <param name="fileSystem">The file system.</param> /// <exception cref="ArgumentNullException">jsonSerializer</exception> - public SystemService(IServerApplicationHost appHost, IApplicationPaths appPaths, IFileSystem fileSystem, INetworkManager network, ISecurityManager security) + public SystemService(IServerApplicationHost appHost, IApplicationPaths appPaths, IFileSystem fileSystem, INetworkManager network) { _appHost = appHost; _appPaths = appPaths; _fileSystem = fileSystem; _network = network; - _security = security; } public object Post(PingSystem request) diff --git a/MediaBrowser.Api/UserLibrary/BaseItemsRequest.cs b/MediaBrowser.Api/UserLibrary/BaseItemsRequest.cs index 11c12c718f..2ce9b0aec4 100644 --- a/MediaBrowser.Api/UserLibrary/BaseItemsRequest.cs +++ b/MediaBrowser.Api/UserLibrary/BaseItemsRequest.cs @@ -214,7 +214,7 @@ namespace MediaBrowser.Api.UserLibrary public string Genres { get; set; } public string GenreIds { get; set; } - + [ApiMember(Name = "OfficialRatings", Description = "Optional. If specified, results will be filtered based on OfficialRating. This allows multiple, pipe delimeted.", IsRequired = false, DataType = "string", ParameterType = "query", Verb = "GET", AllowMultiple = true)] public string OfficialRatings { get; set; } @@ -412,7 +412,7 @@ namespace MediaBrowser.Api.UserLibrary return val.Split(new[] { ',' }, StringSplitOptions.RemoveEmptyEntries).Select(v => (VideoType)Enum.Parse(typeof(VideoType), v, true)).ToArray(); } - + /// <summary> /// Gets the filters. /// </summary> diff --git a/MediaBrowser.Api/UserLibrary/GenresService.cs b/MediaBrowser.Api/UserLibrary/GenresService.cs index 0bb7d7865a..c897ba300f 100644 --- a/MediaBrowser.Api/UserLibrary/GenresService.cs +++ b/MediaBrowser.Api/UserLibrary/GenresService.cs @@ -69,7 +69,7 @@ namespace MediaBrowser.Api.UserLibrary var dtoOptions = GetDtoOptions(AuthorizationContext, request); var item = GetGenre(request.Name, LibraryManager, dtoOptions); - + if (!request.UserId.Equals(Guid.Empty)) { var user = UserManager.GetUserById(request.UserId); diff --git a/MediaBrowser.Api/UserLibrary/ItemsService.cs b/MediaBrowser.Api/UserLibrary/ItemsService.cs index aa17e85f34..e2febc25df 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.Api/UserLibrary/MusicGenresService.cs b/MediaBrowser.Api/UserLibrary/MusicGenresService.cs index d4f1b3fa8d..9583dacb26 100644 --- a/MediaBrowser.Api/UserLibrary/MusicGenresService.cs +++ b/MediaBrowser.Api/UserLibrary/MusicGenresService.cs @@ -60,7 +60,7 @@ namespace MediaBrowser.Api.UserLibrary var dtoOptions = GetDtoOptions(AuthorizationContext, request); var item = GetMusicGenre(request.Name, LibraryManager, dtoOptions); - + if (!request.UserId.Equals(Guid.Empty)) { var user = UserManager.GetUserById(request.UserId); diff --git a/MediaBrowser.Api/UserLibrary/YearsService.cs b/MediaBrowser.Api/UserLibrary/YearsService.cs index 30ac88e00f..528406aa43 100644 --- a/MediaBrowser.Api/UserLibrary/YearsService.cs +++ b/MediaBrowser.Api/UserLibrary/YearsService.cs @@ -66,7 +66,7 @@ namespace MediaBrowser.Api.UserLibrary private BaseItemDto GetItem(GetYear request) { var item = LibraryManager.GetYear(request.Year); - + var dtoOptions = GetDtoOptions(AuthorizationContext, request); if (!request.UserId.Equals(Guid.Empty)) |
