private Set < String > validateAndExtractFieldsToHash ( Record record , Set < String > fieldsDontExist , Set < String > fieldsWithListOrMapType , Set < String > fieldsWithNull , Collection < String > matchingFieldsPath ) { Set < String > validFieldsToHashForThisConfig = new HashSet < String > ( ) ; for ( String matchingFieldPath : matchingFieldsPath ) { if ( record . has ( matchingFieldPath ) ) { Field field = record . get ( matchingFieldPath ) ; if ( UNSUPPORTED_FIELD_TYPES . contains ( field . getType ( ) ) ) { fieldsWithListOrMapType . add ( matchingFieldPath ) ; } else if ( field . getValue ( ) == null ) { fieldsWithNull . add ( matchingFieldPath ) ; } else { validFieldsToHashForThisConfig . add ( matchingFieldPath ) ; } } else { fieldsDontExist . add ( matchingFieldPath ) ; } } return validFieldsToHashForThisConfig ; }
Basically throw out map list map list and null values fields .