diff options
author | Simon Brandhof <simon.brandhof@sonarsource.com> | 2015-03-30 23:00:55 +0200 |
---|---|---|
committer | Simon Brandhof <simon.brandhof@sonarsource.com> | 2015-03-30 23:02:01 +0200 |
commit | b1e329a5182f8d611fdefe98ea7c3b5a54d2d7a3 (patch) | |
tree | 4b2cff21b1b9bb0b42ad3b5a7a255cd3c5fae984 /server/sonar-search | |
parent | fd36d975984c356164d7ca95f7a32ca7f339d2c7 (diff) | |
download | sonarqube-b1e329a5182f8d611fdefe98ea7c3b5a54d2d7a3.tar.gz sonarqube-b1e329a5182f8d611fdefe98ea7c3b5a54d2d7a3.zip |
SONAR-6293 refactor loading of default values of sonar.properties
Diffstat (limited to 'server/sonar-search')
6 files changed, 100 insertions, 146 deletions
diff --git a/server/sonar-search/src/main/java/org/sonar/search/SearchServer.java b/server/sonar-search/src/main/java/org/sonar/search/SearchServer.java index fdc575277d2..13dde539c10 100644 --- a/server/sonar-search/src/main/java/org/sonar/search/SearchServer.java +++ b/server/sonar-search/src/main/java/org/sonar/search/SearchServer.java @@ -22,7 +22,6 @@ package org.sonar.search; import org.elasticsearch.action.admin.cluster.health.ClusterHealthStatus; import org.elasticsearch.common.unit.TimeValue; import org.elasticsearch.node.internal.InternalNode; -import org.slf4j.LoggerFactory; import org.sonar.process.MinimumViableSystem; import org.sonar.process.Monitored; import org.sonar.process.ProcessEntryPoint; @@ -40,8 +39,6 @@ public class SearchServer implements Monitored { @Override public void start() { - LoggerFactory.getLogger(SearchServer.class).info("Starting Elasticsearch[{}] on port {}", settings.clusterName(), settings.tcpPort()); - node = new InternalNode(settings.build(), false); node.start(); } diff --git a/server/sonar-search/src/main/java/org/sonar/search/SearchSettings.java b/server/sonar-search/src/main/java/org/sonar/search/SearchSettings.java index 6ae77559f27..bab755bc722 100644 --- a/server/sonar-search/src/main/java/org/sonar/search/SearchSettings.java +++ b/server/sonar-search/src/main/java/org/sonar/search/SearchSettings.java @@ -26,7 +26,7 @@ import org.elasticsearch.common.settings.Settings; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.sonar.process.MessageException; -import org.sonar.process.ProcessConstants; +import org.sonar.process.ProcessProperties; import org.sonar.process.Props; import org.sonar.search.script.ListUpdate; @@ -40,45 +40,22 @@ class SearchSettings { private static final Logger LOGGER = LoggerFactory.getLogger(SearchSettings.class); - public static final String PROP_HTTP_PORT = "sonar.search.httpPort"; public static final String PROP_MARVEL_HOSTS = "sonar.search.marvelHosts"; private final Props props; - private final Set<String> masterHosts = new LinkedHashSet<String>(); - private final String clusterName; - private final String hostName; - private final int tcpPort; + private final Set<String> masterHosts = new LinkedHashSet<>(); SearchSettings(Props props) { this.props = props; - masterHosts.addAll(Arrays.asList(StringUtils.split(props.value(ProcessConstants.CLUSTER_MASTER_HOST, ""), ","))); - clusterName = props.value(ProcessConstants.CLUSTER_NAME); - hostName = props.value(ProcessConstants.SEARCH_HOST); - Integer port = props.valueAsInt(ProcessConstants.SEARCH_PORT); - if (port == null) { - throw new MessageException("Property is not set: " + ProcessConstants.SEARCH_PORT); - } - tcpPort = port.intValue(); + masterHosts.addAll(Arrays.asList(StringUtils.split(props.value(ProcessProperties.CLUSTER_MASTER_HOST, ""), ","))); } boolean inCluster() { - return props.valueAsBoolean(ProcessConstants.CLUSTER_ACTIVATE, false); + return props.valueAsBoolean(ProcessProperties.CLUSTER_ACTIVATE, false); } boolean isMaster() { - return props.valueAsBoolean(ProcessConstants.CLUSTER_MASTER, false); - } - - String clusterName() { - return clusterName; - } - - int tcpPort() { - return tcpPort; - } - - String hostName() { - return hostName; + return props.valueAsBoolean(ProcessProperties.CLUSTER_MASTER, false); } Settings build() { @@ -93,11 +70,11 @@ class SearchSettings { } private void configureFileSystem(ImmutableSettings.Builder builder) { - File homeDir = props.nonNullValueAsFile(ProcessConstants.PATH_HOME); + File homeDir = props.nonNullValueAsFile(ProcessProperties.PATH_HOME); File dataDir, workDir, logDir; // data dir - String dataPath = props.value(ProcessConstants.PATH_DATA); + String dataPath = props.value(ProcessProperties.PATH_DATA); if (StringUtils.isNotEmpty(dataPath)) { dataDir = new File(dataPath, "es"); } else { @@ -106,7 +83,7 @@ class SearchSettings { builder.put("path.data", dataDir.getAbsolutePath()); // working dir - String workPath = props.value(ProcessConstants.PATH_TEMP); + String workPath = props.value(ProcessProperties.PATH_TEMP); if (StringUtils.isNotEmpty(workPath)) { workDir = new File(workPath); } else { @@ -116,7 +93,7 @@ class SearchSettings { builder.put("path.plugins", workDir.getAbsolutePath()); // log dir - String logPath = props.value(ProcessConstants.PATH_LOGS); + String logPath = props.value(ProcessProperties.PATH_LOGS); if (StringUtils.isNotEmpty(logPath)) { logDir = new File(logPath); } else { @@ -128,22 +105,25 @@ class SearchSettings { private void configurePlugins(ImmutableSettings.Builder builder) { builder .put("script.default_lang", "native") - .put(String.format("script.native.%s.type", ProcessConstants.ES_PLUGIN_LISTUPDATE_SCRIPT_NAME), + .put(String.format("script.native.%s.type", ProcessProperties.ES_PLUGIN_LISTUPDATE_SCRIPT_NAME), ListUpdate.UpdateListScriptFactory.class.getName()); } private void configureNetwork(ImmutableSettings.Builder builder) { + String host = props.value(ProcessProperties.SEARCH_HOST); + Integer port = props.valueAsInt(ProcessProperties.SEARCH_PORT); + LOGGER.info("Elasticsearch listening on {}:{}", host, port); + // disable multicast builder.put("discovery.zen.ping.multicast.enabled", "false"); - builder.put("transport.tcp.port", tcpPort); - if (hostName != null) { - builder.put("transport.host", hostName); - } + builder.put("transport.tcp.port", port); + builder.put("transport.host", host); + // Elasticsearch sets the default value of TCP reuse address to true only on non-MSWindows machines, but why ? builder.put("network.tcp.reuse_address", true); - Integer httpPort = props.valueAsInt(PROP_HTTP_PORT); - if (httpPort == null) { + Integer httpPort = props.valueAsInt(ProcessProperties.SEARCH_HTTP_PORT); + if (httpPort == null || httpPort < 0) { // standard configuration builder.put("http.enabled", false); } else { @@ -152,11 +132,7 @@ class SearchSettings { // see https://github.com/lmenezes/elasticsearch-kopf/issues/195 builder.put("http.cors.enabled", true); builder.put("http.enabled", true); - if (hostName != null) { - builder.put("http.host", hostName); - } else { - builder.put("http.host", "127.0.0.1"); - } + builder.put("http.host", host); builder.put("http.port", httpPort); } } @@ -181,18 +157,18 @@ class SearchSettings { builder.put("discovery.zen.minimum_master_nodes", 1); } else { throw new MessageException(String.format("Not an Elasticsearch master nor slave. Please check properties %s and %s", - ProcessConstants.CLUSTER_MASTER, ProcessConstants.CLUSTER_MASTER_HOST)); + ProcessProperties.CLUSTER_MASTER, ProcessProperties.CLUSTER_MASTER_HOST)); } } builder.put(IndexMetaData.SETTING_NUMBER_OF_REPLICAS, replicationFactor); - builder.put("cluster.name", clusterName); + builder.put("cluster.name", props.value(ProcessProperties.CLUSTER_NAME)); builder.put("cluster.routing.allocation.awareness.attributes", "rack_id"); - builder.put("node.rack_id", props.value(ProcessConstants.CLUSTER_NODE_NAME, "unknown")); - builder.put("node.name", props.value(ProcessConstants.CLUSTER_NODE_NAME)); + builder.put("node.rack_id", props.value(ProcessProperties.CLUSTER_NODE_NAME, "unknown")); + builder.put("node.name", props.value(ProcessProperties.CLUSTER_NODE_NAME)); } private void configureMarvel(ImmutableSettings.Builder builder) { - Set<String> marvels = new TreeSet<String>(); + Set<String> marvels = new TreeSet<>(); marvels.addAll(Arrays.asList(StringUtils.split(props.value(PROP_MARVEL_HOSTS, ""), ","))); // If we're collecting indexing data send them to the Marvel host(s) diff --git a/server/sonar-search/src/main/java/org/sonar/search/script/ListUpdate.java b/server/sonar-search/src/main/java/org/sonar/search/script/ListUpdate.java index 721ba6b2328..587825f60f5 100644 --- a/server/sonar-search/src/main/java/org/sonar/search/script/ListUpdate.java +++ b/server/sonar-search/src/main/java/org/sonar/search/script/ListUpdate.java @@ -24,7 +24,7 @@ import org.elasticsearch.common.xcontent.support.XContentMapValues; import org.elasticsearch.script.AbstractExecutableScript; import org.elasticsearch.script.ExecutableScript; import org.elasticsearch.script.NativeScriptFactory; -import org.sonar.process.ProcessConstants; +import org.sonar.process.ProcessProperties; import java.util.ArrayList; import java.util.Collection; @@ -36,25 +36,25 @@ public class ListUpdate extends AbstractExecutableScript { public static class UpdateListScriptFactory implements NativeScriptFactory { @Override public ExecutableScript newScript(@Nullable Map<String, Object> params) { - String idField = XContentMapValues.nodeStringValue(params.get(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_FIELD), null); - String idValue = XContentMapValues.nodeStringValue(params.get(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_VALUE), null); - String field = XContentMapValues.nodeStringValue(params.get(ProcessConstants.ES_PLUGIN_LISTUPDATE_FIELD), null); + String idField = XContentMapValues.nodeStringValue(params.get(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_FIELD), null); + String idValue = XContentMapValues.nodeStringValue(params.get(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_VALUE), null); + String field = XContentMapValues.nodeStringValue(params.get(ProcessProperties.ES_PLUGIN_LISTUPDATE_FIELD), null); Map value = null; if (idField == null) { - throw new IllegalStateException(String.format("Missing '%s' parameter", ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_FIELD)); + throw new IllegalStateException(String.format("Missing '%s' parameter", ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_FIELD)); } if (idValue == null) { - throw new IllegalStateException(String.format("Missing '%s' parameter", ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_VALUE)); + throw new IllegalStateException(String.format("Missing '%s' parameter", ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_VALUE)); } if (field == null) { - throw new IllegalStateException(String.format("Missing '%s' parameter", ProcessConstants.ES_PLUGIN_LISTUPDATE_FIELD)); + throw new IllegalStateException(String.format("Missing '%s' parameter", ProcessProperties.ES_PLUGIN_LISTUPDATE_FIELD)); } //NULL case is deletion of nested item - if (params.containsKey(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE)) { - Object obj = params.get(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE); + if (params.containsKey(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE)) { + Object obj = params.get(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE); if (obj != null) { - value = XContentMapValues.nodeMapValue(params.get(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE), "Update item"); + value = XContentMapValues.nodeMapValue(params.get(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE), "Update item"); } } diff --git a/server/sonar-search/src/test/java/org/sonar/search/SearchServerTest.java b/server/sonar-search/src/test/java/org/sonar/search/SearchServerTest.java index 3b012798916..bd8f49b511a 100644 --- a/server/sonar-search/src/test/java/org/sonar/search/SearchServerTest.java +++ b/server/sonar-search/src/test/java/org/sonar/search/SearchServerTest.java @@ -34,9 +34,10 @@ import org.junit.rules.TemporaryFolder; import org.junit.rules.TestRule; import org.junit.rules.Timeout; import org.sonar.process.NetworkUtils; -import org.sonar.process.ProcessConstants; +import org.sonar.process.ProcessProperties; import org.sonar.process.Props; +import java.net.InetAddress; import java.util.Properties; import static org.assertj.core.api.Assertions.assertThat; @@ -70,16 +71,22 @@ public class SearchServerTest { @Test public void start_stop_server() throws Exception { Props props = new Props(new Properties()); - props.set(ProcessConstants.SEARCH_PORT, String.valueOf(port)); - props.set(ProcessConstants.CLUSTER_NAME, CLUSTER_NAME); - props.set(ProcessConstants.CLUSTER_NODE_NAME, "test"); - props.set(ProcessConstants.PATH_HOME, temp.newFolder().getAbsolutePath()); + // the following properties have always default values (see ProcessProperties) + String host = InetAddress.getLocalHost().getHostAddress(); + props.set(ProcessProperties.SEARCH_HOST, host); + props.set(ProcessProperties.SEARCH_PORT, String.valueOf(port)); + props.set(ProcessProperties.CLUSTER_NAME, CLUSTER_NAME); + props.set(ProcessProperties.CLUSTER_NODE_NAME, "test"); + props.set(ProcessProperties.PATH_HOME, temp.newFolder().getAbsolutePath()); searchServer = new SearchServer(props); searchServer.start(); assertThat(searchServer.isReady()).isTrue(); - client = getSearchClient(); + Settings settings = ImmutableSettings.settingsBuilder().put("cluster.name", CLUSTER_NAME).build(); + client = new TransportClient(settings) + .addTransportAddress(new InetSocketTransportAddress(host, port)); + assertThat(client.admin().cluster().prepareClusterStats().get().getStatus()).isEqualTo(ClusterHealthStatus.GREEN); searchServer.stop(); searchServer.awaitStop(); @@ -91,13 +98,4 @@ public class SearchServerTest { // ok } } - - private Client getSearchClient() { - Settings settings = ImmutableSettings.settingsBuilder() - .put("cluster.name", CLUSTER_NAME).build(); - Client client = new TransportClient(settings) - .addTransportAddress(new InetSocketTransportAddress("localhost", port)); - assertThat(client.admin().cluster().prepareClusterStats().get().getStatus()).isEqualTo(ClusterHealthStatus.GREEN); - return client; - } } diff --git a/server/sonar-search/src/test/java/org/sonar/search/SearchSettingsTest.java b/server/sonar-search/src/test/java/org/sonar/search/SearchSettingsTest.java index 59213c08f41..295eb86b94a 100644 --- a/server/sonar-search/src/test/java/org/sonar/search/SearchSettingsTest.java +++ b/server/sonar-search/src/test/java/org/sonar/search/SearchSettingsTest.java @@ -24,7 +24,7 @@ import org.junit.Rule; import org.junit.Test; import org.junit.rules.TemporaryFolder; import org.sonar.process.MessageException; -import org.sonar.process.ProcessConstants; +import org.sonar.process.ProcessProperties; import org.sonar.process.Props; import java.io.File; @@ -40,30 +40,17 @@ public class SearchSettingsTest { public TemporaryFolder temp = new TemporaryFolder(); @Test - public void fail_if_tcp_port_is_not_set() throws Exception { - try { - new SearchSettings(new Props(new Properties())); - fail(); - } catch (MessageException e) { - assertThat(e).hasMessage("Property is not set: sonar.search.port"); - } - } - - @Test public void test_default_settings() throws Exception { File homeDir = temp.newFolder(); Props props = new Props(new Properties()); - props.set(ProcessConstants.SEARCH_PORT, "1234"); - props.set(ProcessConstants.SEARCH_HOST, "127.0.0.1"); - props.set(ProcessConstants.PATH_HOME, homeDir.getAbsolutePath()); - props.set(ProcessConstants.CLUSTER_NAME, "tests"); - props.set(ProcessConstants.CLUSTER_NODE_NAME, "test"); + props.set(ProcessProperties.SEARCH_PORT, "1234"); + props.set(ProcessProperties.SEARCH_HOST, "127.0.0.1"); + props.set(ProcessProperties.PATH_HOME, homeDir.getAbsolutePath()); + props.set(ProcessProperties.CLUSTER_NAME, "tests"); + props.set(ProcessProperties.CLUSTER_NODE_NAME, "test"); SearchSettings searchSettings = new SearchSettings(props); assertThat(searchSettings.inCluster()).isFalse(); - assertThat(searchSettings.clusterName()).isEqualTo("tests"); - assertThat(searchSettings.tcpPort()).isEqualTo(1234); - assertThat(searchSettings.hostName()).isEqualTo("127.0.0.1"); Settings generated = searchSettings.build(); assertThat(generated.get("transport.tcp.port")).isEqualTo("1234"); @@ -89,24 +76,21 @@ public class SearchSettingsTest { SearchSettings searchSettings = new SearchSettings(props); assertThat(searchSettings.inCluster()).isFalse(); - assertThat(searchSettings.clusterName()).isEqualTo("tests"); - assertThat(searchSettings.tcpPort()).isEqualTo(1234); - assertThat(searchSettings.hostName()).isEqualTo(null); Settings generated = searchSettings.build(); - assertThat(generated.get("transport.tcp.port")).isEqualTo("1234"); - assertThat(generated.get("transport.host")).isEqualTo(null); - assertThat(generated.get("cluster.name")).isEqualTo("tests"); - assertThat(generated.get("node.name")).isEqualTo("test"); + assertThat(generated.get("transport.tcp.port")).isEqualTo("9001"); + assertThat(generated.get("transport.host")).isEqualTo("127.0.0.1"); + assertThat(generated.get("cluster.name")).isEqualTo("sonarqube"); + assertThat(generated.get("node.name")).startsWith("sonar-"); } @Test public void override_dirs() throws Exception { File dataDir = temp.newFolder(), logDir = temp.newFolder(), tempDir = temp.newFolder(); Props props = minProps(); - props.set(ProcessConstants.PATH_DATA, dataDir.getAbsolutePath()); - props.set(ProcessConstants.PATH_LOGS, logDir.getAbsolutePath()); - props.set(ProcessConstants.PATH_TEMP, tempDir.getAbsolutePath()); + props.set(ProcessProperties.PATH_DATA, dataDir.getAbsolutePath()); + props.set(ProcessProperties.PATH_LOGS, logDir.getAbsolutePath()); + props.set(ProcessProperties.PATH_TEMP, tempDir.getAbsolutePath()); Settings settings = new SearchSettings(props).build(); @@ -118,8 +102,8 @@ public class SearchSettingsTest { @Test public void test_cluster_master() throws Exception { Props props = minProps(); - props.set(ProcessConstants.CLUSTER_ACTIVATE, "true"); - props.set(ProcessConstants.CLUSTER_MASTER, "true"); + props.set(ProcessProperties.CLUSTER_ACTIVATE, "true"); + props.set(ProcessProperties.CLUSTER_MASTER, "true"); Settings settings = new SearchSettings(props).build(); assertThat(settings.get("index.number_of_replicas")).isEqualTo("1"); @@ -130,8 +114,8 @@ public class SearchSettingsTest { @Test public void test_cluster_slave() throws Exception { Props props = minProps(); - props.set(ProcessConstants.CLUSTER_ACTIVATE, "true"); - props.set(ProcessConstants.CLUSTER_MASTER_HOST, "127.0.0.2,127.0.0.3"); + props.set(ProcessProperties.CLUSTER_ACTIVATE, "true"); + props.set(ProcessProperties.CLUSTER_MASTER_HOST, "127.0.0.2,127.0.0.3"); Settings settings = new SearchSettings(props).build(); assertThat(settings.get("discovery.zen.ping.unicast.hosts")).isEqualTo("127.0.0.2,127.0.0.3"); @@ -141,11 +125,12 @@ public class SearchSettingsTest { @Test public void bad_cluster_configuration() throws Exception { Props props = minProps(); - props.set(ProcessConstants.CLUSTER_ACTIVATE, "true"); + props.set(ProcessProperties.CLUSTER_ACTIVATE, "true"); try { new SearchSettings(props).build(); fail(); - } catch (MessageException e) { + } catch (MessageException ignored) { + // expected } } @@ -161,7 +146,7 @@ public class SearchSettingsTest { @Test public void enable_http_connector() throws Exception { Props props = minProps(); - props.set(SearchSettings.PROP_HTTP_PORT, "9010"); + props.set(ProcessProperties.SEARCH_HTTP_PORT, "9010"); Settings settings = new SearchSettings(props).build(); assertThat(settings.get("http.port")).isEqualTo("9010"); @@ -172,8 +157,8 @@ public class SearchSettingsTest { @Test public void enable_http_connector_different_host() throws Exception { Props props = minProps(); - props.set(SearchSettings.PROP_HTTP_PORT, "9010"); - props.set(ProcessConstants.SEARCH_HOST, "127.0.0.2"); + props.set(ProcessProperties.SEARCH_HTTP_PORT, "9010"); + props.set(ProcessProperties.SEARCH_HOST, "127.0.0.2"); Settings settings = new SearchSettings(props).build(); assertThat(settings.get("http.port")).isEqualTo("9010"); @@ -184,10 +169,8 @@ public class SearchSettingsTest { private Props minProps() throws IOException { File homeDir = temp.newFolder(); Props props = new Props(new Properties()); - props.set(ProcessConstants.SEARCH_PORT, "1234"); - props.set(ProcessConstants.PATH_HOME, homeDir.getAbsolutePath()); - props.set(ProcessConstants.CLUSTER_NAME, "tests"); - props.set(ProcessConstants.CLUSTER_NODE_NAME, "test"); + ProcessProperties.completeDefaults(props); + props.set(ProcessProperties.PATH_HOME, homeDir.getAbsolutePath()); return props; } } diff --git a/server/sonar-search/src/test/java/org/sonar/search/script/UpdateListScriptTest.java b/server/sonar-search/src/test/java/org/sonar/search/script/UpdateListScriptTest.java index d0b6a19da8b..0c1f603831c 100644 --- a/server/sonar-search/src/test/java/org/sonar/search/script/UpdateListScriptTest.java +++ b/server/sonar-search/src/test/java/org/sonar/search/script/UpdateListScriptTest.java @@ -23,7 +23,7 @@ import com.google.common.collect.ImmutableMap; import org.elasticsearch.script.ExecutableScript; import org.junit.Before; import org.junit.Test; -import org.sonar.process.ProcessConstants; +import org.sonar.process.ProcessProperties; import java.util.Collection; import java.util.HashMap; @@ -54,7 +54,7 @@ public class UpdateListScriptTest { } // Missing ID_VALUE - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_FIELD, "test"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_FIELD, "test"); try { factory.newScript(params); fail(); @@ -63,7 +63,7 @@ public class UpdateListScriptTest { } // Missing FIELD - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_VALUE, "test"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_VALUE, "test"); try { factory.newScript(params); fail(); @@ -72,12 +72,12 @@ public class UpdateListScriptTest { } // Has all required attributes and Null Value - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_FIELD, "test"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_FIELD, "test"); ExecutableScript script = factory.newScript(params); assertThat(script).isNotNull(); // Has all required attributes and VALUE of wrong type - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE, new Integer(52)); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE, new Integer(52)); try { factory.newScript(params); fail(); @@ -86,12 +86,12 @@ public class UpdateListScriptTest { } // Has all required attributes and Proper VALUE - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE, ImmutableMap.of("key", "value")); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE, ImmutableMap.of("key", "value")); script = factory.newScript(params); assertThat(script).isNotNull(); // Missing ID_FIELD - params.remove(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_FIELD); + params.remove(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_FIELD); try { factory.newScript(params); fail(); @@ -110,10 +110,10 @@ public class UpdateListScriptTest { // 0 Create list when field does not exists Map<String, Object> params = new HashMap<String, Object>(); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_FIELD, listField); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_VALUE, "1"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE, mapOf("key", "1", "value", "A")); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_FIELD, listField); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_VALUE, "1"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE, mapOf("key", "1", "value", "A")); ExecutableScript script = factory.newScript(params); script.setNextVar("ctx", ImmutableMap.of("_source", source)); @@ -125,10 +125,10 @@ public class UpdateListScriptTest { // Add item to existing list params = new HashMap<String, Object>(); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_FIELD, listField); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_VALUE, "2"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE, mapOf("key", "2", "value", "B")); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_FIELD, listField); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_VALUE, "2"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE, mapOf("key", "2", "value", "B")); script = factory.newScript(params); script.setNextVar("ctx", ImmutableMap.of("_source", source)); script.run(); @@ -137,10 +137,10 @@ public class UpdateListScriptTest { // updated first item in list params = new HashMap<String, Object>(); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_FIELD, listField); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_VALUE, "1"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE, mapOf("key", "1", "value", "a")); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_FIELD, listField); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_VALUE, "1"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE, mapOf("key", "1", "value", "a")); script = factory.newScript(params); script.setNextVar("ctx", ImmutableMap.of("_source", source)); script.run(); @@ -149,10 +149,10 @@ public class UpdateListScriptTest { // updated second item in list params = new HashMap<String, Object>(); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_FIELD, listField); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_VALUE, "2"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE, mapOf("key", "2", "value", "b")); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_FIELD, listField); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_VALUE, "2"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE, mapOf("key", "2", "value", "b")); script = factory.newScript(params); script.setNextVar("ctx", ImmutableMap.of("_source", source)); script.run(); @@ -161,10 +161,10 @@ public class UpdateListScriptTest { // delete first item params = new HashMap<String, Object>(); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_FIELD, listField); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_ID_VALUE, "1"); - params.put(ProcessConstants.ES_PLUGIN_LISTUPDATE_VALUE, null); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_FIELD, listField); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_FIELD, "key"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_ID_VALUE, "1"); + params.put(ProcessProperties.ES_PLUGIN_LISTUPDATE_VALUE, null); script = factory.newScript(params); script.setNextVar("ctx", ImmutableMap.of("_source", source)); script.run(); |