Class UnchangedToastedReplicationMessageColumn

java.lang.Object
io.debezium.connector.postgresql.connection.AbstractReplicationMessageColumn
io.debezium.connector.postgresql.UnchangedToastedReplicationMessageColumn
All Implemented Interfaces:
ReplicationMessage.Column

public class UnchangedToastedReplicationMessageColumn extends AbstractReplicationMessageColumn
Represents a toasted column in a ReplicationStream. Some decoder implementations may stream information about a column but provide an indicator that the field was not changed and therefore toasted. This implementation acts as an indicator for such fields that are contained within a ReplicationMessage.
Author:
Chris Cranford
  • Field Details

    • TYPE_ARRAY_SUFFIX

      private static final String TYPE_ARRAY_SUFFIX
      See Also:
    • TYPE_ARRAY_PREFIX

      private static final String TYPE_ARRAY_PREFIX
      See Also:
    • UNCHANGED_TOAST_VALUE

      public static final Object UNCHANGED_TOAST_VALUE
      Marker value indicating an unchanged TOAST column value.
    • UNCHANGED_TEXT_ARRAY_TOAST_VALUE

      public static final Object UNCHANGED_TEXT_ARRAY_TOAST_VALUE
    • UNCHANGED_BINARY_ARRAY_TOAST_VALUE

      public static final Object UNCHANGED_BINARY_ARRAY_TOAST_VALUE
    • UNCHANGED_INT_ARRAY_TOAST_VALUE

      public static final Object UNCHANGED_INT_ARRAY_TOAST_VALUE
    • UNCHANGED_BIGINT_ARRAY_TOAST_VALUE

      public static final Object UNCHANGED_BIGINT_ARRAY_TOAST_VALUE
    • UNCHANGED_HSTORE_TOAST_VALUE

      public static final Object UNCHANGED_HSTORE_TOAST_VALUE
    • UNCHANGED_UUID_TOAST_VALUE

      public static final Object UNCHANGED_UUID_TOAST_VALUE
    • UNCHANGED_TOAST_VALUES

      private static final Set<Object> UNCHANGED_TOAST_VALUES
    • unchangedToastValue

      private Object unchangedToastValue
  • Constructor Details

    • UnchangedToastedReplicationMessageColumn

      public UnchangedToastedReplicationMessageColumn(String columnName, PostgresType type, String typeWithModifiers, boolean optional)
  • Method Details

    • isToastedColumn

      public boolean isToastedColumn()
    • isUnchangedToastedValue

      public static boolean isUnchangedToastedValue(Object value)
    • getValue

      public Object getValue(PostgresStreamingChangeEventSource.PgConnectionSupplier connection, boolean includeUnknownDatatypes)
    • setUnchangedToastValue

      private void setUnchangedToastValue(String typeWithModifiers)
    • isArrayType

      private boolean isArrayType(String typeWithModifiers)
    • removeSizeModifierFromArrayTypes

      protected String removeSizeModifierFromArrayTypes(String typeWithModifiers)