3.0.5768.1

This commit is contained in:
Luke Pulverenti
2015-10-17 11:05:12 -04:00
parent 317a487229
commit 034c0b95b2
10 changed files with 113 additions and 54 deletions

View File

@@ -416,6 +416,8 @@ namespace MediaBrowser.Common.Implementations
/// </summary>
protected virtual void FindParts()
{
RegisterModules();
ConfigurationManager.AddParts(GetExports<IConfigurationFactory>());
Plugins = GetExports<IPlugin>();
}
@@ -481,7 +483,6 @@ namespace MediaBrowser.Common.Implementations
IsoManager = new IsoManager();
RegisterSingleInstance(IsoManager);
RegisterModules();
return Task.FromResult (true);
}
@@ -524,6 +525,14 @@ namespace MediaBrowser.Common.Implementations
}
catch (ReflectionTypeLoadException ex)
{
if (ex.LoaderExceptions != null)
{
foreach (var loaderException in ex.LoaderExceptions)
{
Logger.Error("LoaderException: " + loaderException.Message);
}
}
// If it fails we can still get a list of the Types it was able to resolve
return ex.Types.Where(t => t != null);
}

View File

@@ -10,6 +10,7 @@ using System.IO;
using System.Linq;
using System.Threading;
using CommonIO;
using MediaBrowser.Common.Extensions;
namespace MediaBrowser.Common.Implementations.Configuration
{
@@ -33,7 +34,7 @@ namespace MediaBrowser.Common.Implementations.Configuration
/// Occurs when [configuration updating].
/// </summary>
public event EventHandler<ConfigurationUpdateEventArgs> NamedConfigurationUpdating;
/// <summary>
/// Occurs when [named configuration updated].
/// </summary>
@@ -89,8 +90,8 @@ namespace MediaBrowser.Common.Implementations.Configuration
}
}
private ConfigurationStore[] _configurationStores = {};
private IConfigurationFactory[] _configurationFactories = {};
private ConfigurationStore[] _configurationStores = { };
private IConfigurationFactory[] _configurationFactories = { };
/// <summary>
/// Initializes a new instance of the <see cref="BaseConfigurationManager" /> class.
@@ -228,9 +229,15 @@ namespace MediaBrowser.Common.Implementations.Configuration
{
var file = GetConfigurationFile(key);
var configurationType = _configurationStores
.First(i => string.Equals(i.Key, key, StringComparison.OrdinalIgnoreCase))
.ConfigurationType;
var configurationInfo = _configurationStores
.FirstOrDefault(i => string.Equals(i.Key, key, StringComparison.OrdinalIgnoreCase));
if (configurationInfo == null)
{
throw new ResourceNotFoundException("Configuration with key " + key + " not found.");
}
var configurationType = configurationInfo.ConfigurationType;
lock (_configurationSyncLock)
{
@@ -285,7 +292,7 @@ namespace MediaBrowser.Common.Implementations.Configuration
NewConfiguration = configuration
}, Logger);
_configurations.AddOrUpdate(key, configuration, (k, v) => configuration);
var path = GetConfigurationFile(key);