Apply suggestions from code review

Co-authored-by: Cody Robibero <cody@robibe.ro>
This commit is contained in:
ConfusedPolarBear 2020-06-09 13:28:40 -05:00 committed by GitHub
parent 001c78573e
commit 7d9b552403
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 36 additions and 30 deletions

View File

@ -646,7 +646,6 @@ namespace Emby.Server.Implementations
serviceCollection.AddSingleton<IAttachmentExtractor, MediaBrowser.MediaEncoding.Attachments.AttachmentExtractor>(); serviceCollection.AddSingleton<IAttachmentExtractor, MediaBrowser.MediaEncoding.Attachments.AttachmentExtractor>();
} }
/// <summary> /// <summary>
/// Create services registered with the service container that need to be initialized at application startup. /// Create services registered with the service container that need to be initialized at application startup.
/// </summary> /// </summary>

View File

@ -1,18 +1,17 @@
using System.Collections.Generic;
using MediaBrowser.Common.Configuration; using MediaBrowser.Common.Configuration;
namespace Emby.Server.Implementations.QuickConnect namespace Emby.Server.Implementations.QuickConnect
{ {
/// <summary> /// <summary>
/// Configuration extension to support persistent quick connect configuration /// Configuration extension to support persistent quick connect configuration.
/// </summary> /// </summary>
public static class ConfigurationExtension public static class ConfigurationExtension
{ {
/// <summary> /// <summary>
/// Return the current quick connect configuration /// Return the current quick connect configuration.
/// </summary> /// </summary>
/// <param name="manager">Configuration manager</param> /// <param name="manager">Configuration manager.</param>
/// <returns></returns> /// <returns>Current quick connect configuration.</returns>
public static QuickConnectConfiguration GetQuickConnectConfiguration(this IConfigurationManager manager) public static QuickConnectConfiguration GetQuickConnectConfiguration(this IConfigurationManager manager)
{ {
return manager.GetConfiguration<QuickConnectConfiguration>("quickconnect"); return manager.GetConfiguration<QuickConnectConfiguration>("quickconnect");
@ -20,17 +19,17 @@ namespace Emby.Server.Implementations.QuickConnect
} }
/// <summary> /// <summary>
/// Configuration factory for quick connect /// Configuration factory for quick connect.
/// </summary> /// </summary>
public class QuickConnectConfigurationFactory : IConfigurationFactory public class QuickConnectConfigurationFactory : IConfigurationFactory
{ {
/// <summary> /// <summary>
/// Returns the current quick connect configuration /// Returns the current quick connect configuration.
/// </summary> /// </summary>
/// <returns></returns> /// <returns>Current quick connect configuration.</returns>
public IEnumerable<ConfigurationStore> GetConfigurations() public IEnumerable<ConfigurationStore> GetConfigurations()
{ {
return new ConfigurationStore[] return new[]
{ {
new ConfigurationStore new ConfigurationStore
{ {

View File

@ -3,19 +3,12 @@ using MediaBrowser.Model.QuickConnect;
namespace Emby.Server.Implementations.QuickConnect namespace Emby.Server.Implementations.QuickConnect
{ {
/// <summary> /// <summary>
/// Persistent quick connect configuration /// Persistent quick connect configuration.
/// </summary> /// </summary>
public class QuickConnectConfiguration public class QuickConnectConfiguration
{ {
/// <summary> /// <summary>
/// Quick connect configuration object /// Gets or sets persistent quick connect availability state.
/// </summary>
public QuickConnectConfiguration()
{
}
/// <summary>
/// Persistent quick connect availability state
/// </summary> /// </summary>
public QuickConnectState State { get; set; } public QuickConnectState State { get; set; }
} }

View File

@ -27,15 +27,11 @@ namespace Emby.Server.Implementations.QuickConnect
private readonly RNGCryptoServiceProvider _rng = new RNGCryptoServiceProvider(); private readonly RNGCryptoServiceProvider _rng = new RNGCryptoServiceProvider();
private Dictionary<string, QuickConnectResult> _currentRequests = new Dictionary<string, QuickConnectResult>(); private Dictionary<string, QuickConnectResult> _currentRequests = new Dictionary<string, QuickConnectResult>();
private IServerConfigurationManager _config; private readonly IServerConfigurationManager _config;
private ILogger _logger; private readonly ILogger<QuickConnectManager> _logger;
private IUserManager _userManager; private readonly IAuthenticationRepository _authenticationRepository;
private ILocalizationManager _localizationManager; private readonly IAuthorizationContext _authContext;
private IJsonSerializer _jsonSerializer; private readonly IServerApplicationHost _appHost;
private IAuthenticationRepository _authenticationRepository;
private IAuthorizationContext _authContext;
private IServerApplicationHost _appHost;
private ITaskManager _taskManager;
/// <summary> /// <summary>
/// Initializes a new instance of the <see cref="QuickConnectManager"/> class. /// Initializes a new instance of the <see cref="QuickConnectManager"/> class.
@ -207,7 +203,7 @@ namespace Emby.Server.Implementations.QuickConnect
scale = BitConverter.ToUInt32(raw, 0); scale = BitConverter.ToUInt32(raw, 0);
} }
int code = (int)(min + (max - min) * (scale / (double)uint.MaxValue)); int code = (int)(min + ((max - min) * (scale / (double)uint.MaxValue)));
return code.ToString(CultureInfo.InvariantCulture); return code.ToString(CultureInfo.InvariantCulture);
} }
@ -272,7 +268,26 @@ namespace Emby.Server.Implementations.QuickConnect
return tokens.Count(); return tokens.Count();
} }
/// <summary>
/// Dispose.
/// </summary>
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
/// <summary>
/// Dispose.
/// </summary>
/// <param name="disposing">Dispose unmanaged resources.</param>
protected virtual void Dispose(bool disposing)
{
if (disposing)
{
_rng?.Dispose();
}
}
private string GenerateSecureRandom(int length = 32) private string GenerateSecureRandom(int length = 32)
{ {
var bytes = new byte[length]; var bytes = new byte[length];

View File

@ -1413,7 +1413,7 @@ namespace Emby.Server.Implementations.Session
Limit = 1 Limit = 1
}); });
if(result.TotalRecordCount < 1) if (result.TotalRecordCount < 1)
{ {
throw new SecurityException("Unknown quick connect token"); throw new SecurityException("Unknown quick connect token");
} }