We now support prepared statement usage through CassandraTemplate and its asynchronous and reactive variants. All statements created or received by CassandraTemplate will be prepared. CassandraTemplate is an infrastructure class for repositories so prepared statements will affect repositories, too.
Removed the language of oppression and violence
and replaced it with more neutral language.
Note that problematic words in the code have
to remain in the docs until the code changes.
Original pull request: #176.
DataClassRowMapper can map Cassandra results onto a class following the data class pattern (using constructor properties) or by setting bean properties.
data class Person(val firstname: String, val age: Int)
cqlTemplate.query("SELECT * FROM person", DataClassRowMapper<Person>())
Reflect changes in documentation. Accept IPv6 hosts with port.
Replace session builder supplier with template method and a specific implementation in the tests.
Make methods static where possible and reorder fields/classes according their visibility. Reduce test method visibility, add ticket references. Reformat code.
Original pull request: #178.
Reformat code. Add since tags. Extend keyspace association to PreparedStatements so that simple CQL statements get associated with the keyspace upon prepare. Remove check if a statement is a bound statement as prepared statements should not fail with applyStatementSettings(…).
Fix keyspace configuration in …Options objects as Insert/Update/Delete options should consider the keyspace when using the builder. Extend tests.
Simplify Cassandra version check. Ensure the discovery session gets closed after its use.
Original pull request: #177.
We now support context extensions that contribute contextual details using a reactive programming model for evaluation of SpEL expressions in @Query methods.
We now support reactive auditing by providing the EnableReactiveCassandraAuditing annotation. Previously, EnableCassandraAuditing no longer registers ReactiveAuditingEntityCallback for date-only auditing, the callback is now only registered when using EnableReactiveCassandraAuditing.