Extract configuration keys into constants

Make use of them in ConfigurationTest and also make use of existing
constant for default values to remove duplication.

Change-Id: I482a2269cdf81ef45c4ac8605452416e98172f5a
diff --git a/src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java b/src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java
index 94a5945..b756678 100644
--- a/src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java
+++ b/src/main/java/com/ericsson/gerrit/plugins/highavailability/Configuration.java
@@ -28,10 +28,20 @@
 public class Configuration {
   private static final Logger log = LoggerFactory.getLogger(Configuration.class);
 
-  private static final int DEFAULT_TIMEOUT_MS = 5000;
-  private static final int DEFAULT_MAX_TRIES = 5;
-  private static final int DEFAULT_RETRY_INTERVAL = 1000;
-  private static final int DEFAULT_THREAD_POOL_SIZE = 1;
+  static final String URL_KEY = "url";
+  static final String USER_KEY = "user";
+  static final String PASSWORD_KEY = "password";
+  static final String CONNECTION_TIMEOUT_KEY = "connectionTimeout";
+  static final String SOCKET_TIMEOUT_KEY = "socketTimeout";
+  static final String MAX_TRIES_KEY = "maxTries";
+  static final String RETRY_INTERVAL_KEY = "retryInterval";
+  static final String INDEX_THREAD_POOL_SIZE_KEY = "indexThreadPoolSize";
+  static final String CACHE_THREAD_POOL_SIZE_KEY = "cacheThreadPoolSize";
+
+  static final int DEFAULT_TIMEOUT_MS = 5000;
+  static final int DEFAULT_MAX_TRIES = 5;
+  static final int DEFAULT_RETRY_INTERVAL = 1000;
+  static final int DEFAULT_THREAD_POOL_SIZE = 1;
 
   private final String url;
   private final String user;
@@ -46,15 +56,15 @@
   @Inject
   Configuration(PluginConfigFactory config, @PluginName String pluginName) {
     PluginConfig cfg = config.getFromGerritConfig(pluginName, true);
-    url = Strings.nullToEmpty(cfg.getString("url"));
-    user = Strings.nullToEmpty(cfg.getString("user"));
-    password = Strings.nullToEmpty(cfg.getString("password"));
-    connectionTimeout = getInt(cfg, "connectionTimeout", DEFAULT_TIMEOUT_MS);
-    socketTimeout = getInt(cfg, "socketTimeout", DEFAULT_TIMEOUT_MS);
-    maxTries = getInt(cfg, "maxTries", DEFAULT_MAX_TRIES);
-    retryInterval = getInt(cfg, "retryInterval", DEFAULT_RETRY_INTERVAL);
-    indexThreadPoolSize = getInt(cfg, "indexThreadPoolSize", DEFAULT_THREAD_POOL_SIZE);
-    cacheThreadPoolSize = getInt(cfg, "cacheThreadPoolSize", DEFAULT_THREAD_POOL_SIZE);
+    url = Strings.nullToEmpty(cfg.getString(URL_KEY));
+    user = Strings.nullToEmpty(cfg.getString(USER_KEY));
+    password = Strings.nullToEmpty(cfg.getString(PASSWORD_KEY));
+    connectionTimeout = getInt(cfg, CONNECTION_TIMEOUT_KEY, DEFAULT_TIMEOUT_MS);
+    socketTimeout = getInt(cfg, SOCKET_TIMEOUT_KEY, DEFAULT_TIMEOUT_MS);
+    maxTries = getInt(cfg, MAX_TRIES_KEY, DEFAULT_MAX_TRIES);
+    retryInterval = getInt(cfg, RETRY_INTERVAL_KEY, DEFAULT_RETRY_INTERVAL);
+    indexThreadPoolSize = getInt(cfg, INDEX_THREAD_POOL_SIZE_KEY, DEFAULT_THREAD_POOL_SIZE);
+    cacheThreadPoolSize = getInt(cfg, CACHE_THREAD_POOL_SIZE_KEY, DEFAULT_THREAD_POOL_SIZE);
   }
 
   private int getInt(PluginConfig cfg, String name, int defaultValue) {
diff --git a/src/test/java/com/ericsson/gerrit/plugins/highavailability/ConfigurationTest.java b/src/test/java/com/ericsson/gerrit/plugins/highavailability/ConfigurationTest.java
index 97a32a1..c0382d2 100644
--- a/src/test/java/com/ericsson/gerrit/plugins/highavailability/ConfigurationTest.java
+++ b/src/test/java/com/ericsson/gerrit/plugins/highavailability/ConfigurationTest.java
@@ -14,6 +14,19 @@
 
 package com.ericsson.gerrit.plugins.highavailability;
 
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.CACHE_THREAD_POOL_SIZE_KEY;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.CONNECTION_TIMEOUT_KEY;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.DEFAULT_MAX_TRIES;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.DEFAULT_RETRY_INTERVAL;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.DEFAULT_THREAD_POOL_SIZE;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.DEFAULT_TIMEOUT_MS;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.INDEX_THREAD_POOL_SIZE_KEY;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.MAX_TRIES_KEY;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.PASSWORD_KEY;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.RETRY_INTERVAL_KEY;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.SOCKET_TIMEOUT_KEY;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.URL_KEY;
+import static com.ericsson.gerrit.plugins.highavailability.Configuration.USER_KEY;
 import static com.google.common.truth.Truth.assertThat;
 import static org.mockito.ArgumentMatchers.anyInt;
 import static org.mockito.ArgumentMatchers.anyString;
@@ -93,28 +106,26 @@
         .thenThrow(new IllegalArgumentException("some message"));
 
     configuration = new Configuration(cfgFactoryMock, pluginName);
-    assertThat(configuration.getConnectionTimeout()).isEqualTo(5000);
-    assertThat(configuration.getSocketTimeout()).isEqualTo(5000);
-    assertThat(configuration.getMaxTries()).isEqualTo(5);
-    assertThat(configuration.getRetryInterval()).isEqualTo(1000);
-    assertThat(configuration.getIndexThreadPoolSize()).isEqualTo(1);
-    assertThat(configuration.getCacheThreadPoolSize()).isEqualTo(1);
+    assertThat(configuration.getConnectionTimeout()).isEqualTo(DEFAULT_TIMEOUT_MS);
+    assertThat(configuration.getSocketTimeout()).isEqualTo(DEFAULT_TIMEOUT_MS);
+    assertThat(configuration.getMaxTries()).isEqualTo(DEFAULT_MAX_TRIES);
+    assertThat(configuration.getRetryInterval()).isEqualTo(DEFAULT_RETRY_INTERVAL);
+    assertThat(configuration.getIndexThreadPoolSize()).isEqualTo(DEFAULT_THREAD_POOL_SIZE);
+    assertThat(configuration.getCacheThreadPoolSize()).isEqualTo(DEFAULT_THREAD_POOL_SIZE);
   }
 
   private void buildMocks(boolean values) {
-    when(configMock.getString("url")).thenReturn(values ? URL : null);
-    when(configMock.getString("user")).thenReturn(values ? USER : null);
-    when(configMock.getString("password")).thenReturn(values ? PASS : null);
-    when(configMock.getInt("connectionTimeout", TIMEOUT)).thenReturn(values ? TIMEOUT : 0);
-    when(configMock.getInt("socketTimeout", TIMEOUT)).thenReturn(values ? TIMEOUT : 0);
-    when(configMock.getInt("maxTries", MAX_TRIES)).thenReturn(values ? MAX_TRIES : 0);
-    when(configMock.getInt("retryInterval", RETRY_INTERVAL))
+    when(configMock.getString(URL_KEY)).thenReturn(values ? URL : null);
+    when(configMock.getString(USER_KEY)).thenReturn(values ? USER : null);
+    when(configMock.getString(PASSWORD_KEY)).thenReturn(values ? PASS : null);
+    when(configMock.getInt(CONNECTION_TIMEOUT_KEY, TIMEOUT)).thenReturn(values ? TIMEOUT : 0);
+    when(configMock.getInt(SOCKET_TIMEOUT_KEY, TIMEOUT)).thenReturn(values ? TIMEOUT : 0);
+    when(configMock.getInt(MAX_TRIES_KEY, MAX_TRIES)).thenReturn(values ? MAX_TRIES : 0);
+    when(configMock.getInt(RETRY_INTERVAL_KEY, RETRY_INTERVAL))
         .thenReturn(values ? RETRY_INTERVAL : 0);
-    when(configMock.getInt("indexThreadPoolSize", THREAD_POOL_SIZE))
+    when(configMock.getInt(INDEX_THREAD_POOL_SIZE_KEY, THREAD_POOL_SIZE))
         .thenReturn(values ? THREAD_POOL_SIZE : 0);
-    when(configMock.getInt("eventThreadPoolSize", THREAD_POOL_SIZE))
-        .thenReturn(values ? THREAD_POOL_SIZE : 0);
-    when(configMock.getInt("cacheThreadPoolSize", THREAD_POOL_SIZE))
+    when(configMock.getInt(CACHE_THREAD_POOL_SIZE_KEY, THREAD_POOL_SIZE))
         .thenReturn(values ? THREAD_POOL_SIZE : 0);
 
     configuration = new Configuration(cfgFactoryMock, pluginName);