diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-11-19 11:51:49 -0500 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2016-11-19 11:51:49 -0500 |
| commit | bdab0a1588fa4347d168c69f803a13cf607b4166 (patch) | |
| tree | 336b42433978a473f0a082c0dbf42c5996ded00e /Emby.Server.Core/Data | |
| parent | 52227ce00d9602e4356c0b1f91a42ab8c61b19a6 (diff) | |
move TypeMapper to portable project
Diffstat (limited to 'Emby.Server.Core/Data')
| -rw-r--r-- | Emby.Server.Core/Data/SqliteItemRepository.cs | 7 | ||||
| -rw-r--r-- | Emby.Server.Core/Data/TypeMapper.cs | 47 |
2 files changed, 5 insertions, 49 deletions
diff --git a/Emby.Server.Core/Data/SqliteItemRepository.cs b/Emby.Server.Core/Data/SqliteItemRepository.cs index 2f08081f6..5b8f18088 100644 --- a/Emby.Server.Core/Data/SqliteItemRepository.cs +++ b/Emby.Server.Core/Data/SqliteItemRepository.cs @@ -28,6 +28,8 @@ using MediaBrowser.Model.Querying; using MediaBrowser.Model.Serialization; using MediaBrowser.Server.Implementations.Devices; using MediaBrowser.Server.Implementations.Playlists; +using Emby.Server.Implementations.Data; +using MediaBrowser.Model.Reflection; namespace Emby.Server.Core.Data { @@ -38,7 +40,7 @@ namespace Emby.Server.Core.Data { private IDbConnection _connection; - private readonly TypeMapper _typeMapper = new TypeMapper(); + private readonly TypeMapper _typeMapper; /// <summary> /// Gets the name of the repository @@ -95,7 +97,7 @@ namespace Emby.Server.Core.Data /// <summary> /// Initializes a new instance of the <see cref="SqliteItemRepository"/> class. /// </summary> - public SqliteItemRepository(IServerConfigurationManager config, IJsonSerializer jsonSerializer, ILogManager logManager, IDbConnector connector, IMemoryStreamFactory memoryStreamProvider) + public SqliteItemRepository(IServerConfigurationManager config, IJsonSerializer jsonSerializer, ILogManager logManager, IDbConnector connector, IMemoryStreamFactory memoryStreamProvider, IAssemblyInfo assemblyInfo) : base(logManager, connector) { if (config == null) @@ -110,6 +112,7 @@ namespace Emby.Server.Core.Data _config = config; _jsonSerializer = jsonSerializer; _memoryStreamProvider = memoryStreamProvider; + _typeMapper = new TypeMapper(assemblyInfo); _criticReviewsPath = Path.Combine(_config.ApplicationPaths.DataPath, "critic-reviews"); DbFilePath = Path.Combine(_config.ApplicationPaths.DataPath, "library.db"); diff --git a/Emby.Server.Core/Data/TypeMapper.cs b/Emby.Server.Core/Data/TypeMapper.cs deleted file mode 100644 index f8eb5dd2d..000000000 --- a/Emby.Server.Core/Data/TypeMapper.cs +++ /dev/null @@ -1,47 +0,0 @@ -using System; -using System.Collections.Concurrent; -using System.Linq; - -namespace Emby.Server.Core.Data -{ - /// <summary> - /// Class TypeMapper - /// </summary> - public class TypeMapper - { - /// <summary> - /// This holds all the types in the running assemblies so that we can de-serialize properly when we don't have strong types - /// </summary> - private readonly ConcurrentDictionary<string, Type> _typeMap = new ConcurrentDictionary<string, Type>(); - - /// <summary> - /// Gets the type. - /// </summary> - /// <param name="typeName">Name of the type.</param> - /// <returns>Type.</returns> - /// <exception cref="System.ArgumentNullException"></exception> - public Type GetType(string typeName) - { - if (string.IsNullOrEmpty(typeName)) - { - throw new ArgumentNullException(); - } - - return _typeMap.GetOrAdd(typeName, LookupType); - } - - /// <summary> - /// Lookups the type. - /// </summary> - /// <param name="typeName">Name of the type.</param> - /// <returns>Type.</returns> - private Type LookupType(string typeName) - { - return AppDomain - .CurrentDomain - .GetAssemblies() - .Select(a => a.GetType(typeName, false)) - .FirstOrDefault(t => t != null); - } - } -} |
