public class ShareClientBuilder extends Object
ShareClients
and ShareAsyncClients
, calling buildClient
constructs an instance of ShareClient and calling buildAsyncClient
constructs an instance of ShareAsyncClient.
The client needs the endpoint of the Azure Storage File service, name of the share, and authorization credential.
endpoint
gives the builder the endpoint and may give the builder the
shareName
and a SAS token
that authorizes the
client.
Instantiating a synchronous Share Client with SAS token
ShareClient shareClient = new ShareClientBuilder() .endpoint("https://${accountName}.file.core.windows.net?${SASToken}") .shareName("myshare") .buildClient();
Instantiating an Asynchronous Share Client with SAS token
ShareAsyncClient shareAsyncClient = new ShareClientBuilder() .endpoint("https://{accountName}.file.core.windows.net?{SASToken}") .shareName("myshare") .buildAsyncClient();
If the endpoint
doesn't contain the query parameters to construct a SAS token it may be set using
sasToken
.
ShareClient shareClient = new ShareClientBuilder() .endpoint("https://${accountName}.file.core.windows.net") .sasToken("${SASTokenQueryParams}") .shareName("myshare") .buildClient();
ShareAsyncClient shareAsyncClient = new ShareClientBuilder() .endpoint("https://{accountName}.file.core.windows.net") .sasToken("${SASTokenQueryParams}") .shareName("myshare") .buildAsyncClient();
Another way to authenticate the client is using a StorageSharedKeyCredential
. To create a
StorageSharedKeyCredential a connection string from the Storage File service must be used. Set the
StorageSharedKeyCredential with connectionString
.
If the builder has both a SAS token and StorageSharedKeyCredential the StorageSharedKeyCredential will be
preferred when authorizing requests sent to the service.
Instantiating a synchronous Share Client with connection string.
String connectionString = "DefaultEndpointsProtocol=https;AccountName={name};AccountKey={key};" + "EndpointSuffix={core.windows.net}"; ShareClient shareClient = new ShareClientBuilder() .connectionString(connectionString).shareName("myshare") .buildClient();
Instantiating an Asynchronous Share Client with connection string.
String connectionString = "DefaultEndpointsProtocol=https;AccountName={name};AccountKey={key};" + "EndpointSuffix={core.windows.net}"; ShareAsyncClient shareAsyncClient = new ShareClientBuilder() .connectionString(connectionString).shareName("myshare") .buildAsyncClient();
ShareClient
,
ShareAsyncClient
,
StorageSharedKeyCredential
Constructor and Description |
---|
ShareClientBuilder()
Creates a builder instance that is able to configure and construct
ShareClients and ShareAsyncClients . |
Modifier and Type | Method and Description |
---|---|
ShareClientBuilder |
addPolicy(com.azure.core.http.policy.HttpPipelinePolicy pipelinePolicy)
Adds a pipeline policy to apply on each request sent.
|
ShareAsyncClient |
buildAsyncClient()
Creates a
ShareAsyncClient based on options set in the builder. |
ShareClient |
buildClient()
Creates a
ShareClient based on options set in the builder. |
ShareClientBuilder |
configuration(com.azure.core.util.Configuration configuration)
Sets the configuration object used to retrieve environment configuration values during building of the client.
|
ShareClientBuilder |
connectionString(String connectionString)
Sets the connection string to connect to the service.
|
ShareClientBuilder |
credential(StorageSharedKeyCredential credential)
Sets the
StorageSharedKeyCredential used to authorize requests sent to the service. |
ShareClientBuilder |
endpoint(String endpoint)
Sets the endpoint for the Azure Storage File instance that the client will interact with.
|
static com.azure.core.http.policy.HttpLogOptions |
getDefaultHttpLogOptions()
Gets the default log options with Storage headers and query parameters.
|
ShareClientBuilder |
httpClient(com.azure.core.http.HttpClient httpClient)
Sets the
HttpClient to use for sending a receiving requests to and from the service. |
ShareClientBuilder |
httpLogOptions(com.azure.core.http.policy.HttpLogOptions logOptions)
Sets the
HttpLogOptions for service requests. |
ShareClientBuilder |
pipeline(com.azure.core.http.HttpPipeline httpPipeline)
Sets the
HttpPipeline to use for the service client. |
ShareClientBuilder |
retryOptions(RequestRetryOptions retryOptions)
Sets the request retry options for all the requests made through the client.
|
ShareClientBuilder |
sasToken(String sasToken)
Sets the SAS token used to authorize requests sent to the service.
|
ShareClientBuilder |
serviceVersion(ShareServiceVersion version)
Sets the
ShareServiceVersion that is used when making API requests. |
ShareClientBuilder |
shareName(String shareName)
Sets the share that the constructed clients will interact with
|
ShareClientBuilder |
snapshot(String snapshot)
Sets the snapshot that the constructed clients will interact with.
|
public ShareClientBuilder()
ShareClients
and ShareAsyncClients
.public ShareAsyncClient buildAsyncClient()
ShareAsyncClient
based on options set in the builder. Every time buildAsyncClient()
is
called a new instance of ShareAsyncClient
is created.
If pipeline
is set, then the pipeline
and endpoint
are used to create the client
. All other
builder settings are ignored.
NullPointerException
- If shareName
is null
.IllegalArgumentException
- If neither a StorageSharedKeyCredential
or
SAS token
has been set.public ShareClient buildClient()
ShareClient
based on options set in the builder. Every time buildClient()
is called a
new instance of ShareClient
is created.
If pipeline
is set, then the pipeline
and endpoint
are used to create the client
. All other
builder settings are ignored.
NullPointerException
- If endpoint
or shareName
is null
.IllegalStateException
- If neither a StorageSharedKeyCredential
or SAS token
has been set.public ShareClientBuilder endpoint(String endpoint)
The first path segment, if the endpoint contains path segments, will be assumed to be the name of the share that the client will interact with.
Query parameters of the endpoint will be parsed in an attempt to generate a SAS token to authenticate requests sent to the service.
endpoint
- The URL of the Azure Storage File instance to send service requests to and receive responses
from.IllegalArgumentException
- If endpoint
is null
or is an invalid URLpublic ShareClientBuilder shareName(String shareName)
shareName
- Name of the shareNullPointerException
- If shareName
is null
.public ShareClientBuilder snapshot(String snapshot)
snapshot
- Identifier of the snapshotpublic ShareClientBuilder credential(StorageSharedKeyCredential credential)
StorageSharedKeyCredential
used to authorize requests sent to the service.credential
- StorageSharedKeyCredential
.NullPointerException
- If credential
is null
.public ShareClientBuilder sasToken(String sasToken)
sasToken
- The SAS token to use for authenticating requests.NullPointerException
- If sasToken
is null
.public ShareClientBuilder connectionString(String connectionString)
connectionString
- Connection string of the storage account.IllegalArgumentException
- If connectionString
in invalid.NullPointerException
- If connectionString
is null
.public ShareClientBuilder httpClient(com.azure.core.http.HttpClient httpClient)
HttpClient
to use for sending a receiving requests to and from the service.httpClient
- HttpClient to use for requests.public ShareClientBuilder addPolicy(com.azure.core.http.policy.HttpPipelinePolicy pipelinePolicy)
pipelinePolicy
- a pipeline policyNullPointerException
- If pipelinePolicy
is null
.public ShareClientBuilder httpLogOptions(com.azure.core.http.policy.HttpLogOptions logOptions)
HttpLogOptions
for service requests.logOptions
- The logging configuration to use when sending and receiving HTTP requests/responses.NullPointerException
- If logOptions
is null
.public static com.azure.core.http.policy.HttpLogOptions getDefaultHttpLogOptions()
public ShareClientBuilder configuration(com.azure.core.util.Configuration configuration)
configuration
- Configuration store used to retrieve environment configurations.public ShareClientBuilder retryOptions(RequestRetryOptions retryOptions)
retryOptions
- RequestRetryOptions
.NullPointerException
- If retryOptions
is null
.public ShareClientBuilder pipeline(com.azure.core.http.HttpPipeline httpPipeline)
HttpPipeline
to use for the service client.
If pipeline
is set, all other settings are ignored, aside from endpoint
.httpPipeline
- HttpPipeline to use for sending service requests and receiving responses.public ShareClientBuilder serviceVersion(ShareServiceVersion version)
ShareServiceVersion
that is used when making API requests.
If a service version is not provided, the service version that will be used will be the latest known service version based on the version of the client library being used. If no service version is specified, updating to a newer version of the client library will have the result of potentially moving to a newer service version.
Targeting a specific service version may also mean that the service will return an error for newer APIs.
version
- ShareServiceVersion
of the service to be used when making requests.Copyright © 2020 Microsoft Corporation. All rights reserved.