Package io.debezium.connector.mariadb
Class MariaDbChangeEventSourceFactory
java.lang.Object
io.debezium.connector.mariadb.MariaDbChangeEventSourceFactory
- All Implemented Interfaces:
io.debezium.pipeline.source.spi.ChangeEventSourceFactory<MariaDbPartition,MariaDbOffsetContext>
public class MariaDbChangeEventSourceFactory
extends Object
implements io.debezium.pipeline.source.spi.ChangeEventSourceFactory<MariaDbPartition,MariaDbOffsetContext>
- Author:
- Chris Cranford
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final io.debezium.util.Clockprivate final MariaDbConnectorConfigprivate final io.debezium.jdbc.MainConnectionProvidingConnectionFactory<BinlogConnectorConnection>private final io.debezium.pipeline.EventDispatcher<MariaDbPartition,io.debezium.relational.TableId> private final io.debezium.pipeline.ErrorHandlerprivate final io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent>private final MariaDbDatabaseSchemaprivate final io.debezium.snapshot.SnapshotterServiceprivate final MariaDbStreamingChangeEventSourceMetricsprivate final MariaDbTaskContext -
Constructor Summary
ConstructorsConstructorDescriptionMariaDbChangeEventSourceFactory(MariaDbConnectorConfig configuration, io.debezium.jdbc.MainConnectionProvidingConnectionFactory<BinlogConnectorConnection> connectionFactory, io.debezium.pipeline.ErrorHandler errorHandler, io.debezium.pipeline.EventDispatcher<MariaDbPartition, io.debezium.relational.TableId> dispatcher, io.debezium.util.Clock clock, MariaDbDatabaseSchema schema, MariaDbTaskContext taskContext, MariaDbStreamingChangeEventSourceMetrics streamingMetrics, io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue, io.debezium.snapshot.SnapshotterService snapshotterService) -
Method Summary
Modifier and TypeMethodDescriptionOptional<io.debezium.pipeline.source.snapshot.incremental.IncrementalSnapshotChangeEventSource<MariaDbPartition,? extends io.debezium.spi.schema.DataCollectionId>> getIncrementalSnapshotChangeEventSource(MariaDbOffsetContext offsetContext, io.debezium.pipeline.source.spi.SnapshotProgressListener<MariaDbPartition> snapshotProgressListener, io.debezium.pipeline.source.spi.DataChangeEventListener<MariaDbPartition> dataChangeEventListener, io.debezium.pipeline.notification.NotificationService<MariaDbPartition, MariaDbOffsetContext> notificationService) io.debezium.pipeline.source.spi.SnapshotChangeEventSource<MariaDbPartition,MariaDbOffsetContext> getSnapshotChangeEventSource(io.debezium.pipeline.source.spi.SnapshotProgressListener<MariaDbPartition> snapshotProgressListener, io.debezium.pipeline.notification.NotificationService<MariaDbPartition, MariaDbOffsetContext> notificationService) io.debezium.pipeline.source.spi.StreamingChangeEventSource<MariaDbPartition,MariaDbOffsetContext> private voidmodifyAndFlushLastRecord(Function<org.apache.kafka.connect.source.SourceRecord, org.apache.kafka.connect.source.SourceRecord> modify) private void
-
Field Details
-
configuration
-
connectionFactory
private final io.debezium.jdbc.MainConnectionProvidingConnectionFactory<BinlogConnectorConnection> connectionFactory -
errorHandler
private final io.debezium.pipeline.ErrorHandler errorHandler -
dispatcher
private final io.debezium.pipeline.EventDispatcher<MariaDbPartition,io.debezium.relational.TableId> dispatcher -
clock
private final io.debezium.util.Clock clock -
taskContext
-
streamingMetrics
-
schema
-
queue
private final io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue -
snapshotterService
private final io.debezium.snapshot.SnapshotterService snapshotterService
-
-
Constructor Details
-
MariaDbChangeEventSourceFactory
public MariaDbChangeEventSourceFactory(MariaDbConnectorConfig configuration, io.debezium.jdbc.MainConnectionProvidingConnectionFactory<BinlogConnectorConnection> connectionFactory, io.debezium.pipeline.ErrorHandler errorHandler, io.debezium.pipeline.EventDispatcher<MariaDbPartition, io.debezium.relational.TableId> dispatcher, io.debezium.util.Clock clock, MariaDbDatabaseSchema schema, MariaDbTaskContext taskContext, MariaDbStreamingChangeEventSourceMetrics streamingMetrics, io.debezium.connector.base.ChangeEventQueue<io.debezium.pipeline.DataChangeEvent> queue, io.debezium.snapshot.SnapshotterService snapshotterService)
-
-
Method Details
-
getSnapshotChangeEventSource
public io.debezium.pipeline.source.spi.SnapshotChangeEventSource<MariaDbPartition,MariaDbOffsetContext> getSnapshotChangeEventSource(io.debezium.pipeline.source.spi.SnapshotProgressListener<MariaDbPartition> snapshotProgressListener, io.debezium.pipeline.notification.NotificationService<MariaDbPartition, MariaDbOffsetContext> notificationService) - Specified by:
getSnapshotChangeEventSourcein interfaceio.debezium.pipeline.source.spi.ChangeEventSourceFactory<MariaDbPartition,MariaDbOffsetContext>
-
getStreamingChangeEventSource
public io.debezium.pipeline.source.spi.StreamingChangeEventSource<MariaDbPartition,MariaDbOffsetContext> getStreamingChangeEventSource()- Specified by:
getStreamingChangeEventSourcein interfaceio.debezium.pipeline.source.spi.ChangeEventSourceFactory<MariaDbPartition,MariaDbOffsetContext>
-
getIncrementalSnapshotChangeEventSource
public Optional<io.debezium.pipeline.source.snapshot.incremental.IncrementalSnapshotChangeEventSource<MariaDbPartition,? extends io.debezium.spi.schema.DataCollectionId>> getIncrementalSnapshotChangeEventSource(MariaDbOffsetContext offsetContext, io.debezium.pipeline.source.spi.SnapshotProgressListener<MariaDbPartition> snapshotProgressListener, io.debezium.pipeline.source.spi.DataChangeEventListener<MariaDbPartition> dataChangeEventListener, io.debezium.pipeline.notification.NotificationService<MariaDbPartition, MariaDbOffsetContext> notificationService) - Specified by:
getIncrementalSnapshotChangeEventSourcein interfaceio.debezium.pipeline.source.spi.ChangeEventSourceFactory<MariaDbPartition,MariaDbOffsetContext>
-
preSnapshot
private void preSnapshot() -
modifyAndFlushLastRecord
private void modifyAndFlushLastRecord(Function<org.apache.kafka.connect.source.SourceRecord, org.apache.kafka.connect.source.SourceRecord> modify) throws InterruptedException- Throws:
InterruptedException
-