public class ShareFileClientBuilder extends Object
FileClients
, FileAsyncClients
,
DirectoryClients
, and
DirectoryAsyncClients
. Calling
buildFileClient
,
buildFileAsyncClient
,
buildDirectoryClient
, or
buildDirectoryAsyncClient
constructs
an instance of ShareFileClient
, ShareFileAsyncClient
, ShareDirectoryClient
, or
ShareDirectoryAsyncClient
respectively.
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
ShareFileClientBuilder.shareName(String)
, ShareFileClientBuilder.resourcePath(String)
and a
SAS token
that authorizes the client.
Instantiating a synchronous File Client with SAS token
ShareFileClient
fileClient = newShareFileClientBuilder
() .endpoint("https://${accountName}.file.core.windows.net?${SASToken}") .shareName("myshare") .resourcePath("myfilepath") .buildFileClient();
Instantiating an Asynchronous File Client with SAS token
ShareDirectoryClient
shareDirectoryClient = newShareFileClientBuilder
() .endpoint("https://${accountName}.file.core.windows.net?${SASToken}") .shareName("myshare") .resourcePath("mydirectory") .buildDirectoryClient();
If the endpoint
doesn't contain the query parameters to construct a SAS token it may be set using
sasToken
.
ShareFileClient
fileClient = newShareFileClientBuilder
() .endpoint("https://${accountName}.file.core.windows.net") .sasToken("${SASTokenQueryParams}") .shareName("myshare") .resourcePath("myfilepath") .buildFileClient();
ShareFileAsyncClient
shareFileAsyncClient = newShareFileClientBuilder
() .endpoint("https://{accountName}.file.core.windows.net") .sasToken("${SASTokenQueryParams}") .shareName("myshare") .resourcePath("myfilepath") .buildFileAsyncClient();
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 File Client with connection string.
String
connectionString = "DefaultEndpointsProtocol=https;AccountName={name};AccountKey={key}" + ";EndpointSuffix={core.windows.net}";ShareDirectoryClient
shareDirectoryClient = newShareFileClientBuilder
() .connectionString(connectionString) .shareName("myshare") .resourcePath("mydirectory") .buildDirectoryClient();
Instantiating an Asynchronous File Client with connection string.
String
connectionString = "DefaultEndpointsProtocol=https;AccountName={name};AccountKey={key};" + "EndpointSuffix={core.windows.net}";ShareDirectoryAsyncClient
shareDirectoryAsyncClient = newShareFileClientBuilder
() .connectionString(connectionString).shareName("myshare").resourcePath("mydirectory") .buildDirectoryAsyncClient();
Constructor and Description |
---|
ShareFileClientBuilder()
Creates a builder instance that is able to configure and construct
FileClients and FileAsyncClients . |
Modifier and Type | Method and Description |
---|---|
ShareFileClientBuilder |
addPolicy(com.azure.core.http.policy.HttpPipelinePolicy pipelinePolicy)
Adds a pipeline policy to apply on each request sent.
|
ShareDirectoryAsyncClient |
buildDirectoryAsyncClient()
Creates a
ShareDirectoryAsyncClient based on options set in the builder. |
ShareDirectoryClient |
buildDirectoryClient()
Creates a
ShareDirectoryClient based on options set in the builder. |
ShareFileAsyncClient |
buildFileAsyncClient()
Creates a
ShareFileAsyncClient based on options set in the builder. |
ShareFileClient |
buildFileClient()
Creates a
ShareFileClient based on options set in the builder. |
ShareFileClientBuilder |
configuration(com.azure.core.util.Configuration configuration)
Sets the configuration object used to retrieve environment configuration values during building of the client.
|
ShareFileClientBuilder |
connectionString(String connectionString)
Sets the connection string to connect to the service.
|
ShareFileClientBuilder |
credential(StorageSharedKeyCredential credential)
Sets the
StorageSharedKeyCredential used to authorize requests sent to the service. |
ShareFileClientBuilder |
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.
|
ShareFileClientBuilder |
httpClient(com.azure.core.http.HttpClient httpClient)
Sets the
HttpClient to use for sending a receiving requests to and from the service. |
ShareFileClientBuilder |
httpLogOptions(com.azure.core.http.policy.HttpLogOptions logOptions)
Sets the
HttpLogOptions for service requests. |
ShareFileClientBuilder |
pipeline(com.azure.core.http.HttpPipeline httpPipeline)
Sets the
HttpPipeline to use for the service client. |
ShareFileClientBuilder |
resourcePath(String resourcePath)
Sets the file that the constructed clients will interact with
|
ShareFileClientBuilder |
retryOptions(RequestRetryOptions retryOptions)
Sets the request retry options for all the requests made through the client.
|
ShareFileClientBuilder |
sasToken(String sasToken)
Sets the SAS token used to authorize requests sent to the service.
|
ShareFileClientBuilder |
serviceVersion(ShareServiceVersion version)
Sets the
ShareServiceVersion that is used when making API requests. |
ShareFileClientBuilder |
shareName(String shareName)
Sets the share that the constructed clients will interact with
|
ShareFileClientBuilder |
snapshot(String snapshot)
Sets the shareSnapshot that the constructed clients will interact with.
|
public ShareFileClientBuilder()
FileClients
and FileAsyncClients
.public ShareDirectoryAsyncClient buildDirectoryAsyncClient()
ShareDirectoryAsyncClient
based on options set in the builder. Every time
buildFileAsyncClient()
is called a new instance of ShareDirectoryAsyncClient
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
or shareName
is null
.IllegalArgumentException
- If neither a StorageSharedKeyCredential
or SAS token
has been set.public ShareDirectoryClient buildDirectoryClient()
ShareDirectoryClient
based on options set in the builder. Every time
buildDirectoryClient()
is called a new instance of ShareDirectoryClient
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
, shareName
or directoryPath
is null
.IllegalArgumentException
- If neither a StorageSharedKeyCredential
or SAS token
has been set.public ShareFileAsyncClient buildFileAsyncClient()
ShareFileAsyncClient
based on options set in the builder. Every time
buildFileAsyncClient()
is called a new instance of ShareFileAsyncClient
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
or the (@code resourcePath) is null
.IllegalArgumentException
- If neither a StorageSharedKeyCredential
or SAS token
has been set.public ShareFileClient buildFileClient()
ShareFileClient
based on options set in the builder. Every time buildFileClient()
is
called a new instance of ShareFileClient
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
, shareName
or resourcePath
is null
.IllegalStateException
- If neither a StorageSharedKeyCredential
or SAS token
has been set.public ShareFileClientBuilder 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. Rest of the path segments should be the path of the file. It mush end up with the file name if more segments exist.
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 ShareFileClientBuilder shareName(String shareName)
shareName
- Name of the shareNullPointerException
- If shareName
is null
.public ShareFileClientBuilder snapshot(String snapshot)
snapshot
- Identifier of the shareSnapshotNullPointerException
- If shareSnapshot
is null
.public ShareFileClientBuilder resourcePath(String resourcePath)
resourcePath
- Path of the file (or directory).NullPointerException
- If resourcePath
is null
.public ShareFileClientBuilder credential(StorageSharedKeyCredential credential)
StorageSharedKeyCredential
used to authorize requests sent to the service.credential
- StorageSharedKeyCredential
.NullPointerException
- If credential
is null
.public ShareFileClientBuilder sasToken(String sasToken)
sasToken
- The SAS token to use for authenticating requests.NullPointerException
- If sasToken
is null
.public ShareFileClientBuilder connectionString(String connectionString)
connectionString
- Connection string of the storage account.IllegalArgumentException
- If connectionString
in invalid.public ShareFileClientBuilder 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 ShareFileClientBuilder addPolicy(com.azure.core.http.policy.HttpPipelinePolicy pipelinePolicy)
pipelinePolicy
- a pipeline policyNullPointerException
- If pipelinePolicy
is null
.public ShareFileClientBuilder 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 ShareFileClientBuilder configuration(com.azure.core.util.Configuration configuration)
configuration
- Configuration store used to retrieve environment configurations.public ShareFileClientBuilder retryOptions(RequestRetryOptions retryOptions)
retryOptions
- RequestRetryOptions
.NullPointerException
- If retryOptions
is null
.public ShareFileClientBuilder 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 ShareFileClientBuilder 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.