Class TableServiceAsyncClient
The client encapsulates the URL for the Tables service endpoint and the credentials for accessing the storage or CosmosDB table API account. It provides methods to create, delete, and list tables within the account. These methods invoke REST API operations to make the requests and obtain the results that are returned.
Instances of this client are obtained by calling the TableServiceClientBuilder.buildAsyncClient() method
on a TableServiceClientBuilder object.
Samples to construct an async client
TableServiceAsyncClient tableServiceAsyncClient = new TableServiceClientBuilder()
.endpoint("https://myvault.azure.net/")
.credential(new AzureNamedKeyCredential("name", "key"))
.buildAsyncClient();
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptioncreateTable(String tableName) Creates a table within the Tables service.createTableIfNotExists(String tableName) Creates a table within the Tables service if the table does not already exist.createTableIfNotExistsWithResponse(String tableName) Creates a table within the Tables service if the table does not already exist.createTableWithResponse(String tableName) Creates a table within the Tables service.deleteTable(String tableName) Deletes a table within the Tables service.deleteTableWithResponse(String tableName) Deletes a table within the Tables service.generateAccountSas(TableAccountSasSignatureValues tableAccountSasSignatureValues) Generates an account SAS for the Azure Storage account using the specifiedTableAccountSasSignatureValues.Gets the name of the account containing the table.Gets the properties of the account's Table service, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.Gets the properties of the account's Table service, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.Gets the endpoint for the Tables service.Gets the REST API version used by this client.Retrieves statistics related to replication for the account's Table service.Retrieves statistics related to replication for the account's Table service.getTableClient(String tableName) Gets aTableAsyncClientinstance for the table in the account with the providedtableName.Lists all tables within the account.listTables(ListTablesOptions options) Lists tables using the parameters in the provided options.setProperties(TableServiceProperties tableServiceProperties) Sets the properties of the account's Table service, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.setPropertiesWithResponse(TableServiceProperties tableServiceProperties) Sets the properties of an account's Table service, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.
-
Method Details
-
getAccountName
Gets the name of the account containing the table.- Returns:
- The name of the account containing the table.
-
getServiceEndpoint
Gets the endpoint for the Tables service.- Returns:
- The endpoint for the Tables service.
-
getServiceVersion
Gets the REST API version used by this client.- Returns:
- The REST API version used by this client.
-
generateAccountSas
Generates an account SAS for the Azure Storage account using the specifiedTableAccountSasSignatureValues.Note: The client must be authenticated via
AzureNamedKeyCredential.See
TableAccountSasSignatureValuesfor more information on how to construct an account SAS.- Parameters:
tableAccountSasSignatureValues-TableAccountSasSignatureValues.- Returns:
- A
Stringrepresenting the SAS query parameters. - Throws:
IllegalStateException- If thisTableClientis not authenticated with anAzureNamedKeyCredential.
-
getTableClient
Gets aTableAsyncClientinstance for the table in the account with the providedtableName. The resultingTableAsyncClientwill use the samepipelineandservice versionas thisTableServiceAsyncClient.- Parameters:
tableName- The name of the table.- Returns:
- A
TableAsyncClientinstance for the table in the account with the providedtableName. - Throws:
IllegalArgumentException- IftableNameisnullor empty.
-
createTable
Creates a table within the Tables service.Code Samples
Creates a table. Prints out the details of the created table.
tableServiceAsyncClient.createTable("myTable") .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(tableAsyncClient -> System.out.printf("Table with name '%s' was created.", tableAsyncClient.getTableName()));- Parameters:
tableName- The name of the table to create.- Returns:
- A
Monocontaining aTableAsyncClientfor the created table. - Throws:
IllegalArgumentException- IftableNameisnullor empty.TableServiceException- If a table with the same name already exists within the service.
-
createTableWithResponse
Creates a table within the Tables service.Code Samples
Creates a table. Prints out the details of the
HTTP responseand the created table.tableServiceAsyncClient.createTableWithResponse("myTable") .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(response -> System.out.printf("Response successful with status code: %d. Table with name '%s' was created.", response.getStatusCode(), response.getValue().getTableName()));- Parameters:
tableName- The name of the table to create.- Returns:
- A
Monocontaining theHTTP responsethat in turn contains aTableAsyncClientfor the created table. - Throws:
IllegalArgumentException- IftableNameisnullor empty.TableServiceException- If a table with the same name already exists within the service.
-
createTableIfNotExists
Creates a table within the Tables service if the table does not already exist.Code Samples
Creates a table if it does not already exist. Prints out the details of the created table.
tableServiceAsyncClient.createTableIfNotExists("myTable") .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(tableAsyncClient -> System.out.printf("Table with name '%s' was created.", tableAsyncClient.getTableName()));- Parameters:
tableName- The name of the table to create.- Returns:
- A
Monocontaining aTableAsyncClientfor the created table. - Throws:
IllegalArgumentException- IftableNameisnullor empty.
-
createTableIfNotExistsWithResponse
Creates a table within the Tables service if the table does not already exist.Code Samples
Creates a table if it does not already exist. Prints out the details of the created table.
tableServiceAsyncClient.createTableIfNotExistsWithResponse("myTable") .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(response -> System.out.printf("Response successful with status code: %d. Table with name '%s' was created.", response.getStatusCode(), response.getValue().getTableName()));- Parameters:
tableName- The name of the table to create.- Returns:
- A
Monocontaining theHTTP responsethat in turn contains aTableAsyncClientfor the created table. - Throws:
IllegalArgumentException- IftableNameisnullor empty.
-
deleteTable
Deletes a table within the Tables service.Code Samples
Deletes a table.
String tableName = "myTable"; tableServiceAsyncClient.deleteTable(tableName) .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(unused -> System.out.printf("Table with name '%s' was deleted.", tableName));- Parameters:
tableName- The name of the table to delete.- Returns:
- An empty
Mono. - Throws:
IllegalArgumentException- IftableNameisnullor empty.TableServiceException- If the request is rejected by the service.
-
deleteTableWithResponse
Deletes a table within the Tables service.Code Samples
Deletes a table.
String myTableName = "myTable"; tableServiceAsyncClient.deleteTableWithResponse(myTableName) .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(response -> System.out.printf("Response successful with status code: %d. Table with name '%s' was deleted.", response.getStatusCode(), myTableName));- Parameters:
tableName- The name of the table to delete.- Returns:
- A
Monocontaining theHTTP response. - Throws:
IllegalArgumentException- IftableNameisnullor empty.TableServiceException- If the request is rejected by the service.
-
listTables
Lists all tables within the account.Code Samples
Lists all tables. Prints out the details of the retrieved tables.
tableServiceAsyncClient.listTables().subscribe(tableItem -> System.out.printf("Retrieved table with name '%s'.%n", tableItem.getName()));- Returns:
- A
PagedFluxcontaining all tables within the account. - Throws:
TableServiceException- If the request is rejected by the service.
-
listTables
Lists tables using the parameters in the provided options. If thefilterparameter in the options is set, only tables matching the filter will be returned. If thetopparameter is set, the maximum number of returned tables per page will be limited to that value.Code Samples
Lists all tables that match the filter. Prints out the details of the retrieved tables.
ListTablesOptions options = new ListTablesOptions().setFilter("TableName eq 'myTable'"); tableServiceAsyncClient.listTables(options).subscribe(tableItem -> System.out.printf("Retrieved table with name '%s'.%n", tableItem.getName()));- Parameters:
options- ThefilterandtopOData query options to apply to this operation.- Returns:
- A
PagedFluxcontaining matching tables within the account. - Throws:
IllegalArgumentException- If one or more of the OData query options inoptionsis malformed.TableServiceException- If the request is rejected by the service.
-
getProperties
Gets the properties of the account's Table service, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.This operation is only supported on Azure Storage endpoints.
Code Samples
Gets the properties of the account's Table service.
tableServiceAsyncClient.getProperties() .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(properties -> System.out.print("Retrieved service properties successfully."));- Returns:
- A
Monocontaining thepropertiesof the account's Table service. - Throws:
TableServiceException- If the request is rejected by the service.
-
getPropertiesWithResponse
Gets the properties of the account's Table service, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.This operation is only supported on Azure Storage endpoints.
Code Samples
Gets the properties of the account's Table service. Prints out the details of the
HTTP response.tableServiceAsyncClient.getPropertiesWithResponse() .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(response -> System.out.printf("Retrieved service properties successfully with status code: %d.", response.getStatusCode()));- Returns:
- A
Monocontaining theHTTP responsethat in turn contains thepropertiesof the account's Table service. - Throws:
TableServiceException- If the request is rejected by the service.
-
setProperties
Sets the properties of the account's Table service, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.This operation is only supported on Azure Storage endpoints.
Code Samples
Sets the properties of the account's Table service.
TableServiceProperties properties = new TableServiceProperties() .setHourMetrics(new TableServiceMetrics() .setVersion("1.0") .setEnabled(true)) .setLogging(new TableServiceLogging() .setAnalyticsVersion("1.0") .setReadLogged(true) .setRetentionPolicy(new TableServiceRetentionPolicy() .setEnabled(true) .setDaysToRetain(5))); tableServiceAsyncClient.setProperties(properties) .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(unused -> System.out.print("Set service properties successfully."));- Parameters:
tableServiceProperties- TheTableServicePropertiesto set.- Returns:
- An empty
Mono. - Throws:
TableServiceException- If the request is rejected by the service.
-
setPropertiesWithResponse
public Mono<Response<Void>> setPropertiesWithResponse(TableServiceProperties tableServiceProperties) Sets the properties of an account's Table service, including properties for Analytics and CORS (Cross-Origin Resource Sharing) rules.This operation is only supported on Azure Storage endpoints.
Code Samples
Sets the properties of the account's Table service. Prints out the details of the
HTTP response.TableServiceProperties myProperties = new TableServiceProperties() .setHourMetrics(new TableServiceMetrics() .setVersion("1.0") .setEnabled(true)) .setLogging(new TableServiceLogging() .setAnalyticsVersion("1.0") .setReadLogged(true) .setRetentionPolicy(new TableServiceRetentionPolicy() .setEnabled(true) .setDaysToRetain(5))); tableServiceAsyncClient.setPropertiesWithResponse(myProperties) .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(response -> System.out.printf("Retrieved service properties successfully with status code: %d.", response.getStatusCode()));- Parameters:
tableServiceProperties- TheTableServicePropertiesto set.- Returns:
- A
Monocontaining theHTTP response. - Throws:
TableServiceException- If the request is rejected by the service.
-
getStatistics
Retrieves statistics related to replication for the account's Table service. It is only available on the secondary location endpoint when read-access geo-redundant replication is enabled for the account.This operation is only supported on Azure Storage endpoints.
Code Samples
Gets the replication statistics of the account's Table service.
tableServiceAsyncClient.getStatistics() .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(statistics -> System.out.print("Retrieved service statistics successfully."));- Returns:
- A
Monocontainingstatisticsfor the account's Table service. - Throws:
TableServiceException- If the request is rejected by the service.
-
getStatisticsWithResponse
Retrieves statistics related to replication for the account's Table service. It is only available on the secondary location endpoint when read-access geo-redundant replication is enabled for the account.This operation is only supported on Azure Storage endpoints.
Code Samples
Gets the replication statistics of the account's Table service. Prints out the details of the
HTTP response.tableServiceAsyncClient.getStatisticsWithResponse() .contextWrite(Context.of("key1", "value1", "key2", "value2")) .subscribe(response -> System.out.printf("Retrieved service statistics successfully with status code: %d.", response.getStatusCode()));- Returns:
- A
Monocontaining theHTTP responsethat in turn containsstatisticsfor the account's Table service. - Throws:
TableServiceException- If the request is rejected by the service.
-