From 92b3edd6199909ba59398119dd782f24ba8cf62b Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Thu, 18 Apr 2019 11:38:17 +0200 Subject: [PATCH] DATAREDIS-956 - Polishing. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add author tags. Provide override for clientName(…) in LettucePoolingClientConfigurationBuilder. Extend Javadoc. Add and simplify tests. Original pull request: #446. --- .../LettucePoolingClientConfiguration.java | 16 +++++++++++ ...cePoolingClientConfigurationUnitTests.java | 27 ++++++++++++------- 2 files changed, 34 insertions(+), 9 deletions(-) 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 564bbd628..ab823d571 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; /** @@ -62,6 +63,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
@@ -79,6 +84,7 @@ public interface LettucePoolingClientConfiguration extends LettuceClientConfigur /** * @author Mark Paluch * @author Christoph Strobl + * @author Longlong Zhao */ class LettucePoolingClientConfigurationBuilder extends LettuceClientConfigurationBuilder { @@ -153,6 +159,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 f4d6f718d..bb2013128 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 { @@ -85,20 +86,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"); + } }