From 963f9291f9810962cf0e558773557e40c0ef0ec9 Mon Sep 17 00:00:00 2001 From: Oliver Lockwood Date: Tue, 28 May 2024 13:40:30 +0100 Subject: [PATCH] Apply code review feedback Signed-off-by: Oliver Lockwood --- .../rest/src/main/java/org/opensearch/client/Request.java | 8 +++++++- .../main/java/org/opensearch/client/RequestOptions.java | 6 ++++-- .../src/main/java/org/opensearch/client/RestClient.java | 1 - 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/client/rest/src/main/java/org/opensearch/client/Request.java b/client/rest/src/main/java/org/opensearch/client/Request.java index 441b01b0891ad..32fedee0c97bf 100644 --- a/client/rest/src/main/java/org/opensearch/client/Request.java +++ b/client/rest/src/main/java/org/opensearch/client/Request.java @@ -110,7 +110,13 @@ public void addParameters(Map paramSource) { * will change it. */ public Map getParameters() { - return unmodifiableMap(parameters); + if (options.getParameters().isEmpty()) { + return unmodifiableMap(parameters); + } else { + Map combinedParameters = new HashMap<>(parameters); + combinedParameters.putAll(options.getParameters()); + return unmodifiableMap(combinedParameters); + } } /** diff --git a/client/rest/src/main/java/org/opensearch/client/RequestOptions.java b/client/rest/src/main/java/org/opensearch/client/RequestOptions.java index 4ecc6547cd54c..bbc1f8bc85fcb 100644 --- a/client/rest/src/main/java/org/opensearch/client/RequestOptions.java +++ b/client/rest/src/main/java/org/opensearch/client/RequestOptions.java @@ -91,7 +91,8 @@ public List
getHeaders() { } /** - * Query parameters to attach to the request. + * Query parameters to attach to the request. Any parameters present here + * will override matching parameters in the {@link Request}, if they exist. */ public Map getParameters() { return parameters; @@ -250,7 +251,8 @@ public Builder addHeader(String name, String value) { } /** - * Add the provided query parameter to the request. + * Add the provided query parameter to the request. Any parameters added here + * will override matching parameters in the {@link Request}, if they exist. * * @param name the query parameter name * @param value the query parameter value diff --git a/client/rest/src/main/java/org/opensearch/client/RestClient.java b/client/rest/src/main/java/org/opensearch/client/RestClient.java index 10a5e05a4d2b5..15905add76c4f 100644 --- a/client/rest/src/main/java/org/opensearch/client/RestClient.java +++ b/client/rest/src/main/java/org/opensearch/client/RestClient.java @@ -832,7 +832,6 @@ private class InternalRequest { InternalRequest(Request request) { this.request = request; Map params = new HashMap<>(request.getParameters()); - params.putAll(request.getOptions().getParameters()); // ignore is a special parameter supported by the clients, shouldn't be sent to es String ignoreString = params.remove("ignore"); this.ignoreErrorCodes = getIgnoreErrorCodes(ignoreString, request.getMethod());