public static GenericConfig ToGenericConfig(this RedisConfigurationSection section)
        {
            if (null != section)
            {
                var genericConfig = new GenericConfig();
                genericConfig.Endpoints = new List <string>();
                foreach (var e in section.Endpoints)
                {
                    var endPoint = (RedisEndpointElement)e;
                    genericConfig.Endpoints.Add(endPoint.Host);
                }

                return(genericConfig);
            }

            return(null);
        }
        /// <summary>
        /// Loads the configuration.
        /// </summary>
        /// <param name="section">The section.</param>
        /// <exception cref="System.ArgumentNullException">If section is null.</exception>
        public static void LoadConfiguration(RedisConfigurationSection section)
        {
            NotNull(section, nameof(section));

            foreach (var redisOption in section.Connections)
            {
                var endpoints = new List<ServerEndPoint>();
                foreach (var endpoint in redisOption.Endpoints)
                {
                    endpoints.Add(new ServerEndPoint(endpoint.Host, endpoint.Port));
                }

                if (string.IsNullOrWhiteSpace(redisOption.ConnectionString))
                {
                    AddConfiguration(
                        new RedisConfiguration(
                            key: redisOption.Id,
                            database: redisOption.Database,
                            endpoints: endpoints,
                            password: redisOption.Password,
                            isSsl: redisOption.Ssl,
                            sslHost: redisOption.SslHost,
                            connectionTimeout: redisOption.ConnectionTimeout == 0 ? 5000 : redisOption.ConnectionTimeout,
                            allowAdmin: redisOption.AllowAdmin));
                }
                else
                {
                    AddConfiguration(
                        new RedisConfiguration(
                            key: redisOption.Id,
                            connectionString: redisOption.ConnectionString));
                }
            }
        }
Пример #3
0
 internal static void AddConnection(RedisConfigurationSection configuration)
 {
     _connectors.Add(configuration.name, new RedisConnector(configuration.ConnectionString));
 }