Skip to content

Commit c4b0187

Browse files
committed
Merge pull request #16604 from dlmu-lq
* pr/16604: Polish "Auto-configure ReactiveStringRedisTemplate if necessary" Auto-configure ReactiveStringRedisTemplate if necessary
2 parents 8154387 + 922ceed commit c4b0187

File tree

2 files changed

+12
-2
lines changed

2 files changed

+12
-2
lines changed

spring-boot-project/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/data/redis/RedisReactiveAutoConfiguration.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.springframework.core.io.ResourceLoader;
2929
import org.springframework.data.redis.connection.ReactiveRedisConnectionFactory;
3030
import org.springframework.data.redis.core.ReactiveRedisTemplate;
31+
import org.springframework.data.redis.core.ReactiveStringRedisTemplate;
3132
import org.springframework.data.redis.serializer.JdkSerializationRedisSerializer;
3233
import org.springframework.data.redis.serializer.RedisSerializationContext;
3334

@@ -60,4 +61,12 @@ public ReactiveRedisTemplate<Object, Object> reactiveRedisTemplate(
6061
serializationContext);
6162
}
6263

64+
@Bean
65+
@ConditionalOnMissingBean(name = "reactiveStringRedisTemplate")
66+
@ConditionalOnBean(ReactiveRedisConnectionFactory.class)
67+
public ReactiveStringRedisTemplate reactiveStringRedisTemplate(
68+
ReactiveRedisConnectionFactory reactiveRedisConnectionFactory) {
69+
return new ReactiveStringRedisTemplate(reactiveRedisConnectionFactory);
70+
}
71+
6372
}

spring-boot-project/spring-boot-autoconfigure/src/test/java/org/springframework/boot/autoconfigure/data/redis/RedisReactiveAutoConfigurationTests.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright 2012-2018 the original author or authors.
2+
* Copyright 2012-2019 the original author or authors.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -41,7 +41,8 @@ public class RedisReactiveAutoConfigurationTests {
4141
public void testDefaultRedisConfiguration() {
4242
this.contextRunner.run((context) -> {
4343
Map<String, ?> beans = context.getBeansOfType(ReactiveRedisTemplate.class);
44-
assertThat(beans).containsOnlyKeys("reactiveRedisTemplate");
44+
assertThat(beans).containsOnlyKeys("reactiveRedisTemplate",
45+
"reactiveStringRedisTemplate");
4546
});
4647
}
4748

0 commit comments

Comments
 (0)