1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.gageot.excel.core;
18
19 import java.io.IOException;
20
21 import org.apache.poi.hssf.usermodel.HSSFRow;
22
23 /***
24 * Callback interface used by ExcelTemplate's query methods.
25 * Implementations of this interface perform the actual work of extracting
26 * results from rows, but don't need to worry about exception handling.
27 * IOExceptions will be caught and handled correctly by the ExcelTemplate class.
28 *
29 * <p>In contrast to a SheetExtractor, a RowCallbackHandler object is
30 * typically stateful: It keeps the result state within the object, to be
31 * available for later inspection.
32 *
33 * @author David Gageot
34 * @see SheetExtractor
35 * @see RowMapper
36 */
37 public interface RowCallbackHandler {
38
39 /***
40 * Implementations must implement this method to process each row of data
41 * in the HSSFSheet. This method should extract the current values.
42 * Exactly what the implementation chooses to do is up to it;
43 * a trivial implementation might simply count rows,
44 * while another implementation might build an XML document.
45 * @param row the HSSFRow to process
46 * @param rowNum the number of the current row
47 * @throws IOException if a IOException is encountered getting
48 * column values (that is, there's no need to catch IOException)
49 */
50 void processRow (HSSFRow row, int rowNum) throws IOException;
51 }