R - the subtype of ConnectRecord on which this transformation will operatepublic class ExtractNewDocumentState<R extends org.apache.kafka.connect.connector.ConnectRecord<R>> extends Object implements org.apache.kafka.connect.transforms.Transformation<R>
| Modifier and Type | Class and Description |
|---|---|
static class |
ExtractNewDocumentState.ArrayEncoding |
private static class |
ExtractNewDocumentState.FieldReference
Represents a field that should be added to the outgoing record as a header attribute or struct field.
|
| Modifier and Type | Field and Description |
|---|---|
static Field |
ADD_SOURCE_FIELDS |
private String |
addFieldsPrefix |
private List<ExtractNewDocumentState.FieldReference> |
additionalFields |
private List<ExtractNewDocumentState.FieldReference> |
additionalHeaders |
private boolean |
addOperationHeader |
private List<String> |
addSourceFields |
private org.apache.kafka.connect.transforms.ExtractField<R> |
afterExtractor |
private static Field |
ARRAY_ENCODING |
private MongoDataConverter |
converter |
private String |
delimiter |
private static Field |
DELIMITER |
private boolean |
dropTombstones |
private static Pattern |
FIELD_SEPARATOR |
private static Field |
FLATTEN_STRUCT |
private boolean |
flattenStruct |
private ExtractNewRecordStateConfigDefinition.DeleteHandling |
handleDeletes |
private org.apache.kafka.connect.transforms.ExtractField<R> |
keyExtractor |
private static org.slf4j.Logger |
LOGGER |
static Field |
OPERATION_HEADER |
private org.apache.kafka.connect.transforms.ExtractField<R> |
patchExtractor |
private org.apache.kafka.connect.transforms.Flatten<R> |
recordFlattener |
static Field |
SANITIZE_FIELD_NAMES |
private SmtManager<R> |
smtManager |
| Constructor and Description |
|---|
ExtractNewDocumentState() |
| Modifier and Type | Method and Description |
|---|---|
private void |
addAdditionalFieldsSchema(List<ExtractNewDocumentState.FieldReference> additionalFields,
R originalRecord,
org.apache.kafka.connect.data.SchemaBuilder valueSchemaBuilder) |
private void |
addFields(List<ExtractNewDocumentState.FieldReference> additionalFields,
R originalRecord,
org.apache.kafka.connect.data.Struct value) |
private void |
addSourceFieldsSchema(String fieldPrefix,
List<String> addSourceFields,
R originalRecord,
org.apache.kafka.connect.data.SchemaBuilder valueSchemaBuilder) |
private void |
addSourceFieldsValue(List<String> addSourceFields,
R originalRecord,
org.apache.kafka.connect.data.Struct valueStruct) |
R |
apply(R record) |
void |
close() |
org.apache.kafka.common.config.ConfigDef |
config() |
void |
configure(Map<String,?> map) |
private static List<String> |
determineAdditionalSourceField(String addSourceFieldsConfig) |
private org.bson.BsonDocument |
getInsertDocument(R record,
org.bson.BsonDocument key) |
private org.bson.BsonDocument |
getUpdateDocument(R patchRecord,
org.bson.BsonDocument keyDocument) |
private org.apache.kafka.connect.header.Headers |
makeHeaders(List<ExtractNewDocumentState.FieldReference> additionalHeaders,
org.apache.kafka.connect.data.Struct originalRecordValue) |
private R |
newRecord(R record,
org.bson.BsonDocument keyDocument,
org.bson.BsonDocument valueDocument) |
private String addFieldsPrefix
private static final org.slf4j.Logger LOGGER
private static final Pattern FIELD_SEPARATOR
private static final Field ARRAY_ENCODING
private static final Field FLATTEN_STRUCT
private static final Field DELIMITER
public static final Field SANITIZE_FIELD_NAMES
public static final Field ADD_SOURCE_FIELDS
public static final Field OPERATION_HEADER
private final org.apache.kafka.connect.transforms.ExtractField<R extends org.apache.kafka.connect.connector.ConnectRecord<R>> afterExtractor
private final org.apache.kafka.connect.transforms.ExtractField<R extends org.apache.kafka.connect.connector.ConnectRecord<R>> patchExtractor
private final org.apache.kafka.connect.transforms.ExtractField<R extends org.apache.kafka.connect.connector.ConnectRecord<R>> keyExtractor
private MongoDataConverter converter
private final org.apache.kafka.connect.transforms.Flatten<R extends org.apache.kafka.connect.connector.ConnectRecord<R>> recordFlattener
private boolean addOperationHeader
private List<ExtractNewDocumentState.FieldReference> additionalHeaders
private List<ExtractNewDocumentState.FieldReference> additionalFields
private boolean flattenStruct
private String delimiter
private boolean dropTombstones
private ExtractNewRecordStateConfigDefinition.DeleteHandling handleDeletes
private SmtManager<R extends org.apache.kafka.connect.connector.ConnectRecord<R>> smtManager
private R newRecord(R record, org.bson.BsonDocument keyDocument, org.bson.BsonDocument valueDocument)
private void addSourceFieldsSchema(String fieldPrefix, List<String> addSourceFields, R originalRecord, org.apache.kafka.connect.data.SchemaBuilder valueSchemaBuilder)
private void addAdditionalFieldsSchema(List<ExtractNewDocumentState.FieldReference> additionalFields, R originalRecord, org.apache.kafka.connect.data.SchemaBuilder valueSchemaBuilder)
private void addSourceFieldsValue(List<String> addSourceFields, R originalRecord, org.apache.kafka.connect.data.Struct valueStruct)
private void addFields(List<ExtractNewDocumentState.FieldReference> additionalFields, R originalRecord, org.apache.kafka.connect.data.Struct value)
private org.bson.BsonDocument getUpdateDocument(R patchRecord, org.bson.BsonDocument keyDocument)
private org.bson.BsonDocument getInsertDocument(R record, org.bson.BsonDocument key)
private org.apache.kafka.connect.header.Headers makeHeaders(List<ExtractNewDocumentState.FieldReference> additionalHeaders, org.apache.kafka.connect.data.Struct originalRecordValue)
public org.apache.kafka.common.config.ConfigDef config()
public void close()
public void configure(Map<String,?> map)
configure in interface org.apache.kafka.common.ConfigurableCopyright © 2021 JBoss by Red Hat. All rights reserved.