Class InformixCdcTransactionEngine

java.lang.Object
io.debezium.connector.informix.InformixCdcTransactionEngine
All Implemented Interfaces:
com.informix.stream.api.IfmxStreamEngine, com.informix.stream.api.IfxTransactionEngine, AutoCloseable

public class InformixCdcTransactionEngine extends Object implements com.informix.stream.api.IfxTransactionEngine
An implementation of the IfxTransactionEngine interface that takes a wider view of which operation types we are interested in.
Author:
Lars M Johansson
  • Field Details

    • LOGGER

      private static final org.slf4j.Logger LOGGER
    • PROCESSING_RECORD

      private static final String PROCESSING_RECORD
      See Also:
    • MISSING_TRANSACTION_START_FOR_RECORD

      private static final String MISSING_TRANSACTION_START_FOR_RECORD
      See Also:
    • transactionMap

    • engine

      protected final com.informix.stream.cdc.IfxCDCEngine engine
    • context

      private final io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext context
    • operationFilters

      protected EnumSet<com.informix.stream.api.IfmxStreamRecordType> operationFilters
    • transactionFilters

      protected EnumSet<com.informix.stream.api.IfmxStreamRecordType> transactionFilters
    • returnEmptyTransactions

      protected boolean returnEmptyTransactions
    • tableIdByLabelId

      private Map<String,io.debezium.relational.TableId> tableIdByLabelId
  • Constructor Details

    • InformixCdcTransactionEngine

      public InformixCdcTransactionEngine(io.debezium.pipeline.source.spi.ChangeEventSource.ChangeEventSourceContext context, com.informix.stream.cdc.IfxCDCEngine engine)
  • Method Details

    • getRecord

      public com.informix.stream.api.IfmxStreamRecord getRecord() throws SQLException, com.informix.stream.impl.IfxStreamException
      Specified by:
      getRecord in interface com.informix.stream.api.IfmxStreamEngine
      Throws:
      SQLException
      com.informix.stream.impl.IfxStreamException
    • getTransaction

      public InformixStreamTransactionRecord getTransaction() throws SQLException, com.informix.stream.impl.IfxStreamException
      Specified by:
      getTransaction in interface com.informix.stream.api.IfxTransactionEngine
      Throws:
      SQLException
      com.informix.stream.impl.IfxStreamException
    • setOperationFilters

      public InformixCdcTransactionEngine setOperationFilters(com.informix.stream.api.IfmxStreamRecordType... recordTypes)
      Specified by:
      setOperationFilters in interface com.informix.stream.api.IfxTransactionEngine
    • setTransactionFilters

      public InformixCdcTransactionEngine setTransactionFilters(com.informix.stream.api.IfmxStreamRecordType... recordTypes)
      Specified by:
      setTransactionFilters in interface com.informix.stream.api.IfxTransactionEngine
    • returnEmptyTransactions

      public InformixCdcTransactionEngine returnEmptyTransactions(boolean returnEmptyTransactions)
      Specified by:
      returnEmptyTransactions in interface com.informix.stream.api.IfxTransactionEngine
    • init

      public void init() throws SQLException, com.informix.stream.impl.IfxStreamException
      Specified by:
      init in interface com.informix.stream.api.IfmxStreamEngine
      Throws:
      SQLException
      com.informix.stream.impl.IfxStreamException
    • close

      public void close() throws com.informix.stream.impl.IfxStreamException
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface com.informix.stream.api.IfmxStreamEngine
      Throws:
      com.informix.stream.impl.IfxStreamException
    • getLowestBeginSequence

      public OptionalLong getLowestBeginSequence()
    • getTableIdByLabelId

      public Map<String,io.debezium.relational.TableId> getTableIdByLabelId()