From b1ceb8a43b89be245ef9819952a0aba3db90e5a6 Mon Sep 17 00:00:00 2001 From: David Liu Date: Mon, 25 Aug 2014 20:12:52 +0800 Subject: [PATCH] Add database property to RedisProperties Add database property to RedisProperties and use it in RedisAutoConfiguration. Fixes gh-1379 --- .../autoconfigure/redis/RedisAutoConfiguration.java | 2 ++ .../boot/autoconfigure/redis/RedisProperties.java | 10 ++++++++++ .../redis/RedisAutoConfigurationTests.java | 2 ++ 3 files changed, 14 insertions(+) diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/redis/RedisAutoConfiguration.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/redis/RedisAutoConfiguration.java index 2151dff4d10..ed33cf1bc7c 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/redis/RedisAutoConfiguration.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/redis/RedisAutoConfiguration.java @@ -65,6 +65,7 @@ public class RedisAutoConfiguration { if (this.properties.getPassword() != null) { factory.setPassword(this.properties.getPassword()); } + factory.setDatabase(this.properties.getDatabase()); return factory; } @@ -86,6 +87,7 @@ public class RedisAutoConfiguration { if (this.properties.getPassword() != null) { factory.setPassword(this.properties.getPassword()); } + factory.setDatabase(this.properties.getDatabase()); return factory; } diff --git a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/redis/RedisProperties.java b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/redis/RedisProperties.java index 49e2196d26c..5135e792a0a 100644 --- a/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/redis/RedisProperties.java +++ b/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/redis/RedisProperties.java @@ -26,6 +26,8 @@ import org.springframework.boot.context.properties.ConfigurationProperties; @ConfigurationProperties(prefix = "spring.redis") public class RedisProperties { + private int database = 0; + private String host = "localhost"; private String password; @@ -66,6 +68,14 @@ public class RedisProperties { this.pool = pool; } + public int getDatabase() { + return this.database; + } + + public void setDatabase(int database) { + this.database = database; + } + /** * Pool properties. */ diff --git a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/redis/RedisAutoConfigurationTests.java b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/redis/RedisAutoConfigurationTests.java index 6fa6b28f675..7805e8249a7 100644 --- a/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/redis/RedisAutoConfigurationTests.java +++ b/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/redis/RedisAutoConfigurationTests.java @@ -51,11 +51,13 @@ public class RedisAutoConfigurationTests { public void testOverrideRedisConfiguration() throws Exception { this.context = new AnnotationConfigApplicationContext(); EnvironmentTestUtils.addEnvironment(this.context, "spring.redis.host:foo"); + EnvironmentTestUtils.addEnvironment(this.context, "spring.redis.database:1"); this.context.register(RedisAutoConfiguration.class, PropertyPlaceholderAutoConfiguration.class); this.context.refresh(); assertEquals("foo", this.context.getBean(JedisConnectionFactory.class) .getHostName()); + assertEquals(1, this.context.getBean(JedisConnectionFactory.class).getDatabase()); } @Test