This commit is contained in:
Phillip Webb 2014-08-28 16:58:37 -07:00
parent 5b36484b10
commit 0143bec831
1 changed files with 18 additions and 20 deletions

View File

@ -49,6 +49,12 @@ import redis.clients.jedis.JedisPoolConfig;
@EnableConfigurationProperties
public class RedisAutoConfiguration {
@Bean(name = "org.springframework.autoconfigure.redis.RedisProperties")
@ConditionalOnMissingBean
public RedisProperties redisProperties() {
return new RedisProperties();
}
@Configuration
@ConditionalOnMissingClass(name = "org.apache.commons.pool2.impl.GenericObjectPool")
protected static class RedisConnectionConfiguration {
@ -60,12 +66,7 @@ public class RedisAutoConfiguration {
@ConditionalOnMissingBean
RedisConnectionFactory redisConnectionFactory() throws UnknownHostException {
JedisConnectionFactory factory = new JedisConnectionFactory();
factory.setHostName(this.properties.getHost());
factory.setPort(this.properties.getPort());
if (this.properties.getPassword() != null) {
factory.setPassword(this.properties.getPassword());
}
factory.setDatabase(this.properties.getDatabase());
applyConnectionFactoryProperties(factory, this.properties);
return factory;
}
@ -82,12 +83,7 @@ public class RedisAutoConfiguration {
@ConditionalOnMissingBean
RedisConnectionFactory redisConnectionFactory() throws UnknownHostException {
JedisConnectionFactory factory = createJedisConnectionFactory();
factory.setHostName(this.properties.getHost());
factory.setPort(this.properties.getPort());
if (this.properties.getPassword() != null) {
factory.setPassword(this.properties.getPassword());
}
factory.setDatabase(this.properties.getDatabase());
applyConnectionFactoryProperties(factory, this.properties);
return factory;
}
@ -110,14 +106,6 @@ public class RedisAutoConfiguration {
}
@Bean(name = "org.springframework.autoconfigure.redis.RedisProperties")
@ConditionalOnMissingBean
public RedisProperties redisProperties() {
return new RedisProperties();
}
@Configuration
protected static class RedisConfiguration {
@ -146,4 +134,14 @@ public class RedisAutoConfiguration {
}
static void applyConnectionFactoryProperties(JedisConnectionFactory factory,
RedisProperties properties) {
factory.setHostName(properties.getHost());
factory.setPort(properties.getPort());
if (properties.getPassword() != null) {
factory.setPassword(properties.getPassword());
}
factory.setDatabase(properties.getDatabase());
}
}