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,DirectoryClientsandDirectoryAsyncClients, callbuildFileClient,buildFileAsyncClient,buildDirectoryClientandbuildDirectoryAsyncClientrespectively 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,DirectoryClientsandDirectoryAsyncClients.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description DataLakePathClientBuilderaddPolicy(com.azure.core.http.policy.HttpPipelinePolicy pipelinePolicy)Adds a pipeline policy to apply on each request sent.DataLakeDirectoryAsyncClientbuildDirectoryAsyncClient()Creates aDataLakeDirectoryAsyncClientbased on options set in the builder.DataLakeDirectoryClientbuildDirectoryClient()Creates aDataLakeDirectoryClientbased on options set in the builder.DataLakeFileAsyncClientbuildFileAsyncClient()Creates aDataLakeFileAsyncClientbased on options set in the builder.DataLakeFileClientbuildFileClient()Creates aDataLakeFileClientbased on options set in the builder.DataLakePathClientBuilderclientOptions(com.azure.core.util.ClientOptions clientOptions)Sets the client options for all the requests made through the client.DataLakePathClientBuilderconfiguration(com.azure.core.util.Configuration configuration)Sets the configuration object used to retrieve environment configuration values during building of the client.DataLakePathClientBuildercredential(com.azure.core.credential.AzureSasCredential credential)Sets theAzureSasCredentialused to authorize requests sent to the service.DataLakePathClientBuildercredential(com.azure.core.credential.TokenCredential credential)Sets theTokenCredentialused to authorize requests sent to the service.DataLakePathClientBuildercredential(com.azure.storage.common.StorageSharedKeyCredential credential)Sets theStorageSharedKeyCredentialused to authorize requests sent to the service.DataLakePathClientBuilderendpoint(String endpoint)Sets the service endpoint, additionally parses it for information (SAS token, file system name, path name)DataLakePathClientBuilderfileSystemName(String fileSystemName)Sets the name of the file system that contains the path.static com.azure.core.http.policy.HttpLogOptionsgetDefaultHttpLogOptions()Gets the default Storage allowlist log headers and query parameters.DataLakePathClientBuilderhttpClient(com.azure.core.http.HttpClient httpClient)Sets theHttpClientto use for sending a receiving requests to and from the service.DataLakePathClientBuilderhttpLogOptions(com.azure.core.http.policy.HttpLogOptions logOptions)Sets theHttpLogOptionsfor service requests.DataLakePathClientBuilderpathName(String pathName)Sets the name of the file/directory.DataLakePathClientBuilderpipeline(com.azure.core.http.HttpPipeline httpPipeline)Sets theHttpPipelineto use for the service client.DataLakePathClientBuilderretryOptions(com.azure.storage.common.policy.RequestRetryOptions retryOptions)Sets the request retry options for all the requests made through the client.DataLakePathClientBuildersasToken(String sasToken)Sets the SAS token used to authorize requests sent to the service.DataLakePathClientBuilderserviceVersion(DataLakeServiceVersion version)Sets theDataLakeServiceVersionthat is used when making API requests.DataLakePathClientBuildersetAnonymousAccess()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,DirectoryClientsandDirectoryAsyncClients.
-
-
Method Detail
-
buildFileClient
public DataLakeFileClient buildFileClient()
Creates aDataLakeFileClientbased on options set in the builder.Code Samples
DataLakeFileClient client = new DataLakePathClientBuilder() .endpoint(endpoint) .credential(storageSharedKeyCredential) .buildFileClient();- Returns:
- a
DataLakeFileClientcreated from the configurations in this builder. - Throws:
NullPointerException- IfendpointorpathNameisnull.IllegalStateException- If multiple credentials have been specified.
-
buildFileAsyncClient
public DataLakeFileAsyncClient buildFileAsyncClient()
Creates aDataLakeFileAsyncClientbased on options set in the builder.Code Samples
DataLakeFileAsyncClient client = new DataLakePathClientBuilder() .endpoint(endpoint) .credential(storageSharedKeyCredential) .buildFileAsyncClient();- Returns:
- a
DataLakeFileAsyncClientcreated from the configurations in this builder. - Throws:
NullPointerException- IfendpointorpathNameisnull.IllegalStateException- If multiple credentials have been specified.
-
buildDirectoryClient
public DataLakeDirectoryClient buildDirectoryClient()
Creates aDataLakeDirectoryClientbased on options set in the builder.Code Samples
DataLakeDirectoryClient client = new DataLakePathClientBuilder() .endpoint(endpoint) .credential(storageSharedKeyCredential) .buildDirectoryClient();- Returns:
- a
DataLakeDirectoryClientcreated from the configurations in this builder. - Throws:
NullPointerException- IfendpointorpathNameisnull.
-
buildDirectoryAsyncClient
public DataLakeDirectoryAsyncClient buildDirectoryAsyncClient()
Creates aDataLakeDirectoryAsyncClientbased on options set in the builder.Code Samples
DataLakeDirectoryAsyncClient client = new DataLakePathClientBuilder() .endpoint(endpoint) .credential(storageSharedKeyCredential) .buildDirectoryAsyncClient();- Returns:
- a
DataLakeDirectoryAsyncClientcreated from the configurations in this builder. - Throws:
NullPointerException- IfendpointorpathNameisnull.
-
credential
public DataLakePathClientBuilder credential(com.azure.storage.common.StorageSharedKeyCredential credential)
Sets theStorageSharedKeyCredentialused to authorize requests sent to the service.- Parameters:
credential-StorageSharedKeyCredential.- Returns:
- the updated DataLakePathClientBuilder
- Throws:
NullPointerException- Ifcredentialisnull.
-
credential
public DataLakePathClientBuilder credential(com.azure.core.credential.TokenCredential credential)
Sets theTokenCredentialused to authorize requests sent to the service.- Parameters:
credential-TokenCredential.- Returns:
- the updated DataLakePathClientBuilder
- Throws:
NullPointerException- Ifcredentialisnull.
-
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- IfsasTokenisnull.
-
credential
public DataLakePathClientBuilder credential(com.azure.core.credential.AzureSasCredential credential)
Sets theAzureSasCredentialused to authorize requests sent to the service.- Parameters:
credential-AzureSasCredentialused to authorize requests sent to the service.- Returns:
- the updated DataLakePathClientBuilder
- Throws:
NullPointerException- Ifcredentialisnull.
-
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
pathNamemethod.- Parameters:
endpoint- URL of the service- Returns:
- the updated DataLakePathClientBuilder object
- Throws:
IllegalArgumentException- Ifendpointisnullor 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 valuenullor 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- IfpathNameisnull
-
httpClient
public DataLakePathClientBuilder httpClient(com.azure.core.http.HttpClient httpClient)
Sets theHttpClientto 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- IfpipelinePolicyisnull.
-
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 theHttpLogOptionsfor service requests.- Parameters:
logOptions- The logging configuration to use when sending and receiving HTTP requests/responses.- Returns:
- the updated DataLakePathClientBuilder object
- Throws:
NullPointerException- IflogOptionsisnull.
-
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- IfretryOptionsisnull.
-
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- IfclientOptionsisnull.
-
pipeline
public DataLakePathClientBuilder pipeline(com.azure.core.http.HttpPipeline httpPipeline)
Sets theHttpPipelineto use for the service client. Ifpipelineis 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 theDataLakeServiceVersionthat 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-DataLakeServiceVersionof the service to be used when making requests.- Returns:
- the updated DataLakePathClientBuilder object
-
-