Class CassandraTypeDeserializer
java.lang.Object
io.debezium.connector.cassandra.transforms.CassandraTypeDeserializer
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enumstatic enum -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static CassandraTypeDeserializerprivate Map<Class<? extends org.apache.cassandra.db.marshal.AbstractType>,TypeDeserializer> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic Objectdeserialize(com.datastax.oss.driver.api.core.type.DataType dataType, ByteBuffer bb) Deserialize from snapshot/datastax-sourced cassandra data.static Objectdeserialize(org.apache.cassandra.db.marshal.AbstractType<?> abstractType, ByteBuffer bb) Deserialize from cdc-log-sourced cassandra data.static Objectdeserialize(org.apache.cassandra.db.marshal.CollectionType<?> collectionType, org.apache.cassandra.db.rows.ComplexColumnData ccd) Deserialize from cdc-log-sourced cassandra data.static CassandraTypeDeserializerstatic org.apache.kafka.connect.data.SchemaBuildergetSchemaBuilder(org.apache.cassandra.db.marshal.AbstractType<?> abstractType) Construct a kafka connect SchemaBuilder object from a Cassandra data typestatic TypeDeserializergetTypeDeserializer(org.apache.cassandra.db.marshal.AbstractType<?> abstractType) Get TypeDeserializer of AbstractTypestatic voidinit(DebeziumTypeDeserializer typeDeserializer, CassandraTypeDeserializer.DecimalMode decimalMode, CassandraTypeDeserializer.VarIntMode varIntMode) private voidinitInternal(DebeziumTypeDeserializer deserializer, CassandraTypeDeserializer.DecimalMode decimalMode, CassandraTypeDeserializer.VarIntMode varIntMode) static voidsetDecimalMode(CassandraTypeDeserializer.DecimalMode decimalMode) Set deserialization mode for decimal columnsstatic voidsetVarIntMode(CassandraTypeDeserializer.VarIntMode varIntMode) Set deserialization mode for varint columns
-
Field Details
-
TYPE_MAP
private Map<Class<? extends org.apache.cassandra.db.marshal.AbstractType>,TypeDeserializer> TYPE_MAP -
instance
-
-
Constructor Details
-
CassandraTypeDeserializer
private CassandraTypeDeserializer()
-
-
Method Details
-
getInstance
-
init
public static void init(DebeziumTypeDeserializer typeDeserializer, CassandraTypeDeserializer.DecimalMode decimalMode, CassandraTypeDeserializer.VarIntMode varIntMode) -
initInternal
private void initInternal(DebeziumTypeDeserializer deserializer, CassandraTypeDeserializer.DecimalMode decimalMode, CassandraTypeDeserializer.VarIntMode varIntMode) -
deserialize
public static Object deserialize(com.datastax.oss.driver.api.core.type.DataType dataType, ByteBuffer bb) Deserialize from snapshot/datastax-sourced cassandra data.- Parameters:
dataType- theDataTypeof the objectbb- the bytes of the column to deserialize- Returns:
- the deserialized object.
-
deserialize
public static Object deserialize(org.apache.cassandra.db.marshal.AbstractType<?> abstractType, ByteBuffer bb) Deserialize from cdc-log-sourced cassandra data.- Parameters:
abstractType- theAbstractTypeof the non-collection columnbb- the bytes of the non-collection column to deserialize- Returns:
- the deserialized object.
-
deserialize
public static Object deserialize(org.apache.cassandra.db.marshal.CollectionType<?> collectionType, org.apache.cassandra.db.rows.ComplexColumnData ccd) Deserialize from cdc-log-sourced cassandra data.- Parameters:
collectionType- theCollectionTypeof the collection columnccd- the ComplexColumnData of the collection column to deserialize- Returns:
- the deserialized object.
-
getSchemaBuilder
public static org.apache.kafka.connect.data.SchemaBuilder getSchemaBuilder(org.apache.cassandra.db.marshal.AbstractType<?> abstractType) Construct a kafka connect SchemaBuilder object from a Cassandra data type- Parameters:
abstractType- implementation of Cassandra's AbstractType- Returns:
- the kafka connect SchemaBuilder object
-
getTypeDeserializer
public static TypeDeserializer getTypeDeserializer(org.apache.cassandra.db.marshal.AbstractType<?> abstractType) Get TypeDeserializer of AbstractType- Parameters:
abstractType- theAbstractTypeof a column in cassandra- Returns:
- the TypeDeserializer of the AbstractType.
-
setDecimalMode
Set deserialization mode for decimal columns- Parameters:
decimalMode- theCassandraTypeDeserializer.DecimalModeof decimal values
-
setVarIntMode
Set deserialization mode for varint columns- Parameters:
varIntMode- theCassandraTypeDeserializer.VarIntModeof varint values
-