spring-projects / spring-data-cassandra

Provides support to increase developer productivity in Java when using Apache Cassandra. Uses familiar Spring concepts such as a template classes for core API usage and lightweight repository style data access.
https://spring.io/projects/spring-data-cassandra/
Apache License 2.0
381 stars 311 forks source link

Create `CompletableFuture`-based `AsyncCassandraOperations` and `AsyncCqlOperations` variants #1294

Closed mp911de closed 2 years ago

mp911de commented 2 years ago

Our AsyncCassandraOperations returns ListenableFuture as synchronization handle. With Spring Framework 6, ListenableFuture is being deprecated and that creates an opportunity to revisit our asynchronous Cassandra arrangement. We could deprecate AsyncCassandraOperations and move it into a side-by-side package to retain usage of the deprecated API while we introduce a AsyncCassandraOperations replacement based on CompletableFuture.

This path would not require to come up with a clunky name such as CompletableCassandraOperations and it would still allow usage of the ListenableFuture-based API.