aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjørn Christian Seime <bjorncs@oath.com>2018-05-15 14:56:42 +0200
committerBjørn Christian Seime <bjorncs@oath.com>2018-05-15 14:56:48 +0200
commited7e367e5ce82e208c4ecd29411a438449b85472 (patch)
treebd0b4b159d5ad52f413596e6f887deea793d74cb
parentc1f4afc49e765e4555ccdf86ee89f46358dd4082 (diff)
Deduplicate code for splitting multi-value parameters
-rw-r--r--standalone-container/src/main/java/com/yahoo/container/standalone/CloudConfigInstallVariables.java9
1 files changed, 7 insertions, 2 deletions
diff --git a/standalone-container/src/main/java/com/yahoo/container/standalone/CloudConfigInstallVariables.java b/standalone-container/src/main/java/com/yahoo/container/standalone/CloudConfigInstallVariables.java
index 6fed115cb96..949e3bfd855 100644
--- a/standalone-container/src/main/java/com/yahoo/container/standalone/CloudConfigInstallVariables.java
+++ b/standalone-container/src/main/java/com/yahoo/container/standalone/CloudConfigInstallVariables.java
@@ -6,6 +6,7 @@ import com.yahoo.vespa.model.container.configserver.option.CloudConfigOptions;
import java.util.Arrays;
import java.util.Optional;
import java.util.function.Function;
+import java.util.stream.Stream;
/**
* @author bjorncs
@@ -128,7 +129,7 @@ public class CloudConfigInstallVariables implements CloudConfigOptions {
}
static ConfigServer[] toConfigServers(String configserversString) {
- return Arrays.stream(configserversString.split(",|\\s+"))
+ return multiValueParameterStream(configserversString)
.map(CloudConfigInstallVariables::toConfigServer)
.toArray(ConfigServer[]::new);
}
@@ -147,7 +148,7 @@ public class CloudConfigInstallVariables implements CloudConfigOptions {
}
static String[] toConfigModelsPluginDir(String configModelsPluginDirString) {
- return configModelsPluginDirString.split(",|\\s+");
+ return multiValueParameterStream(configModelsPluginDirString).toArray(String[]::new);
}
private static Optional<String> getInstallVariable(String name) {
@@ -167,4 +168,8 @@ public class CloudConfigInstallVariables implements CloudConfigOptions {
Optional.ofNullable(System.getenv(name.replace(".", "__")))
.orElseGet(() -> System.getProperty(name)));
}
+
+ private static Stream<String> multiValueParameterStream(String param) {
+ return Arrays.stream(param.split("[, ]")).filter(value -> !value.isEmpty());
+ }
}