diff options
author | Ryan Ernst <ryan@iernst.net> | 2017-06-25 10:19:51 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-06-25 10:19:51 -0700 |
commit | 1583f8104725eca4779a0a0fd9886839c4c615a3 (patch) | |
tree | 18c605e977ffa5e45b46d1e03e0589fc5507a3aa /core/src/main | |
parent | 4e4a104f4aaed2dc5166a9b2b1b61fc48945b823 (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')
-rw-r--r-- | core/src/main/java/org/elasticsearch/common/settings/Settings.java | 4 | ||||
-rw-r--r-- | core/src/main/java/org/elasticsearch/transport/TcpTransport.java | 4 |
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); } |