java.lang.Object
io.debezium.connector.cassandra.transforms.type.deserializer.CollectionTypeDeserializer<org.apache.cassandra.db.marshal.MapType<?,?>>
io.debezium.connector.cassandra.transforms.type.deserializer.MapTypeDeserializer
All Implemented Interfaces:
TypeDeserializer

public class MapTypeDeserializer extends CollectionTypeDeserializer<org.apache.cassandra.db.marshal.MapType<?,?>>
  • Field Details

  • Constructor Details

  • Method Details

    • deserialize

      public Object deserialize(org.apache.cassandra.db.marshal.AbstractType<?> abstractType, ByteBuffer bb)
    • getSchemaBuilder

      public org.apache.kafka.connect.data.SchemaBuilder getSchemaBuilder(org.apache.cassandra.db.marshal.AbstractType<?> abstractType)
    • deserialize

      public Object deserialize(org.apache.cassandra.db.marshal.MapType<?,?> mapType, org.apache.cassandra.db.rows.ComplexColumnData ccd)
      Specified by:
      deserialize in class CollectionTypeDeserializer<org.apache.cassandra.db.marshal.MapType<?,?>>
    • processKeyValueInDeserializedMap

      private Map<?,?> processKeyValueInDeserializedMap(org.apache.cassandra.db.marshal.AbstractType<?> abstractType, Map<?,?> deserializedMap)
      If elements in a deserialized map is LogicalType, convert each element to fit in Kafka Schema type
      Parameters:
      abstractType - the AbstractType of a column in Cassandra
      deserializedMap - Map deserialized from Cassandra
      Returns:
      A deserialized map from Cassandra with each element that fits in Kafka Schema type