/// <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;
        }
Пример #6
0
        /// <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&lt;string, ICacheItemPolicyConfigurationItem&gt; 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);
        }
Пример #8
0
        /// <summary>
        /// Creates the index from the specified cache item policy configuration.
        /// </summary>
        /// <param name="configuration">The configuration.</param>
        /// <returns>
        /// A IReadOnlyDictionary&lt;string, ICacheItemPolicyConfigurationItem&gt; 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));
        }