Пример #1
0
        public ProductsRepository(bool enableCache, bool enableLocalCache)
        {
            this.enableCache      = enableCache;
            this.enableLocalCache = enableLocalCache;

            if (enableCache)
            {
                if (enableLocalCache && (factoryConfig == null || !factoryConfig.LocalCacheProperties.IsEnabled))
                {
                    TimeSpan localTimeout = new TimeSpan(0, 0, 30);
                    DataCacheLocalCacheProperties localCacheConfig = new DataCacheLocalCacheProperties(10000, localTimeout, DataCacheLocalCacheInvalidationPolicy.TimeoutBased);
                    factoryConfig = new DataCacheFactoryConfiguration();

                    factoryConfig.LocalCacheProperties = localCacheConfig;
                    cacheFactory = new DataCacheFactory(factoryConfig);
                }
                else if (!enableLocalCache && (factoryConfig == null || factoryConfig.LocalCacheProperties.IsEnabled))
                {
                    cacheFactory = null;
                }
            }

            if (cacheFactory == null)
            {
                factoryConfig = new DataCacheFactoryConfiguration();
                cacheFactory  = new DataCacheFactory(factoryConfig);
            }
        }
        public ProductsRepository(bool enableCache, bool enableLocalCache)
        {
            this.enableCache = enableCache;
            this.enableLocalCache = enableLocalCache;

            if (enableCache)
            {
                if (enableLocalCache && (factoryConfig == null || !factoryConfig.LocalCacheProperties.IsEnabled))
                {
                    TimeSpan localTimeout = new TimeSpan(0, 0, 30);
                    DataCacheLocalCacheProperties localCacheConfig = new DataCacheLocalCacheProperties(10000, localTimeout, DataCacheLocalCacheInvalidationPolicy.TimeoutBased);
                    factoryConfig = new DataCacheFactoryConfiguration();

                    factoryConfig.LocalCacheProperties = localCacheConfig;
                    cacheFactory = new DataCacheFactory(factoryConfig);
                }
                else if (!enableLocalCache && (factoryConfig == null || factoryConfig.LocalCacheProperties.IsEnabled))
                {
                    cacheFactory = null;
                }
            }

            if (cacheFactory == null)
            {
                factoryConfig = new DataCacheFactoryConfiguration();
                cacheFactory = new DataCacheFactory(factoryConfig);
            }
        } 
Пример #3
0
        private void btnConnect_Click(object sender, EventArgs e)
        {
            if (myCache == null)
            {
                try
                {
                    DataCacheServerEndpoint[] servers = new DataCacheServerEndpoint[1];
                    servers[0] = new DataCacheServerEndpoint(txtCacheServer.Text, int.Parse(txtPort.Text));
                    DataCacheFactoryConfiguration factoryConfig = new DataCacheFactoryConfiguration();
                    factoryConfig.Servers = servers;


                    if (!(checkBoxSecurity.Checked))
                    {
                        DataCacheSecurity security = new DataCacheSecurity(DataCacheSecurityMode.None, DataCacheProtectionLevel.None);
                        factoryConfig.SecurityProperties = security;
                    }

                    //You must set the security authentication account type to DomainAccount on the client side
                    //when the caching service identity is a domain account. The default type is SystemAccount.
                    if (checkBoxDomainAcc.Checked)
                    {
                        factoryConfig.DataCacheServiceAccountType = DataCacheServiceAccountType.DomainAccount;
                    }

                    if (checkBoxLocalCache.Checked)
                    {
                        //TimeSpan localTimeout = new TimeSpan(0, 1, 0);
                        TimeSpan localTimeout = TimeSpan.FromSeconds(Convert.ToDouble(txtTimeout.Text));
                        DataCacheLocalCacheProperties localCacheConfig = new DataCacheLocalCacheProperties(10000,
                                                                                                           localTimeout, DataCacheLocalCacheInvalidationPolicy.TimeoutBased);
                        factoryConfig.LocalCacheProperties = localCacheConfig;
                    }


                    myCacheFactory = new DataCacheFactory(factoryConfig);
                    myCache        = myCacheFactory.GetCache(txtCacheName.Text);

                    //this.Text = "AppFabric Test Client has connected to Cache Cluster...";
                    UpdateStatus("You have connected to the Cache Cluster.");
                    lblConnectionStatus.Text = "CONNECTED";
                }
                catch (Exception ex)
                {
                    HandleException(ex);
                }
            }
        }
        /// <summary>
        /// Initializes the cache provider with the specified settings
        /// </summary>
        private void Initialize()
        {
            DataCacheFactoryConfiguration cfg = new DataCacheFactoryConfiguration()
            {
                Servers            = CreateCacheEndpoints(this.HostName, this.CachePort),
                SecurityProperties = new DataCacheSecurity(this.SecurityMode, this.ProtectionLevel)
            };

            if (this.LocalCache)
            {
                // Use these default values, make it read from config file
                DataCacheLocalCacheProperties localCacheConfig;
                TimeSpan localTimeout = new TimeSpan(0, 0, 30);
                localCacheConfig         = new DataCacheLocalCacheProperties(10000, localTimeout, DataCacheLocalCacheInvalidationPolicy.TimeoutBased);
                cfg.LocalCacheProperties = localCacheConfig;
            }

            var factory = new DataCacheFactory(cfg);

            _dc = factory.GetCache(this.CacheName);
        }
Пример #5
0
        private void InitializeCache()
        {
            String cacheNamespace = RoleEnvironment.GetConfigurationSettingValue("Namespace");
            String cacheHost = String.Format("{0}.cache.windows.net", cacheNamespace);
            Boolean SslEnabled = true;
            Int32 cachePort = SslEnabled ? 22243 : 22233;
            Int32 sizeLocalCache = 100;

            DataCacheLocalCacheProperties localCacheProperties = new DataCacheLocalCacheProperties(
                sizeLocalCache, TimeSpan.FromSeconds(60), DataCacheLocalCacheInvalidationPolicy.TimeoutBased);

            List<DataCacheServerEndpoint> servers = new List<DataCacheServerEndpoint>();
            servers.Add(new DataCacheServerEndpoint(cacheHost, cachePort));

            DataCacheTransportProperties dataCacheTransportProperties = new DataCacheTransportProperties() { MaxBufferSize = 10000, ReceiveTimeout = TimeSpan.FromSeconds(45) };

            DataCacheFactoryConfiguration cacheFactoryConfiguration = new DataCacheFactoryConfiguration()
            {
                LocalCacheProperties = localCacheProperties,
                SecurityProperties = GetSecurityToken(SslEnabled),
                Servers = servers,
                TransportProperties = dataCacheTransportProperties
            };

            DataCacheFactory dataCacheFactory = new DataCacheFactory(cacheFactoryConfiguration);
            dataCache = dataCacheFactory.GetDefaultCache();
        }