summaryrefslogtreecommitdiff
path: root/core/src/main/java/org/elasticsearch
diff options
context:
space:
mode:
authorRyan Ernst <ryan@iernst.net>2017-06-25 10:19:51 -0700
committerGitHub <noreply@github.com>2017-06-25 10:19:51 -0700
commit1583f8104725eca4779a0a0fd9886839c4c615a3 (patch)
tree18c605e977ffa5e45b46d1e03e0589fc5507a3aa /core/src/main/java/org/elasticsearch
parent4e4a104f4aaed2dc5166a9b2b1b61fc48945b823 (diff)
Test: Allow merging mock secure settings (#25387)
While real secure settings (ie an ES keystore) cannot be merged together, mocked secure settings can and need to be sometimes merged. This commit adds a merge method to allow tests to merge together multiple instances of secure settings.
Diffstat (limited to 'core/src/main/java/org/elasticsearch')
-rw-r--r--core/src/main/java/org/elasticsearch/common/settings/Settings.java4
-rw-r--r--core/src/main/java/org/elasticsearch/transport/TcpTransport.java4
2 files changed, 6 insertions, 2 deletions
diff --git a/core/src/main/java/org/elasticsearch/common/settings/Settings.java b/core/src/main/java/org/elasticsearch/common/settings/Settings.java
index e444dea6b7..182ea6ccb1 100644
--- a/core/src/main/java/org/elasticsearch/common/settings/Settings.java
+++ b/core/src/main/java/org/elasticsearch/common/settings/Settings.java
@@ -718,6 +718,10 @@ public final class Settings implements ToXContent {
if (secureSettings.isLoaded() == false) {
throw new IllegalStateException("Secure settings must already be loaded");
}
+ if (this.secureSettings.get() != null) {
+ throw new IllegalArgumentException("Secure settings already set. Existing settings: " +
+ this.secureSettings.get().getSettingNames() + ", new settings: " + secureSettings.getSettingNames());
+ }
this.secureSettings.set(secureSettings);
return this;
}
diff --git a/core/src/main/java/org/elasticsearch/transport/TcpTransport.java b/core/src/main/java/org/elasticsearch/transport/TcpTransport.java
index 5db64c98b8..9631fc977c 100644
--- a/core/src/main/java/org/elasticsearch/transport/TcpTransport.java
+++ b/core/src/main/java/org/elasticsearch/transport/TcpTransport.java
@@ -677,8 +677,8 @@ public abstract class TcpTransport<Channel> extends AbstractLifecycleComponent i
continue;
}
Settings mergedSettings = Settings.builder()
- .put(defaultSettings)
- .put(profileSettings)
+ .put(defaultSettings.getAsMap())
+ .put(profileSettings.getAsMap())
.build();
result.put(name, mergedSettings);
}