Browse Source

Use ConcurrentDictionary for the configuration.

pull/3834/head
Halil İbrahim Kalkan 7 years ago
parent
commit
0282c46100
  1. 5
      framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ModuleObjectExtensionManagerExtensions.cs
  2. 5
      framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ObjectExtensionManager.cs

5
framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ModuleObjectExtensionManagerExtensions.cs

@ -1,5 +1,4 @@
using System.Collections.Generic; using JetBrains.Annotations;
using JetBrains.Annotations;
using Volo.Abp.ObjectExtending.Modularity; using Volo.Abp.ObjectExtending.Modularity;
namespace Volo.Abp.ObjectExtending namespace Volo.Abp.ObjectExtending
@ -15,7 +14,7 @@ namespace Volo.Abp.ObjectExtending
return objectExtensionManager.Configuration.GetOrAdd( return objectExtensionManager.Configuration.GetOrAdd(
ObjectExtensionManagerConfigurationKey, ObjectExtensionManagerConfigurationKey,
() => new ModuleExtensionConfigurationDictionary() _ => new ModuleExtensionConfigurationDictionary()
) as ModuleExtensionConfigurationDictionary; ) as ModuleExtensionConfigurationDictionary;
} }
} }

5
framework/src/Volo.Abp.ObjectExtending/Volo/Abp/ObjectExtending/ObjectExtensionManager.cs

@ -1,4 +1,5 @@
using System; using System;
using System.Collections.Concurrent;
using System.Collections.Generic; using System.Collections.Generic;
using System.Collections.Immutable; using System.Collections.Immutable;
using JetBrains.Annotations; using JetBrains.Annotations;
@ -11,14 +12,14 @@ namespace Volo.Abp.ObjectExtending
public static ObjectExtensionManager Instance { get; set; } = new ObjectExtensionManager(); public static ObjectExtensionManager Instance { get; set; } = new ObjectExtensionManager();
[NotNull] [NotNull]
public Dictionary<object, object> Configuration { get; } public ConcurrentDictionary<object, object> Configuration { get; }
protected Dictionary<Type, ObjectExtensionInfo> ObjectsExtensions { get; } protected Dictionary<Type, ObjectExtensionInfo> ObjectsExtensions { get; }
protected internal ObjectExtensionManager() protected internal ObjectExtensionManager()
{ {
ObjectsExtensions = new Dictionary<Type, ObjectExtensionInfo>(); ObjectsExtensions = new Dictionary<Type, ObjectExtensionInfo>();
Configuration = new Dictionary<object, object>(); Configuration = new ConcurrentDictionary<object, object>();
} }
[NotNull] [NotNull]

Loading…
Cancel
Save