Class ShareClient
Instantiating a Synchronous Share Client
ShareClient client = new ShareClientBuilder() .connectionString("${connectionString}") .endpoint("${endpoint}") .buildClient();
View this
for additional ways to construct the client.
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptioncreate()
Creates the share in the storage account.createDirectory
(String directoryName) Creates the directory in the share with the given name.createDirectoryIfNotExists
(String directoryName) Creates the directory in the share with the given name if it does not exist.com.azure.core.http.rest.Response
<ShareDirectoryClient> createDirectoryIfNotExistsWithResponse
(String directoryName, ShareDirectoryCreateOptions options, Duration timeout, com.azure.core.util.Context context) Creates the directory if it does not exist in the share with the given name and associates the passed metadata to it.com.azure.core.http.rest.Response
<ShareDirectoryClient> createDirectoryWithResponse
(String directoryName, FileSmbProperties smbProperties, String filePermission, Map<String, String> metadata, Duration timeout, com.azure.core.util.Context context) Creates the directory in the share with the given name and associates the passed metadata to it.createFile
(String fileName, long maxSize) Creates the file in the share with the given name and file max size.com.azure.core.http.rest.Response
<ShareFileClient> createFileWithResponse
(String fileName, long maxSize, ShareFileHttpHeaders httpHeaders, FileSmbProperties smbProperties, String filePermission, Map<String, String> metadata, ShareRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context) Creates the file in the share with the given name, file max size and associates the passed properties to it.com.azure.core.http.rest.Response
<ShareFileClient> createFileWithResponse
(String fileName, long maxSize, ShareFileHttpHeaders httpHeaders, FileSmbProperties smbProperties, String filePermission, Map<String, String> metadata, Duration timeout, com.azure.core.util.Context context) Creates the file in the share with the given name, file max size and associates the passed properties to it.Creates the share in the storage account if it does not exist.com.azure.core.http.rest.Response
<ShareInfo> createIfNotExistsWithResponse
(ShareCreateOptions options, Duration timeout, com.azure.core.util.Context context) Creates the share in the storage account with the specified options if it does not exist.createPermission
(ShareFilePermission filePermission) Creates a permission at the share level.createPermission
(String filePermission) Creates a permission at the share level.com.azure.core.http.rest.Response
<String> createPermissionWithResponse
(ShareFilePermission filePermission, Duration timeout, com.azure.core.util.Context context) Creates a permission at the share level.com.azure.core.http.rest.Response
<String> createPermissionWithResponse
(String filePermission, com.azure.core.util.Context context) Creates a permission t the share level.Creates a snapshot of the share with the same metadata associated to the share at the time of creation.com.azure.core.http.rest.Response
<ShareSnapshotInfo> createSnapshotWithResponse
(Map<String, String> metadata, Duration timeout, com.azure.core.util.Context context) Creates a snapshot of the share with the metadata that was passed associated to the snapshot.com.azure.core.http.rest.Response
<ShareInfo> createWithResponse
(ShareCreateOptions options, Duration timeout, com.azure.core.util.Context context) Creates the share in the storage account with the specified options.com.azure.core.http.rest.Response
<ShareInfo> createWithResponse
(Map<String, String> metadata, Integer quotaInGB, Duration timeout, com.azure.core.util.Context context) Creates the share in the storage account with the specified metadata and quota.void
delete()
Deletes the share in the storage accountvoid
deleteDirectory
(String directoryName) Deletes the specified directory in the share.boolean
deleteDirectoryIfExists
(String directoryName) Deletes the specified directory in the share if it exists.com.azure.core.http.rest.Response
<Boolean> deleteDirectoryIfExistsWithResponse
(String directoryName, Duration timeout, com.azure.core.util.Context context) Deletes the specified directory in the share if it exists.com.azure.core.http.rest.Response
<Void> deleteDirectoryWithResponse
(String directoryName, Duration timeout, com.azure.core.util.Context context) Deletes the specified directory in the share.void
deleteFile
(String fileName) Deletes the specified file in the share.boolean
deleteFileIfExists
(String fileName) Deletes the specified file in the share if it exists.com.azure.core.http.rest.Response
<Boolean> deleteFileIfExistsWithResponse
(String fileName, ShareRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context) Deletes the specified file in the share if it exists.com.azure.core.http.rest.Response
<Void> deleteFileWithResponse
(String fileName, ShareRequestConditions requestConditions, Duration timeout, com.azure.core.util.Context context) Deletes the specified file in the share.com.azure.core.http.rest.Response
<Void> deleteFileWithResponse
(String fileName, Duration timeout, com.azure.core.util.Context context) Deletes the specified file in the share.boolean
Deletes the share in the storage account if it exists.com.azure.core.http.rest.Response
<Boolean> deleteIfExistsWithResponse
(ShareDeleteOptions options, Duration timeout, com.azure.core.util.Context context) Deletes the share in the storage account if it exists.com.azure.core.http.rest.Response
<Void> deleteWithResponse
(ShareDeleteOptions options, Duration timeout, com.azure.core.util.Context context) Deletes the share in the storage accountcom.azure.core.http.rest.Response
<Void> deleteWithResponse
(Duration timeout, com.azure.core.util.Context context) Deletes the share in the storage accountexists()
Determines if the share this client represents exists in the cloud.com.azure.core.http.rest.Response
<Boolean> existsWithResponse
(Duration timeout, com.azure.core.util.Context context) Determines if the share this client represents exists in the cloud.generateSas
(ShareServiceSasSignatureValues shareServiceSasSignatureValues) Generates a service sas for the queue using the specifiedShareServiceSasSignatureValues
generateSas
(ShareServiceSasSignatureValues shareServiceSasSignatureValues, com.azure.core.util.Context context) Generates a service sas for the queue using the specifiedShareServiceSasSignatureValues
generateSas
(ShareServiceSasSignatureValues shareServiceSasSignatureValues, Consumer<String> stringToSignHandler, com.azure.core.util.Context context) Generates a service sas for the queue using the specifiedShareServiceSasSignatureValues
com.azure.core.http.rest.PagedIterable
<ShareSignedIdentifier> Retrieves stored access policies specified for the share.com.azure.core.http.rest.PagedIterable
<ShareSignedIdentifier> Retrieves stored access policies specified for the share.Get associated account name.Get the url of the storage account.getDirectoryClient
(String directoryName) Constructs aShareDirectoryClient
that interacts with the specified directory.getFileClient
(String filePath) Constructs aShareFileClient
that interacts with the specified file.com.azure.core.http.HttpPipeline
Gets theHttpPipeline
powering this client.getPermission
(String filePermissionKey) Gets a permission for a given keygetPermission
(String filePermissionKey, FilePermissionFormat filePermissionFormat) Gets a permission for a given keycom.azure.core.http.rest.Response
<String> getPermissionWithResponse
(String filePermissionKey, com.azure.core.util.Context context) Gets a permission for a given key.com.azure.core.http.rest.Response
<String> getPermissionWithResponse
(String filePermissionKey, FilePermissionFormat filePermissionFormat, Duration timeout, com.azure.core.util.Context context) Gets a permission for a given key.Retrieves the properties of the share, these include the metadata associated to it and the quota that the share is restricted to.com.azure.core.http.rest.Response
<ShareProperties> getPropertiesWithResponse
(ShareGetPropertiesOptions options, Duration timeout, com.azure.core.util.Context context) Retrieves the properties of the share, these include the metadata associated to it and the quota that the share is restricted to.com.azure.core.http.rest.Response
<ShareProperties> getPropertiesWithResponse
(Duration timeout, com.azure.core.util.Context context) Retrieves the properties of the share, these include the metadata associated to it and the quota that the share is restricted to.Constructs aShareDirectoryClient
that interacts with the root directory in the share.Gets the service version the client is using.Get share name from share client.Get the url of the storage share client.getSnapshotClient
(String snapshot) Creates a newShareAsyncClient
linked to thesnapshot
of this share resource.Get snapshot id which attached toShareClient
.Retrieves storage statistics about the share.com.azure.core.http.rest.Response
<ShareStatistics> getStatisticsWithResponse
(ShareGetStatisticsOptions options, Duration timeout, com.azure.core.util.Context context) Retrieves storage statistics about the share.com.azure.core.http.rest.Response
<ShareStatistics> getStatisticsWithResponse
(Duration timeout, com.azure.core.util.Context context) Retrieves storage statistics about the share.setAccessPolicy
(List<ShareSignedIdentifier> permissions) Sets stored access policies for the share.com.azure.core.http.rest.Response
<ShareInfo> setAccessPolicyWithResponse
(ShareSetAccessPolicyOptions options, Duration timeout, com.azure.core.util.Context context) Sets stored access policies for the share.com.azure.core.http.rest.Response
<ShareInfo> setAccessPolicyWithResponse
(List<ShareSignedIdentifier> permissions, Duration timeout, com.azure.core.util.Context context) Sets stored access policies for the share.setMetadata
(Map<String, String> metadata) Sets the user-defined metadata to associate to the share.com.azure.core.http.rest.Response
<ShareInfo> setMetadataWithResponse
(ShareSetMetadataOptions options, Duration timeout, com.azure.core.util.Context context) Sets the user-defined metadata to associate to the share.com.azure.core.http.rest.Response
<ShareInfo> setMetadataWithResponse
(Map<String, String> metadata, Duration timeout, com.azure.core.util.Context context) Sets the user-defined metadata to associate to the share.setProperties
(ShareSetPropertiesOptions options) Sets the share's properties.com.azure.core.http.rest.Response
<ShareInfo> setPropertiesWithResponse
(ShareSetPropertiesOptions options, Duration timeout, com.azure.core.util.Context context) Sets the share's properties.setQuota
(int quotaInGB) Deprecated.com.azure.core.http.rest.Response
<ShareInfo> setQuotaWithResponse
(int quotaInGB, Duration timeout, com.azure.core.util.Context context)
-
Method Details
-
getAccountUrl
Get the url of the storage account.- Returns:
- the URL of the storage account
-
getServiceVersion
Gets the service version the client is using.- Returns:
- the service version the client is using.
-
getRootDirectoryClient
Constructs aShareDirectoryClient
that interacts with the root directory in the share.If the directory doesn't exist in the share
create
in the client will need to be called before interaction with the directory can happen.- Returns:
- a
ShareDirectoryClient
that interacts with the root directory in the share
-
getDirectoryClient
Constructs aShareDirectoryClient
that interacts with the specified directory.If the directory doesn't exist in the share
create
in the client will need to be called before interaction with the directory can happen.- Parameters:
directoryName
- Name of the directory- Returns:
- a
ShareDirectoryClient
that interacts with the directory in the share
-
getFileClient
Constructs aShareFileClient
that interacts with the specified file.If the file doesn't exist in the share
ShareFileClient.create(long)
) create} in the client will need to be called before interaction with the file can happen.- Parameters:
filePath
- Name of the file- Returns:
- a
ShareFileClient
that interacts with the file in the share
-
getSnapshotClient
Creates a newShareAsyncClient
linked to thesnapshot
of this share resource.- Parameters:
snapshot
- the identifier for a specific snapshot of this share- Returns:
- a
ShareClient
used to interact with the specific snapshot.
-
exists
Determines if the share this client represents exists in the cloud.Code Samples
System.out.printf("Exists? %b%n", client.exists());
- Returns:
- Flag indicating existence of the share.
-
existsWithResponse
public com.azure.core.http.rest.Response<Boolean> existsWithResponse(Duration timeout, com.azure.core.util.Context context) Determines if the share this client represents exists in the cloud.Code Samples
Context context = new Context("Key", "Value"); System.out.printf("Exists? %b%n", client.existsWithResponse(timeout, context).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:
- Flag indicating existence of the share.
-
create
Creates the share in the storage account.Code Samples
Create the share
ShareInfo response = shareClient.create(); System.out.println("Complete creating the shares with status code: " + response);
For more information, see the Azure Docs.
- Returns:
- The
information about the share
. - Throws:
ShareStorageException
- If the share already exists with different metadata
-
createWithResponse
public com.azure.core.http.rest.Response<ShareInfo> createWithResponse(Map<String, String> metadata, Integer quotaInGB, Duration timeout, com.azure.core.util.Context context) Creates the share in the storage account with the specified metadata and quota.Code Samples
Create the share with metadata "share:metadata"
Response<ShareInfo> response = shareClient.createWithResponse(Collections.singletonMap("share", "metadata"), null, Duration.ofSeconds(1), new Context(key1, value1)); System.out.println("Complete creating the shares with status code: " + response.getStatusCode());
Create the share with a quota of 10 GB
Response<ShareInfo> response = shareClient.createWithResponse(null, 10, Duration.ofSeconds(1), new Context(key1, value1)); System.out.println("Complete creating the shares with status code: " + response.getStatusCode());
For more information, see the Azure Docs.
For more information on updated max file share size values, see the Azure Docs.
- Parameters:
metadata
- Optional metadata to associate with the sharequotaInGB
- Optional maximum size the share is allowed to grow to in GB. The default value is 5120. Refer to the Azure Docs for updated values.timeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the
information about the share
and the status its creation. - Throws:
ShareStorageException
- If the share already exists with different metadata orquotaInGB
is outside the allowed range.RuntimeException
- if the operation doesn't complete before the timeout concludes.
-
createIfNotExists
Creates the share in the storage account if it does not exist.Code Samples
Create the share
shareClient.createIfNotExists(); System.out.println("Completed creating the share.");
For more information, see the Azure Docs.
- Returns:
ShareInfo
that contains information about the created resource.
-
createSnapshot
Creates a snapshot of the share with the same metadata associated to the share at the time of creation.Code Samples
Create a snapshot
ShareSnapshotInfo response = shareClient.createSnapshot(); System.out.println("Complete creating the share snpashot with snapshot id: " + response.getSnapshot());
For more information, see the Azure Docs.
- Returns:
- The
information about snapshot of share
- Throws:
ShareStorageException
- If the share doesn't exist, there are 200 snapshots of the share, or a snapshot is in progress for the share
-
createSnapshotWithResponse
public com.azure.core.http.rest.Response<ShareSnapshotInfo> createSnapshotWithResponse(Map<String, String> metadata, Duration timeout, com.azure.core.util.Context context) Creates a snapshot of the share with the metadata that was passed associated to the snapshot.Code Samples
Create a snapshot with metadata "snapshot:metadata"
Response<ShareSnapshotInfo> response = shareClient.createSnapshotWithResponse(Collections.singletonMap("snpashot", "metadata"), Duration.ofSeconds(1), new Context(key1, value1)); System.out.println("Complete creating the share snpashot with snapshot id: " + response.getValue().getSnapshot());
For more information, see the Azure Docs.
- Parameters:
metadata
- Optional metadata to associate with the snapshot. Ifnull
the metadata of the share will be copied to the snapshot.timeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the
information about snapshot of the share
and status of creation. - Throws:
ShareStorageException
- If the share doesn't exist, there are 200 snapshots of the share, or a snapshot is in progress for the shareRuntimeException
- if the operation doesn't complete before the timeout concludes.
-
delete
public void delete()Deletes the share in the storage accountCode Samples
Delete the share
shareClient.delete(); System.out.println("Completed deleting the share.");
For more information, see the Azure Docs.
- Throws:
ShareStorageException
- If the share doesn't exist
-
deleteWithResponse
public com.azure.core.http.rest.Response<Void> deleteWithResponse(Duration timeout, com.azure.core.util.Context context) Deletes the share in the storage accountCode Samples
Delete the share
Response<Void> response = shareClient.deleteWithResponse(Duration.ofSeconds(1), new Context(key1, value1)); System.out.println("Complete deleting the share with status code: " + response.getStatusCode());
For more information, see the Azure Docs.
- Parameters:
timeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response that only contains headers and response status code
- Throws:
ShareStorageException
- If the share doesn't existRuntimeException
- if the operation doesn't complete before the timeout concludes.
-
deleteIfExists
public boolean deleteIfExists()Deletes the share in the storage account if it exists.Code Samples
Delete the share
boolean result = shareClient.deleteIfExists(); System.out.println("Share deleted: " + result);
For more information, see the Azure Docs.
- Returns:
true
if the share is successfully deleted,false
if the share does not exist.
-
getProperties
Retrieves the properties of the share, these include the metadata associated to it and the quota that the share is restricted to.Code Samples
Retrieve the share properties
ShareProperties properties = shareClient.getProperties(); System.out.printf("Share quota: %d, Metadata: %s", properties.getQuota(), properties.getMetadata());
For more information, see the Azure Docs.
- Returns:
- The
properties of the share
- Throws:
ShareStorageException
- If the share doesn't exist
-
getPropertiesWithResponse
public com.azure.core.http.rest.Response<ShareProperties> getPropertiesWithResponse(Duration timeout, com.azure.core.util.Context context) Retrieves the properties of the share, these include the metadata associated to it and the quota that the share is restricted to.Code Samples
Retrieve the share properties
ShareProperties properties = shareClient.getPropertiesWithResponse( Duration.ofSeconds(1), new Context(key1, value1)).getValue(); System.out.printf("Share quota: %d, Metadata: %s", properties.getQuota(), properties.getMetadata());
For more information, see the Azure Docs.
- Parameters:
timeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing
properties of the share
with response status code - Throws:
ShareStorageException
- If the share doesn't existRuntimeException
- if the operation doesn't complete before the timeout concludes.
-
setQuota
Deprecated.Sets the maximum size in GB that the share is allowed to grow.Code Samples
Set the quota to 1024 GB
System.out.println("Setting the share quota completed." + shareClient.setQuota(1024));
For more information, see the Azure Docs.
For more information on updated max file share size values, see the Azure Docs.
- Parameters:
quotaInGB
- Size in GB to limit the share's growth. The default value is 5120. Refer to the Azure Docs for updated values.- Returns:
- The
information about the share
- Throws:
ShareStorageException
- If the share doesn't exist orquotaInGB
is outside the allowed bounds
-
setQuotaWithResponse
@Deprecated public com.azure.core.http.rest.Response<ShareInfo> setQuotaWithResponse(int quotaInGB, Duration timeout, com.azure.core.util.Context context) Sets the maximum size in GB that the share is allowed to grow.Code Samples
Set the quota to 1024 GB
Response<ShareInfo> response = shareClient.setQuotaWithResponse(1024, Duration.ofSeconds(1), new Context(key1, value1)); System.out.printf("Setting the share quota completed with status code %d", response.getStatusCode());
For more information, see the Azure Docs.
For more information on updated max file share size values, see the Azure Docs.
- Parameters:
quotaInGB
- Size in GB to limit the share's growth. The default value is 5120. Refer to the Azure Docs for updated values.timeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing
information about the share
with response status code - Throws:
ShareStorageException
- If the share doesn't exist orquotaInGB
is outside the allowed boundsRuntimeException
- if the operation doesn't complete before the timeout concludes.
-
setMetadata
Sets the user-defined metadata to associate to the share.If
null
is passed for the metadata it will clear the metadata associated to the share.Code Samples
Set the metadata to "share:updatedMetadata"
shareClient.setMetadata(Collections.singletonMap("share", "updatedMetadata")); System.out.println("Setting the share metadata.");
Clear the metadata of the share
shareClient.setMetadata(null); System.out.println("Clear metadata completed.");
For more information, see the Azure Docs.
- Parameters:
metadata
- Metadata to set on the share, if null is passed the metadata for the share is cleared- Returns:
- The
properties of the share
- Throws:
ShareStorageException
- If the share doesn't exist or the metadata contains invalid keys
-
setMetadataWithResponse
public com.azure.core.http.rest.Response<ShareInfo> setMetadataWithResponse(Map<String, String> metadata, Duration timeout, com.azure.core.util.Context context) Sets the user-defined metadata to associate to the share.If
null
is passed for the metadata it will clear the metadata associated to the share.Code Samples
Set the metadata to "share:updatedMetadata"
Response<ShareInfo> response = shareClient.setMetadataWithResponse( Collections.singletonMap("share", "updatedMetadata"), Duration.ofSeconds(1), new Context(key1, value1)); System.out.printf("Setting the share metadata completed with status code %d", response.getStatusCode());
For more information, see the Azure Docs.
- Parameters:
metadata
- Metadata to set on the share, if null is passed the metadata for the share is clearedtimeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing
properties of the share
with response status code - Throws:
ShareStorageException
- If the share doesn't exist or the metadata contains invalid keysRuntimeException
- if the operation doesn't complete before the timeout concludes.
-
getAccessPolicy
Retrieves stored access policies specified for the share.Code Samples
List the stored access policies
for (ShareSignedIdentifier result : shareClient.getAccessPolicy()) { System.out.printf("Access policy %s allows these permissions: %s", result.getId(), result.getAccessPolicy().getPermissions()); }
For more information, see the Azure Docs.
- Returns:
- The stored access policies specified on the queue.
- Throws:
ShareStorageException
- If the share doesn't exist
-
setAccessPolicy
Sets stored access policies for the share.Code Samples
Set a read only stored access policy
ShareAccessPolicy accessPolicy = new ShareAccessPolicy().setPermissions("r") .setStartsOn(OffsetDateTime.now(ZoneOffset.UTC)) .setExpiresOn(OffsetDateTime.now(ZoneOffset.UTC).plusDays(10)); ShareSignedIdentifier permission = new ShareSignedIdentifier().setId("mypolicy").setAccessPolicy(accessPolicy); shareClient.setAccessPolicy(Collections.singletonList(permission)); System.out.println("Setting access policies completed.");
For more information, see the Azure Docs.
- Parameters:
permissions
- Access policies to set on the queue- Returns:
- The
information of the share
- Throws:
ShareStorageException
- If the share doesn't exist, a stored access policy doesn't have all fields filled out, or the share will have more than five policies.
-
setAccessPolicyWithResponse
public com.azure.core.http.rest.Response<ShareInfo> setAccessPolicyWithResponse(List<ShareSignedIdentifier> permissions, Duration timeout, com.azure.core.util.Context context) Sets stored access policies for the share.Code Samples
Set a read only stored access policy
ShareAccessPolicy accessPolicy = new ShareAccessPolicy().setPermissions("r") .setStartsOn(OffsetDateTime.now(ZoneOffset.UTC)) .setExpiresOn(OffsetDateTime.now(ZoneOffset.UTC).plusDays(10)); ShareSignedIdentifier permission = new ShareSignedIdentifier().setId("mypolicy").setAccessPolicy(accessPolicy); Response<ShareInfo> response = shareClient.setAccessPolicyWithResponse(Collections.singletonList(permission), Duration.ofSeconds(1), new Context(key1, value1)); System.out.printf("Setting access policies completed with status code %d", response.getStatusCode());
For more information, see the Azure Docs.
- Parameters:
permissions
- Access policies to set on the queuetimeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the
information of the share
with headers and response status code - Throws:
ShareStorageException
- If the share doesn't exist, a stored access policy doesn't have all fields filled out, or the share will have more than five policies.RuntimeException
- if the operation doesn't complete before the timeout concludes.
-
getStatistics
Retrieves storage statistics about the share.Code Samples
Retrieve the storage statistics
ShareStatistics response = shareClient.getStatistics(); System.out.printf("The share is using %d GB", response.getShareUsageInGB());
For more information, see the Azure Docs.
- Returns:
- The storage
statistics of the share
-
getStatisticsWithResponse
public com.azure.core.http.rest.Response<ShareStatistics> getStatisticsWithResponse(Duration timeout, com.azure.core.util.Context context) Retrieves storage statistics about the share.Code Samples
Retrieve the storage statistics
Response<ShareStatistics> response = shareClient.getStatisticsWithResponse( Duration.ofSeconds(1), new Context(key1, value1)); System.out.printf("The share is using %d GB", response.getValue().getShareUsageInGB());
For more information, see the Azure Docs.
- Parameters:
timeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing the
statistics of the share
- Throws:
RuntimeException
- if the operation doesn't complete before the timeout concludes.
-
createDirectory
Creates the directory in the share with the given name.Code Samples
Create the directory "documents"
ShareDirectoryClient response = shareClient.createDirectory("mydirectory"); System.out.println("Complete creating the directory.");
For more information, see the Azure Docs.
- Parameters:
directoryName
- Name of the directory- Returns:
- A response containing a
ShareDirectoryClient
to interact with the created directory. - Throws:
ShareStorageException
- If the share doesn't exist, the directory already exists or is in the process of being deleted, or the parent directory for the new directory doesn't exist
-
createDirectoryIfNotExists
Creates the directory in the share with the given name if it does not exist.Code Samples
Create the directory "documents"
ShareDirectoryClient directoryClient = shareClient.createDirectoryIfNotExists("mydirectory"); System.out.println("Complete creating the directory.");
For more information, see the Azure Docs.
- Parameters:
directoryName
- Name of the directory- Returns:
- The
ShareDirectoryClient
used to interact with the directory created.
-
createFile
Creates the file in the share with the given name and file max size.Code Samples
Create the file "myfile" with size of 1024 bytes.
ShareFileClient response = shareClient.createFile("myfile", 1024); System.out.println("Complete creating the file with snapshot Id:" + response.getShareSnapshotId());
For more information, see the Azure Docs.
- Parameters:
fileName
- Name of the file.maxSize
- The maximum size in bytes for the file.- Returns:
- A response containing a
ShareFileClient
to interact with the created file. - Throws:
ShareStorageException
- If one of the following cases happen:- If the share or parent directory does not exist.
- An attempt to create file on a share snapshot will fail with 400 (InvalidQueryParameterValue).
-
deleteDirectory
Deletes the specified directory in the share.Code Samples
Delete the directory "mydirectory"
shareClient.deleteDirectory("mydirectory"); System.out.println("Completed deleting the directory.");
For more information, see the Azure Docs.
- Parameters:
directoryName
- Name of the directory- Throws:
ShareStorageException
- If the share doesn't exist or the directory isn't empty
-
deleteDirectoryWithResponse
public com.azure.core.http.rest.Response<Void> deleteDirectoryWithResponse(String directoryName, Duration timeout, com.azure.core.util.Context context) Deletes the specified directory in the share.Code Samples
Delete the directory "mydirectory"
Response<Void> response = shareClient.deleteDirectoryWithResponse("mydirectory", Duration.ofSeconds(1), new Context(key1, value1)); System.out.println("Complete deleting the directory with status code: " + response.getStatusCode());
For more information, see the Azure Docs.
- Parameters:
directoryName
- Name of the directorytimeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response that only contains headers and response status code
- Throws:
ShareStorageException
- If the share doesn't exist or the directory isn't emptyRuntimeException
- if the operation doesn't complete before the timeout concludes.
-
deleteDirectoryIfExists
Deletes the specified directory in the share if it exists.Code Samples
Delete the directory "mydirectory"
boolean result = shareClient.deleteDirectoryIfExists("mydirectory"); System.out.println("Directory deleted: " + result);
For more information, see the Azure Docs.
- Parameters:
directoryName
- Name of the directory- Returns:
true
if the directory is successfully deleted,false
if the directory does not exist.- Throws:
ShareStorageException
- If the directory isn't empty
-
deleteDirectoryIfExistsWithResponse
public com.azure.core.http.rest.Response<Boolean> deleteDirectoryIfExistsWithResponse(String directoryName, Duration timeout, com.azure.core.util.Context context) Deletes the specified directory in the share if it exists.Code Samples
Delete the directory "mydirectory"
Response<Boolean> response = shareClient.deleteDirectoryIfExistsWithResponse("mydirectory", Duration.ofSeconds(1), new Context(key1, value1)); if (response.getStatusCode() == 404) { System.out.println("Does not exist."); } else { System.out.printf("Delete completed with status %d%n", response.getStatusCode()); }
For more information, see the Azure Docs.
- Parameters:
directoryName
- Name of the directorytimeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response containing status code and HTTP headers. If
Response
's status code is 202, the directory was successfully deleted. If status code is 404, the directory does not exist. - Throws:
ShareStorageException
- If the directory isn't emptyRuntimeException
- if the operation doesn't complete before the timeout concludes.
-
deleteFile
Deletes the specified file in the share.Code Samples
Delete the file "myfile"
shareClient.deleteFile("myfile"); System.out.println("Complete deleting the file.");
For more information, see the Azure Docs.
- Parameters:
fileName
- Name of the file- Throws:
ShareStorageException
- If the share or the file doesn't exist.
-
deleteFileWithResponse
public com.azure.core.http.rest.Response<Void> deleteFileWithResponse(String fileName, Duration timeout, com.azure.core.util.Context context) Deletes the specified file in the share.Code Samples
Delete the file "myfile"
Response<Void> response = shareClient.deleteFileWithResponse("myfile", Duration.ofSeconds(1), new Context(key1, value1)); System.out.println("Complete deleting the file with status code: " + response.getStatusCode());
For more information, see the Azure Docs.
- Parameters:
fileName
- Name of the filetimeout
- An optional timeout applied to the operation. If a response is not returned before the timeout concludes aRuntimeException
will be thrown.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response that only contains headers and response status code
- Throws:
ShareStorageException
- If the share or the file doesn't exist.RuntimeException
- if the operation doesn't complete before the timeout concludes.
-
deleteFileIfExists
Deletes the specified file in the share if it exists.Code Samples
Delete the file "myfile"
boolean result = shareClient.deleteFileIfExists("myfile"); System.out.println("File deleted: " + result);
For more information, see the Azure Docs.
- Parameters:
fileName
- Name of the file- Returns:
true
if the file is successfully deleted,false
if the file does not exist.
-
createPermission
Creates a permission at the share level. If a permission already exists, it returns the key of it, else creates a new permission and returns the key.Code Samples
String response = shareClient.createPermission("filePermission"); System.out.printf("The file permission key is %s", response);
- Parameters:
filePermission
- The file permission to get/create.- Returns:
- The file permission key associated with the file permission.
-
createPermissionWithResponse
public com.azure.core.http.rest.Response<String> createPermissionWithResponse(String filePermission, com.azure.core.util.Context context) Creates a permission t the share level. If a permission already exists, it returns the key of it, else creates a new permission and returns the key.Code Samples
Response<String> response = shareClient.createPermissionWithResponse("filePermission", Context.NONE); System.out.printf("The file permission key is %s", response.getValue());
- Parameters:
filePermission
- The file permission to get/create.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response that contains the file permission key associated with the file permission.
-
getPermission
Gets a permission for a given keyCode Samples
String response = shareClient.getPermission("filePermissionKey"); System.out.printf("The file permission is %s", response);
- Parameters:
filePermissionKey
- The file permission key.- Returns:
- The file permission associated with the file permission key.
-
getPermissionWithResponse
public com.azure.core.http.rest.Response<String> getPermissionWithResponse(String filePermissionKey, com.azure.core.util.Context context) Gets a permission for a given key.Code Samples
Response<String> response = shareClient.getPermissionWithResponse("filePermissionKey", Context.NONE); System.out.printf("The file permission is %s", response.getValue());
- Parameters:
filePermissionKey
- The file permission key.context
- Additional context that is passed through the Http pipeline during the service call.- Returns:
- A response that contains th file permission associated with the file permission key.
-
getSnapshotId
Get snapshot id which attached toShareClient
. Returnnull
if no snapshot id attached.Code Samples
Get the share snapshot id.
OffsetDateTime currentTime = OffsetDateTime.of(LocalDateTime.now(), ZoneOffset.UTC); ShareClient shareClient = new ShareClientBuilder().endpoint("https://${accountName}.file.core.windows.net") .sasToken("${SASToken}") .shareName("myshare") .snapshot(currentTime.toString()) .buildClient(); System.out.printf("Snapshot ID: %s%n", shareClient.getSnapshotId());
- Returns:
- The snapshot id which is a unique
DateTime
value that identifies the share snapshot to its base share.
-
getAccountName
Get associated account name.- Returns:
- account name associated with this storage resource.
-
getHttpPipeline
public com.azure.core.http.HttpPipeline getHttpPipeline()Gets theHttpPipeline
powering this client.- Returns:
- The pipeline.
-
setProperties(ShareSetPropertiesOptions)