Class CreateRequest.Builder<TDocument>

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

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

    • Builder

      public Builder()
  • Method Details

    • id

      public final CreateRequest.Builder<TDocument> id(String value)
      Required - Unique identifier for the document.

      API name: id

    • index

      public final CreateRequest.Builder<TDocument> index(String value)
      Required - Name of the data stream or index to target. If the target doesn’t exist and matches the name or wildcard (*) pattern of an index template with a data_stream definition, this request creates the data stream. If the target doesn’t exist and doesn’t match a data stream template, this request creates the index.

      API name: index

    • pipeline

      public final CreateRequest.Builder<TDocument> pipeline(@Nullable String value)
      ID of the pipeline to use to preprocess incoming documents. If the index has a default ingest pipeline specified, then setting the value to _none disables the default ingest pipeline for this request. If a final pipeline is configured it will always run, regardless of the value of this parameter.

      API name: pipeline

    • refresh

      public final CreateRequest.Builder<TDocument> refresh(@Nullable Refresh value)
      If true, Elasticsearch refreshes the affected shards to make this operation visible to search, if wait_for then wait for a refresh to make this operation visible to search, if false do nothing with refreshes. Valid values: true, false, wait_for.

      API name: refresh

    • routing

      public final CreateRequest.Builder<TDocument> routing(@Nullable String value)
      Custom value used to route operations to a specific shard.

      API name: routing

    • timeout

      public final CreateRequest.Builder<TDocument> timeout(@Nullable Time value)
      Period the request waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards.

      API name: timeout

    • timeout

      Period the request waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards.

      API name: timeout

    • version

      public final CreateRequest.Builder<TDocument> version(@Nullable Long value)
      Explicit version number for concurrency control. The specified version must match the current version of the document for the request to succeed.

      API name: version

    • versionType

      public final CreateRequest.Builder<TDocument> versionType(@Nullable VersionType value)
      Specific version type: external, external_gte.

      API name: version_type

    • waitForActiveShards

      public final CreateRequest.Builder<TDocument> waitForActiveShards(@Nullable WaitForActiveShards value)
      The number of shard copies that must be active before proceeding with the operation. Set to all or any positive integer up to the total number of shards in the index (number_of_replicas+1).

      API name: wait_for_active_shards

    • waitForActiveShards

      The number of shard copies that must be active before proceeding with the operation. Set to all or any positive integer up to the total number of shards in the index (number_of_replicas+1).

      API name: wait_for_active_shards

    • document

      public final CreateRequest.Builder<TDocument> document(TDocument value)
      Required - Request body.
    • tDocumentSerializer

      public final CreateRequest.Builder<TDocument> tDocumentSerializer(@Nullable JsonpSerializer<TDocument> value)
      Serializer for TDocument. If not set, an attempt will be made to find a serializer from the JSON context.
    • withJson

      public CreateRequest.Builder<TDocument> withJson(jakarta.json.stream.JsonParser parser, JsonpMapper mapper)
      Description copied from interface: WithJson
      Sets additional properties values on this object by reading from a JSON input.

      This is a "partial deserialization": properties that were already set keep their value if they're not present in the JSON input, and properties can also be set after having called this method, including overriding those read from the JSON input.

      This low level variant of withJson gives full control on the json parser and object mapper. Most of the time using WithJson.withJson(Reader) and WithJson.withJson(InputStream) will be more convenient.

      Specified by:
      withJson in interface WithJson<TDocument>
      Overrides:
      withJson in class WithJsonObjectBuilderBase<CreateRequest.Builder<TDocument>>
      Parameters:
      parser - the JSONP parser
      mapper - the JSONP mapper used to deserialize values and nested objects
      Returns:
      this object
    • self

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

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