From 45d77ff73ebaebb31e1ac33e7e4bdd657a944fa0 Mon Sep 17 00:00:00 2001 From: Mark Paluch Date: Wed, 12 Oct 2016 11:54:48 +0200 Subject: [PATCH] DATACASS-344 - Polishing. Switch heartbeatIntervalSeconds, idleTimeoutSeconds and poolTimeoutMilliseconds to primitive integers and compare values against defaults to decide whether to set these properties on PoolingOptions. --- .../config/PoolingOptionsFactoryBean.java | 24 +++++++++---------- .../PoolingOptionsFactoryBeanUnitTests.java | 12 +++++----- 2 files changed, 18 insertions(+), 18 deletions(-) diff --git a/spring-cql/src/main/java/org/springframework/cassandra/config/PoolingOptionsFactoryBean.java b/spring-cql/src/main/java/org/springframework/cassandra/config/PoolingOptionsFactoryBean.java index 5b55237ac..9aea52fce 100644 --- a/spring-cql/src/main/java/org/springframework/cassandra/config/PoolingOptionsFactoryBean.java +++ b/spring-cql/src/main/java/org/springframework/cassandra/config/PoolingOptionsFactoryBean.java @@ -56,15 +56,15 @@ public class PoolingOptionsFactoryBean implements FactoryBean, I private Executor initializationExecutor; - private Integer heartbeatIntervalSeconds; - private Integer idleTimeoutSeconds; + private int heartbeatIntervalSeconds; + private int idleTimeoutSeconds; private Integer localCoreConnections; private Integer localMaxConnections; private Integer localMaxSimultaneousRequests; private Integer localMinSimultaneousRequests; // Deprecated since Cassandra Driver 3.1.1 - private Integer poolTimeoutMilliseconds; + private int poolTimeoutMilliseconds; // Available since Cassandra Driver 3.1.1 private int maxQueueSize; @@ -85,11 +85,11 @@ public class PoolingOptionsFactoryBean implements FactoryBean, I poolingOptions = configureRemoteHostDistancePoolingOptions( configureLocalHostDistancePoolingOptions(newPoolingOptions())); - if (heartbeatIntervalSeconds != null) { + if (heartbeatIntervalSeconds != DEFAULT.getHeartbeatIntervalSeconds()) { poolingOptions.setHeartbeatIntervalSeconds(heartbeatIntervalSeconds); } - if (idleTimeoutSeconds != null) { + if (idleTimeoutSeconds != DEFAULT.getIdleTimeoutSeconds()) { poolingOptions.setIdleTimeoutSeconds(idleTimeoutSeconds); } @@ -97,7 +97,7 @@ public class PoolingOptionsFactoryBean implements FactoryBean, I poolingOptions.setInitializationExecutor(initializationExecutor); } - if (poolTimeoutMilliseconds != null) { + if (poolTimeoutMilliseconds != DEFAULT.getPoolTimeoutMillis()) { poolingOptions.setPoolTimeoutMillis(poolTimeoutMilliseconds); } @@ -219,7 +219,7 @@ public class PoolingOptionsFactoryBean implements FactoryBean, I * * @param heartbeatIntervalSeconds interval in seconds between heartbeat messages to keep idle connections alive. */ - public void setHeartbeatIntervalSeconds(Integer heartbeatIntervalSeconds) { + public void setHeartbeatIntervalSeconds(int heartbeatIntervalSeconds) { this.heartbeatIntervalSeconds = heartbeatIntervalSeconds; } @@ -228,7 +228,7 @@ public class PoolingOptionsFactoryBean implements FactoryBean, I * * @return the {@code heartbeatIntervalSeconds}. */ - public Integer getHeartbeatIntervalSeconds() { + public int getHeartbeatIntervalSeconds() { return heartbeatIntervalSeconds; } @@ -237,7 +237,7 @@ public class PoolingOptionsFactoryBean implements FactoryBean, I * * @param idleTimeoutSeconds idle timeout in seconds before a connection is removed. */ - public void setIdleTimeoutSeconds(Integer idleTimeoutSeconds) { + public void setIdleTimeoutSeconds(int idleTimeoutSeconds) { this.idleTimeoutSeconds = idleTimeoutSeconds; } @@ -246,7 +246,7 @@ public class PoolingOptionsFactoryBean implements FactoryBean, I * * @return the {@code idleTimeoutSeconds}. */ - public Integer getIdleTimeoutSeconds() { + public int getIdleTimeoutSeconds() { return idleTimeoutSeconds; } @@ -273,7 +273,7 @@ public class PoolingOptionsFactoryBean implements FactoryBean, I * * @param poolTimeoutMilliseconds timeout in milliseconds used to acquire a connection from the host's pool. */ - public void setPoolTimeoutMilliseconds(Integer poolTimeoutMilliseconds) { + public void setPoolTimeoutMilliseconds(int poolTimeoutMilliseconds) { this.poolTimeoutMilliseconds = poolTimeoutMilliseconds; } @@ -282,7 +282,7 @@ public class PoolingOptionsFactoryBean implements FactoryBean, I * * @return the {@code poolTimeoutMilliseconds}. */ - public Integer getPoolTimeoutMilliseconds() { + public int getPoolTimeoutMilliseconds() { return poolTimeoutMilliseconds; } diff --git a/spring-cql/src/test/java/org/springframework/cassandra/config/PoolingOptionsFactoryBeanUnitTests.java b/spring-cql/src/test/java/org/springframework/cassandra/config/PoolingOptionsFactoryBeanUnitTests.java index f2ed25de1..4a0e65917 100644 --- a/spring-cql/src/test/java/org/springframework/cassandra/config/PoolingOptionsFactoryBeanUnitTests.java +++ b/spring-cql/src/test/java/org/springframework/cassandra/config/PoolingOptionsFactoryBeanUnitTests.java @@ -172,10 +172,10 @@ public class PoolingOptionsFactoryBeanUnitTests { } }; - poolingOptionsFactoryBean.setHeartbeatIntervalSeconds(30); - poolingOptionsFactoryBean.setIdleTimeoutSeconds(120); + poolingOptionsFactoryBean.setHeartbeatIntervalSeconds(33); + poolingOptionsFactoryBean.setIdleTimeoutSeconds(112); poolingOptionsFactoryBean.setInitializationExecutor(mockExecutor); - poolingOptionsFactoryBean.setPoolTimeoutMilliseconds(120); + poolingOptionsFactoryBean.setPoolTimeoutMilliseconds(130); poolingOptionsFactoryBean.setRemoteCoreConnections(5); poolingOptionsFactoryBean.setRemoteMaxConnections(50); poolingOptionsFactoryBean.setRemoteMaxSimultaneousRequests(20); @@ -188,10 +188,10 @@ public class PoolingOptionsFactoryBeanUnitTests { assertThat(poolingOptionsFactoryBean.getObject(), is(sameInstance(poolingOptionsSpy))); assertThat(poolingOptionsFactoryBean.getObjectType(), is(equalTo((Class) poolingOptionsSpy.getClass()))); - verify(poolingOptionsSpy).setHeartbeatIntervalSeconds(eq(30)); - verify(poolingOptionsSpy).setIdleTimeoutSeconds(eq(120)); + verify(poolingOptionsSpy).setHeartbeatIntervalSeconds(eq(33)); + verify(poolingOptionsSpy).setIdleTimeoutSeconds(eq(112)); verify(poolingOptionsSpy).setInitializationExecutor(eq(mockExecutor)); - verify(poolingOptionsSpy).setPoolTimeoutMillis(eq(120)); + verify(poolingOptionsSpy).setPoolTimeoutMillis(eq(130)); verify(poolingOptionsSpy).setCoreConnectionsPerHost(eq(HostDistance.REMOTE), eq(5)); verify(poolingOptionsSpy).setMaxConnectionsPerHost(eq(HostDistance.REMOTE), eq(50)); verify(poolingOptionsSpy).setMaxRequestsPerConnection(eq(HostDistance.REMOTE), eq(20));