Class 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:
    BlobLeaseClient, BlobLeaseAsyncClient
    • Constructor Detail

      • BlobLeaseClientBuilder

        public BlobLeaseClientBuilder()
    • Method Detail

      • 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