Class ConvertCloudEventToSaveableForm
java.lang.Object
io.debezium.connector.jdbc.transforms.ConvertCloudEventToSaveableForm
- All Implemented Interfaces:
Closeable,AutoCloseable,org.apache.kafka.common.Configurable,org.apache.kafka.connect.components.Versioned,org.apache.kafka.connect.transforms.Transformation<org.apache.kafka.connect.sink.SinkRecord>
public class ConvertCloudEventToSaveableForm
extends Object
implements org.apache.kafka.connect.transforms.Transformation<org.apache.kafka.connect.sink.SinkRecord>, org.apache.kafka.connect.components.Versioned
The transform converts a CloudEvent to a structure suitable for `JdbcSinkConnector`
- Author:
- Roman Kudryashov
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final io.debezium.config.Fieldprivate Stringprivate final io.debezium.converters.spi.CloudEventsValidatorprivate static final Stringprivate static final io.debezium.config.Fieldprivate final org.apache.kafka.connect.json.JsonConverterprivate static final org.slf4j.Loggerprivate static final io.debezium.config.Fieldprivate io.debezium.converters.spi.SerializerType -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.kafka.connect.sink.SinkRecordapply(org.apache.kafka.connect.sink.SinkRecord record) voidclose()org.apache.kafka.common.config.ConfigDefconfig()voidprivate org.apache.kafka.connect.data.SchemadetermineCloudEventFieldSchema(Object cloudEventFieldValue) getCloudEventFieldsMap(org.apache.kafka.connect.sink.SinkRecord record) private org.apache.kafka.connect.data.SchemagetSchema(org.apache.kafka.connect.sink.SinkRecord record, boolean cloudEventContainsDataAsStruct) private org.apache.kafka.connect.data.StructgetValue(org.apache.kafka.connect.sink.SinkRecord record, org.apache.kafka.connect.data.Schema schema, boolean cloudEventContainsDataAsStruct) parseFieldsMapping(List<String> rawFieldsMapping) version()
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
FIELD_NAME_SEPARATOR
- See Also:
-
FIELDS_MAPPING
private static final io.debezium.config.Field FIELDS_MAPPING -
SERIALIZER_TYPE
private static final io.debezium.config.Field SERIALIZER_TYPE -
CLOUDEVENTS_SCHEMA_NAME
private static final io.debezium.config.Field CLOUDEVENTS_SCHEMA_NAME -
fieldsMapping
-
serializerType
private io.debezium.converters.spi.SerializerType serializerType -
cloudEventsSchemaName
-
jsonDataConverter
private final org.apache.kafka.connect.json.JsonConverter jsonDataConverter -
cloudEventsFieldToColumnSchema
-
cloudEventsValidator
private final io.debezium.converters.spi.CloudEventsValidator cloudEventsValidator
-
-
Constructor Details
-
ConvertCloudEventToSaveableForm
public ConvertCloudEventToSaveableForm()
-
-
Method Details
-
config
public org.apache.kafka.common.config.ConfigDef config()- Specified by:
configin interfaceorg.apache.kafka.connect.transforms.Transformation<org.apache.kafka.connect.sink.SinkRecord>
-
configure
- Specified by:
configurein interfaceorg.apache.kafka.common.Configurable
-
parseFieldsMapping
-
apply
public org.apache.kafka.connect.sink.SinkRecord apply(org.apache.kafka.connect.sink.SinkRecord record) - Specified by:
applyin interfaceorg.apache.kafka.connect.transforms.Transformation<org.apache.kafka.connect.sink.SinkRecord>
-
getCloudEventFieldsMap
-
getSchema
private org.apache.kafka.connect.data.Schema getSchema(org.apache.kafka.connect.sink.SinkRecord record, boolean cloudEventContainsDataAsStruct) -
determineCloudEventFieldSchema
private org.apache.kafka.connect.data.Schema determineCloudEventFieldSchema(Object cloudEventFieldValue) -
getValue
private org.apache.kafka.connect.data.Struct getValue(org.apache.kafka.connect.sink.SinkRecord record, org.apache.kafka.connect.data.Schema schema, boolean cloudEventContainsDataAsStruct) -
close
public void close()- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Specified by:
closein interfaceorg.apache.kafka.connect.transforms.Transformation<org.apache.kafka.connect.sink.SinkRecord>
-
version
- Specified by:
versionin interfaceorg.apache.kafka.connect.components.Versioned
-