Class ShareLeaseClientBuilder

java.lang.Object
com.azure.storage.file.share.specialized.ShareLeaseClientBuilder

public final class ShareLeaseClientBuilder 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 share and share file clients and act as a supplement client. A new instance of ShareLeaseClient and ShareLeaseAsyncClient 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

 ShareLeaseClient fileLeaseClient = new ShareLeaseClientBuilder()
     .fileClient(shareFileClient)
     .leaseId(leaseId)
     .buildClient();
 
 ShareLeaseClient fileLeaseClient = new ShareLeaseClientBuilder()
     .shareClient(shareClient)
     .leaseId(leaseId)
     .buildClient();
 

Instantiating LeaseAsyncClients

 ShareLeaseAsyncClient fileLeaseAsyncClient = new ShareLeaseClientBuilder()
     .fileAsyncClient(shareFileAsyncClient)
     .leaseId(leaseId)
     .buildAsyncClient();
 
 ShareLeaseAsyncClient fileLeaseAsyncClient = new ShareLeaseClientBuilder()
     .shareAsyncClient(shareAsyncClient)
     .leaseId(leaseId)
     .buildAsyncClient();
 
See Also:
  • Constructor Details

    • ShareLeaseClientBuilder

      public ShareLeaseClientBuilder()
  • Method Details

    • buildClient

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

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

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

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

      public ShareLeaseClientBuilder shareClient(ShareClient shareClient)
      Configures the builder based on the passed ShareClient. This will set the HttpPipeline and URL that are used to interact with the service.
      Parameters:
      shareClient - ShareClient used to configure the builder.
      Returns:
      the updated ShareLeaseClientBuilder object
      Throws:
      NullPointerException - If fileClient is null.
    • shareAsyncClient

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

      public ShareLeaseClientBuilder 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 ShareLeaseClientBuilder object