private JsonNode convert(FormatInfo formatInfo, String path, Object object) {
        if (formatInfo instanceof BasicFormatInfo) {
            return convertBasic((BasicFormatInfo<?>) formatInfo, path, object);
        } else if (formatInfo instanceof ArrayFormatInfo) {
            return convertArray((ArrayFormatInfo) formatInfo, path, object);
        } else if (formatInfo instanceof MapFormatInfo) {
            return convertMap((MapFormatInfo) formatInfo, path, object);
        } else if (formatInfo instanceof RowFormatInfo) {
            return convert((RowFormatInfo) formatInfo, path, object);
        } else {
            throw new IllegalStateException(
                    String.format("unsupported format info %s (path=[%s], data=[%s]).",
                            formatInfo.getClass(), path, object));
        }
    }
Object mapper that is used to create output JSON objects.
inlong-sort/sort-formats/format-rowdata/format-rowdata-json/src/main/java/org/apache/inlong/sort/formats/json/JsonRowSerializationSchema.java