in src/main/java/org/apache/doris/kafka/connector/converter/type/debezium/ArrayType.java [73:102]
public Object getValue(Object sourceValue, Schema schema) {
if (sourceValue == null) {
return null;
}
Schema valueSchema = schema.valueSchema();
String type =
Objects.nonNull(valueSchema.name())
? valueSchema.name()
: valueSchema.type().name();
if (sourceValue instanceof List) {
List<Object> resultList = new ArrayList<>();
ArrayList<?> convertedValue = (ArrayList<?>) sourceValue;
if (recordTypeRegister == null) {
registerNestedArrayType();
}
Type valueType = recordTypeRegister.getTypeRegistry().get(type);
if (valueType == null) {
return sourceValue;
}
for (Object value : convertedValue) {
resultList.add(valueType.getValue(value, valueSchema));
}
return resultList;
}
return sourceValue;
}