public String extractFieldValue(final T_ROW row) {
        // Useful is unit tests, VERY noisy with lots of data
        if (LOGGER.isTraceEnabled()) {
            String val = valueExtractor.apply(row);
            LOGGER.trace("Extracted [{}] from field {} in [{}]", val, fieldDefinition, row);
            return val;
        } else {
            return valueExtractor.apply(row);
        }
    }
Overloaded factory method that allows you to define a nested value
extractor that is null safe. The value of each function is chained
in a null safe way.
stroom-util/src/main/java/stroom/util/filter/FilterFieldMapper.java