package fr.openwide.core.imports.table.common.mapping.column.builder; import com.google.common.base.Function; import fr.openwide.core.imports.table.common.event.ITableImportEventHandler; import fr.openwide.core.imports.table.common.event.exception.TableImportMappingException; import fr.openwide.core.imports.table.common.location.ITableImportNavigator; public interface ITableImportColumnMapper<TTable, TRow, TCell, TCellReference> { /** * @return The row to cellReference mapping function, or null if the mapper was unable to determine a mapping. */ Function<? super TRow, ? extends TCellReference> tryMap( TTable sheet, ITableImportNavigator<TTable, TRow, TCell, TCellReference> navigator, ITableImportEventHandler eventHandler ) throws TableImportMappingException; }