Package com.azure.cosmos
Class CosmosClient
java.lang.Object
com.azure.cosmos.CosmosClient
- All Implemented Interfaces:
Closeable,AutoCloseable
Provides a client-side logical representation of the Azure Cosmos DB service.
Calls to CosmosClient API's are blocked for completion.
CosmosClient is thread-safe. It's recommended to maintain a single instance of CosmosClient per lifetime of the application which enables efficient connection management and performance. CosmosClient initialization is a heavy operation - don't use initialization CosmosClient instances as credentials or network connectivity validations.
-
Method Summary
Modifier and TypeMethodDescriptionvoidclose()Close thisCosmosClientinstance.createDatabase(CosmosDatabaseProperties databaseProperties) Creates a Cosmos database.createDatabase(CosmosDatabaseProperties databaseProperties, CosmosDatabaseRequestOptions options) Creates a database.createDatabase(CosmosDatabaseProperties databaseProperties, ThroughputProperties throughputProperties) Creates a Cosmos database.createDatabase(CosmosDatabaseProperties databaseProperties, ThroughputProperties throughputProperties, CosmosDatabaseRequestOptions options) Creates a Cosmos database.createDatabase(String id) Creates a Cosmos database.createDatabase(String id, ThroughputProperties throughputProperties) Creates a Cosmos database.Create a Cosmos database if it does not already exist on the service.createDatabaseIfNotExists(String id, ThroughputProperties throughputProperties) Create a Cosmos database if it does not already exist on the service.createGlobalThroughputControlConfigBuilder(String databaseId, String containerId) Create global throughput control config builder which will be used to buildGlobalThroughputControlConfig.getDatabase(String id) Gets the Cosmos database instance without making a service call.queryDatabases(SqlQuerySpec querySpec, CosmosQueryRequestOptions options) Query a Cosmos database.queryDatabases(String query, CosmosQueryRequestOptions options) Query a Cosmos database.Reads all Cosmos databases.
-
Method Details
-
createDatabaseIfNotExists
public CosmosDatabaseResponse createDatabaseIfNotExists(String id, ThroughputProperties throughputProperties) Create a Cosmos database if it does not already exist on the service.ThroughputProperties throughputProperties = ThroughputProperties .createAutoscaledThroughput(autoScaleMaxThroughput); cosmosClient.createDatabaseIfNotExists(databaseName, throughputProperties);The throughputProperties will only be used if the specified database does not exist and therefor a new database will be created with throughputProperties.- Parameters:
id- the id of the database.throughputProperties- the throughputProperties.- Returns:
- the
CosmosDatabaseResponsewith the created database.
-
createDatabaseIfNotExists
Create a Cosmos database if it does not already exist on the service.CosmosDatabaseProperties databaseProperties = new CosmosDatabaseProperties(databaseName); cosmosClient.createDatabaseIfNotExists(databaseProperties);
- Parameters:
id- the id of the database.- Returns:
- the
CosmosDatabaseResponsewith the created database.
-
createDatabase
public CosmosDatabaseResponse createDatabase(CosmosDatabaseProperties databaseProperties, CosmosDatabaseRequestOptions options) Creates a database.CosmosDatabaseProperties databaseProperties = new CosmosDatabaseProperties(databaseName); cosmosClient.createDatabase(databaseProperties);
- Parameters:
databaseProperties-CosmosDatabasePropertiesthe database properties.options- the request options.- Returns:
- the
CosmosDatabaseResponsewith the created database. - Throws:
CosmosException- if resource with specified id already exists
-
createDatabase
Creates a Cosmos database.CosmosDatabaseProperties databaseProperties = new CosmosDatabaseProperties(databaseName); cosmosClient.createDatabase(databaseProperties);
- Parameters:
databaseProperties-CosmosDatabasePropertiesthe database properties.- Returns:
- the
CosmosDatabaseResponsewith the created database. - Throws:
CosmosException- if resource with specified id already exists
-
createDatabase
Creates a Cosmos database.CosmosDatabaseProperties databaseProperties = new CosmosDatabaseProperties(databaseName); cosmosClient.createDatabase(databaseProperties);
- Parameters:
id- the id of the database.- Returns:
- the
CosmosDatabaseResponsewith the created database. - Throws:
CosmosException- if resource with specified id already exists
-
createDatabase
public CosmosDatabaseResponse createDatabase(CosmosDatabaseProperties databaseProperties, ThroughputProperties throughputProperties, CosmosDatabaseRequestOptions options) Creates a Cosmos database.ThroughputProperties throughputProperties = ThroughputProperties .createAutoscaledThroughput(autoScaleMaxThroughput); cosmosClient.createDatabase(databaseName, throughputProperties);- Parameters:
databaseProperties-CosmosDatabasePropertiesthe database properties.throughputProperties- the throughput properties.options-CosmosDatabaseRequestOptionsthe request options.- Returns:
- the
CosmosDatabaseResponsewith the created database. - Throws:
CosmosException- if resource with specified id already exists
-
createDatabase
public CosmosDatabaseResponse createDatabase(CosmosDatabaseProperties databaseProperties, ThroughputProperties throughputProperties) Creates a Cosmos database.ThroughputProperties throughputProperties = ThroughputProperties .createAutoscaledThroughput(autoScaleMaxThroughput); cosmosClient.createDatabase(databaseName, throughputProperties);- Parameters:
databaseProperties-CosmosDatabasePropertiesthe database properties.throughputProperties- the throughput properties.- Returns:
- the
CosmosDatabaseResponsewith the created database. - Throws:
CosmosException- if resource with specified id already exists
-
createDatabase
Creates a Cosmos database.ThroughputProperties throughputProperties = ThroughputProperties .createAutoscaledThroughput(autoScaleMaxThroughput); cosmosClient.createDatabase(databaseName, throughputProperties);- Parameters:
id- the id of the database.throughputProperties- the throughput properties.- Returns:
- the
CosmosDatabaseResponsewith the created database. - Throws:
CosmosException- if resource with specified id already exists
-
readAllDatabases
Reads all Cosmos databases.CosmosPagedIterable<CosmosDatabaseProperties> cosmosDatabaseProperties = cosmosClient.readAllDatabases(); cosmosDatabaseProperties.forEach(databaseProperties -> { System.out.println(databaseProperties); });- Returns:
- the
CosmosPagedIterablefor feed response with the read databases.
-
queryDatabases
public CosmosPagedIterable<CosmosDatabaseProperties> queryDatabases(String query, CosmosQueryRequestOptions options) Query a Cosmos database.CosmosQueryRequestOptions options = new CosmosQueryRequestOptions(); CosmosPagedIterable<CosmosDatabaseProperties> databaseProperties = cosmosClient.queryDatabases("select * from d", options); databaseProperties.forEach(properties -> { System.out.println(properties.getId()); });- Parameters:
query- the query.options-CosmosQueryRequestOptionsthe feed options.- Returns:
- the
CosmosPagedIterablefor feed response with the obtained databases.
-
queryDatabases
public CosmosPagedIterable<CosmosDatabaseProperties> queryDatabases(SqlQuerySpec querySpec, CosmosQueryRequestOptions options) Query a Cosmos database.CosmosQueryRequestOptions options = new CosmosQueryRequestOptions(); CosmosPagedIterable<CosmosDatabaseProperties> databaseProperties = cosmosClient.queryDatabases("select * from d", options); databaseProperties.forEach(properties -> { System.out.println(properties.getId()); });- Parameters:
querySpec-SqlQuerySpecthe query spec.options- the query request options.- Returns:
- the
CosmosPagedIterablefor feed response with the obtained databases.
-
getDatabase
Gets the Cosmos database instance without making a service call.- Parameters:
id- the id of the database.- Returns:
CosmosDatabasethe cosmos sync database.
-
close
public void close()Close thisCosmosClientinstance.- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable
-
createGlobalThroughputControlConfigBuilder
public GlobalThroughputControlConfigBuilder createGlobalThroughputControlConfigBuilder(String databaseId, String containerId) Create global throughput control config builder which will be used to buildGlobalThroughputControlConfig.- Parameters:
databaseId- The database id of the control container.containerId- The container id of the control container.- Returns:
- A
GlobalThroughputControlConfigBuilder.
-