Class DataLakePathClientBuilder
- java.lang.Object
-
- com.azure.storage.file.datalake.DataLakePathClientBuilder
-
public final class DataLakePathClientBuilder extends Object
This class provides a fluent builder API to help aid the configuration and instantiation ofFileClients
,FileAsyncClients
,DirectoryClients
andDirectoryAsyncClients
, callbuildFileClient
,buildFileAsyncClient
,buildDirectoryClient
andbuildDirectoryAsyncClient
respectively to construct an instance of the desired client.The following information must be provided on this builder:
- the endpoint through
.endpoint()
, including the file system name and file/directory name, in the format ofhttps://{accountName}.dfs.core.windows.net/{fileSystemName}/{pathName}
. - the credential through
.credential()
or.connectionString()
if the file system is not publicly accessible.
- the endpoint through
-
-
Constructor Summary
Constructors Constructor Description DataLakePathClientBuilder()
Creates a builder instance that is able to configure and constructFileClients
,FileAsyncClients
,DirectoryClients
andDirectoryAsyncClients
.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description DataLakePathClientBuilder
addPolicy(com.azure.core.http.policy.HttpPipelinePolicy pipelinePolicy)
Adds a pipeline policy to apply on each request sent.DataLakeDirectoryAsyncClient
buildDirectoryAsyncClient()
Creates aDataLakeDirectoryAsyncClient
based on options set in the builder.DataLakeDirectoryClient
buildDirectoryClient()
Creates aDataLakeDirectoryClient
based on options set in the builder.DataLakeFileAsyncClient
buildFileAsyncClient()
Creates aDataLakeFileAsyncClient
based on options set in the builder.DataLakeFileClient
buildFileClient()
Creates aDataLakeFileClient
based on options set in the builder.DataLakePathClientBuilder
clientOptions(com.azure.core.util.ClientOptions clientOptions)
Sets the client options for all the requests made through the client.DataLakePathClientBuilder
configuration(com.azure.core.util.Configuration configuration)
Sets the configuration object used to retrieve environment configuration values during building of the client.DataLakePathClientBuilder
credential(com.azure.core.credential.AzureSasCredential credential)
Sets theAzureSasCredential
used to authorize requests sent to the service.DataLakePathClientBuilder
credential(com.azure.core.credential.TokenCredential credential)
Sets theTokenCredential
used to authorize requests sent to the service.DataLakePathClientBuilder
credential(com.azure.storage.common.StorageSharedKeyCredential credential)
Sets theStorageSharedKeyCredential
used to authorize requests sent to the service.DataLakePathClientBuilder
endpoint(String endpoint)
Sets the service endpoint, additionally parses it for information (SAS token, file system name, path name)DataLakePathClientBuilder
fileSystemName(String fileSystemName)
Sets the name of the file system that contains the path.static com.azure.core.http.policy.HttpLogOptions
getDefaultHttpLogOptions()
Gets the default Storage allowlist log headers and query parameters.DataLakePathClientBuilder
httpClient(com.azure.core.http.HttpClient httpClient)
Sets theHttpClient
to use for sending a receiving requests to and from the service.DataLakePathClientBuilder
httpLogOptions(com.azure.core.http.policy.HttpLogOptions logOptions)
Sets theHttpLogOptions
for service requests.DataLakePathClientBuilder
pathName(String pathName)
Sets the name of the file/directory.DataLakePathClientBuilder
pipeline(com.azure.core.http.HttpPipeline httpPipeline)
Sets theHttpPipeline
to use for the service client.DataLakePathClientBuilder
retryOptions(com.azure.storage.common.policy.RequestRetryOptions retryOptions)
Sets the request retry options for all the requests made through the client.DataLakePathClientBuilder
sasToken(String sasToken)
Sets the SAS token used to authorize requests sent to the service.DataLakePathClientBuilder
serviceVersion(DataLakeServiceVersion version)
Sets theDataLakeServiceVersion
that is used when making API requests.DataLakePathClientBuilder
setAnonymousAccess()
Clears the credential used to authorize the request.
-
-
-
Constructor Detail
-
DataLakePathClientBuilder
public DataLakePathClientBuilder()
Creates a builder instance that is able to configure and constructFileClients
,FileAsyncClients
,DirectoryClients
andDirectoryAsyncClients
.
-
-
Method Detail
-
buildFileClient
public DataLakeFileClient buildFileClient()
Creates aDataLakeFileClient
based on options set in the builder.Code Samples
DataLakeFileClient client = new DataLakePathClientBuilder() .endpoint(endpoint) .credential(storageSharedKeyCredential) .buildFileClient();
- Returns:
- a
DataLakeFileClient
created from the configurations in this builder. - Throws:
NullPointerException
- Ifendpoint
orpathName
isnull
.IllegalStateException
- If multiple credentials have been specified.
-
buildFileAsyncClient
public DataLakeFileAsyncClient buildFileAsyncClient()
Creates aDataLakeFileAsyncClient
based on options set in the builder.Code Samples
DataLakeFileAsyncClient client = new DataLakePathClientBuilder() .endpoint(endpoint) .credential(storageSharedKeyCredential) .buildFileAsyncClient();
- Returns:
- a
DataLakeFileAsyncClient
created from the configurations in this builder. - Throws:
NullPointerException
- Ifendpoint
orpathName
isnull
.IllegalStateException
- If multiple credentials have been specified.
-
buildDirectoryClient
public DataLakeDirectoryClient buildDirectoryClient()
Creates aDataLakeDirectoryClient
based on options set in the builder.Code Samples
DataLakeDirectoryClient client = new DataLakePathClientBuilder() .endpoint(endpoint) .credential(storageSharedKeyCredential) .buildDirectoryClient();
- Returns:
- a
DataLakeDirectoryClient
created from the configurations in this builder. - Throws:
NullPointerException
- Ifendpoint
orpathName
isnull
.
-
buildDirectoryAsyncClient
public DataLakeDirectoryAsyncClient buildDirectoryAsyncClient()
Creates aDataLakeDirectoryAsyncClient
based on options set in the builder.Code Samples
DataLakeDirectoryAsyncClient client = new DataLakePathClientBuilder() .endpoint(endpoint) .credential(storageSharedKeyCredential) .buildDirectoryAsyncClient();
- Returns:
- a
DataLakeDirectoryAsyncClient
created from the configurations in this builder. - Throws:
NullPointerException
- Ifendpoint
orpathName
isnull
.
-
credential
public DataLakePathClientBuilder credential(com.azure.storage.common.StorageSharedKeyCredential credential)
Sets theStorageSharedKeyCredential
used to authorize requests sent to the service.- Parameters:
credential
-StorageSharedKeyCredential
.- Returns:
- the updated DataLakePathClientBuilder
- Throws:
NullPointerException
- Ifcredential
isnull
.
-
credential
public DataLakePathClientBuilder credential(com.azure.core.credential.TokenCredential credential)
Sets theTokenCredential
used to authorize requests sent to the service.- Parameters:
credential
-TokenCredential
.- Returns:
- the updated DataLakePathClientBuilder
- Throws:
NullPointerException
- Ifcredential
isnull
.
-
sasToken
public DataLakePathClientBuilder sasToken(String sasToken)
Sets the SAS token used to authorize requests sent to the service.- Parameters:
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.- Returns:
- the updated DataLakePathClientBuilder
- Throws:
NullPointerException
- IfsasToken
isnull
.
-
credential
public DataLakePathClientBuilder credential(com.azure.core.credential.AzureSasCredential credential)
Sets theAzureSasCredential
used to authorize requests sent to the service.- Parameters:
credential
-AzureSasCredential
used to authorize requests sent to the service.- Returns:
- the updated DataLakePathClientBuilder
- Throws:
NullPointerException
- Ifcredential
isnull
.
-
setAnonymousAccess
public DataLakePathClientBuilder setAnonymousAccess()
Clears the credential used to authorize the request.This is for paths that are publicly accessible.
- Returns:
- the updated DataLakePathClientBuilder
-
endpoint
public DataLakePathClientBuilder endpoint(String endpoint)
Sets the service endpoint, additionally parses it for information (SAS token, file system name, path name)If the path name contains special characters, pass in the url encoded version of the path name.
If the endpoint is to a file/directory in the root container, this method will fail as it will interpret the path name as the file system name. With only one path element, it is impossible to distinguish between a file system name and a path in the root file system, so it is assumed to be the file system name as this is much more common. When working with paths in the root file system, it is best to set the endpoint to the account url and specify the path name separately using the
pathName
method.- Parameters:
endpoint
- URL of the service- Returns:
- the updated DataLakePathClientBuilder object
- Throws:
IllegalArgumentException
- Ifendpoint
isnull
or is a malformed URL.
-
fileSystemName
public DataLakePathClientBuilder fileSystemName(String fileSystemName)
Sets the name of the file system that contains the path.- Parameters:
fileSystemName
- Name of the file system. If the valuenull
or empty the root file system,$root
, will be used.- Returns:
- the updated DataLakePathClientBuilder object
-
pathName
public DataLakePathClientBuilder pathName(String pathName)
Sets the name of the file/directory.- Parameters:
pathName
- Name of the path. If the path name contains special characters, pass in the url encoded version of the path name.- Returns:
- the updated DataLakePathClientBuilder object
- Throws:
NullPointerException
- IfpathName
isnull
-
httpClient
public DataLakePathClientBuilder httpClient(com.azure.core.http.HttpClient httpClient)
Sets theHttpClient
to use for sending a receiving requests to and from the service.- Parameters:
httpClient
- HttpClient to use for requests.- Returns:
- the updated DataLakePathClientBuilder object
-
addPolicy
public DataLakePathClientBuilder addPolicy(com.azure.core.http.policy.HttpPipelinePolicy pipelinePolicy)
Adds a pipeline policy to apply on each request sent. The policy will be added after the retry policy. If the method is called multiple times, all policies will be added and their order preserved.- Parameters:
pipelinePolicy
- a pipeline policy- Returns:
- the updated DataLakePathClientBuilder object
- Throws:
NullPointerException
- IfpipelinePolicy
isnull
.
-
getDefaultHttpLogOptions
public static com.azure.core.http.policy.HttpLogOptions getDefaultHttpLogOptions()
Gets the default Storage allowlist log headers and query parameters.- Returns:
- the default http log options.
-
httpLogOptions
public DataLakePathClientBuilder httpLogOptions(com.azure.core.http.policy.HttpLogOptions logOptions)
Sets theHttpLogOptions
for service requests.- Parameters:
logOptions
- The logging configuration to use when sending and receiving HTTP requests/responses.- Returns:
- the updated DataLakePathClientBuilder object
- Throws:
NullPointerException
- IflogOptions
isnull
.
-
configuration
public DataLakePathClientBuilder configuration(com.azure.core.util.Configuration configuration)
Sets the configuration object used to retrieve environment configuration values during building of the client.- Parameters:
configuration
- Configuration store used to retrieve environment configurations.- Returns:
- the updated DataLakePathClientBuilder object
-
retryOptions
public DataLakePathClientBuilder retryOptions(com.azure.storage.common.policy.RequestRetryOptions retryOptions)
Sets the request retry options for all the requests made through the client.- Parameters:
retryOptions
-RequestRetryOptions
.- Returns:
- the updated DataLakePathClientBuilder object
- Throws:
NullPointerException
- IfretryOptions
isnull
.
-
clientOptions
public DataLakePathClientBuilder clientOptions(com.azure.core.util.ClientOptions clientOptions)
Sets the client options for all the requests made through the client.- Parameters:
clientOptions
-ClientOptions
.- Returns:
- the updated DataLakePathClientBuilder object
- Throws:
NullPointerException
- IfclientOptions
isnull
.
-
pipeline
public DataLakePathClientBuilder pipeline(com.azure.core.http.HttpPipeline httpPipeline)
Sets theHttpPipeline
to use for the service client. Ifpipeline
is set, all other settings are ignored, aside fromendpoint
.- Parameters:
httpPipeline
- HttpPipeline to use for sending service requests and receiving responses.- Returns:
- the updated DataLakePathClientBuilder object
-
serviceVersion
public DataLakePathClientBuilder serviceVersion(DataLakeServiceVersion version)
Sets theDataLakeServiceVersion
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.
- Parameters:
version
-DataLakeServiceVersion
of the service to be used when making requests.- Returns:
- the updated DataLakePathClientBuilder object
-
-