diff --git a/src/main/java/org/springframework/data/redis/connection/lettuce/LettucePoolingClientConfiguration.java b/src/main/java/org/springframework/data/redis/connection/lettuce/LettucePoolingClientConfiguration.java index 51b09994d..03443f363 100644 --- a/src/main/java/org/springframework/data/redis/connection/lettuce/LettucePoolingClientConfiguration.java +++ b/src/main/java/org/springframework/data/redis/connection/lettuce/LettucePoolingClientConfiguration.java @@ -22,6 +22,7 @@ import io.lettuce.core.resource.ClientResources; import java.time.Duration; import org.apache.commons.pool2.impl.GenericObjectPoolConfig; + import org.springframework.util.Assert; /** @@ -63,6 +64,10 @@ public interface LettucePoolingClientConfiguration extends LettuceClientConfigur *
{@link ClientOptions} with enabled {@link io.lettuce.core.TimeoutOptions}
*
Client Resources
*
none
+ *
Client name
+ *
none
+ *
Read From
+ *
none
*
Connect Timeout
*
60 Seconds
*
Shutdown Timeout
@@ -82,6 +87,7 @@ public interface LettucePoolingClientConfiguration extends LettuceClientConfigur /** * @author Mark Paluch * @author Christoph Strobl + * @author Longlong Zhao */ class LettucePoolingClientConfigurationBuilder extends LettuceClientConfigurationBuilder { @@ -167,6 +173,16 @@ public interface LettucePoolingClientConfiguration extends LettuceClientConfigur return this; } + /* + * (non-Javadoc) + * @see org.springframework.data.redis.connection.lettuce.LettuceClientConfiguration.LettuceClientConfigurationBuilder#clientName(String) + */ + @Override + public LettucePoolingClientConfigurationBuilder clientName(String clientName) { + super.clientName(clientName); + return this; + } + /** * Set the {@link GenericObjectPoolConfig} used by the driver. * diff --git a/src/test/java/org/springframework/data/redis/connection/lettuce/LettucePoolingClientConfigurationUnitTests.java b/src/test/java/org/springframework/data/redis/connection/lettuce/LettucePoolingClientConfigurationUnitTests.java index 1f6c70c78..003f9cd0c 100644 --- a/src/test/java/org/springframework/data/redis/connection/lettuce/LettucePoolingClientConfigurationUnitTests.java +++ b/src/test/java/org/springframework/data/redis/connection/lettuce/LettucePoolingClientConfigurationUnitTests.java @@ -32,6 +32,7 @@ import org.junit.Test; * * @author Mark Paluch * @author Christoph Strobl + * @author Longlong Zhao */ public class LettucePoolingClientConfigurationUnitTests { @@ -88,20 +89,28 @@ public class LettucePoolingClientConfigurationUnitTests { @Test // DATAREDIS-956 public void shouldConfigureReadFrom() { - ClientOptions clientOptions = ClientOptions.create(); - ClientResources sharedClientResources = LettuceTestClientResources.getSharedClientResources(); GenericObjectPoolConfig poolConfig = new GenericObjectPoolConfig(); LettucePoolingClientConfiguration configuration = LettucePoolingClientConfiguration.builder() // - .poolConfig(poolConfig) // - .clientOptions(clientOptions) // - .clientResources(sharedClientResources) // - .readFrom(ReadFrom.MASTER_PREFERRED) // - .build(); + .poolConfig(poolConfig) // + .readFrom(ReadFrom.MASTER_PREFERRED) // + .build(); assertThat(configuration.getPoolConfig()).isEqualTo(poolConfig); - assertThat(configuration.getClientOptions()).contains(clientOptions); - assertThat(configuration.getClientResources()).contains(sharedClientResources); assertThat(configuration.getReadFrom().orElse(ReadFrom.MASTER)).isEqualTo(ReadFrom.MASTER_PREFERRED); } + + @Test // DATAREDIS-956 + public void shouldConfigureClientName() { + + GenericObjectPoolConfig poolConfig = new GenericObjectPoolConfig(); + + LettucePoolingClientConfiguration configuration = LettucePoolingClientConfiguration.builder() // + .poolConfig(poolConfig) // + .clientName("clientName") // + .build(); + + assertThat(configuration.getPoolConfig()).isEqualTo(poolConfig); + assertThat(configuration.getClientName()).contains("clientName"); + } }