Class BlobLeaseClientBuilder

java.lang.Object
com.azure.storage.blob.specialized.BlobLeaseClientBuilder

public final class BlobLeaseClientBuilder extends Object
This class provides a fluent builder API to help aid the configuration and instantiation of Storage Lease clients. Lease clients are able to interact with both container and blob clients and act as a supplement client. A new instance of BlobLeaseClient and BlobLeaseAsyncClient are constructed every time buildClient and buildAsyncClient are called respectively.

When a client is instantiated and a leaseId hasn't been set a UUID will be used as the lease identifier.

Instantiating LeaseClients

 BlobLeaseClient blobLeaseClient = new BlobLeaseClientBuilder()
     .blobClient(blobClient)
     .leaseId(leaseId)
     .buildClient();
 
 BlobLeaseClient blobLeaseClient = new BlobLeaseClientBuilder()
     .containerClient(blobContainerClient)
     .leaseId(leaseId)
     .buildClient();
 

Instantiating LeaseAsyncClients

 BlobLeaseAsyncClient blobLeaseAsyncClient = new BlobLeaseClientBuilder()
     .blobAsyncClient(blobAsyncClient)
     .leaseId(leaseId)
     .buildAsyncClient();
 
 BlobLeaseAsyncClient blobLeaseAsyncClient = new BlobLeaseClientBuilder()
     .containerAsyncClient(blobContainerAsyncClient)
     .leaseId(leaseId)
     .buildAsyncClient();
 
See Also:
  • Constructor Details

    • BlobLeaseClientBuilder

      public BlobLeaseClientBuilder()
  • Method Details

    • buildClient

      public BlobLeaseClient buildClient()
      Creates a BlobLeaseClient based on the configurations set in the builder.
      Returns:
      a BlobLeaseClient based on the configurations in this builder.
    • buildAsyncClient

      public BlobLeaseAsyncClient buildAsyncClient()
      Creates a BlobLeaseAsyncClient based on the configurations set in the builder.
      Returns:
      a BlobLeaseAsyncClient based on the configurations in this builder.
    • blobClient

      public BlobLeaseClientBuilder blobClient(BlobClientBase blobClient)
      Configures the builder based on the passed BlobClient. This will set the HttpPipeline and URL that are used to interact with the service.
      Parameters:
      blobClient - BlobClient used to configure the builder.
      Returns:
      the updated BlobLeaseClientBuilder object
      Throws:
      NullPointerException - If blobClient is null.
    • blobAsyncClient

      public BlobLeaseClientBuilder blobAsyncClient(BlobAsyncClientBase blobAsyncClient)
      Configures the builder based on the passed BlobAsyncClient. This will set the HttpPipeline and URL that are used to interact with the service.
      Parameters:
      blobAsyncClient - BlobAsyncClient used to configure the builder.
      Returns:
      the updated BlobLeaseClientBuilder object
      Throws:
      NullPointerException - If blobAsyncClient is null.
    • containerClient

      public BlobLeaseClientBuilder containerClient(BlobContainerClient blobContainerClient)
      Configures the builder based on the passed BlobContainerClient. This will set the HttpPipeline and URL that are used to interact with the service.
      Parameters:
      blobContainerClient - ContainerClient used to configure the builder.
      Returns:
      the updated BlobLeaseClientBuilder object
      Throws:
      NullPointerException - If containerClient is null.
    • containerAsyncClient

      public BlobLeaseClientBuilder containerAsyncClient(BlobContainerAsyncClient blobContainerAsyncClient)
      Configures the builder based on the passed BlobContainerAsyncClient. This will set the HttpPipeline and URL that are used to interact with the service.
      Parameters:
      blobContainerAsyncClient - ContainerAsyncClient used to configure the builder.
      Returns:
      the updated BlobLeaseClientBuilder object
      Throws:
      NullPointerException - If containerAsyncClient is null.
    • leaseId

      public BlobLeaseClientBuilder leaseId(String leaseId)
      Sets the identifier for the lease.

      If a lease ID isn't set then a UUID will be used.

      Parameters:
      leaseId - Identifier for the lease.
      Returns:
      the updated BlobLeaseClientBuilder object