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 - A unique identifier for the document. To automatically generate a document ID, use the POST /<target>/_doc/ request format.

      API name: id

    • ifPrimaryTerm

      public final CreateRequest.Builder<TDocument> ifPrimaryTerm(@Nullable Long value)
      Only perform the operation if the document has this primary term.

      API name: if_primary_term

    • ifSeqNo

      public final CreateRequest.Builder<TDocument> ifSeqNo(@Nullable Long value)
      Only perform the operation if the document has this sequence number.

      API name: if_seq_no

    • includeSourceOnError

      public final CreateRequest.Builder<TDocument> includeSourceOnError(@Nullable Boolean value)
      True or false if to include the document source in the error message in case of parsing errors.

      API name: include_source_on_error

    • index

      public final CreateRequest.Builder<TDocument> index(String value)
      Required - The 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

    • opType

      public final CreateRequest.Builder<TDocument> opType(@Nullable OpType value)
      Set to create to only index the document if it does not already exist (put if absent). If a document with the specified _id already exists, the indexing operation will fail. The behavior is the same as using the <index>/_create endpoint. If a document ID is specified, this paramater defaults to index. Otherwise, it defaults to create. If the request targets a data stream, an op_type of create is required.

      API name: op_type

    • pipeline

      public final CreateRequest.Builder<TDocument> pipeline(@Nullable String value)
      The ID of the pipeline to use to preprocess incoming documents. If the index has a default ingest pipeline specified, setting the value to _none turns off 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, it waits for a refresh to make this operation visible to search. If false, it does nothing with refreshes.

      API name: refresh

    • requireAlias

      public final CreateRequest.Builder<TDocument> requireAlias(@Nullable Boolean value)
      If true, the destination must be an index alias.

      API name: require_alias

    • requireDataStream

      public final CreateRequest.Builder<TDocument> requireDataStream(@Nullable Boolean value)
      If true, the request's actions must target a data stream (existing or to be created).

      API name: require_data_stream

    • routing

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

      API name: routing

    • timeout

      public final CreateRequest.Builder<TDocument> timeout(@Nullable Time value)
      The period the request waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards. Elasticsearch waits for at least the specified timeout period before failing. The actual wait time could be longer, particularly when multiple waits occur.

      This parameter is useful for situations where the primary shard assigned to perform the operation might not be available when the operation runs. Some reasons for this might be that the primary shard is currently recovering from a gateway or undergoing relocation. By default, the operation will wait on the primary shard to become available for at least 1 minute before failing and responding with an error. The actual wait time could be longer, particularly when multiple waits occur.

      API name: timeout

    • timeout

      The period the request waits for the following operations: automatic index creation, dynamic mapping updates, waiting for active shards. Elasticsearch waits for at least the specified timeout period before failing. The actual wait time could be longer, particularly when multiple waits occur.

      This parameter is useful for situations where the primary shard assigned to perform the operation might not be available when the operation runs. Some reasons for this might be that the primary shard is currently recovering from a gateway or undergoing relocation. By default, the operation will wait on the primary shard to become available for at least 1 minute before failing and responding with an error. The actual wait time could be longer, particularly when multiple waits occur.

      API name: timeout

    • version

      public final CreateRequest.Builder<TDocument> version(@Nullable Long value)
      The explicit version number for concurrency control. It must be a non-negative long number.

      API name: version

    • versionType

      public final CreateRequest.Builder<TDocument> versionType(@Nullable VersionType value)
      The version type.

      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. You can set it to all or any positive integer up to the total number of shards in the index (number_of_replicas+1). The default value of 1 means it waits for each primary shard to be active.

      API name: wait_for_active_shards

    • waitForActiveShards

      The number of shard copies that must be active before proceeding with the operation. You can set it to all or any positive integer up to the total number of shards in the index (number_of_replicas+1). The default value of 1 means it waits for each primary shard to be active.

      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.