Class JdbcSourceEventDispatcher<P extends io.debezium.pipeline.spi.Partition>
- java.lang.Object
-
- io.debezium.pipeline.EventDispatcher<P,io.debezium.relational.TableId>
-
- org.apache.flink.cdc.connectors.base.relational.JdbcSourceEventDispatcher<P>
-
- All Implemented Interfaces:
AutoCloseable,WatermarkDispatcher
public class JdbcSourceEventDispatcher<P extends io.debezium.pipeline.spi.Partition> extends io.debezium.pipeline.EventDispatcher<P,io.debezium.relational.TableId> implements WatermarkDispatcher
A subclass implementation ofEventDispatcher.1. This class shares one
ChangeEventQueuebetween multiple readers. 2. This class override some methods for dispatchingHistoryRecorddirectly, this is useful for downstream to deserialize theHistoryRecordback.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class io.debezium.pipeline.EventDispatcher
io.debezium.pipeline.EventDispatcher.InconsistentSchemaHandler<P extends io.debezium.pipeline.spi.Partition,T extends io.debezium.schema.DataCollectionId>, io.debezium.pipeline.EventDispatcher.SnapshotReceiver<P extends io.debezium.pipeline.spi.Partition>
-
-
Field Summary
Fields Modifier and Type Field Description static StringHISTORY_RECORD_FIELD
-
Constructor Summary
Constructors Constructor Description JdbcSourceEventDispatcher(io.debezium.config.CommonConnectorConfig connectorConfig, io.debezium.schema.TopicSelector<io.debezium.relational.TableId> topicSelector, io.debezium.schema.DatabaseSchema<io.debezium.relational.TableId> schema, io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue, io.debezium.schema.DataCollectionFilters.DataCollectionFilter<io.debezium.relational.TableId> filter, io.debezium.pipeline.spi.ChangeEventCreator changeEventCreator, io.debezium.pipeline.source.spi.EventMetadataProvider metadataProvider, io.debezium.util.SchemaNameAdjuster schemaNameAdjuster, SchemaChangeEventHandler schemaChangeEventHandler)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddispatchSchemaChangeEvent(Collection<io.debezium.relational.TableId> dataCollectionIds, io.debezium.pipeline.spi.SchemaChangeEventEmitter schemaChangeEventEmitter)voiddispatchSchemaChangeEvent(P partition, io.debezium.relational.TableId dataCollectionId, io.debezium.pipeline.spi.SchemaChangeEventEmitter schemaChangeEventEmitter)voiddispatchWatermarkEvent(Map<String,?> sourcePartition, SourceSplitBase sourceSplit, Offset watermark, WatermarkKind watermarkKind)io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent>getQueue()-
Methods inherited from class io.debezium.pipeline.EventDispatcher
alwaysDispatchHeartbeatEvent, close, dispatchConnectorEvent, dispatchDataChangeEvent, dispatchFilteredEvent, dispatchHeartbeatEvent, dispatchServerHeartbeatEvent, dispatchSnapshotEvent, dispatchTransactionCommittedEvent, dispatchTransactionStartedEvent, errorOnMissingSchema, getHistorizedSchema, getIncrementalSnapshotChangeEventReceiver, getIncrementalSnapshotChangeEventSource, getSchema, getSnapshotChangeEventReceiver, heartbeatsEnabled, ignoreMissingSchema, setEventListener, setIncrementalSnapshotChangeEventSource
-
-
-
-
Field Detail
-
HISTORY_RECORD_FIELD
public static final String HISTORY_RECORD_FIELD
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
JdbcSourceEventDispatcher
public JdbcSourceEventDispatcher(io.debezium.config.CommonConnectorConfig connectorConfig, io.debezium.schema.TopicSelector<io.debezium.relational.TableId> topicSelector, io.debezium.schema.DatabaseSchema<io.debezium.relational.TableId> schema, io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue, io.debezium.schema.DataCollectionFilters.DataCollectionFilter<io.debezium.relational.TableId> filter, io.debezium.pipeline.spi.ChangeEventCreator changeEventCreator, io.debezium.pipeline.source.spi.EventMetadataProvider metadataProvider, io.debezium.util.SchemaNameAdjuster schemaNameAdjuster, SchemaChangeEventHandler schemaChangeEventHandler)
-
-
Method Detail
-
getQueue
public io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> getQueue()
-
dispatchSchemaChangeEvent
public void dispatchSchemaChangeEvent(P partition, io.debezium.relational.TableId dataCollectionId, io.debezium.pipeline.spi.SchemaChangeEventEmitter schemaChangeEventEmitter) throws InterruptedException
- Overrides:
dispatchSchemaChangeEventin classio.debezium.pipeline.EventDispatcher<P extends io.debezium.pipeline.spi.Partition,io.debezium.relational.TableId>- Throws:
InterruptedException
-
dispatchSchemaChangeEvent
public void dispatchSchemaChangeEvent(Collection<io.debezium.relational.TableId> dataCollectionIds, io.debezium.pipeline.spi.SchemaChangeEventEmitter schemaChangeEventEmitter) throws InterruptedException
- Overrides:
dispatchSchemaChangeEventin classio.debezium.pipeline.EventDispatcher<P extends io.debezium.pipeline.spi.Partition,io.debezium.relational.TableId>- Throws:
InterruptedException
-
dispatchWatermarkEvent
public void dispatchWatermarkEvent(Map<String,?> sourcePartition, SourceSplitBase sourceSplit, Offset watermark, WatermarkKind watermarkKind) throws InterruptedException
- Specified by:
dispatchWatermarkEventin interfaceWatermarkDispatcher- Throws:
InterruptedException
-
-