From cdb2624f626602bdaf6a66cc519916e6c2659c5d Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Mon, 21 Aug 2017 10:07:36 +0200 Subject: [PATCH] DATAREDIS-676 - Polishing. Set disposal state in LettuceClusterConnection only once. Close resources after tests. Typos, formatting. Original pull request: #266. --- .../connection/lettuce/LettuceClusterConnection.java | 7 +++---- .../lettuce/LettuceConnectionFactoryUnitTests.java | 11 ++++++++--- 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/springframework/data/redis/connection/lettuce/LettuceClusterConnection.java b/src/main/java/org/springframework/data/redis/connection/lettuce/LettuceClusterConnection.java index 31aae3915..b844e0abf 100644 --- a/src/main/java/org/springframework/data/redis/connection/lettuce/LettuceClusterConnection.java +++ b/src/main/java/org/springframework/data/redis/connection/lettuce/LettuceClusterConnection.java @@ -133,9 +133,8 @@ public class LettuceClusterConnection extends LettuceConnection Assert.notNull(executor, "ClusterCommandExecutor must not be null."); this.clusterClient = clusterClient; - topologyProvider = new LettuceClusterTopologyProvider(clusterClient); - clusterCommandExecutor = executor; - disposeClusterCommandExecutorOnClose = false; + this.topologyProvider = new LettuceClusterTopologyProvider(clusterClient); + this.clusterCommandExecutor = executor; } /* @@ -144,7 +143,7 @@ public class LettuceClusterConnection extends LettuceConnection */ @Override public Cursor scan(long cursorId, ScanOptions options) { - throw new InvalidDataAccessApiUsageException("Scan is not supported accros multiple nodes within a cluster."); + throw new InvalidDataAccessApiUsageException("Scan is not supported across multiple nodes within a cluster."); } /* diff --git a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceConnectionFactoryUnitTests.java b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceConnectionFactoryUnitTests.java index 3ef27b3c7..34dbc6a78 100644 --- a/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceConnectionFactoryUnitTests.java +++ b/src/test/java/org/springframework/data/redis/connection/lettuce/LettuceConnectionFactoryUnitTests.java @@ -31,6 +31,7 @@ import org.junit.Before; import org.junit.Test; import org.springframework.data.redis.ConnectionFactoryTracker; import org.springframework.data.redis.connection.RedisClusterConfiguration; +import org.springframework.data.redis.connection.RedisClusterConnection; import org.springframework.data.redis.connection.RedisSentinelConfiguration; import org.springframework.test.util.ReflectionTestUtils; @@ -38,7 +39,6 @@ import com.lambdaworks.redis.AbstractRedisClient; import com.lambdaworks.redis.RedisClient; import com.lambdaworks.redis.RedisURI; import com.lambdaworks.redis.cluster.RedisClusterClient; -import org.springframework.test.util.ReflectionTestUtils; /** @@ -279,13 +279,18 @@ public class LettuceConnectionFactoryUnitTests { } } - @Test // DATAREDIS-676 + @Test // DATAREDIS-676 public void timeoutShouldBePassedOnToClusterConnection() { LettuceConnectionFactory connectionFactory = new LettuceConnectionFactory(clusterConfig); + connectionFactory.setShutdownTimeout(0); connectionFactory.setTimeout(2000); connectionFactory.afterPropertiesSet(); + ConnectionFactoryTracker.add(connectionFactory); - assertThat((Long) ReflectionTestUtils.getField(connectionFactory.getClusterConnection(), "timeout"), is(equalTo(2000L))); + RedisClusterConnection clusterConnection = connectionFactory.getClusterConnection(); + assertThat((Long) ReflectionTestUtils.getField(clusterConnection, "timeout"), is(equalTo(2000L))); + + clusterConnection.close(); } }