Class DebeziumEventDeserializationSchema
- java.lang.Object
-
- org.apache.flink.cdc.debezium.event.SourceRecordEventDeserializer
-
- org.apache.flink.cdc.debezium.event.DebeziumEventDeserializationSchema
-
- All Implemented Interfaces:
Serializable,org.apache.flink.api.java.typeutils.ResultTypeQueryable<Event>,EventDeserializer<org.apache.kafka.connect.source.SourceRecord>,DebeziumDeserializationSchema<Event>
- Direct Known Subclasses:
MySqlEventDeserializer,OracleEventDeserializer,PostgresEventDeserializer,SqlServerEventDeserializer
@Internal public abstract class DebeziumEventDeserializationSchema extends SourceRecordEventDeserializer implements DebeziumDeserializationSchema<Event>
Debezium event deserializer forSourceRecord.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected DebeziumChangelogModechangelogModeChangelog Mode to use for encoding changes in Flink internal data structure.protected SchemaDataTypeInferenceschemaDataTypeInferenceThe schema data type inference.
-
Constructor Summary
Constructors Constructor Description DebeziumEventDeserializationSchema(SchemaDataTypeInference schemaDataTypeInference, DebeziumChangelogMode changelogMode)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidapplyChangeEvent(ChangeEvent changeEvent)protected ObjectconvertToArray(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToBinary(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToBoolean(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToByte(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToDate(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToDecimal(DecimalType decimalType, Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToDouble(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToFloat(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToInt(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToLocalTimeZoneTimestamp(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToLong(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToMap(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToRecord(RowType rowType, Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToShort(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToString(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToTime(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected ObjectconvertToTimestamp(Object dbzObj, org.apache.kafka.connect.data.Schema schema)protected DeserializationRuntimeConvertercreateNotNullConverter(DataType type)Creates a runtime converter which assuming input object is not null.voiddeserialize(org.apache.kafka.connect.source.SourceRecord record, org.apache.flink.util.Collector<Event> out)Deserialize the Debezium record, it is represented in KafkaSourceRecord.List<DataChangeEvent>deserializeDataChangeRecord(org.apache.kafka.connect.source.SourceRecord record)Deserialize given data change record toDataChangeEvent.protected RecordDataextractBeforeDataRecord(org.apache.kafka.connect.data.Struct value, org.apache.kafka.connect.data.Schema valueSchema)Map<io.debezium.relational.TableId,CreateTableEvent>getCreateTableEventCache()org.apache.flink.api.common.typeinfo.TypeInformation<Event>getProducedType()-
Methods inherited from class org.apache.flink.cdc.debezium.event.SourceRecordEventDeserializer
deserialize, deserializeSchemaChangeRecord, fieldSchema, fieldStruct, getMetadata, getTableId, isDataChangeRecord, isSchemaChangeRecord
-
-
-
-
Field Detail
-
schemaDataTypeInference
protected final SchemaDataTypeInference schemaDataTypeInference
The schema data type inference.
-
changelogMode
protected final DebeziumChangelogMode changelogMode
Changelog Mode to use for encoding changes in Flink internal data structure.
-
-
Constructor Detail
-
DebeziumEventDeserializationSchema
public DebeziumEventDeserializationSchema(SchemaDataTypeInference schemaDataTypeInference, DebeziumChangelogMode changelogMode)
-
-
Method Detail
-
deserialize
public void deserialize(org.apache.kafka.connect.source.SourceRecord record, org.apache.flink.util.Collector<Event> out) throws ExceptionDescription copied from interface:DebeziumDeserializationSchemaDeserialize the Debezium record, it is represented in KafkaSourceRecord.- Specified by:
deserializein interfaceDebeziumDeserializationSchema<Event>- Throws:
Exception
-
deserializeDataChangeRecord
public List<DataChangeEvent> deserializeDataChangeRecord(org.apache.kafka.connect.source.SourceRecord record) throws Exception
Description copied from class:SourceRecordEventDeserializerDeserialize given data change record toDataChangeEvent.- Specified by:
deserializeDataChangeRecordin classSourceRecordEventDeserializer- Throws:
Exception
-
getProducedType
public org.apache.flink.api.common.typeinfo.TypeInformation<Event> getProducedType()
- Specified by:
getProducedTypein interfaceorg.apache.flink.api.java.typeutils.ResultTypeQueryable<Event>
-
extractBeforeDataRecord
protected RecordData extractBeforeDataRecord(org.apache.kafka.connect.data.Struct value, org.apache.kafka.connect.data.Schema valueSchema) throws Exception
- Throws:
Exception
-
createNotNullConverter
protected DeserializationRuntimeConverter createNotNullConverter(DataType type)
Creates a runtime converter which assuming input object is not null.
-
convertToBoolean
protected Object convertToBoolean(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToByte
protected Object convertToByte(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToShort
protected Object convertToShort(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToInt
protected Object convertToInt(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToLong
protected Object convertToLong(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToDouble
protected Object convertToDouble(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToFloat
protected Object convertToFloat(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToDate
protected Object convertToDate(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToTime
protected Object convertToTime(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToTimestamp
protected Object convertToTimestamp(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToLocalTimeZoneTimestamp
protected Object convertToLocalTimeZoneTimestamp(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToString
protected Object convertToString(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToBinary
protected Object convertToBinary(Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToDecimal
protected Object convertToDecimal(DecimalType decimalType, Object dbzObj, org.apache.kafka.connect.data.Schema schema)
-
convertToRecord
protected Object convertToRecord(RowType rowType, Object dbzObj, org.apache.kafka.connect.data.Schema schema) throws Exception
- Throws:
Exception
-
convertToMap
protected Object convertToMap(Object dbzObj, org.apache.kafka.connect.data.Schema schema) throws Exception
- Throws:
Exception
-
convertToArray
protected Object convertToArray(Object dbzObj, org.apache.kafka.connect.data.Schema schema) throws Exception
- Throws:
Exception
-
getCreateTableEventCache
public Map<io.debezium.relational.TableId,CreateTableEvent> getCreateTableEventCache()
-
applyChangeEvent
public void applyChangeEvent(ChangeEvent changeEvent)
-
-