public static GenericRowData deserializeRowData(
            RowFormatInfo rowFormatInfo,
            String nullLiteral,
            List<String> predefinedFields,
            Map<String, String> entries,
            FieldToRowDataConverter[] converters,
            FailureHandler failureHandler) throws Exception {
        String[] fieldNames = rowFormatInfo.getFieldNames();
        FormatInfo[] fieldFormatInfos = rowFormatInfo.getFieldFormatInfos();

        GenericRowData row = new GenericRowData(fieldNames.length);

        for (int i = 0; i < predefinedFields.size(); ++i) {

            if (i >= fieldNames.length) {
                break;
            }

            String fieldName = fieldNames[i];
            FormatInfo fieldFormatInfo = fieldFormatInfos[i];
            FieldToRowDataConverter converter = converters[i];
            String fieldText = predefinedFields.get(i);

            Object field = converter.convert(
                    deserializeBasicField(
                            fieldName,
                            fieldFormatInfo,
                            fieldText,
                            nullLiteral, failureHandler));
            row.setField(i, field);
        }

        for (int i = predefinedFields.size(); i < fieldNames.length; ++i) {

            String fieldName = fieldNames[i];
            FormatInfo fieldFormatInfo = fieldFormatInfos[i];
            FieldToRowDataConverter converter = converters[i];
            String fieldText = entries.get(fieldName);

            Object field = converter.convert(deserializeBasicField(
                    fieldName,
                    fieldFormatInfo,
                    fieldText,
                    nullLiteral,
                    failureHandler));
            row.setField(i, field);
        }

        return row;
    }
Deserializes the row from the given entries.

@param rowFormatInfo    The format of the fields.
@param nullLiteral      The literal for null values.
@param predefinedFields The predefined fields.
@param entries          The entries.
@return The row deserialized from the given entries.
inlong-sort/sort-formats/format-rowdata/format-inlongmsg-rowdata-kv/src/main/java/org/apache/inlong/sort/formats/inlongmsgkv/InLongMsgKvUtils.java