Class QueryRequest.Builder

All Implemented Interfaces:
WithJson<QueryRequest.Builder>, ObjectBuilder<QueryRequest>
Enclosing class:
QueryRequest

public static class QueryRequest.Builder extends RequestBase.AbstractBuilder<QueryRequest.Builder> implements ObjectBuilder<QueryRequest>
Builder for QueryRequest.
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • columnar

      public final QueryRequest.Builder columnar(@Nullable Boolean value)
      By default, ES|QL returns results as rows. For example, FROM returns each individual document as one row. For the JSON, YAML, CBOR and smile formats, ES|QL can return the results in a columnar fashion where one row represents all the values of a certain column in the results.

      API name: columnar

    • delimiter

      public final QueryRequest.Builder delimiter(@Nullable String value)
      The character to use between values within a CSV row. Only valid for the CSV format.

      API name: delimiter

    • dropNullColumns

      public final QueryRequest.Builder dropNullColumns(@Nullable Boolean value)
      Should columns that are entirely null be removed from the columns and values portion of the results? Defaults to false. If true then the response will include an extra section under the name all_columns which has the name of all columns.

      API name: drop_null_columns

    • filter

      public final QueryRequest.Builder filter(@Nullable Query value)
      Specify a Query DSL query in the filter parameter to filter the set of documents that an ES|QL query runs on.

      API name: filter

    • filter

      Specify a Query DSL query in the filter parameter to filter the set of documents that an ES|QL query runs on.

      API name: filter

    • format

      public final QueryRequest.Builder format(@Nullable EsqlFormat value)
      A short version of the Accept header, e.g. json, yaml.

      API name: format

    • locale

      public final QueryRequest.Builder locale(@Nullable String value)
      API name: locale
    • params

      public final QueryRequest.Builder params(List<FieldValue> list)
      To avoid any attempts of hacking or code injection, extract the values in a separate list of parameters. Use question mark placeholders (?) in the query string for each of the parameters.

      API name: params

      Adds all elements of list to params.

    • params

      public final QueryRequest.Builder params(FieldValue value, FieldValue... values)
      To avoid any attempts of hacking or code injection, extract the values in a separate list of parameters. Use question mark placeholders (?) in the query string for each of the parameters.

      API name: params

      Adds one or more values to params.

    • params

      public final QueryRequest.Builder params(String value, String... values)
      To avoid any attempts of hacking or code injection, extract the values in a separate list of parameters. Use question mark placeholders (?) in the query string for each of the parameters.

      API name: params

      Adds all passed values to params.

    • params

      public final QueryRequest.Builder params(long value, long... values)
      To avoid any attempts of hacking or code injection, extract the values in a separate list of parameters. Use question mark placeholders (?) in the query string for each of the parameters.

      API name: params

      Adds all passed values to params.

    • params

      public final QueryRequest.Builder params(double value, double... values)
      To avoid any attempts of hacking or code injection, extract the values in a separate list of parameters. Use question mark placeholders (?) in the query string for each of the parameters.

      API name: params

      Adds all passed values to params.

    • params

      public final QueryRequest.Builder params(boolean value, boolean... values)
      To avoid any attempts of hacking or code injection, extract the values in a separate list of parameters. Use question mark placeholders (?) in the query string for each of the parameters.

      API name: params

      Adds all passed values to params.

    • params

      To avoid any attempts of hacking or code injection, extract the values in a separate list of parameters. Use question mark placeholders (?) in the query string for each of the parameters.

      API name: params

      Adds a value to params using a builder lambda.

    • profile

      public final QueryRequest.Builder profile(@Nullable Boolean value)
      If provided and true the response will include an extra profile object with information on how the query was executed. This information is for human debugging and its format can change at any time but it can give some insight into the performance of each part of the query.

      API name: profile

    • query

      public final QueryRequest.Builder query(String value)
      Required - The ES|QL query API accepts an ES|QL query string in the query parameter, runs it, and returns the results.

      API name: query

    • tables

      public final QueryRequest.Builder tables(Map<String,Map<String,TableValues>> map)
      Tables to use with the LOOKUP operation. The top level key is the table name and the next level key is the column name.

      API name: tables

      Adds all entries of map to tables.

    • tables

      public final QueryRequest.Builder tables(String key, Map<String,TableValues> value)
      Tables to use with the LOOKUP operation. The top level key is the table name and the next level key is the column name.

      API name: tables

      Adds an entry to tables.

    • self

      protected QueryRequest.Builder self()
      Specified by:
      self in class RequestBase.AbstractBuilder<QueryRequest.Builder>
    • build

      public QueryRequest build()
      Builds a QueryRequest.
      Specified by:
      build in interface ObjectBuilder<QueryRequest>
      Throws:
      NullPointerException - if some of the required fields are null.