in jsonschema-kafkaconnect-converter/src/main/java/com/amazonaws/services/schemaregistry/kafkaconnect/jsonschema/JsonNodeToConnectValueConverter.java [50:78]
public Object toConnectValue(final Schema schema,
final JsonNode jsonValue) {
final Schema.Type schemaType;
if (schema != null) {
schemaType = schema.type();
if (jsonValue == null || jsonValue.isNull()) {
if (schema.defaultValue() != null) {
return schema.defaultValue(); // any logical type conversions should already have been applied
}
if (schema.isOptional()) {
return null;
}
throw new DataException("Invalid null value for required " + schemaType + " field");
}
} else {
return null;
}
if (schema.name() != null) {
TypeConverter logicalConverter = typeConverterFactory.get(schema.name());
if (logicalConverter != null) {
return logicalConverter.toConnect(schema, jsonValue, jsonSchemaDataConfig);
}
}
TypeConverter typeConverter = typeConverterFactory.get(schemaType);
return typeConverter.toConnect(schema, jsonValue, jsonSchemaDataConfig);
}