CosmosOperations Interface
public interface CosmosOperations
Interface for cosmosDB operations
Method Summary
Method Details
<S,T>deleteEntities
public abstract void <S,T>deleteEntities(CosmosEntityInformation<T,?> information, Iterable entities)
Delete using a list of entities with bulk
Parameters:
<S,T>insertAll
public abstract Iterable <S,T>insertAll(CosmosEntityInformation<T,?> information, Iterable entities)
Insert items using bulk operations.
Parameters:
Returns:
<T,ID>findByIds
public abstract Iterable<T> <T,ID>findByIds(Iterable<ID> ids, Class<T> domainType, String containerName)
Find by ids
Parameters:
Returns:
count
public abstract long <T>count(CosmosQuery query, String containerName)
Count
Parameters:
Returns:
count
public abstract long <T>count(SqlQuerySpec querySpec, String containerName)
Count
Parameters:
Returns:
count
public abstract long count(String containerName)
Count
Parameters:
Returns:
createContainerIfNotExists
public abstract CosmosContainerProperties createContainerIfNotExists(CosmosEntityInformation information)
Creates container if not exists
Parameters:
Returns:
delete
public abstract Iterable<T> <T>delete(CosmosQuery query, Class<T> domainType, String containerName)
Delete items matching query. Uses bulk if possible.
Parameters:
Returns:
deleteAll
public abstract void deleteAll(String containerName, Class<?> domainType)
Delete all items in a container. Uses bulk if possible.
Parameters:
deleteById
public abstract void deleteById(String containerName, Object id, PartitionKey partitionKey)
Delete an item by id
Parameters:
deleteContainer
public abstract void deleteContainer(String containerName)
Delete container
Parameters:
deleteEntity
public abstract void <T>deleteEntity(String containerName, T entity)
Delete using entity
Parameters:
exists
public abstract Boolean <T>exists(CosmosQuery query, Class<T> domainType, String containerName)
Exists
Parameters:
Returns:
find
public abstract Iterable<T> <T>find(CosmosQuery query, Class<T> domainType, String containerName)
Find query
Parameters:
Returns:
findAll
public abstract Iterable<T> <T>findAll(Class<T> domainType)
Find the DocumentQuery, find all the items specified by domain type.
Parameters:
Returns:
findAll
public abstract Page<T> <T>findAll(Pageable pageable, Class<T> domainType, String containerName)
Find all items in a given container with partition key
Parameters:
Returns:
findAll
public abstract Iterable<T> <T>findAll(PartitionKey partitionKey, Class<T> domainType)
Find the DocumentQuery, find all the items specified by domain type in the given container.
Parameters:
Returns:
findAll
public abstract Iterable<T> <T>findAll(String containerName, Class<T> domainType)
Find the DocumentQuery, find all the items specified by domain type in the given container.
Parameters:
Returns:
findById
public abstract T <T>findById(Object id, Class<T> domainType)
Finds item by id
Parameters:
Returns:
findById
public abstract T <T>findById(Object id, Class<T> domainType, PartitionKey partitionKey)
Finds item by id
Parameters:
Returns:
findById
public abstract T <T>findById(String containerName, Object id, Class<T> domainType)
Finds item by id
Parameters:
Returns:
getContainerName
public abstract String getContainerName(Class<?> domainType)
To get container name by domainType
Parameters:
Returns:
getContainerProperties
public abstract CosmosContainerProperties getContainerProperties(String containerName)
Get properties for specified container
Parameters:
Returns:
getConverter
public abstract MappingCosmosConverter getConverter()
To get converter
Returns:
insert
public abstract T <T>insert(String containerName, T objectToSave)
Inserts item
Parameters:
Returns:
insert
public abstract T <T>insert(String containerName, T objectToSave, PartitionKey partitionKey)
Inserts item
Parameters:
Returns:
insert
public abstract T <T>insert(T objectToSave, PartitionKey partitionKey)
Inserts item
Parameters:
Returns:
paginationQuery
public abstract Page<T> <T>paginationQuery(CosmosQuery query, Class<T> domainType, String containerName)
Pagination query
Parameters:
Returns:
patch
public abstract T <T>patch(Object id, PartitionKey partitionKey, Class<T> domainType, CosmosPatchOperations patchOperations)
patches item
Parameters:
Returns:
patch
public abstract T <T>patch(Object id, PartitionKey partitionKey, Class<T> domainType, CosmosPatchOperations patchOperations, CosmosPatchItemRequestOptions options)
patches item
Parameters:
Returns:
replaceContainerProperties
public abstract CosmosContainerProperties replaceContainerProperties(String containerName, CosmosContainerProperties properties)
Replace container properties for the specified container
Parameters:
Returns:
runPaginationQuery
public abstract Page<T> <T>runPaginationQuery(SqlQuerySpec querySpec, Pageable pageable, Class<?> domainType, Class<T> returnType)
Run the query.
Parameters:
Returns:
runQuery
public abstract Iterable<T> <T>runQuery(SqlQuerySpec querySpec, Class<?> domainType, Class<T> returnType)
Run the query.
Parameters:
Returns:
runQuery
public abstract Iterable<T> <T>runQuery(SqlQuerySpec querySpec, Sort sort, Class<?> domainType, Class<T> returnType)
Run the query.
Parameters:
Returns:
runSliceQuery
public abstract Slice<T> <T>runSliceQuery(SqlQuerySpec querySpec, Pageable pageable, Class<?> domainType, Class<T> returnType)
Run custom SQL query
Parameters:
Returns:
sliceQuery
public abstract Slice<T> <T>sliceQuery(CosmosQuery query, Class<T> domainType, String containerName)
Slice query
Parameters:
Returns:
sum
public abstract long sum(SqlQuerySpec querySpec, String containerName)
Sum
Parameters:
Returns:
upsert
public abstract void <T>upsert(String containerName, T object)
Upserts an item into container with partition key
Parameters:
upsert
public abstract void <T>upsert(T object)
Upserts an item with partition key
Parameters:
upsertAndReturnEntity
public abstract T <T>upsertAndReturnEntity(String containerName, T object)
Upserts an item and return item properties
Parameters:
Returns: