Class AbstractReplicationMessageColumn
- java.lang.Object
-
- io.debezium.connector.postgresql.connection.AbstractReplicationMessageColumn
-
- All Implemented Interfaces:
ReplicationMessage.Column
- Direct Known Subclasses:
UnchangedToastedReplicationMessageColumn
public abstract class AbstractReplicationMessageColumn extends Object implements ReplicationMessage.Column
Extracts type information from replication messages and associates them with each column. The metadata are parsed lazily.- Author:
- Jiri Pechanec
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classAbstractReplicationMessageColumn.TypeMetadataImpl
-
Field Summary
Fields Modifier and Type Field Description private StringcolumnNameprivate booleanhasMetadataprivate booleanoptionalprivate PostgresTypetypeprivate AbstractReplicationMessageColumn.TypeMetadataImpltypeMetadataprivate StringtypeWithModifiers
-
Constructor Summary
Constructors Constructor Description AbstractReplicationMessageColumn(String columnName, PostgresType type, String typeWithModifiers, boolean optional, boolean hasMetadata)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description StringgetName()PostgresTypegetType()AbstractReplicationMessageColumn.TypeMetadataImplgetTypeMetadata()Returns additional metadata about this column's type.private voidinitMetadata()booleanisOptional()-
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.ReplicationMessage.Column
getValue, isToastedColumn
-
-
-
-
Field Detail
-
columnName
private final String columnName
-
typeWithModifiers
private final String typeWithModifiers
-
optional
private final boolean optional
-
typeMetadata
private AbstractReplicationMessageColumn.TypeMetadataImpl typeMetadata
-
hasMetadata
private final boolean hasMetadata
-
type
private final PostgresType type
-
-
Constructor Detail
-
AbstractReplicationMessageColumn
public AbstractReplicationMessageColumn(String columnName, PostgresType type, String typeWithModifiers, boolean optional, boolean hasMetadata)
-
-
Method Detail
-
initMetadata
private void initMetadata()
-
getType
public PostgresType getType()
- Specified by:
getTypein interfaceReplicationMessage.Column- Returns:
- the
PostgresTypecontaining both OID and JDBC id.
-
getName
public String getName()
- Specified by:
getNamein interfaceReplicationMessage.Column
-
isOptional
public boolean isOptional()
- Specified by:
isOptionalin interfaceReplicationMessage.Column- Returns:
- true if the column is optional
-
getTypeMetadata
public AbstractReplicationMessageColumn.TypeMetadataImpl getTypeMetadata()
Description copied from interface:ReplicationMessage.ColumnReturns additional metadata about this column's type. May only be called after checkingReplicationMessage#hasMetadata().- Specified by:
getTypeMetadatain interfaceReplicationMessage.Column
-
-