Class AzureRepositorySettings.Builder

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

public static class AzureRepositorySettings.Builder extends RepositorySettingsBase.AbstractBuilder<AzureRepositorySettings.Builder> implements ObjectBuilder<AzureRepositorySettings>
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • basePath

      public final AzureRepositorySettings.Builder basePath(@Nullable String value)
      The path to the repository data within the container. It defaults to the root directory.

      NOTE: Don't set base_path when configuring a snapshot repository for Elastic Cloud Enterprise. Elastic Cloud Enterprise automatically generates the base_path for each deployment so that multiple deployments can share the same bucket.

      API name: base_path

    • client

      public final AzureRepositorySettings.Builder client(@Nullable String value)
      The name of the Azure repository client to use.

      API name: client

    • container

      public final AzureRepositorySettings.Builder container(@Nullable String value)
      The Azure container.

      API name: container

    • deleteObjectsMaxSize

      public final AzureRepositorySettings.Builder deleteObjectsMaxSize(@Nullable Integer value)
      The maxmimum batch size, between 1 and 256, used for BlobBatch requests. Defaults to 256 which is the maximum number supported by the Azure blob batch API.

      API name: delete_objects_max_size

    • locationMode

      public final AzureRepositorySettings.Builder locationMode(@Nullable String value)
      Either primary_only or secondary_only. Note that if you set it to secondary_only, it will force readonly to true.

      API name: location_mode

    • maxConcurrentBatchDeletes

      public final AzureRepositorySettings.Builder maxConcurrentBatchDeletes(@Nullable Integer value)
      The maximum number of concurrent batch delete requests that will be submitted for any individual bulk delete with BlobBatch. Note that the effective number of concurrent deletes is further limited by the Azure client connection and event loop thread limits. Defaults to 10, minimum is 1, maximum is 100.

      API name: max_concurrent_batch_deletes

    • readonly

      public final AzureRepositorySettings.Builder readonly(@Nullable Boolean value)
      If true, the repository is read-only. The cluster can retrieve and restore snapshots from the repository but not write to the repository or create snapshots in it.

      Only a cluster with write access can create snapshots in the repository. All other clusters connected to the repository should have the readonly parameter set to true. If false, the cluster can write to the repository and create snapshots in it.

      IMPORTANT: If you register the same snapshot repository with multiple clusters, only one cluster should have write access to the repository. Having multiple clusters write to the repository at the same time risks corrupting the contents of the repository.

      API name: readonly

    • self

      Specified by:
      self in class RepositorySettingsBase.AbstractBuilder<AzureRepositorySettings.Builder>
    • build

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