Michael Blow has submitted this change and it was merged. Change subject: [NO ISSUE][*DB] Remove statement as request body ......................................................................
[NO ISSUE][*DB] Remove statement as request body Remove the undocumented ability to treat request body as statement, if a statement parameter is not otherwise supplied Change-Id: I566a0c2deaf29e6da0d4dabf9d9de3bfd60da8d6 Reviewed-on: https://asterix-gerrit.ics.uci.edu/3267 Sonar-Qube: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Tested-by: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Contrib: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Integration-Tests: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Reviewed-by: Murtadha Hubail <mhub...@apache.org> --- M asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java M asterixdb/asterix-app/src/test/java/org/apache/asterix/test/common/TestExecutor.java 2 files changed, 6 insertions(+), 16 deletions(-) Approvals: Jenkins: Verified; No violations found; ; Verified Murtadha Hubail: Looks good to me, approved diff --git a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java index b4513ec..6e93c9e 100644 --- a/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java +++ b/asterixdb/asterix-app/src/main/java/org/apache/asterix/api/http/server/QueryServiceServlet.java @@ -459,9 +459,6 @@ private void setParamFromRequest(IServletRequest request, QueryServiceRequestParameters param, Map<String, String> optionalParameters) throws IOException { param.setStatement(getParameter(request, Parameter.STATEMENT)); - if (param.getStatement() == null) { - param.setStatement(HttpUtil.getRequestBody(request)); - } param.setFormat(toLower(getParameter(request, Parameter.FORMAT))); param.setPretty(Boolean.parseBoolean(getParameter(request, Parameter.PRETTY))); param.setMode(toLower(getParameter(request, Parameter.MODE))); diff --git a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/common/TestExecutor.java b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/common/TestExecutor.java index f5921fe..d2bbc04 100644 --- a/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/common/TestExecutor.java +++ b/asterixdb/asterix-app/src/test/java/org/apache/asterix/test/common/TestExecutor.java @@ -43,13 +43,13 @@ import java.util.ArrayDeque; import java.util.ArrayList; import java.util.Arrays; -import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.ListIterator; import java.util.Map; +import java.util.Objects; import java.util.Optional; import java.util.Queue; import java.util.Set; @@ -749,25 +749,18 @@ protected HttpUriRequest constructPostMethodUrl(String statement, URI uri, String stmtParam, List<Parameter> otherParams) { + Objects.requireNonNull(stmtParam, "statement parameter required"); RequestBuilder builder = RequestBuilder.post(uri); - if (stmtParam != null) { - for (Parameter param : upsertParam(otherParams, stmtParam, ParameterTypeEnum.STRING, statement)) { - builder.addParameter(param.getName(), param.getValue()); - } - builder.setCharset(statement.length() > MAX_NON_UTF_8_STATEMENT_SIZE ? UTF_8 : nextCharset()); - } else { - // this seems pretty bad - we should probably fix the API and not the client - builder.setEntity(new StringEntity(statement, - statement.length() > MAX_NON_UTF_8_STATEMENT_SIZE ? UTF_8 : nextCharset())); + for (Parameter param : upsertParam(otherParams, stmtParam, ParameterTypeEnum.STRING, statement)) { + builder.addParameter(param.getName(), param.getValue()); } + builder.setCharset(statement.length() > MAX_NON_UTF_8_STATEMENT_SIZE ? UTF_8 : nextCharset()); return builder.build(); } protected HttpUriRequest constructPostMethodJson(String statement, URI uri, String stmtParam, List<Parameter> otherParams) { - if (stmtParam == null) { - throw new NullPointerException("Statement parameter required."); - } + Objects.requireNonNull(stmtParam, "statement parameter required"); RequestBuilder builder = RequestBuilder.post(uri); ObjectMapper om = new ObjectMapper(); ObjectNode content = om.createObjectNode(); -- To view, visit https://asterix-gerrit.ics.uci.edu/3267 To unsubscribe, visit https://asterix-gerrit.ics.uci.edu/settings Gerrit-MessageType: merged Gerrit-Change-Id: I566a0c2deaf29e6da0d4dabf9d9de3bfd60da8d6 Gerrit-PatchSet: 6 Gerrit-Project: asterixdb Gerrit-Branch: master Gerrit-Owner: Michael Blow <mb...@apache.org> Gerrit-Reviewer: Jenkins <jenk...@fulliautomatix.ics.uci.edu> Gerrit-Reviewer: Michael Blow <mb...@apache.org> Gerrit-Reviewer: Murtadha Hubail <mhub...@apache.org>