Package io.debezium.relational.mapping
Class TruncateStrings
- java.lang.Object
-
- io.debezium.relational.mapping.TruncateStrings
-
- All Implemented Interfaces:
ColumnMapper
public class TruncateStrings extends Object implements ColumnMapper
AColumnMapperimplementation that ensures that string values longer than a specified length will be truncated.- Author:
- Randall Hauch
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected static classTruncateStrings.TruncatingValueConverter
-
Field Summary
Fields Modifier and Type Field Description private TruncateStrings.TruncatingValueConverterconverter
-
Constructor Summary
Constructors Constructor Description TruncateStrings(int maxLength)Create aColumnMapperthat truncates string values to a maximum length.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidalterFieldSchema(Column column, org.apache.kafka.connect.data.SchemaBuilder schemaBuilder)Optionally annotate the schema with properties to better capture the mapping behavior.ValueConvertercreate(Column column)Create for the given column a function that maps values.protected booleanisTruncationPossible(Column column)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.debezium.relational.mapping.ColumnMapper
initialize
-
-
-
-
Field Detail
-
converter
private final TruncateStrings.TruncatingValueConverter converter
-
-
Constructor Detail
-
TruncateStrings
public TruncateStrings(int maxLength)
Create aColumnMapperthat truncates string values to a maximum length.- Parameters:
maxLength- the maximum number of characters allowed in values- Throws:
IllegalArgumentException- if themaxLengthis not positive
-
-
Method Detail
-
create
public ValueConverter create(Column column)
Description copied from interface:ColumnMapperCreate for the given column a function that maps values.- Specified by:
createin interfaceColumnMapper- Parameters:
column- the column description; never null- Returns:
- the function that converts the value; may be null
-
alterFieldSchema
public void alterFieldSchema(Column column, org.apache.kafka.connect.data.SchemaBuilder schemaBuilder)
Description copied from interface:ColumnMapperOptionally annotate the schema with properties to better capture the mapping behavior.- Specified by:
alterFieldSchemain interfaceColumnMapper- Parameters:
column- the column definition; never nullschemaBuilder- the builder for theField's schema; never null
-
isTruncationPossible
protected boolean isTruncationPossible(Column column)
-
-