package com.gh.mygreen.xlsmapper.cellconvert; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.Sheet; import com.gh.mygreen.xlsmapper.XlsMapperConfig; import com.gh.mygreen.xlsmapper.XlsMapperException; import com.gh.mygreen.xlsmapper.fieldprocessor.FieldAdaptor; /** * Cellの値を変換するインタフェース。 * * @version 1.5 * @author T.TSUCHIE * @param <T> 変換対象のJavaのオブジェクト */ public interface CellConverter<T> { /** * シート読み込み時のExcel Cell => Javaオブジェクトに変換する。 * @param cell 読み込み対象のセル * @param adaptor マッピング対象のフィールド情報。 * @param config 設定情報 * @return 変換したJavaオブジェクト * @throws XlsMapperException */ T toObject(Cell cell, FieldAdaptor adaptor, XlsMapperConfig config) throws XlsMapperException; /** * シート書き込み時のJavaオブジェクト => Excel Cellに変換する。 * @param adaptor マッピング対象のフィールド情報。 * @param targetValue 書き込み対象のオブジェクト。 * @param targetBean 書き込み対象のフィールドが設定されているJavaBeanオブジェクト。 * @param sheet 書き込み先のシート * @param column 書き込み先のセルの列番号。0から始まる。 * @param row 書き込み先のセルの行番号。0から始まる。 * @param config 設定情報 * @return 書き込んだセル * @throws XlsMapperException */ Cell toCell(FieldAdaptor adaptor, T targetValue, Object targetBean, Sheet sheet, int column, int row, XlsMapperConfig config) throws XlsMapperException; }