class ClassFieldsExcelImport implements ClassFields {

    @Override
    public Iterator<Field> getFields() {
        final Iterable<Field> originalFields = () -> this.original.getFields();

        // return only classes that are annotated with @ExcelImport
        final Iterator<Field> fields = StreamSupport.stream(originalFields.spliterator(), false)
                .filter(field -> field.getAnnotation(ExcelImport.class) != null)
                .filter(this::filterByClass)
                .iterator();

        return fields;
    }

    public  ClassFieldsExcelImport(final ClassFields classFields);

}