Serves the same purpose as standard Scala CanBuildFrom
, however this one is Serializable
.
An Optional value with Cassandra in mind.
An Optional value with Cassandra in mind. There are three options
Value(value): Representing a value to be inserted from C*
Unset: Representing a value which should be skipped when writing to C*
Null: Representing a java null
, treated as a delete in C* (or empty collection)
Chains together several converters converting to the same type.
Chains together several converters converting to the same type. This way you can extend functionality of any converter to support new input types.
Serializable representation of column data type.
Handles nullable types and converts any null to null.
A type representing typed tuples.
A type representing typed tuples. A tuple consists of a sequence of values. Every value is identified by its 0-based position. Every value can be of a different type.
Machinery for converting objects of any type received from Cassandra into objects of Scala types.
Machinery for converting objects of any type received from Cassandra into objects of Scala types.
Every converter knows how to convert object to one type. See TypeConverter
companion object for a list of available converters.
A Cassandra user defined type field metadata.
A Cassandra user defined type field metadata. It consists of a name and an associated column type.
The word column
instead of field
is used in member names because we want to treat UDT field
entries in the same way as table columns, so that they are mappable to case classes.
This is also the reason why this class extends FieldDef
A Cassandra user defined type metadata.
A Cassandra user defined type metadata.
A UDT consists of a sequence of ordered fields, called columns
.
Formats timestamps and dates using CQL timestamp format yyyy-MM-dd HH:mm:ssZ
Parses following formats to Date
Parses following formats to Date
yyyy-MM-dd
yyyy-MM-ddX
yyyy-MM-dd HH:mm
yyyy-MM-dd HH:mmX
yyyy-MM-dd HH:mm:ss
yyyy-MM-dd HH:mm:ssX
yyyy-MM-dd HH:mm:ss.S
yyyy-MM-dd HH:mm:ss.SX
yyyy-MM-dd HH:mm:ss.SS
yyyy-MM-dd HH:mm:ss.SSX
yyyy-MM-dd HH:mm:ss.SSS
yyyy-MM-dd HH:mm:ss.SSSX
yyyy-MM-dd'T'HH:mm
yyyy-MM-dd'T'HH:mmX
yyyy-MM-dd'T'HH:mm:ss
yyyy-MM-dd'T'HH:mm:ssX
yyyy-MM-dd'T'HH:mm:ss.S
yyyy-MM-dd'T'HH:mm:ss.SX
yyyy-MM-dd'T'HH:mm:ss.SS
yyyy-MM-dd'T'HH:mm:ss.SSX
yyyy-MM-dd'T'HH:mm:ss.SSS
yyyy-MM-dd'T'HH:mm:ss.SSSX
Waring! If time zone is not specified, the value is parsed to date in the default time zone.
Defines a set of converters and implicit functions used to look up an appropriate converter for a desired type.
Defines a set of converters and implicit functions used to look up an appropriate converter for
a desired type. Thanks to implicit method lookup, it is possible to implement a generic
method CassandraRow#get
, which picks up the right converter basing solely on its type argument.
An object representing a column which will be skipped on insert.
An object representing a column which will be skipped on insert.
Makes sure the sequence does not contain any lazy transformations.
Makes sure the sequence does not contain any lazy transformations. This guarantees that if T is Serializable, the collection is Serializable.
Offers type conversion magic, so you can receive Cassandra column values in a form you like the most. Simply specify the type you want to use on the Scala side, and the column value will be converted automatically. Works also with complex objects like collections.