Class DataLakePathClient
- java.lang.Object
-
- com.azure.storage.file.datalake.DataLakePathClient
-
- Direct Known Subclasses:
DataLakeDirectoryClient
,DataLakeFileClient
public class DataLakePathClient extends Object
This class provides a client that contains all operations that apply to any path object.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PathInfo
create()
Creates a resource.PathInfo
create(boolean overwrite)
Creates a resource.com.azure.core.http.rest.Response<PathInfo>
createWithResponse(String permissions, String umask, PathHttpHeaders headers, Map<String,String> metadata, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Creates a resource.Boolean
exists()
Gets if the path this client represents exists in the cloud.com.azure.core.http.rest.Response<Boolean>
existsWithResponse(Duration timeout, com.azure.core.util.Context context)
Gets if the path this client represents exists in the cloud.String
generateSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues)
Generates a service SAS for the path using the specifiedDataLakeServiceSasSignatureValues
String
generateSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, com.azure.core.util.Context context)
Generates a service SAS for the path using the specifiedDataLakeServiceSasSignatureValues
String
generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, UserDelegationKey userDelegationKey)
Generates a user delegation SAS for the path using the specifiedDataLakeServiceSasSignatureValues
.String
generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, UserDelegationKey userDelegationKey, String accountName, com.azure.core.util.Context context)
Generates a user delegation SAS for the path using the specifiedDataLakeServiceSasSignatureValues
.PathAccessControl
getAccessControl()
Returns the access control for a resource.com.azure.core.http.rest.Response<PathAccessControl>
getAccessControlWithResponse(boolean userPrincipalNameReturned, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Returns the access control for a resource.String
getAccountName()
Gets the associated account name.String
getFileSystemName()
Gets the name of the File System in which this object lives.com.azure.core.http.HttpPipeline
getHttpPipeline()
Gets theHttpPipeline
powering this client.PathProperties
getProperties()
Returns the resources's metadata and properties.com.azure.core.http.rest.Response<PathProperties>
getPropertiesWithResponse(DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Returns the resource's metadata and properties.DataLakeServiceVersion
getServiceVersion()
Gets the service version the client is using.AccessControlChangeResult
removeAccessControlRecursive(List<PathRemoveAccessControlEntry> accessControlList)
Recursively removes the access control on a path and all subpaths.com.azure.core.http.rest.Response<AccessControlChangeResult>
removeAccessControlRecursiveWithResponse(PathRemoveAccessControlRecursiveOptions options, Duration timeout, com.azure.core.util.Context context)
Recursively removes the access control on a path and all subpaths.PathInfo
setAccessControlList(List<PathAccessControlEntry> accessControlList, String group, String owner)
Changes the access control list, group and/or owner for a resource.com.azure.core.http.rest.Response<PathInfo>
setAccessControlListWithResponse(List<PathAccessControlEntry> accessControlList, String group, String owner, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Changes the access control list, group and/or owner for a resource.AccessControlChangeResult
setAccessControlRecursive(List<PathAccessControlEntry> accessControlList)
Recursively sets the access control on a path and all subpaths.com.azure.core.http.rest.Response<AccessControlChangeResult>
setAccessControlRecursiveWithResponse(PathSetAccessControlRecursiveOptions options, Duration timeout, com.azure.core.util.Context context)
Recursively sets the access control on a path and all subpaths.void
setHttpHeaders(PathHttpHeaders headers)
Changes a resources's HTTP header properties.com.azure.core.http.rest.Response<Void>
setHttpHeadersWithResponse(PathHttpHeaders headers, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Changes a resources's HTTP header properties.void
setMetadata(Map<String,String> metadata)
Changes a resource's metadata.com.azure.core.http.rest.Response<Void>
setMetadataWithResponse(Map<String,String> metadata, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Changes a resource's metadata.PathInfo
setPermissions(PathPermissions permissions, String group, String owner)
Changes the permissions, group and/or owner for a resource.com.azure.core.http.rest.Response<PathInfo>
setPermissionsWithResponse(PathPermissions permissions, String group, String owner, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Changes the permissions, group and/or owner for a resource.AccessControlChangeResult
updateAccessControlRecursive(List<PathAccessControlEntry> accessControlList)
Recursively updates the access control on a path and all subpaths.com.azure.core.http.rest.Response<AccessControlChangeResult>
updateAccessControlRecursiveWithResponse(PathUpdateAccessControlRecursiveOptions options, Duration timeout, com.azure.core.util.Context context)
Recursively updates the access control on a path and all subpaths.
-
-
-
Method Detail
-
getAccountName
public String getAccountName()
Gets the associated account name.- Returns:
- Account name associated with this storage resource.
-
getFileSystemName
public String getFileSystemName()
Gets the name of the File System in which this object lives.- Returns:
- The name of the File System.
-
getHttpPipeline
public com.azure.core.http.HttpPipeline getHttpPipeline()
Gets theHttpPipeline
powering this client.- Returns:
- The pipeline.
-
getServiceVersion
public DataLakeServiceVersion getServiceVersion()
Gets the service version the client is using.- Returns:
- the service version the client is using.
-
create
public PathInfo create()
Creates a resource. By default this method will not overwrite an existing path.Code Samples
System.out.printf("Last Modified Time:%s", client.create().getLastModified());
For more information see the Azure Docs
- Returns:
- Information about the created resource.
-
create
public PathInfo create(boolean overwrite)
Creates a resource.Code Samples
boolean overwrite = true; System.out.printf("Last Modified Time:%s", client.create(true).getLastModified());
For more information see the Azure Docs
- Parameters:
overwrite
- Whether or not to overwrite, should data exist on the path.- Returns:
- Information about the created resource.
-
createWithResponse
public com.azure.core.http.rest.Response<PathInfo> createWithResponse(String permissions, String umask, PathHttpHeaders headers, Map<String,String> metadata, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Creates a resource.Code Samples
PathHttpHeaders httpHeaders = new PathHttpHeaders() .setContentLanguage("en-US") .setContentType("binary"); DataLakeRequestConditions requestConditions = new DataLakeRequestConditions() .setLeaseId(leaseId); String permissions = "permissions"; String umask = "umask"; Response<PathInfo> response = client.createWithResponse(permissions, umask, httpHeaders, Collections.singletonMap("metadata", "value"), requestConditions, timeout, new Context(key1, value1)); System.out.printf("Last Modified Time:%s", response.getValue().getLastModified());
For more information see the Azure Docs
- Parameters:
permissions
- POSIX access permissions for the resource owner, the resource owning group, and others.umask
- Restricts permissions of the resource to be created.headers
-PathHttpHeaders
metadata
- Metadata to associate with the resource. If there is leading or trailing whitespace in any metadata key or value, it must be removed or encoded.requestConditions
-DataLakeRequestConditions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing information about the created resource
-
setMetadata
public void setMetadata(Map<String,String> metadata)
Changes a resource's metadata. The specified metadata in this method will replace existing metadata. If old values must be preserved, they must be downloaded and included in the call to this method.Code Samples
client.setMetadata(Collections.singletonMap("metadata", "value")); System.out.println("Set metadata completed");
For more information, see the Azure Docs
- Parameters:
metadata
- Metadata to associate with the resource. If there is leading or trailing whitespace in any metadata key or value, it must be removed or encoded.
-
setMetadataWithResponse
public com.azure.core.http.rest.Response<Void> setMetadataWithResponse(Map<String,String> metadata, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Changes a resource's metadata. The specified metadata in this method will replace existing metadata. If old values must be preserved, they must be downloaded and included in the call to this method.Code Samples
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId); client.setMetadataWithResponse(Collections.singletonMap("metadata", "value"), requestConditions, timeout, new Context(key2, value2)); System.out.println("Set metadata completed");
For more information, see the Azure Docs
- Parameters:
metadata
- Metadata to associate with the resource. If there is leading or trailing whitespace in any metadata key or value, it must be removed or encoded.requestConditions
-DataLakeRequestConditions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing status code and HTTP headers.
-
setHttpHeaders
public void setHttpHeaders(PathHttpHeaders headers)
Changes a resources's HTTP header properties. If only one HTTP header is updated, the others will all be erased. In order to preserve existing values, they must be passed alongside the header being changed.Code Samples
client.setHttpHeaders(new PathHttpHeaders() .setContentLanguage("en-US") .setContentType("binary"));
For more information, see the Azure Docs
- Parameters:
headers
-PathHttpHeaders
-
setHttpHeadersWithResponse
public com.azure.core.http.rest.Response<Void> setHttpHeadersWithResponse(PathHttpHeaders headers, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Changes a resources's HTTP header properties. If only one HTTP header is updated, the others will all be erased. In order to preserve existing values, they must be passed alongside the header being changed.Code Samples
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId); Response<Void> response = client.setHttpHeadersWithResponse(new PathHttpHeaders() .setContentLanguage("en-US") .setContentType("binary"), requestConditions, timeout, new Context(key2, value2)); System.out.printf("Set HTTP headers completed with status %d%n", response.getStatusCode());
For more information, see the Azure Docs
- Parameters:
headers
-PathHttpHeaders
requestConditions
-DataLakeRequestConditions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing status code and HTTP headers.
-
setAccessControlList
public PathInfo setAccessControlList(List<PathAccessControlEntry> accessControlList, String group, String owner)
Changes the access control list, group and/or owner for a resource.Code Samples
PathAccessControlEntry pathAccessControlEntry = new PathAccessControlEntry() .setEntityId("entityId") .setPermissions(new RolePermissions().setReadPermission(true)); List<PathAccessControlEntry> pathAccessControlEntries = new ArrayList<>(); pathAccessControlEntries.add(pathAccessControlEntry); String group = "group"; String owner = "owner"; System.out.printf("Last Modified Time: %s", client.setAccessControlList(pathAccessControlEntries, group, owner) .getLastModified());
For more information, see the Azure Docs
- Parameters:
accessControlList
- A list ofPathAccessControlEntry
objects.group
- The group of the resource.owner
- The owner of the resource.- Returns:
- The resource info.
-
setAccessControlListWithResponse
public com.azure.core.http.rest.Response<PathInfo> setAccessControlListWithResponse(List<PathAccessControlEntry> accessControlList, String group, String owner, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Changes the access control list, group and/or owner for a resource.Code Samples
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId); PathAccessControlEntry pathAccessControlEntry = new PathAccessControlEntry() .setEntityId("entityId") .setPermissions(new RolePermissions().setReadPermission(true)); List<PathAccessControlEntry> pathAccessControlEntries = new ArrayList<>(); pathAccessControlEntries.add(pathAccessControlEntry); String group = "group"; String owner = "owner"; Response<PathInfo> response = client.setAccessControlListWithResponse(pathAccessControlEntries, group, owner, requestConditions, timeout, new Context(key2, value2)); System.out.printf("Last Modified Time: %s", response.getValue().getLastModified());
For more information, see the Azure Docs
- Parameters:
accessControlList
- A list ofPathAccessControlEntry
objects.group
- The group of the resource.owner
- The owner of the resource.requestConditions
-DataLakeRequestConditions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the resource info.
-
setPermissions
public PathInfo setPermissions(PathPermissions permissions, String group, String owner)
Changes the permissions, group and/or owner for a resource.Code Samples
PathPermissions permissions = new PathPermissions() .setGroup(new RolePermissions().setExecutePermission(true).setReadPermission(true)) .setOwner(new RolePermissions().setExecutePermission(true).setReadPermission(true).setWritePermission(true)) .setOther(new RolePermissions().setReadPermission(true)); String group = "group"; String owner = "owner"; System.out.printf("Last Modified Time: %s", client.setPermissions(permissions, group, owner) .getLastModified());
For more information, see the Azure Docs
- Parameters:
permissions
-PathPermissions
group
- The group of the resource.owner
- The owner of the resource.- Returns:
- The resource info.
-
setPermissionsWithResponse
public com.azure.core.http.rest.Response<PathInfo> setPermissionsWithResponse(PathPermissions permissions, String group, String owner, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Changes the permissions, group and/or owner for a resource.Code Samples
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId); PathPermissions permissions = new PathPermissions() .setGroup(new RolePermissions().setExecutePermission(true).setReadPermission(true)) .setOwner(new RolePermissions().setExecutePermission(true).setReadPermission(true).setWritePermission(true)) .setOther(new RolePermissions().setReadPermission(true)); String group = "group"; String owner = "owner"; Response<PathInfo> response = client.setPermissionsWithResponse(permissions, group, owner, requestConditions, timeout, new Context(key2, value2)); System.out.printf("Last Modified Time: %s", response.getValue().getLastModified());
For more information, see the Azure Docs
- Parameters:
permissions
-PathPermissions
group
- The group of the resource.owner
- The owner of the resource.requestConditions
-DataLakeRequestConditions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the resource info.
-
setAccessControlRecursive
public AccessControlChangeResult setAccessControlRecursive(List<PathAccessControlEntry> accessControlList)
Recursively sets the access control on a path and all subpaths.Code Samples
PathAccessControlEntry pathAccessControlEntry = new PathAccessControlEntry() .setEntityId("entityId") .setPermissions(new RolePermissions().setReadPermission(true)); List<PathAccessControlEntry> pathAccessControlEntries = new ArrayList<>(); pathAccessControlEntries.add(pathAccessControlEntry); AccessControlChangeResult response = client.setAccessControlRecursive(pathAccessControlEntries); System.out.printf("Successful changed file operations: %d", response.getCounters().getChangedFilesCount());
For more information, see the Azure Docs
- Parameters:
accessControlList
- The POSIX access control list for the file or directory.- Returns:
- The result of the operation.
- Throws:
DataLakeAclChangeFailedException
- if a request to storage throws aDataLakeStorageException
or aException
to wrap the exception with the continuation token.
-
setAccessControlRecursiveWithResponse
public com.azure.core.http.rest.Response<AccessControlChangeResult> setAccessControlRecursiveWithResponse(PathSetAccessControlRecursiveOptions options, Duration timeout, com.azure.core.util.Context context)
Recursively sets the access control on a path and all subpaths.Code Samples
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId); PathAccessControlEntry pathAccessControlEntry = new PathAccessControlEntry() .setEntityId("entityId") .setPermissions(new RolePermissions().setReadPermission(true)); List<PathAccessControlEntry> pathAccessControlEntries = new ArrayList<>(); pathAccessControlEntries.add(pathAccessControlEntry); Integer batchSize = 2; Integer maxBatches = 10; boolean continueOnFailure = false; String continuationToken = null; Consumer<Response<AccessControlChanges>> progressHandler = response -> System.out.println("Received response"); PathSetAccessControlRecursiveOptions options = new PathSetAccessControlRecursiveOptions(pathAccessControlEntries) .setBatchSize(batchSize) .setMaxBatches(maxBatches) .setContinueOnFailure(continueOnFailure) .setContinuationToken(continuationToken) .setProgressHandler(progressHandler); Response<AccessControlChangeResult> response = client.setAccessControlRecursiveWithResponse(options, timeout, new Context(key2, value2)); System.out.printf("Successful changed file operations: %d", response.getValue().getCounters().getChangedFilesCount());
For more information, see the Azure Docs
- Parameters:
options
-PathSetAccessControlRecursiveOptions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the result of the operation.
- Throws:
DataLakeAclChangeFailedException
- if a request to storage throws aDataLakeStorageException
or aException
to wrap the exception with the continuation token.
-
updateAccessControlRecursive
public AccessControlChangeResult updateAccessControlRecursive(List<PathAccessControlEntry> accessControlList)
Recursively updates the access control on a path and all subpaths.Code Samples
PathAccessControlEntry pathAccessControlEntry = new PathAccessControlEntry() .setEntityId("entityId") .setPermissions(new RolePermissions().setReadPermission(true)); List<PathAccessControlEntry> pathAccessControlEntries = new ArrayList<>(); pathAccessControlEntries.add(pathAccessControlEntry); AccessControlChangeResult response = client.updateAccessControlRecursive(pathAccessControlEntries); System.out.printf("Successful changed file operations: %d", response.getCounters().getChangedFilesCount());
For more information, see the Azure Docs
- Parameters:
accessControlList
- The POSIX access control list for the file or directory.- Returns:
- The result of the operation.
- Throws:
DataLakeAclChangeFailedException
- if a request to storage throws aDataLakeStorageException
or aException
to wrap the exception with the continuation token.
-
updateAccessControlRecursiveWithResponse
public com.azure.core.http.rest.Response<AccessControlChangeResult> updateAccessControlRecursiveWithResponse(PathUpdateAccessControlRecursiveOptions options, Duration timeout, com.azure.core.util.Context context)
Recursively updates the access control on a path and all subpaths.Code Samples
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId); PathAccessControlEntry pathAccessControlEntry = new PathAccessControlEntry() .setEntityId("entityId") .setPermissions(new RolePermissions().setReadPermission(true)); List<PathAccessControlEntry> pathAccessControlEntries = new ArrayList<>(); pathAccessControlEntries.add(pathAccessControlEntry); Integer batchSize = 2; Integer maxBatches = 10; boolean continueOnFailure = false; String continuationToken = null; Consumer<Response<AccessControlChanges>> progressHandler = response -> System.out.println("Received response"); PathUpdateAccessControlRecursiveOptions options = new PathUpdateAccessControlRecursiveOptions(pathAccessControlEntries) .setBatchSize(batchSize) .setMaxBatches(maxBatches) .setContinueOnFailure(continueOnFailure) .setContinuationToken(continuationToken) .setProgressHandler(progressHandler); Response<AccessControlChangeResult> response = client.updateAccessControlRecursiveWithResponse(options, timeout, new Context(key2, value2)); System.out.printf("Successful changed file operations: %d", response.getValue().getCounters().getChangedFilesCount());
For more information, see the Azure Docs
- Parameters:
options
-PathUpdateAccessControlRecursiveOptions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the result of the operation.
- Throws:
DataLakeAclChangeFailedException
- if a request to storage throws aDataLakeStorageException
or aException
to wrap the exception with the continuation token.
-
removeAccessControlRecursive
public AccessControlChangeResult removeAccessControlRecursive(List<PathRemoveAccessControlEntry> accessControlList)
Recursively removes the access control on a path and all subpaths.Code Samples
PathRemoveAccessControlEntry pathAccessControlEntry = new PathRemoveAccessControlEntry() .setEntityId("entityId"); List<PathRemoveAccessControlEntry> pathAccessControlEntries = new ArrayList<>(); pathAccessControlEntries.add(pathAccessControlEntry); AccessControlChangeResult response = client.removeAccessControlRecursive(pathAccessControlEntries); System.out.printf("Successful changed file operations: %d", response.getCounters().getChangedFilesCount());
For more information, see the Azure Docs
- Parameters:
accessControlList
- The POSIX access control list for the file or directory.- Returns:
- The result of the operation.
- Throws:
DataLakeAclChangeFailedException
- if a request to storage throws aDataLakeStorageException
or aException
to wrap the exception with the continuation token.
-
removeAccessControlRecursiveWithResponse
public com.azure.core.http.rest.Response<AccessControlChangeResult> removeAccessControlRecursiveWithResponse(PathRemoveAccessControlRecursiveOptions options, Duration timeout, com.azure.core.util.Context context)
Recursively removes the access control on a path and all subpaths.Code Samples
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId); PathRemoveAccessControlEntry pathAccessControlEntry = new PathRemoveAccessControlEntry() .setEntityId("entityId"); List<PathRemoveAccessControlEntry> pathAccessControlEntries = new ArrayList<>(); pathAccessControlEntries.add(pathAccessControlEntry); Integer batchSize = 2; Integer maxBatches = 10; boolean continueOnFailure = false; String continuationToken = null; Consumer<Response<AccessControlChanges>> progressHandler = response -> System.out.println("Received response"); PathRemoveAccessControlRecursiveOptions options = new PathRemoveAccessControlRecursiveOptions(pathAccessControlEntries) .setBatchSize(batchSize) .setMaxBatches(maxBatches) .setContinueOnFailure(continueOnFailure) .setContinuationToken(continuationToken) .setProgressHandler(progressHandler); Response<AccessControlChangeResult> response = client.removeAccessControlRecursiveWithResponse(options, timeout, new Context(key2, value2)); System.out.printf("Successful changed file operations: %d", response.getValue().getCounters().getChangedFilesCount());
For more information, see the Azure Docs
- Parameters:
options
-PathRemoveAccessControlRecursiveOptions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the result of the operation.
- Throws:
DataLakeAclChangeFailedException
- if a request to storage throws aDataLakeStorageException
or aException
to wrap the exception with the continuation token.
-
getAccessControl
public PathAccessControl getAccessControl()
Returns the access control for a resource.Code Samples
PathAccessControl response = client.getAccessControl(); System.out.printf("Access Control List: %s, Group: %s, Owner: %s, Permissions: %s", PathAccessControlEntry.serializeList(response.getAccessControlList()), response.getGroup(), response.getOwner(), response.getPermissions());
For more information, see the Azure Docs
- Returns:
- The resource access control.
-
getAccessControlWithResponse
public com.azure.core.http.rest.Response<PathAccessControl> getAccessControlWithResponse(boolean userPrincipalNameReturned, DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Returns the access control for a resource.Code Samples
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId); boolean userPrincipalNameReturned = false; Response<PathAccessControl> response = client.getAccessControlWithResponse(userPrincipalNameReturned, requestConditions, timeout, new Context(key1, value1)); PathAccessControl pac = response.getValue(); System.out.printf("Access Control List: %s, Group: %s, Owner: %s, Permissions: %s", PathAccessControlEntry.serializeList(pac.getAccessControlList()), pac.getGroup(), pac.getOwner(), pac.getPermissions());
For more information, see the Azure Docs
- Parameters:
userPrincipalNameReturned
- When true, user identity values returned as User Principal Names. When false, user identity values returned as Azure Active Directory Object IDs. Default value is false.requestConditions
-DataLakeRequestConditions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the resource access control.
-
getProperties
public PathProperties getProperties()
Returns the resources's metadata and properties.Code Samples
System.out.printf("Creation Time: %s, Size: %d%n", client.getProperties().getCreationTime(), client.getProperties().getFileSize());
For more information, see the Azure Docs
- Returns:
- The resource properties and metadata.
-
getPropertiesWithResponse
public com.azure.core.http.rest.Response<PathProperties> getPropertiesWithResponse(DataLakeRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context)
Returns the resource's metadata and properties.Code Samples
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId); Response<PathProperties> response = client.getPropertiesWithResponse(requestConditions, timeout, new Context(key2, value2)); System.out.printf("Creation Time: %s, Size: %d%n", response.getValue().getCreationTime(), response.getValue().getFileSize());
For more information, see the Azure Docs
- Parameters:
requestConditions
-DataLakeRequestConditions
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the resource properties and metadata.
-
exists
public Boolean exists()
Gets if the path this client represents exists in the cloud.Note that this method does not guarantee that the path type (file/directory) matches expectations.
For example, a DataLakeFileClient representing a path to a datalake directory will return true, and vice versa.
Code Samples
System.out.printf("Exists? %b%n", client.exists());
- Returns:
- true if the path exists, false if it doesn't
-
existsWithResponse
public com.azure.core.http.rest.Response<Boolean> existsWithResponse(Duration timeout, com.azure.core.util.Context context)
Gets if the path this client represents exists in the cloud.Note that this method does not guarantee that the path type (file/directory) matches expectations.
For example, a DataLakeFileClient representing a path to a datalake directory will return true, and vice versa.
Code Samples
System.out.printf("Exists? %b%n", client.existsWithResponse(timeout, new Context(key2, value2)).getValue());
- Parameters:
timeout
- An optional timeout value beyond which aRuntimeException
will be raised.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- true if the path exists, false if it doesn't
-
generateUserDelegationSas
public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, UserDelegationKey userDelegationKey)
Generates a user delegation SAS for the path using the specifiedDataLakeServiceSasSignatureValues
.See
DataLakeServiceSasSignatureValues
for more information on how to construct a user delegation SAS.Code Samples
OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); PathSasPermission myPermission = new PathSasPermission().setReadPermission(true); DataLakeServiceSasSignatureValues myValues = new DataLakeServiceSasSignatureValues(expiryTime, permission) .setStartTime(OffsetDateTime.now()); client.generateUserDelegationSas(values, userDelegationKey);
- Parameters:
dataLakeServiceSasSignatureValues
-DataLakeServiceSasSignatureValues
userDelegationKey
- AUserDelegationKey
object used to sign the SAS values. SeeDataLakeServiceClient.getUserDelegationKey(OffsetDateTime, OffsetDateTime)
for more information on how to get a user delegation key.- Returns:
- A
String
representing the SAS query parameters.
-
generateUserDelegationSas
public String generateUserDelegationSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, UserDelegationKey userDelegationKey, String accountName, com.azure.core.util.Context context)
Generates a user delegation SAS for the path using the specifiedDataLakeServiceSasSignatureValues
.See
DataLakeServiceSasSignatureValues
for more information on how to construct a user delegation SAS.Code Samples
OffsetDateTime myExpiryTime = OffsetDateTime.now().plusDays(1); PathSasPermission myPermission = new PathSasPermission().setReadPermission(true); DataLakeServiceSasSignatureValues myValues = new DataLakeServiceSasSignatureValues(expiryTime, permission) .setStartTime(OffsetDateTime.now()); client.generateUserDelegationSas(values, userDelegationKey, accountName, new Context("key", "value"));
- Parameters:
dataLakeServiceSasSignatureValues
-DataLakeServiceSasSignatureValues
userDelegationKey
- AUserDelegationKey
object used to sign the SAS values. SeeDataLakeServiceClient.getUserDelegationKey(OffsetDateTime, OffsetDateTime)
for more information on how to get a user delegation key.accountName
- The account name.context
- Additional context that is passed through the code when generating a SAS.- Returns:
- A
String
representing the SAS query parameters.
-
generateSas
public String generateSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues)
Generates a service SAS for the path using the specifiedDataLakeServiceSasSignatureValues
Note : The client must be authenticated via
StorageSharedKeyCredential
See
DataLakeServiceSasSignatureValues
for more information on how to construct a service SAS.Code Samples
OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); PathSasPermission permission = new PathSasPermission().setReadPermission(true); DataLakeServiceSasSignatureValues values = new DataLakeServiceSasSignatureValues(expiryTime, permission) .setStartTime(OffsetDateTime.now()); client.generateSas(values); // Client must be authenticated via StorageSharedKeyCredential
- Parameters:
dataLakeServiceSasSignatureValues
-DataLakeServiceSasSignatureValues
- Returns:
- A
String
representing the SAS query parameters.
-
generateSas
public String generateSas(DataLakeServiceSasSignatureValues dataLakeServiceSasSignatureValues, com.azure.core.util.Context context)
Generates a service SAS for the path using the specifiedDataLakeServiceSasSignatureValues
Note : The client must be authenticated via
StorageSharedKeyCredential
See
DataLakeServiceSasSignatureValues
for more information on how to construct a service SAS.Code Samples
OffsetDateTime expiryTime = OffsetDateTime.now().plusDays(1); PathSasPermission permission = new PathSasPermission().setReadPermission(true); DataLakeServiceSasSignatureValues values = new DataLakeServiceSasSignatureValues(expiryTime, permission) .setStartTime(OffsetDateTime.now()); // Client must be authenticated via StorageSharedKeyCredential client.generateSas(values, new Context("key", "value"));
- Parameters:
dataLakeServiceSasSignatureValues
-DataLakeServiceSasSignatureValues
context
- Additional context that is passed through the code when generating a SAS.- Returns:
- A
String
representing the SAS query parameters.
-
-