Class PgProtoMessageDecoder
java.lang.Object
io.debezium.connector.postgresql.connection.AbstractMessageDecoder
io.debezium.connector.postgresql.connection.pgproto.PgProtoMessageDecoder
- All Implemented Interfaces:
MessageDecoder
ProtoBuf deserialization of message sent by Postgres Decoderbufs.
Only one message is delivered for processing.
- Author:
- Jiri Pechanec
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final org.slf4j.Loggerprivate static final Set<PgProto.Op>private boolean -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilderoptionsWithMetadata(org.postgresql.replication.fluent.logical.ChainedLogicalStreamBuilder builder, Function<Integer, Boolean> hasMinimumServerVersion) 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, Function<Integer, Boolean> hasMinimumServerVersion) 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, shouldMessageBeSkippedMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.debezium.connector.postgresql.connection.MessageDecoder
setContainsMetadata
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
SUPPORTED_OPS
-
warnedOnUnkownOp
private boolean warnedOnUnkownOp
-
-
Constructor Details
-
PgProtoMessageDecoder
public PgProtoMessageDecoder()
-
-
Method Details
-
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, Function<Integer, Boolean> hasMinimumServerVersion) 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, Function<Integer, Boolean> hasMinimumServerVersion) 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
-