Class PgProtoMessageDecoder
- java.lang.Object
-
- io.debezium.connector.postgresql.connection.AbstractMessageDecoder
-
- io.debezium.connector.postgresql.connection.pgproto.PgProtoMessageDecoder
-
- All Implemented Interfaces:
MessageDecoder
public class PgProtoMessageDecoder extends AbstractMessageDecoder
ProtoBuf deserialization of message sent by Postgres Decoderbufs. Only one message is delivered for processing.- Author:
- Jiri Pechanec
-
-
Field Summary
Fields Modifier and Type Field Description private static org.slf4j.LoggerLOGGERprivate static Set<PgProto.Op>SUPPORTED_OPSprivate booleanwarnedOnUnkownOp
-
Constructor Summary
Constructors Constructor Description PgProtoMessageDecoder()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilderoptionsWithMetadata(org.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilder builder)Allows MessageDecoder to configure options with which the replication stream is started.org.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilderoptionsWithoutMetadata(org.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilder builder)Allows MessageDecoder to configure options with which the replication stream is started.voidprocessNotEmptyMessage(ByteBuffer buffer, ReplicationStream.ReplicationMessageProcessor processor, TypeRegistry typeRegistry)-
Methods inherited from class io.debezium.connector.postgresql.connection.AbstractMessageDecoder
close, processMessage, shouldMessageBeSkipped
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.debezium.connector.postgresql.connection.MessageDecoder
setContainsMetadata
-
-
-
-
Field Detail
-
LOGGER
private static final org.slf4j.Logger LOGGER
-
SUPPORTED_OPS
private static final Set<PgProto.Op> SUPPORTED_OPS
-
warnedOnUnkownOp
private boolean warnedOnUnkownOp
-
-
Method Detail
-
processNotEmptyMessage
public void processNotEmptyMessage(ByteBuffer buffer, ReplicationStream.ReplicationMessageProcessor processor, TypeRegistry typeRegistry) throws SQLException, InterruptedException
- Specified by:
processNotEmptyMessagein classAbstractMessageDecoder- Throws:
SQLExceptionInterruptedException
-
optionsWithMetadata
public org.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilder optionsWithMetadata(org.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilder builder)
Description copied from interface:MessageDecoderAllows MessageDecoder to configure options with which the replication stream is started. The messages CAN contain type metadata. See PostgreSQL command START_REPLICATION SLOT for more details.- Returns:
- the builder instance
-
optionsWithoutMetadata
public org.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilder optionsWithoutMetadata(org.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilder builder)
Description copied from interface:MessageDecoderAllows MessageDecoder to configure options with which the replication stream is started. The messages MUST NOT contain type metadata. See PostgreSQL command START_REPLICATION SLOT for more details.- Returns:
- the builder instance
-
-