Package io.debezium.transforms
Class AbstractExtractNewRecordState<R extends org.apache.kafka.connect.connector.ConnectRecord<R>>
java.lang.Object
io.debezium.transforms.AbstractExtractNewRecordState<R>
- Type Parameters:
R
- the subtype ofConnectRecord
on which this transformation will operate
- All Implemented Interfaces:
Closeable
,AutoCloseable
,org.apache.kafka.common.Configurable
,org.apache.kafka.connect.transforms.Transformation<R>
- Direct Known Subclasses:
ExtractNewRecordState
public abstract class AbstractExtractNewRecordState<R extends org.apache.kafka.connect.connector.ConnectRecord<R>>
extends Object
implements org.apache.kafka.connect.transforms.Transformation<R>
ExtractNewRecordState and ExtractNewDocumentState that contains shared logic for transformation
- Author:
- Harvey Yue
-
Nested Class Summary
Modifier and TypeClassDescriptionprotected static class
Represents a field that should be added to the outgoing record as a header attribute or struct field.protected static class
-
Field Summary
Modifier and TypeFieldDescriptionprotected List<AbstractExtractNewRecordState.FieldReference>
protected List<AbstractExtractNewRecordState.FieldReference>
protected Configuration
protected ExtractRecordStrategy<R>
private static final Pattern
private static final org.slf4j.Logger
private static final Pattern
protected static final String
protected String
protected SmtManager<R>
private static final String
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
void
protected abstract R
protected org.apache.kafka.connect.header.Header
getHeaderByName
(R record, String headerName) Retrieve the Header object from connect record by specified header nameprotected org.apache.kafka.connect.header.Headers
makeHeaders
(List<AbstractExtractNewRecordState.FieldReference> additionalHeaders, org.apache.kafka.connect.data.Struct originalRecordValue) Create the Headers object which contains the headers to be added.protected R
Set a new topic to connect recordMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.kafka.connect.transforms.Transformation
config
-
Field Details
-
LOGGER
private static final org.slf4j.Logger LOGGER -
FIELD_SEPARATOR
-
NEW_FIELD_SEPARATOR
-
UPDATE_DESCRIPTION
- See Also:
-
PURPOSE
- See Also:
-
config
-
smtManager
-
extractRecordStrategy
protected ExtractRecordStrategy<R extends org.apache.kafka.connect.connector.ConnectRecord<R>> extractRecordStrategy -
additionalHeaders
-
additionalFields
-
routeByField
-
-
Constructor Details
-
AbstractExtractNewRecordState
public AbstractExtractNewRecordState()
-
-
Method Details
-
configure
- Specified by:
configure
in interfaceorg.apache.kafka.common.Configurable
-
apply
-
doApply
-
validateConfigFields
-
close
public void close() -
setTopic
Set a new topic to connect record -
makeHeaders
protected org.apache.kafka.connect.header.Headers makeHeaders(List<AbstractExtractNewRecordState.FieldReference> additionalHeaders, org.apache.kafka.connect.data.Struct originalRecordValue) Create the Headers object which contains the headers to be added. -
getHeaderByName
Retrieve the Header object from connect record by specified header name
-