/// <summary>
 /// Initializes a new instance of the <see cref="CacheManagerSettingsNode"/> class.
 /// </summary>
 /// <param name="cacheManagerSettings">The settings to use for initialization.</param>
 public CacheManagerSettingsNode(CacheManagerSettings cacheManagerSettings)
     : base()
 {
     this.cacheManagerNodeRemovedHandler = new ConfigurationNodeChangedEventHandler(OnCacheManagerNodeRemoved);
     this.cacheManagerNodeRenamedHandler = new ConfigurationNodeChangedEventHandler(OnCacheManagerNodeRenamed);
     this.cacheManagerSettings = cacheManagerSettings;
 }
Exemple #2
0
        public void DataTest()
        {
            CacheStorageData cacheStorage = new CustomCacheStorageData();

            cacheStorage.Name = "testCacheStorage";

            CacheManagerDataCollection cacheManagers = new CacheManagerDataCollection();
            CacheManagerData           testManager1  = new CacheManagerData();

            testManager1.Name         = "testName";
            testManager1.CacheStorage = cacheStorage;
            cacheManagers.Add(testManager1);

            CacheManagerSettings data = new CacheManagerSettings();

            data.CacheManagers.Clear();
            data.CacheManagers.AddRange(cacheManagers);

            CacheManagerSettingsNode node = new CacheManagerSettingsNode(data);

            applicationNode.Nodes.Add(node);
            CacheManagerSettings nodeData = node.CacheManagerSettings;

            Assert.AreSame(testManager1, nodeData.CacheManagers[testManager1.Name]);
        }
        public void CanDeserializeSerializedConfiguration()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            DataCacheStorageData data1 = new DataCacheStorageData(name1, database1, partition1);

            settings.BackingStores.Add(data1);

            // needed to save configuration
            settings.CacheManagers.Add(new CacheManagerData("foo", 0, 0, 0, "storage"));

            IDictionary <string, ConfigurationSection> sections = new Dictionary <string, ConfigurationSection>();

            sections[CacheManagerSettings.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            CacheManagerSettings roSettigs = (CacheManagerSettings)configurationSource.GetSection(CacheManagerSettings.SectionName);

            Assert.IsNotNull(roSettigs);
            Assert.AreEqual(1, roSettigs.BackingStores.Count);

            Assert.IsNotNull(roSettigs.BackingStores.Get(name1));
            Assert.AreSame(typeof(DataCacheStorageData), roSettigs.BackingStores.Get(name1).GetType());
            Assert.AreEqual(name1, roSettigs.BackingStores.Get(name1).Name);
            Assert.AreEqual(database1, ((DataCacheStorageData)roSettigs.BackingStores.Get(name1)).DatabaseInstanceName);
            Assert.AreEqual(partition1, ((DataCacheStorageData)roSettigs.BackingStores.Get(name1)).PartitionName);
            //Assert.AreEqual(encryption1, ((DataCacheStorageData)roSettigs.BackingStores.Get(name1)).StorageEncryption);
        }
        private static CacheManagerSettings GenerateCachingSettings()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            settings.DefaultCacheManager = "ShortInMemoryPersistence";

//<cacheManager name="InMemoryPersistence" expirationPollFrequencyInSeconds="60" maximumElementsInCacheBeforeScavenging="100"
//    numberToRemoveWhenScavenging="10">
//    <cacheStorage xsi:type="CustomCacheStorageData" name="inMemory" type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching" />
//</cacheManager>
            settings.CacheManagers.Add(new CacheManagerData("InMemoryPersistence", 60, 100, 10, new CustomCacheStorageData("inMemory", typeof(NullBackingStore).AssemblyQualifiedName)));


//<cacheManager name="SmallInMemoryPersistence" cacheStorageName="inMemory" expirationPollFrequencyInSeconds="1"
//    maximumElementsInCacheBeforeScavenging="3" numberToRemoveWhenScavenging="2">
//    <cacheStorage xsi:type="CustomCacheStorageData" name="inMemory" type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching" />
//</cacheManager>
            settings.CacheManagers.Add(new CacheManagerData("SmallInMemoryPersistence", 1, 3, 2, new CustomCacheStorageData("inMemory", typeof(NullBackingStore).AssemblyQualifiedName)));


//<cacheManager name="ShortInMemoryPersistence" cacheStorageName="inMemory" expirationPollFrequencyInSeconds="1"
//    maximumElementsInCacheBeforeScavenging="10" numberToRemoveWhenScavenging="2">
//    <cacheStorage xsi:type="CustomCacheStorageData" name="inMemory" type="Microsoft.Practices.EnterpriseLibrary.Caching.BackingStoreImplementations.NullBackingStore, Microsoft.Practices.EnterpriseLibrary.Caching" />
//</cacheManager>
            settings.CacheManagers.Add(new CacheManagerData("ShortInMemoryPersistence", 1, 10, 2, new CustomCacheStorageData("inMemory", typeof(NullBackingStore).AssemblyQualifiedName)));

            return(settings);
        }
Exemple #5
0
        public void CanDeserializeSerializedConfiguration()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            SymmetricStorageEncryptionProviderData data1 = new SymmetricStorageEncryptionProviderData(name1, symmetric1);

            settings.EncryptionProviders.Add(data1);

            // needed to save configuration
            settings.CacheManagers.Add(new CacheManagerData("foo", 0, 0, 0, "storage"));
            settings.BackingStores.Add(new CustomCacheStorageData("foo", typeof(MockCustomStorageBackingStore)));

            IDictionary <string, ConfigurationSection> sections = new Dictionary <string, ConfigurationSection>();

            sections[CacheManagerSettings.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            CacheManagerSettings roSettigs = (CacheManagerSettings)configurationSource.GetSection(CacheManagerSettings.SectionName);

            Assert.IsNotNull(roSettigs);
            Assert.AreEqual(1, roSettigs.EncryptionProviders.Count);

            Assert.IsNotNull(roSettigs.EncryptionProviders.Get(name1));
            Assert.AreSame(typeof(SymmetricStorageEncryptionProviderData), roSettigs.EncryptionProviders.Get(name1).GetType());
            Assert.AreEqual(name1, roSettigs.EncryptionProviders.Get(name1).Name);
            Assert.AreEqual(symmetric1, ((SymmetricStorageEncryptionProviderData)roSettigs.EncryptionProviders.Get(name1)).SymmetricInstance);
        }
Exemple #6
0
        public void CanDeserializeSerializedConfiguration()
        {
            MockCacheManagerData data1 = new MockCacheManagerData(name1, foo1);
            MockCacheManagerData data2 = new MockCacheManagerData(name2, foo2);

            CacheManagerSettings settings = new CacheManagerSettings();

            settings.DefaultCacheManager = name1;

            settings.CacheManagers.Add(data1);
            settings.CacheManagers.Add(data2);

            IDictionary <string, ConfigurationSection> sections = new Dictionary <string, ConfigurationSection>();

            sections[CacheManagerSettings.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            CacheManagerSettings roSettigs = (CacheManagerSettings)configurationSource.GetSection(CacheManagerSettings.SectionName);

            Assert.IsNotNull(roSettigs);
            Assert.AreEqual(2, roSettigs.CacheManagers.Count);
            Assert.AreEqual(name1, roSettigs.DefaultCacheManager);

            data1 = (MockCacheManagerData)roSettigs.CacheManagers.Get(name1);
            Assert.IsNotNull(data1);
            Assert.AreEqual(name1, data1.Name);
            Assert.AreEqual(foo1, data1.Foo);

            data2 = (MockCacheManagerData)roSettigs.CacheManagers.Get(name2);
            Assert.IsNotNull(data2);
            Assert.AreEqual(name2, data2.Name);
            Assert.AreEqual(foo2, data2.Foo);
        }
        public void CanDeserializeSerializedConfiguration()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            SymmetricStorageEncryptionProviderData data1 = new SymmetricStorageEncryptionProviderData(name1, symmetric1);
            settings.EncryptionProviders.Add(data1);

            // needed to save configuration
            settings.CacheManagers.Add(new CacheManagerData("foo", 0, 0, 0, "storage"));
            settings.BackingStores.Add(new CustomCacheStorageData("foo", typeof(MockCustomStorageBackingStore)));

            IDictionary<string, ConfigurationSection> sections = new Dictionary<string, ConfigurationSection>();
            sections[CacheManagerSettings.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            CacheManagerSettings roSettigs = (CacheManagerSettings)configurationSource.GetSection(CacheManagerSettings.SectionName);

            Assert.IsNotNull(roSettigs);
            Assert.AreEqual(1, roSettigs.EncryptionProviders.Count);

            Assert.IsNotNull(roSettigs.EncryptionProviders.Get(name1));
            Assert.AreSame(typeof(SymmetricStorageEncryptionProviderData), roSettigs.EncryptionProviders.Get(name1).GetType());
            Assert.AreEqual(name1, roSettigs.EncryptionProviders.Get(name1).Name);
            Assert.AreEqual(symmetric1, ((SymmetricStorageEncryptionProviderData)roSettigs.EncryptionProviders.Get(name1)).SymmetricInstance);
        }
        public void Setup()
        {
            CacheStorageData storeData = new CacheStorageData("cache store", typeof(BackingStoreWithoutDefaultCtor));

            settings = new CacheManagerSettings();
            settings.BackingStores.Add(storeData);
        }
        public void CanDeserializeSerializedConfiguration()
        {
            CustomCacheStorageData customData
                = new CustomCacheStorageData("custom", typeof(MockCustomStorageBackingStore));

            customData.SetAttributeValue(MockCustomProviderBase.AttributeKey, "value1");
            CacheManagerSettings settings = new CacheManagerSettings();

            settings.BackingStores.Add(customData);
            settings.CacheManagers.Add(new CacheManagerData("ignore", 0, 0, 0, "custom"));

            IDictionary <string, ConfigurationSection> sections = new Dictionary <string, ConfigurationSection>(1);

            sections[CacheManagerSettings.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            CacheManagerSettings roSettigs = (CacheManagerSettings)configurationSource.GetSection(CacheManagerSettings.SectionName);

            Assert.IsNotNull(roSettigs);
            Assert.AreEqual(1, roSettigs.BackingStores.Count);

            Assert.IsNotNull(roSettigs.BackingStores.Get("custom"));
            Assert.AreSame(typeof(CustomCacheStorageData), roSettigs.BackingStores.Get("custom").GetType());
            Assert.AreEqual("custom", ((CustomCacheStorageData)roSettigs.BackingStores.Get("custom")).Name);
            Assert.AreEqual(typeof(MockCustomStorageBackingStore), ((CustomCacheStorageData)roSettigs.BackingStores.Get("custom")).Type);
            Assert.AreEqual("value1", ((CustomCacheStorageData)roSettigs.BackingStores.Get("custom")).Attributes[MockCustomProviderBase.AttributeKey]);
        }
Exemple #10
0
        protected override void Initialize()
        {
            CacheManagerSettings settings
                = (CacheManagerSettings)ConfigurationSource.GetSection(CacheManagerSettings.SectionName);

            if (settings == null)
            {
                return;
            }
            CreateProvidersPolicies <IBackingStore, CacheStorageData>(
                Context.Policies,
                null,
                settings.BackingStores,
                ConfigurationSource);
            CreateProvidersPolicies <IStorageEncryptionProvider, StorageEncryptionProviderData>(
                Context.Policies,
                null,
                settings.EncryptionProviders,
                ConfigurationSource);
            CreateProvidersPolicies <ICacheManager, CacheManagerDataBase>(
                Context.Policies,
                settings.DefaultCacheManager,
                settings.CacheManagers,
                ConfigurationSource);
            CreateCacheManagerLifetimePolicies(
                Context.Policies,
                Context.Container,
                settings.CacheManagers);
        }
        public static bool SaveChanges(CachingBlockSetting cachingBlockSetting, ConfigurationElement sourceElement)
        {
            CacheManagerSettings settings = (CacheManagerSettings)sourceElement;

            settings.DefaultCacheManager = cachingBlockSetting.DefaultCacheManager;
            return(true);
        }
        public void ParseSml()
        {
            XmlTextReader xmlReader     = new XmlTextReader(new StringReader(configurationSection));
            XmlSerializer xmlSerializer = new XmlSerializer(typeof(CacheManagerSettings));

            objectFromConfiguration = xmlSerializer.Deserialize(xmlReader) as CacheManagerSettings;
        }
        public void Setup()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            settings.EncryptionProviders.Add(new SymmetricStorageEncryptionProviderData("symm storage encryption", "default"));
            registrations = settings.GetRegistrations(null);
        }
        private void NullEncryptorTests(string instanceName)
        {
            MockStorageEncryptionProvider.Encrypted = false;
            MockStorageEncryptionProvider.Decrypted = false;

            CacheManagerSettings          settings               = (CacheManagerSettings)TestConfigurationSource.GenerateConfiguration().GetSection(CacheManagerSettings.SectionName);
            CacheStorageData              cacheStorageData       = settings.BackingStores.Get(settings.CacheManagers.Get(instanceName).CacheStorage);
            StorageEncryptionProviderData encryptionProviderData = settings.EncryptionProviders.Get(cacheStorageData.StorageEncryption);

            IStorageEncryptionProvider provider =
                EnterpriseLibraryFactory.BuildUp <IStorageEncryptionProvider>(encryptionProviderData.Name, TestConfigurationSource.GenerateConfiguration());

            Assert.IsNotNull(provider);

            byte[] input     = new byte[] { 0, 1, 2, 3, 4, 5 };
            byte[] encrypted = provider.Encrypt(input);

            Assert.IsTrue(MockStorageEncryptionProvider.Encrypted, "static encrypted");

            Assert.IsTrue(CompareBytes(input, encrypted), "no encryption performed");

            byte[] decrypted = provider.Decrypt(encrypted);
            Assert.IsTrue(MockStorageEncryptionProvider.Decrypted, "static decrypted");

            Assert.IsTrue(CompareBytes(encrypted, decrypted), "no decryption performed");
            Assert.IsTrue(CompareBytes(input, decrypted), "no decryption performed2");
        }
        protected override void Act()
        {
            DesignDictionaryConfigurationSource saveSource = new DesignDictionaryConfigurationSource();

            base.CachingViewModel.Save(saveSource);
            savedSettings = (CacheManagerSettings)saveSource.GetSection(CacheManagerSettings.SectionName);
        }
        public void CanDeserializeSerializedConfiguration()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            IsolatedStorageCacheStorageData data1 = new IsolatedStorageCacheStorageData(name1, encryption1, partition1);
            settings.BackingStores.Add(data1);

            // needed to save configuration
            settings.CacheManagers.Add(new CacheManagerData("foo", 0, 0, 0, "storage"));

            IDictionary<string, ConfigurationSection> sections = new Dictionary<string, ConfigurationSection>();
            sections[CacheManagerSettings.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            CacheManagerSettings roSettigs = (CacheManagerSettings)configurationSource.GetSection(CacheManagerSettings.SectionName);

            Assert.IsNotNull(roSettigs);
            Assert.AreEqual(1, roSettigs.BackingStores.Count);

            Assert.IsNotNull(roSettigs.BackingStores.Get(name1));
            Assert.AreSame(typeof(IsolatedStorageCacheStorageData), roSettigs.BackingStores.Get(name1).GetType());
            Assert.AreEqual(name1, roSettigs.BackingStores.Get(name1).Name);
            Assert.AreEqual(encryption1, ((IsolatedStorageCacheStorageData)roSettigs.BackingStores.Get(name1)).StorageEncryption);
            Assert.AreEqual(partition1, ((IsolatedStorageCacheStorageData)roSettigs.BackingStores.Get(name1)).PartitionName);
        }
        private static CacheManagerSettings GenerateCachingSettings()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            settings.CacheManagers.Add(new CacheManagerData("test", 10, 10, 1, new CustomCacheStorageData()));
            return(settings);
        }
        public void Setup()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            settings.BackingStores.Add(new DataCacheStorageData("Data Cache Storage", "db instance", "partition"));

            registrations = settings.GetRegistrations(null);
        }
 public void SetUp()
 {
     settings            = new CacheManagerSettings();
     dbSettings          = new DatabaseSettings();
     configurationSource = new DictionaryConfigurationSource();
     configurationSource.Add(CacheManagerSettings.SectionName, settings);
     configurationSource.Add(DatabaseSettings.SectionName, dbSettings);
 }
Exemple #20
0
        private static CacheManagerSettings GenerateDefaultCacheManagerSettings()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            settings.BackingStores.Add(new CacheStorageData("inMemoryWithEncryptor", typeof(NullBackingStore), "dpapiEncryptor"));
            settings.EncryptionProviders.Add(new SymmetricStorageEncryptionProviderData("dpapiEncryptor", "dpapi1"));
            settings.CacheManagers.Add(new CacheManagerData(cacheManagerKey, 0x2710, 0x3e8, 100, "inMemoryWithEncryptor"));
            return(settings);
        }
Exemple #21
0
 public void SetUp()
 {
     provider            = new CacheManagerSettingsManageabilityProvider(new Dictionary <Type, ConfigurationElementManageabilityProvider>(0));
     machineKey          = new MockRegistryKey(true);
     userKey             = new MockRegistryKey(true);
     section             = new CacheManagerSettings();
     configurationSource = new DictionaryConfigurationSource();
     configurationSource.Add(CacheManagerSettings.SectionName, section);
 }
Exemple #22
0
        /// <summary>
        /// Initializes a new instance of a <see cref="CachingConfigurationView"/> object based on the specified <see cref="Microsoft.Practices.EnterpriseLibrary.Caching.Configuration.CacheManagerSettings"/>.
        /// </summary>
        /// <param name="cachingSettings">The configuration data for the Caching Application Block.</param>
        public CachingConfigurationView(CacheManagerSettings cachingSettings)
        {
            Guard.ArgumentNotNull(cachingSettings, "cachingSettings");

            this.cachingSettings = cachingSettings;

            ApplyDefaultCacheManager(DefaultCacheManagerName);
            ApplyDefaultBackingStore(DefaultBackingStoreName);
        }
 public void SetUp()
 {
     provider = new CacheManagerSettingsManageabilityProvider(new Dictionary<Type, ConfigurationElementManageabilityProvider>(0));
     machineKey = new MockRegistryKey(true);
     userKey = new MockRegistryKey(true);
     section = new CacheManagerSettings();
     configurationSource = new DictionaryConfigurationSource();
     configurationSource.Add(CacheManagerSettings.SectionName, section);
 }
        /// <summary>
        /// <para>Adds to the dictionary configuration data for
        /// the enterpriselibrary.configurationSettings configuration section.</para>
        /// </summary>
        /// <param name="serviceProvider">
        /// <para>The a mechanism for retrieving a service object; that is, an object that provides custom support to other objects.</para>
        /// </param>
        /// <param name="configurationDictionary">
        /// <para>A <see cref="ConfigurationDictionary"/> to add
        /// configuration data to.</para></param>
        public void BuildContext(IServiceProvider serviceProvider, ConfigurationDictionary configurationDictionary)
        {
            CacheManagerSettingsNode node = GetCacheManagerSettingsNode(serviceProvider);

            if (node != null)
            {
                CacheManagerSettings settings = node.CacheManagerSettings;
                configurationDictionary[CacheManagerSettings.SectionName] = settings;
            }
        }
Exemple #25
0
        public void then_cache_manager_settings_are_saved_encrypted()
        {
            ProtectedConfigurationSource saveSource = new ProtectedConfigurationSource();

            CachingViewModel.Save(saveSource);

            CacheManagerSettings savedSettings = (CacheManagerSettings)saveSource.GetSection(CacheManagerSettings.SectionName);

            Assert.AreEqual("RsaProtectedConfigurationProvider", saveSource.protectionProviderNameOnLastCall);
        }
Exemple #26
0
        public void then_section_is_saved_with_require_permission()
        {
            DesignDictionaryConfigurationSource saveSource = new DesignDictionaryConfigurationSource();

            CachingViewModel.Save(saveSource);

            CacheManagerSettings savedSettings = (CacheManagerSettings)saveSource.GetSection(CacheManagerSettings.SectionName);

            Assert.IsFalse(savedSettings.SectionInformation.RequirePermission);
        }
Exemple #27
0
        public void then_file_has_overridden_values()
        {
            FileConfigurationSource source       = new FileConfigurationSource(TargetFile);
            CacheManagerSettings    settings     = (CacheManagerSettings)source.GetSection(CacheManagerSettings.SectionName);
            CacheManagerData        cacheManager = (CacheManagerData)settings.CacheManagers.Get("Cache Manager");

            Assert.AreEqual(1, cacheManager.MaximumElementsInCacheBeforeScavenging);
            Assert.AreEqual(1, cacheManager.NumberToRemoveWhenScavenging);
            Assert.AreEqual(1, cacheManager.ExpirationPollFrequencyInSeconds);
        }
        /// <summary>
        /// Gets the <see cref="CacheStorageData"/> from configuration for the named <see cref="CacheManager"/>
        /// </summary>
        /// <param name="name">
        /// The name of the <see cref="CacheManager"/>.
        /// </param>
        /// <returns>
        /// A <see cref="CacheStorageData"/> object.
        /// </returns>
        public CacheStorageData GetCacheStorageData(string name)
        {
            CacheManagerSettings settings = this.CacheManagerSettings;

            if (!settings.BackingStores.Contains(name))
            {
                throw new ConfigurationErrorsException(string.Format(Resources.Culture, Resources.ExceptionBackingStoreNotDefined, name));
            }
            return(settings.BackingStores.Get(name));
        }
        /// <summary>
        /// Gets the <see cref="StorageEncryptionProviderData"/> from configuration for the named <see cref="CacheManager"/>
        /// </summary>
        /// <param name="name">
        /// The name of the <see cref="CacheManager"/>.
        /// </param>
        /// <returns>
        /// A <see cref="StorageEncryptionProviderData"/> object.
        /// </returns>
        public StorageEncryptionProviderData GetStorageEncryptionProviderData(string name)
        {
            CacheManagerSettings settings = this.CacheManagerSettings;

            if (!settings.EncryptionProviders.Contains(name))
            {
                throw new ConfigurationErrorsException(string.Format(Resources.Culture, Resources.ExceptionEncryptionProviderNotDefined, name));
            }
            return(settings.EncryptionProviders.Get(name));
        }
        public void Setup()
        {
            CustomCacheManagerData customCacheManager = new CustomCacheManagerData();

            customCacheManager.Name = "Custom Cache Manager";
            customCacheManager.Type = typeof(FaultyType);

            settings = new CacheManagerSettings();
            settings.CacheManagers.Add(customCacheManager);
        }
        public void Setup()
        {
            CustomCacheStorageData customStoreData = new CustomCacheStorageData();

            customStoreData.Name = "Custom Store";
            customStoreData.Type = typeof(FaultyType);

            settings = new CacheManagerSettings();
            settings.BackingStores.Add(customStoreData);
        }
        public void TestInitialize()
        {
            var settings = new CacheManagerSettings
            {
                ConfigLoader = new MockCacheConfigLoader()
            };

            cacheManagerInternals = new CacheManagerInternals(settings);
            cacheManagerInternals.InitializeFromConfig();
        }
        private static CacheManagerSettings GenerateCacheManagerSettings()
        {
            CacheManagerSettings settings = new CacheManagerSettings();

            settings.BackingStores.Add(new DataCacheStorageData("Data Cache Storage", "CachingDatabase", "Partition1"));
            settings.CacheManagers.Add(new CacheManagerData("InDatabasePersistence",
                                                            1, 100, 100, "Data Cache Storage"));
            settings.CacheManagers.Add(new CacheManagerData("SecondInDatabasePersistence",
                                                            1, 100, 100, "Data Cache Storage"));
            return(settings);
        }
        /// <summary>
        /// Gets the <see cref="CacheManagerData"/> from configuration for the named <see cref="CacheManager"/>
        /// </summary>
        /// <param name="cacheManagerName">
        /// The name of the <see cref="CacheManager"/>.
        /// </param>
        /// <returns>
        /// A <see cref="CacheManagerData"/> object.
        /// </returns>
        public CacheManagerData GetCacheManagerData(string cacheManagerName)
        {
            CacheManagerSettings configSettings = this.CacheManagerSettings;
            CacheManagerData     data           = configSettings.CacheManagers.Get(cacheManagerName);

            if (data == null)
            {
                throw new ConfigurationErrorsException(string.Format(Resources.Culture, Resources.UnableToFindCacheManagerInstance, cacheManagerName));
            }
            return(data);
        }
        public void CanDeserializeSerializedConfiguration()
        {
            CacheManagerData data1 = new CacheManagerData(name1, pollFrequency1, itemsBeforeScavenge1, itemsToScavenge1, storageName);
            CacheManagerData data2 = new CacheManagerData(name2, pollFrequency2, itemsBeforeScavenge2, itemsToScavenge2, storageName);

            CacheManagerSettings settings = new CacheManagerSettings();
            settings.DefaultCacheManager = name1;

            settings.CacheManagers.Add(data1);
            settings.CacheManagers.Add(data2);

            // needed to save configuration
            settings.BackingStores.Add(new CustomCacheStorageData("foo", typeof(MockCustomStorageBackingStore)));

            IDictionary<string, ConfigurationSection> sections = new Dictionary<string, ConfigurationSection>();
            sections[CacheManagerSettings.SectionName] = settings;
            IConfigurationSource configurationSource
                = ConfigurationTestHelper.SaveSectionsInFileAndReturnConfigurationSource(sections);

            CacheManagerSettings roSettigs = (CacheManagerSettings)configurationSource.GetSection(CacheManagerSettings.SectionName);

            Assert.IsNotNull(roSettigs);
            Assert.AreEqual(2, roSettigs.CacheManagers.Count);
            Assert.AreEqual(name1, roSettigs.DefaultCacheManager);

            data1 = (CacheManagerData)roSettigs.CacheManagers.Get(name1);
            Assert.IsNotNull(data1);
            Assert.AreEqual(name1, data1.Name);
            Assert.AreEqual(pollFrequency1, data1.ExpirationPollFrequencyInSeconds);
            Assert.AreEqual(itemsBeforeScavenge1, data1.MaximumElementsInCacheBeforeScavenging);
            Assert.AreEqual(itemsToScavenge1, data1.NumberToRemoveWhenScavenging);
            Assert.AreEqual(storageName, data1.CacheStorage);

            data2 = (CacheManagerData)roSettigs.CacheManagers.Get(name2);
            Assert.IsNotNull(data2);
            Assert.AreEqual(name2, data2.Name);
            Assert.AreEqual(pollFrequency2, data2.ExpirationPollFrequencyInSeconds);
            Assert.AreEqual(itemsBeforeScavenge2, data2.MaximumElementsInCacheBeforeScavenging);
            Assert.AreEqual(itemsToScavenge2, data2.NumberToRemoveWhenScavenging);
            Assert.AreEqual(storageName, data2.CacheStorage);
        }
        public void DataTest()
        {
            CacheStorageData cacheStorage = new CustomCacheStorageData();
            cacheStorage.Name = "testCacheStorage";

            CacheManagerDataCollection cacheManagers = new CacheManagerDataCollection();
            CacheManagerData testManager1 = new CacheManagerData();
            testManager1.Name = "testName";
            testManager1.CacheStorage = cacheStorage;
            cacheManagers.Add(testManager1);

            CacheManagerSettings data = new CacheManagerSettings();
            data.CacheManagers.Clear();
            data.CacheManagers.AddRange(cacheManagers);

            CacheManagerSettingsNode node = new CacheManagerSettingsNode(data);
            applicationNode.Nodes.Add(node);
            CacheManagerSettings nodeData = node.CacheManagerSettings;

            Assert.AreSame(testManager1, nodeData.CacheManagers[testManager1.Name]);
        }
 public void ParseSml()
 {
     XmlTextReader xmlReader = new XmlTextReader(new StringReader(configurationSection));
     XmlSerializer xmlSerializer = new XmlSerializer(typeof(CacheManagerSettings));
     objectFromConfiguration = xmlSerializer.Deserialize(xmlReader) as CacheManagerSettings;
 }
		public CacheManagerSettingsNodeBuilder(IServiceProvider serviceProvider, CacheManagerSettings cacheManagerSettings) : base(serviceProvider)
		{
			this.cacheManagerSettings = cacheManagerSettings;			
		}
		public CacheManagerSettingsBuilder(IServiceProvider serviceProvider, CacheManagerSettingsNode cacheSettingsNode) 
		{
			this.cacheSettingsNode = cacheSettingsNode;
			hierarchy = ServiceHelper.GetCurrentHierarchy(serviceProvider);
			cacheConfiguration = new CacheManagerSettings();
		}