/// <summary> /// Initializes a new instance of the <see cref="ConfigFileBasedCacheItemPolicyConfiguration"/> class. /// </summary> /// <param name="configSectionName">Name of the configuration section.</param> /// <exception cref="System.ArgumentNullException">configSectionName</exception> public ConfigFileBasedCacheItemPolicyConfiguration(string configSectionName) { if (string.IsNullOrWhiteSpace(configSectionName)) throw new ArgumentNullException("configSectionName"); _cacheItemPolicyConfiguration = ConfigurationManager.GetSection(configSectionName) as ICacheItemPolicyConfiguration; }
/// <summary> /// Initializes a new instance of the <see cref="CacheItemPolicyFactory"/> class. /// </summary> /// <param name="configuration">The configuration.</param> /// <exception cref="System.ArgumentNullException">configuration</exception> public CacheItemPolicyFactory(ICacheItemPolicyConfiguration configuration) { if (null == configuration) throw new ArgumentNullException("configuration"); _configuration = configuration; }
/// <summary> /// Initializes a new instance of the <see cref="IndexedCacheItemPolicyFactory"/> class. /// </summary> /// <param name="configuration">The cache item policy configuration.</param> /// <exception cref="System.ArgumentNullException">configuration</exception> public IndexedCacheItemPolicyFactory(ICacheItemPolicyConfiguration configuration) { if (null == configuration) throw new ArgumentNullException("configuration"); _index = CreateIndex(configuration); }
/// <summary> /// Initializes a new instance of the <see cref="CacheItemPolicyFactory"/> class. /// </summary> /// <param name="configuration">The configuration.</param> /// <exception cref="System.ArgumentNullException">configuration</exception> public CacheItemPolicyFactory(ICacheItemPolicyConfiguration configuration) { if (null == configuration) { throw new ArgumentNullException("configuration"); } _configuration = configuration; }
/// <summary> /// Initializes a new instance of the <see cref="ConfigFileBasedCacheItemPolicyConfiguration"/> class. /// </summary> /// <param name="configSectionName">Name of the configuration section.</param> /// <exception cref="System.ArgumentNullException">configSectionName</exception> public ConfigFileBasedCacheItemPolicyConfiguration(string configSectionName) { if (string.IsNullOrWhiteSpace(configSectionName)) { throw new ArgumentNullException("configSectionName"); } _cacheItemPolicyConfiguration = ConfigurationManager.GetSection(configSectionName) as ICacheItemPolicyConfiguration; }
/// <summary> /// Initializes a new instance of the <see cref="IndexedCacheItemPolicyFactory"/> class. /// </summary> /// <param name="configuration">The cache item policy configuration.</param> /// <exception cref="System.ArgumentNullException">configuration</exception> public IndexedCacheItemPolicyFactory(ICacheItemPolicyConfiguration configuration) { if (null == configuration) { throw new ArgumentNullException("configuration"); } _index = CreateIndex(configuration); }
/// <summary> /// Creates the index from the specified cache item policy configuration. /// </summary> /// <param name="configuration">The configuration.</param> /// <returns> /// A IReadOnlyDictionary<string, ICacheItemPolicyConfigurationItem> instance. /// </returns> private static IReadOnlyDictionary<string, ICacheItemPolicyConfigurationItem> CreateIndex(ICacheItemPolicyConfiguration configuration) { var items = configuration.CacheItemPolicyConfigurationItems; var index = new Dictionary<string, ICacheItemPolicyConfigurationItem>(items.Count); foreach (var item in items) { // Skip disabled items. if (false == item.Enabled) continue; index[item.Name] = item; } return new ReadOnlyDictionary<string, ICacheItemPolicyConfigurationItem>(index); }
/// <summary> /// Creates the index from the specified cache item policy configuration. /// </summary> /// <param name="configuration">The configuration.</param> /// <returns> /// A IReadOnlyDictionary<string, ICacheItemPolicyConfigurationItem> instance. /// </returns> private static IReadOnlyDictionary <string, ICacheItemPolicyConfigurationItem> CreateIndex(ICacheItemPolicyConfiguration configuration) { var items = configuration.CacheItemPolicyConfigurationItems; var index = new Dictionary <string, ICacheItemPolicyConfigurationItem>(items.Count); foreach (var item in items) { // Skip disabled items. if (false == item.Enabled) { continue; } index[item.Name] = item; } return(new ReadOnlyDictionary <string, ICacheItemPolicyConfigurationItem>(index)); }