Interface AsyncCassandraOperations
- All Known Implementing Classes:
AsyncCassandraTemplate
Deprecated, for removal: This API element is subject to removal in a future version.
Interface specifying a basic set of asynchronous Cassandra operations. Implemented by
AsyncCassandraTemplate
.
Not often used directly, but a useful option to enhance testability, as it can easily be mocked or stubbed.- Since:
- 4.0
- Author:
- Mark Paluch, John Blum
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionDeprecated, for removal: This API element is subject to removal in a future version.Returns the number of rows for the given entity class.Deprecated, for removal: This API element is subject to removal in a future version.Returns the number of rows for the given entity class applyingQuery
.delete
(Object entity, QueryOptions options) Deprecated, for removal: This API element is subject to removal in a future version.Delete the given entity applyingQueryOptions
and return the entity if the delete statement was applied.default ListenableFuture<WriteResult>
delete
(Object entity, DeleteOptions options) Deprecated, for removal: This API element is subject to removal in a future version.Delete the given entity applyingDeleteOptions
and return the entity if the delete statement was applied.Deprecated, for removal: This API element is subject to removal in a future version.Remove entities (rows)/columns from the table byQuery
.<T> ListenableFuture<T>
delete
(T entity) Deprecated, for removal: This API element is subject to removal in a future version.Delete the given entity and return the entity if the delete statement was applied.deleteById
(Object id, Class<?> entityClass) Deprecated, for removal: This API element is subject to removal in a future version.Remove the given object from the table by id.ListenableFuture<com.datastax.oss.driver.api.core.cql.AsyncResultSet>
execute
(com.datastax.oss.driver.api.core.cql.Statement<?> statement) Deprecated, for removal: This API element is subject to removal in a future version.Execute the given CassandraStatement
.Deprecated, for removal: This API element is subject to removal in a future version.Determine whether a row ofentityClass
with the givenid
exists.Deprecated, for removal: This API element is subject to removal in a future version.Determine whether the result forentityClass
Query
yields at least one row.Deprecated, for removal: This API element is subject to removal in a future version.Expose the underlyingAsyncCqlOperations
to allow asynchronous CQL operations.Deprecated, for removal: This API element is subject to removal in a future version.Returns the underlyingCassandraConverter
.<T> ListenableFuture<T>
insert
(T entity) Deprecated, for removal: This API element is subject to removal in a future version.Insert the given entity and return the entity if the insert was applied.<T> ListenableFuture<EntityWriteResult<T>>
insert
(T entity, InsertOptions options) Deprecated, for removal: This API element is subject to removal in a future version.Insert the given entity applyingWriteOptions
and return the entity if the insert was applied.<T> ListenableFuture<List<T>>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items to aList
of entities.<T> ListenableFuture<Void>
select
(com.datastax.oss.driver.api.core.cql.Statement<?> statement, Consumer<T> entityConsumer, Class<T> entityClass) Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items notifyingConsumer
for each entity.<T> ListenableFuture<List<T>>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items to aList
of entities.<T> ListenableFuture<Void>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items notifyingConsumer
for each entity.<T> ListenableFuture<List<T>>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items to aList
of entities.<T> ListenableFuture<Void>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items notifyingConsumer
for each entity.<T> ListenableFuture<T>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting item to an entity.<T> ListenableFuture<T>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting item to an entity.<T> ListenableFuture<T>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting item to an entity.<T> ListenableFuture<T>
selectOneById
(Object id, Class<T> entityClass) Deprecated, for removal: This API element is subject to removal in a future version.Execute the Select byid
for the givenentityClass
.<T> ListenableFuture<Slice<T>>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query with paging and convert the result set to aSlice
of entities.<T> ListenableFuture<Slice<T>>
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query with paging and convert the result set to aSlice
of entities.Deprecated, for removal: This API element is subject to removal in a future version.Execute aTRUNCATE
query to remove all entities of a given class.Deprecated, for removal: This API element is subject to removal in a future version.Update the queried entities and return true if the update was applied.<T> ListenableFuture<T>
update
(T entity) Deprecated, for removal: This API element is subject to removal in a future version.Update the given entity and return the entity if the update was applied.<T> ListenableFuture<EntityWriteResult<T>>
update
(T entity, UpdateOptions options) Deprecated, for removal: This API element is subject to removal in a future version.Update the given entity applyingWriteOptions
and return the entity if the update was applied.
-
Method Details
-
getAsyncCqlOperations
AsyncCqlOperations getAsyncCqlOperations()Deprecated, for removal: This API element is subject to removal in a future version.Expose the underlyingAsyncCqlOperations
to allow asynchronous CQL operations.- Returns:
- the underlying
AsyncCqlOperations
. - See Also:
-
getConverter
CassandraConverter getConverter()Deprecated, for removal: This API element is subject to removal in a future version.Returns the underlyingCassandraConverter
.- Returns:
- the underlying
CassandraConverter
.
-
select
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items to aList
of entities.- Parameters:
cql
- must not be null.entityClass
- The entity type must not be null.- Returns:
- the converted results
- Throws:
DataAccessException
- if there is any problem executing the query.
-
select
<T> ListenableFuture<Void> select(String cql, Consumer<T> entityConsumer, Class<T> entityClass) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items notifyingConsumer
for each entity.- Parameters:
cql
- must not be null.entityConsumer
- object that will be notified on each entity, one object at a time, must not be null.entityClass
- The entity type must not be null.- Returns:
- the completion handle
- Throws:
DataAccessException
- if there is any problem executing the query.
-
selectOne
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting item to an entity.- Parameters:
cql
- must not be null.entityClass
- The entity type must not be null.- Returns:
- the converted object or null.
- Throws:
DataAccessException
- if there is any problem executing the query.
-
execute
ListenableFuture<com.datastax.oss.driver.api.core.cql.AsyncResultSet> execute(com.datastax.oss.driver.api.core.cql.Statement<?> statement) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Execute the given CassandraStatement
. Any errors that result from executing this command will be converted into Spring's DAO exception hierarchy.- Parameters:
statement
- a CassandraStatement
, must not be null.- Returns:
- the
AsyncResultSet
. - Throws:
DataAccessException
- if there is any problem executing the query.- Since:
- 3.2
-
select
<T> ListenableFuture<List<T>> select(com.datastax.oss.driver.api.core.cql.Statement<?> statement, Class<T> entityClass) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items to aList
of entities.- Parameters:
statement
- must not be null.entityClass
- The entity type must not be null.- Returns:
- the converted results
- Throws:
DataAccessException
- if there is any problem executing the query.
-
slice
<T> ListenableFuture<Slice<T>> slice(com.datastax.oss.driver.api.core.cql.Statement<?> statement, Class<T> entityClass) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query with paging and convert the result set to aSlice
of entities. A sliced query translates the effectivefetch size
to the page size.- Parameters:
statement
- the CQL statement, must not be null.entityClass
- The entity type must not be null.- Returns:
- the converted results
- Throws:
DataAccessException
- if there is any problem executing the query.- See Also:
-
select
<T> ListenableFuture<Void> select(com.datastax.oss.driver.api.core.cql.Statement<?> statement, Consumer<T> entityConsumer, Class<T> entityClass) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items notifyingConsumer
for each entity.- Parameters:
statement
- must not be null.entityConsumer
- object that will be notified on each entity, one object at a time, must not be null.entityClass
- The entity type must not be null.- Returns:
- the completion handle
- Throws:
DataAccessException
- if there is any problem executing the query.
-
selectOne
<T> ListenableFuture<T> selectOne(com.datastax.oss.driver.api.core.cql.Statement<?> statement, Class<T> entityClass) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting item to an entity.- Parameters:
statement
- must not be null.entityClass
- The entity type must not be null.- Returns:
- the converted object or null.
- Throws:
DataAccessException
- if there is any problem executing the query.
-
select
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items to aList
of entities.- Parameters:
query
- must not be null.entityClass
- The entity type must not be null.- Returns:
- the converted results
- Throws:
DataAccessException
- if there is any problem executing the query.
-
slice
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query with paging and convert the result set to aSlice
of entities.- Parameters:
query
- the query object used to create a CQL statement, must not be null.entityClass
- The entity type must not be null.- Returns:
- the converted results
- Throws:
DataAccessException
- if there is any problem executing the query.- See Also:
-
select
<T> ListenableFuture<Void> select(Query query, Consumer<T> entityConsumer, Class<T> entityClass) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting items notifyingConsumer
for each entity.- Parameters:
query
- must not be null.entityConsumer
- object that will be notified on each entity, one object at a time, must not be null.entityClass
- The entity type must not be null.- Returns:
- the completion handle
- Throws:
DataAccessException
- if there is any problem executing the query.
-
selectOne
Deprecated, for removal: This API element is subject to removal in a future version.Execute aSELECT
query and convert the resulting item to an entity.- Parameters:
query
- must not be null.entityClass
- The entity type must not be null.- Returns:
- the converted object or null.
- Throws:
DataAccessException
- if there is any problem executing the query.
-
update
ListenableFuture<Boolean> update(Query query, Update update, Class<?> entityClass) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Update the queried entities and return true if the update was applied.- Parameters:
query
- must not be null.update
- must not be null.entityClass
- The entity type must not be null.- Throws:
DataAccessException
- if there is any problem executing the query.
-
delete
Deprecated, for removal: This API element is subject to removal in a future version.Remove entities (rows)/columns from the table byQuery
.- Parameters:
query
- must not be null.entityClass
- The entity type must not be null.- Returns:
- true if the deletion was applied.
- Throws:
DataAccessException
- if there is any problem executing the query.
-
count
Deprecated, for removal: This API element is subject to removal in a future version.Returns the number of rows for the given entity class.- Parameters:
entityClass
-type
of the entity; must not be null.- Returns:
- the number of existing entities.
- Throws:
DataAccessException
- if any problem occurs while executing the query.
-
count
Deprecated, for removal: This API element is subject to removal in a future version.Returns the number of rows for the given entity class applyingQuery
. This overridden method allows users to further refine the selection criteria using aQuery
predicate to determine how many entities of the giventype
match the criteria.- Parameters:
query
- user-provided countQuery
to execute; must not be null.entityClass
-type
of the entity; must not be null.- Returns:
- the number of existing entities.
- Throws:
DataAccessException
- if any problem occurs while executing the query.- Since:
- 2.1
-
exists
Deprecated, for removal: This API element is subject to removal in a future version.Determine whether a row ofentityClass
with the givenid
exists.- Parameters:
id
- Id value. For single primary keys it's the plain value. For composite primary keys either, it's an instance of eitherPrimaryKeyClass
orMapId
. Must not be null.entityClass
-type
of the entity; must not be null.- Returns:
- true if the object exists.
- Throws:
DataAccessException
- if any problem occurs while executing the query.
-
exists
Deprecated, for removal: This API element is subject to removal in a future version.Determine whether the result forentityClass
Query
yields at least one row.- Parameters:
query
- user-provided existsQuery
to execute; must not be null.entityClass
-type
of the entity; must not be null.- Returns:
- true if the object exists.
- Throws:
DataAccessException
- if any problem occurs while executing the query.- Since:
- 2.1
-
selectOneById
Deprecated, for removal: This API element is subject to removal in a future version.Execute the Select byid
for the givenentityClass
.- Parameters:
id
- the Id value. For single primary keys it's the plain value. For composite primary keys either thePrimaryKeyClass
orMapId
. Must not be null.entityClass
- The entity type must not be null.- Returns:
- the converted object or null.
- Throws:
DataAccessException
- if there is any problem executing the query.
-
insert
Deprecated, for removal: This API element is subject to removal in a future version.Insert the given entity and return the entity if the insert was applied.- Parameters:
entity
- The entity to insert, must not be null.- Returns:
- the inserted entity.
- Throws:
DataAccessException
- if there is any problem executing the query.
-
insert
<T> ListenableFuture<EntityWriteResult<T>> insert(T entity, InsertOptions options) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Insert the given entity applyingWriteOptions
and return the entity if the insert was applied.- Parameters:
entity
- The entity to insert, must not be null.options
- must not be null.- Returns:
- the
EntityWriteResult
for this operation. - Throws:
DataAccessException
- if there is any problem executing the query.- See Also:
-
update
Deprecated, for removal: This API element is subject to removal in a future version.Update the given entity and return the entity if the update was applied.- Parameters:
entity
- The entity to update, must not be null.- Returns:
- the updated entity.
- Throws:
DataAccessException
- if there is any problem executing the query.
-
update
<T> ListenableFuture<EntityWriteResult<T>> update(T entity, UpdateOptions options) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Update the given entity applyingWriteOptions
and return the entity if the update was applied.- Parameters:
entity
- The entity to update, must not be null.options
- must not be null.- Returns:
- the
EntityWriteResult
for this operation. - Throws:
DataAccessException
- if there is any problem executing the query.- See Also:
-
delete
Deprecated, for removal: This API element is subject to removal in a future version.Delete the given entity and return the entity if the delete statement was applied.- Parameters:
entity
- must not be null.- Returns:
- the deleted entity.
- Throws:
DataAccessException
- if there is any problem executing the query.
-
delete
ListenableFuture<WriteResult> delete(Object entity, QueryOptions options) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Delete the given entity applyingQueryOptions
and return the entity if the delete statement was applied.- Parameters:
entity
- must not be null.options
- must not be null.- Returns:
- the
WriteResult
for this operation. - Throws:
DataAccessException
- if there is any problem executing the query.- See Also:
-
delete
default ListenableFuture<WriteResult> delete(Object entity, DeleteOptions options) throws DataAccessException Deprecated, for removal: This API element is subject to removal in a future version.Delete the given entity applyingDeleteOptions
and return the entity if the delete statement was applied.- Parameters:
entity
- must not be null.options
- must not be null.- Returns:
- the
WriteResult
for this operation. - Throws:
DataAccessException
- if there is any problem executing the query.- Since:
- 2.2
- See Also:
-
deleteById
Deprecated, for removal: This API element is subject to removal in a future version.Remove the given object from the table by id.- Parameters:
id
- the Id value. For single primary keys it's the plain value. For composite primary keys either thePrimaryKeyClass
orMapId
. Must not be null.entityClass
- The entity type must not be null.- Returns:
- true if the deletion was applied.
- Throws:
DataAccessException
- if there is any problem executing the query.
-
truncate
Deprecated, for removal: This API element is subject to removal in a future version.Execute aTRUNCATE
query to remove all entities of a given class.- Parameters:
entityClass
- The entity type must not be null.- Throws:
DataAccessException
- if there is any problem executing the query.
-
CompletableFuture
-based variantAsyncCassandraTemplate
.