Package io.debezium.transforms.outbox
Class JsonSchemaData
java.lang.Object
io.debezium.transforms.outbox.JsonSchemaData
-
Field Summary
Modifier and TypeFieldDescriptionprivate final EventRouterConfigDefinition.JsonPayloadNullFieldBehavior
-
Constructor Summary
ConstructorDescriptionJsonSchemaData
(EventRouterConfigDefinition.JsonPayloadNullFieldBehavior jsonPayloadNullFieldBehavior) -
Method Summary
Modifier and TypeMethodDescriptionprivate List
getArrayAsList
(com.fasterxml.jackson.databind.node.ArrayNode array, org.apache.kafka.connect.data.Schema schema) private com.fasterxml.jackson.databind.JsonNode
getFirstArrayElement
(com.fasterxml.jackson.databind.node.ArrayNode array) private Object
getStructFieldValue
(com.fasterxml.jackson.databind.JsonNode node, org.apache.kafka.connect.data.Schema schema) private boolean
private org.apache.kafka.connect.data.Struct
jsonNodeToStructInternal
(com.fasterxml.jackson.databind.JsonNode document, org.apache.kafka.connect.data.Schema schema) private org.apache.kafka.connect.data.Schema
mergeSchema
(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.Schema
toConnectSchema
(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.Schema
toConnectSchemaWithCycles
(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)
-