public class ZonedDateTimeCodec extends com.datastax.driver.core.TypeCodec.AbstractTupleCodec<ZonedDateTime>
TypeCodec that maps
ZonedDateTime to CQL tuple<timestamp,varchar>,
providing a pattern for maintaining timezone information in
Cassandra.
Since Cassandra's timestamp type preserves only
milliseconds since epoch, any timezone information
would normally be lost. By using a
tuple<timestamp,varchar> a timezone ID can be
persisted in the varchar field such that when the
value is deserialized the timezone is
preserved.
IMPORTANT: this codec's format method formats
timestamps using an ISO-8601 format that includes milliseconds.
This format is incompatible with Cassandra versions < 2.0.9.com.datastax.driver.core.TypeCodec.AbstractCollectionCodec<E,C extends Collection<E>>, com.datastax.driver.core.TypeCodec.AbstractMapCodec<K,V>, com.datastax.driver.core.TypeCodec.AbstractTupleCodec<T>, com.datastax.driver.core.TypeCodec.AbstractUDTCodec<T>, com.datastax.driver.core.TypeCodec.PrimitiveBooleanCodec, com.datastax.driver.core.TypeCodec.PrimitiveByteCodec, com.datastax.driver.core.TypeCodec.PrimitiveDoubleCodec, com.datastax.driver.core.TypeCodec.PrimitiveFloatCodec, com.datastax.driver.core.TypeCodec.PrimitiveIntCodec, com.datastax.driver.core.TypeCodec.PrimitiveLongCodec, com.datastax.driver.core.TypeCodec.PrimitiveShortCodec| Constructor and Description |
|---|
ZonedDateTimeCodec(com.datastax.driver.core.TupleType tupleType) |
| Modifier and Type | Method and Description |
|---|---|
protected ZonedDateTime |
deserializeAndSetField(ByteBuffer input,
ZonedDateTime target,
int index,
com.datastax.driver.core.ProtocolVersion protocolVersion) |
protected String |
formatField(ZonedDateTime value,
int index) |
protected ZonedDateTime |
newInstance() |
protected ZonedDateTime |
parseAndSetField(String input,
ZonedDateTime target,
int index) |
protected ByteBuffer |
serializeField(ZonedDateTime source,
int index,
com.datastax.driver.core.ProtocolVersion protocolVersion) |
accepts, deserialize, format, parse, serializeaccepts, accepts, accepts, ascii, bigint, blob, cboolean, cdouble, cfloat, cint, counter, custom, date, decimal, getCqlType, getJavaType, inet, list, map, set, smallInt, time, timestamp, timeUUID, tinyInt, toString, tuple, userType, uuid, varchar, varintpublic ZonedDateTimeCodec(com.datastax.driver.core.TupleType tupleType)
protected ZonedDateTime newInstance()
newInstance in class com.datastax.driver.core.TypeCodec.AbstractTupleCodec<ZonedDateTime>protected ByteBuffer serializeField(ZonedDateTime source, int index, com.datastax.driver.core.ProtocolVersion protocolVersion)
serializeField in class com.datastax.driver.core.TypeCodec.AbstractTupleCodec<ZonedDateTime>protected ZonedDateTime deserializeAndSetField(ByteBuffer input, ZonedDateTime target, int index, com.datastax.driver.core.ProtocolVersion protocolVersion)
deserializeAndSetField in class com.datastax.driver.core.TypeCodec.AbstractTupleCodec<ZonedDateTime>protected String formatField(ZonedDateTime value, int index)
formatField in class com.datastax.driver.core.TypeCodec.AbstractTupleCodec<ZonedDateTime>protected ZonedDateTime parseAndSetField(String input, ZonedDateTime target, int index)
parseAndSetField in class com.datastax.driver.core.TypeCodec.AbstractTupleCodec<ZonedDateTime>Copyright © 2012–2018. All rights reserved.