Package io.debezium.transforms.outbox
Class JsonSchemaData
java.lang.Object
io.debezium.transforms.outbox.JsonSchemaData
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final EventRouterConfigDefinition.JsonPayloadNullFieldBehavior -
Constructor Summary
ConstructorsConstructorDescriptionJsonSchemaData(EventRouterConfigDefinition.JsonPayloadNullFieldBehavior jsonPayloadNullFieldBehavior) -
Method Summary
Modifier and TypeMethodDescriptionprivate ListgetArrayAsList(com.fasterxml.jackson.databind.node.ArrayNode array, org.apache.kafka.connect.data.Schema schema) private com.fasterxml.jackson.databind.JsonNodegetFirstArrayElement(com.fasterxml.jackson.databind.node.ArrayNode array) private ObjectgetStructFieldValue(com.fasterxml.jackson.databind.JsonNode node, org.apache.kafka.connect.data.Schema schema) private booleanprivate org.apache.kafka.connect.data.StructjsonNodeToStructInternal(com.fasterxml.jackson.databind.JsonNode document, org.apache.kafka.connect.data.Schema schema) private org.apache.kafka.connect.data.SchemamergeSchema(org.apache.kafka.connect.data.Schema left, org.apache.kafka.connect.data.Schema right) toConnectData(com.fasterxml.jackson.databind.JsonNode document, org.apache.kafka.connect.data.Schema schema) Convert a Jackson JsonNode into a new Struct according the schema.org.apache.kafka.connect.data.SchematoConnectSchema(String key, com.fasterxml.jackson.databind.JsonNode node) Build a new connect Schema inferring structure and types from Json node.private org.apache.kafka.connect.data.SchematoConnectSchemaWithCycles(String key, com.fasterxml.jackson.databind.node.ArrayNode array)
-
Field Details
-
jsonPayloadNullFieldBehavior
-
-
Constructor Details
-
JsonSchemaData
public JsonSchemaData() -
JsonSchemaData
public JsonSchemaData(EventRouterConfigDefinition.JsonPayloadNullFieldBehavior jsonPayloadNullFieldBehavior)
-
-
Method Details
-
toConnectSchema
public org.apache.kafka.connect.data.Schema toConnectSchema(String key, com.fasterxml.jackson.databind.JsonNode node) Build a new connect Schema inferring structure and types from Json node. -
toConnectSchemaWithCycles
private org.apache.kafka.connect.data.Schema toConnectSchemaWithCycles(String key, com.fasterxml.jackson.databind.node.ArrayNode array) throws org.apache.kafka.connect.errors.ConnectException - Throws:
org.apache.kafka.connect.errors.ConnectException
-
mergeSchema
private org.apache.kafka.connect.data.Schema mergeSchema(org.apache.kafka.connect.data.Schema left, org.apache.kafka.connect.data.Schema right) -
getFirstArrayElement
private com.fasterxml.jackson.databind.JsonNode getFirstArrayElement(com.fasterxml.jackson.databind.node.ArrayNode array) throws org.apache.kafka.connect.errors.ConnectException - Throws:
org.apache.kafka.connect.errors.ConnectException
-
hasField
-
toConnectData
public Object toConnectData(com.fasterxml.jackson.databind.JsonNode document, org.apache.kafka.connect.data.Schema schema) Convert a Jackson JsonNode into a new Struct according the schema.- Parameters:
document- The JSON document to convertschema- The Schema for this document- Returns:
- A new connect Struct for the JSON node.
-
jsonNodeToStructInternal
private org.apache.kafka.connect.data.Struct jsonNodeToStructInternal(com.fasterxml.jackson.databind.JsonNode document, org.apache.kafka.connect.data.Schema schema) -
getStructFieldValue
private Object getStructFieldValue(com.fasterxml.jackson.databind.JsonNode node, org.apache.kafka.connect.data.Schema schema) -
getArrayAsList
private List getArrayAsList(com.fasterxml.jackson.databind.node.ArrayNode array, org.apache.kafka.connect.data.Schema schema)
-