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 = new ShareFileClientBuilder()
.endpoint("https://${accountName}.file.core.windows.net?${SASToken}")
.shareName("myshare")
.resourcePath("myfilepath")
.buildFileClient();
Instantiating an Asynchronous File Client with SAS token
ShareDirectoryClient shareDirectoryClient = new ShareFileClientBuilder()
.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 = new ShareFileClientBuilder()
.endpoint("https://${accountName}.file.core.windows.net")
.sasToken("${SASTokenQueryParams}")
.shareName("myshare")
.resourcePath("myfilepath")
.buildFileClient();
ShareFileAsyncClient shareFileAsyncClient = new ShareFileClientBuilder()
.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 = new ShareFileClientBuilder()
.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 = new ShareFileClientBuilder()
.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 |
clientOptions(com.azure.core.util.ClientOptions clientOptions)
Sets the client options for all the requests made through the client.
|
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(com.azure.core.credential.AzureSasCredential credential)
Sets the
AzureSasCredential used to authorize requests sent 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.IllegalStateException - If multiple credentials have been specified.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.IllegalStateException - If multiple credentials have been specified.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.IllegalStateException - If multiple credentials have been specified.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.IllegalStateException - If multiple credentials have been specified.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. This string should only be the query parameters
(with or without a leading '?') and not a full url.NullPointerException - If sasToken is null.public ShareFileClientBuilder credential(com.azure.core.credential.AzureSasCredential credential)
AzureSasCredential used to authorize requests sent to the service.credential - AzureSasCredential used to authorize requests sent to the service.NullPointerException - If credential 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 clientOptions(com.azure.core.util.ClientOptions clientOptions)
clientOptions - ClientOptions.NullPointerException - If clientOptions is null.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.Visit the Azure for Java Developers site for more Java documentation, including quick starts, tutorials, and code samples.