Class SourceRecordEventDeserializer
- java.lang.Object
-
- org.apache.flink.cdc.debezium.event.SourceRecordEventDeserializer
-
- All Implemented Interfaces:
Serializable,EventDeserializer<org.apache.kafka.connect.source.SourceRecord>
- Direct Known Subclasses:
DebeziumEventDeserializationSchema
@Internal public abstract class SourceRecordEventDeserializer extends Object implements EventDeserializer<org.apache.kafka.connect.source.SourceRecord>
Deserializer to deserializeSourceRecordtoEvent.- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description SourceRecordEventDeserializer()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description List<? extends Event>deserialize(org.apache.kafka.connect.source.SourceRecord record)Deserialize given record toEvents.protected abstract List<DataChangeEvent>deserializeDataChangeRecord(org.apache.kafka.connect.source.SourceRecord record)Deserialize given data change record toDataChangeEvent.protected abstract List<SchemaChangeEvent>deserializeSchemaChangeRecord(org.apache.kafka.connect.source.SourceRecord record)Deserialize given schema change record toSchemaChangeEvent.static org.apache.kafka.connect.data.SchemafieldSchema(org.apache.kafka.connect.data.Schema schema, String fieldName)static org.apache.kafka.connect.data.StructfieldStruct(org.apache.kafka.connect.data.Struct value, String fieldName)protected abstract Map<String,String>getMetadata(org.apache.kafka.connect.source.SourceRecord record)Get metadata from data change record.protected abstract TableIdgetTableId(org.apache.kafka.connect.source.SourceRecord record)GetTableIdfrom data change record.protected abstract booleanisDataChangeRecord(org.apache.kafka.connect.source.SourceRecord record)Whether the given record is a data change record.protected abstract booleanisSchemaChangeRecord(org.apache.kafka.connect.source.SourceRecord record)Whether the given record is a schema change record.
-
-
-
Method Detail
-
deserialize
public List<? extends Event> deserialize(org.apache.kafka.connect.source.SourceRecord record) throws Exception
Description copied from interface:EventDeserializerDeserialize given record toEvents.- Specified by:
deserializein interfaceEventDeserializer<org.apache.kafka.connect.source.SourceRecord>- Throws:
Exception
-
isDataChangeRecord
protected abstract boolean isDataChangeRecord(org.apache.kafka.connect.source.SourceRecord record)
Whether the given record is a data change record.
-
isSchemaChangeRecord
protected abstract boolean isSchemaChangeRecord(org.apache.kafka.connect.source.SourceRecord record)
Whether the given record is a schema change record.
-
deserializeDataChangeRecord
protected abstract List<DataChangeEvent> deserializeDataChangeRecord(org.apache.kafka.connect.source.SourceRecord record) throws Exception
Deserialize given data change record toDataChangeEvent.- Throws:
Exception
-
deserializeSchemaChangeRecord
protected abstract List<SchemaChangeEvent> deserializeSchemaChangeRecord(org.apache.kafka.connect.source.SourceRecord record) throws Exception
Deserialize given schema change record toSchemaChangeEvent.- Throws:
Exception
-
getTableId
protected abstract TableId getTableId(org.apache.kafka.connect.source.SourceRecord record)
GetTableIdfrom data change record.
-
getMetadata
protected abstract Map<String,String> getMetadata(org.apache.kafka.connect.source.SourceRecord record)
Get metadata from data change record.
-
fieldSchema
public static org.apache.kafka.connect.data.Schema fieldSchema(org.apache.kafka.connect.data.Schema schema, String fieldName)
-
fieldStruct
public static org.apache.kafka.connect.data.Struct fieldStruct(org.apache.kafka.connect.data.Struct value, String fieldName)
-
-