We now resolve property names pointing to a composite key property into its individual column names to be applies in a SELECT projection or for ordering.
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.
We now correctly use the CQL text to cache prepared statements. Previously, we used toString() which was a leftover from the driver migration that now defaults to Object.toString() and so the cache key was not stable.
Original pull request: #180.
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>())
We now attempt to extract the CQL query from various Statement and CqlProvider objects to log the CQL query.
Previously, the logger used the statement object with didn't render the query.
Use InstanceSupplier to configure the contactPoints property. Using BeanDefinitionBuilder.addPropertyValue(…) uses reflection for setting the property value and for value type discovers. The discovered property descriptor depends on the actual method order in which setters are discovered hence the actual type may change from String to Collection<InetSocketAddress>. Therefore we avoid using reflection for contactPoints.
Original pull request: #178.
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.