Class EventDispatcherImpl<T extends io.debezium.schema.DataCollectionId>
- java.lang.Object
-
- io.debezium.pipeline.EventDispatcher<io.debezium.connector.mysql.MySqlPartition,T>
-
- org.apache.flink.cdc.connectors.mysql.debezium.dispatcher.EventDispatcherImpl<T>
-
- All Implemented Interfaces:
AutoCloseable
public class EventDispatcherImpl<T extends io.debezium.schema.DataCollectionId> extends io.debezium.pipeline.EventDispatcher<io.debezium.connector.mysql.MySqlPartition,T>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 EventDispatcherImpl(io.debezium.config.CommonConnectorConfig connectorConfig, io.debezium.schema.TopicSelector<T> topicSelector, io.debezium.schema.DatabaseSchema<T> schema, io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue, io.debezium.schema.DataCollectionFilters.DataCollectionFilter<T> filter, io.debezium.pipeline.spi.ChangeEventCreator changeEventCreator, io.debezium.pipeline.source.spi.EventMetadataProvider metadataProvider, io.debezium.util.SchemaNameAdjuster schemaNameAdjuster)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voiddispatchSchemaChangeEvent(io.debezium.connector.mysql.MySqlPartition partition, T dataCollectionId, io.debezium.pipeline.spi.SchemaChangeEventEmitter schemaChangeEventEmitter)voiddispatchSchemaChangeEvent(Collection<T> dataCollectionIds, io.debezium.pipeline.spi.SchemaChangeEventEmitter schemaChangeEventEmitter)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
-
EventDispatcherImpl
public EventDispatcherImpl(io.debezium.config.CommonConnectorConfig connectorConfig, io.debezium.schema.TopicSelector<T> topicSelector, io.debezium.schema.DatabaseSchema<T> schema, io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue, io.debezium.schema.DataCollectionFilters.DataCollectionFilter<T> filter, io.debezium.pipeline.spi.ChangeEventCreator changeEventCreator, io.debezium.pipeline.source.spi.EventMetadataProvider metadataProvider, io.debezium.util.SchemaNameAdjuster schemaNameAdjuster)
-
-
Method Detail
-
getQueue
public io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> getQueue()
-
dispatchSchemaChangeEvent
public void dispatchSchemaChangeEvent(io.debezium.connector.mysql.MySqlPartition partition, T dataCollectionId, io.debezium.pipeline.spi.SchemaChangeEventEmitter schemaChangeEventEmitter) throws InterruptedException- Overrides:
dispatchSchemaChangeEventin classio.debezium.pipeline.EventDispatcher<io.debezium.connector.mysql.MySqlPartition,T extends io.debezium.schema.DataCollectionId>- Throws:
InterruptedException
-
dispatchSchemaChangeEvent
public void dispatchSchemaChangeEvent(Collection<T> dataCollectionIds, io.debezium.pipeline.spi.SchemaChangeEventEmitter schemaChangeEventEmitter) throws InterruptedException
- Overrides:
dispatchSchemaChangeEventin classio.debezium.pipeline.EventDispatcher<io.debezium.connector.mysql.MySqlPartition,T extends io.debezium.schema.DataCollectionId>- Throws:
InterruptedException
-
-