Class Db2SnapshotChangeEventSource

java.lang.Object
io.debezium.pipeline.source.AbstractSnapshotChangeEventSource<P,O>
io.debezium.relational.RelationalSnapshotChangeEventSource<Db2Partition,Db2OffsetContext>
io.debezium.connector.db2.Db2SnapshotChangeEventSource
All Implemented Interfaces:
io.debezium.pipeline.source.spi.ChangeEventSource, io.debezium.pipeline.source.spi.SnapshotChangeEventSource<Db2Partition,Db2OffsetContext>, AutoCloseable

public class Db2SnapshotChangeEventSource extends io.debezium.relational.RelationalSnapshotChangeEventSource<Db2Partition,Db2OffsetContext>
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    private static class 
    Mutable context which is populated in the course of snapshotting.

    Nested classes/interfaces inherited from class io.debezium.relational.RelationalSnapshotChangeEventSource

    io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<P extends io.debezium.pipeline.spi.Partition,O extends io.debezium.pipeline.spi.OffsetContext>

    Nested classes/interfaces inherited from class io.debezium.pipeline.source.AbstractSnapshotChangeEventSource

    io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshotContext<P extends io.debezium.pipeline.spi.Partition,O extends io.debezium.pipeline.spi.OffsetContext>

    Nested classes/interfaces inherited from interface io.debezium.pipeline.source.spi.ChangeEventSource

    io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final Db2ConnectorConfig
     
    private final Db2Connection
     
    private static final org.slf4j.Logger
     

    Fields inherited from class io.debezium.relational.RelationalSnapshotChangeEventSource

    clock, connectionPool, dispatcher, MATCH_ALL_PATTERN, SELECT_ALL_PATTERN, snapshotterService

    Fields inherited from class io.debezium.pipeline.source.AbstractSnapshotChangeEventSource

    LOG_INTERVAL, notificationService
  • Constructor Summary

    Constructors
    Constructor
    Description
    Db2SnapshotChangeEventSource(Db2ConnectorConfig connectorConfig, io.debezium.jdbc.MainConnectionProvidingConnectionFactory<Db2Connection> connectionFactory, Db2DatabaseSchema schema, io.debezium.pipeline.EventDispatcher<Db2Partition,io.debezium.relational.TableId> dispatcher, io.debezium.util.Clock clock, io.debezium.pipeline.source.spi.SnapshotProgressListener<Db2Partition> snapshotProgressListener, io.debezium.pipeline.notification.NotificationService<Db2Partition,Db2OffsetContext> notificationService, io.debezium.snapshot.SnapshotterService snapshotterService)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected void
    aborted(io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext)
     
    private void
    close(io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext)
     
    protected void
    completed(io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext)
     
    protected void
    connectionCreated(io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext)
     
    copyOffset(io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext)
     
    protected void
    determineSnapshotOffset(io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<Db2Partition,Db2OffsetContext> ctx, Db2OffsetContext previousOffset)
     
    protected Set<io.debezium.relational.TableId>
    getAllTableIds(io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<Db2Partition,Db2OffsetContext> ctx)
     
    protected io.debezium.schema.SchemaChangeEvent
    getCreateTableEvent(io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext, io.debezium.relational.Table table)
     
    protected Optional<String>
    getSnapshotSelect(io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext, io.debezium.relational.TableId tableId, List<String> columns)
    Generate a valid db2 query string for the specified table
    io.debezium.pipeline.source.SnapshottingTask
     
    protected void
    lockTablesForSchemaSnapshot(io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext sourceContext, io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext)
     
    protected io.debezium.pipeline.source.AbstractSnapshotChangeEventSource.SnapshotContext<Db2Partition,Db2OffsetContext>
    prepare(Db2Partition partition, boolean onDemand)
     
    protected void
    readTableStructure(io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext sourceContext, io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext, Db2OffsetContext previousOffset, io.debezium.pipeline.source.SnapshottingTask snapshottingTask)
     
    protected void
    releaseSchemaSnapshotLocks(io.debezium.relational.RelationalSnapshotChangeEventSource.RelationalSnapshotContext<Db2Partition,Db2OffsetContext> snapshotContext)
     

    Methods inherited from class io.debezium.relational.RelationalSnapshotChangeEventSource

    additionalColumnFilter, connectionPoolConnectionCreated, createDataEventsForTableCallable, createSchemaChangeEventsForTables, createSnapshotConnection, doCreateDataEventsForTable, doExecute, enhanceOverriddenSelect, getChangeRecordEmitter, getClock, getPreparedColumnNames, getSignalDataCollectionPattern, getSnapshotConnectionFirstSelect, getSnapshotSelectOverridesByTable, getSnapshotSourceTimestamp, getTablesForSchemaChange, lastSnapshotRecord, postSnapshot, preSnapshot, readTableStatement, releaseDataSnapshotLocks, resultSetForDataEvents, rowCountForTable, tryStartingSnapshot

    Methods inherited from class io.debezium.pipeline.source.AbstractSnapshotChangeEventSource

    close, delaySnapshotIfNeeded, determineDataCollectionsToBeSnapshotted, execute, getDataCollectionPattern, getOffsets

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.debezium.pipeline.source.spi.SnapshotChangeEventSource

    getBlockingSnapshottingTask
  • Field Details

    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • connectorConfig

      private final Db2ConnectorConfig connectorConfig
    • jdbcConnection

      private final Db2Connection jdbcConnection
  • Constructor Details

    • Db2SnapshotChangeEventSource

      public Db2SnapshotChangeEventSource(Db2ConnectorConfig connectorConfig, io.debezium.jdbc.MainConnectionProvidingConnectionFactory<Db2Connection> connectionFactory, Db2DatabaseSchema schema, io.debezium.pipeline.EventDispatcher<Db2Partition,io.debezium.relational.TableId> dispatcher, io.debezium.util.Clock clock, io.debezium.pipeline.source.spi.SnapshotProgressListener<Db2Partition> snapshotProgressListener, io.debezium.pipeline.notification.NotificationService<Db2Partition,Db2OffsetContext> notificationService, io.debezium.snapshot.SnapshotterService snapshotterService)
  • Method Details