--- /dev/null
+package org.simantics.excel.poi.parser.streaming;\r
+\r
+import java.util.ArrayList;\r
+import java.util.Iterator;\r
+import java.util.List;\r
+\r
+import org.apache.poi.ss.usermodel.Cell;\r
+import org.apache.poi.ss.usermodel.CellStyle;\r
+import org.apache.poi.ss.usermodel.CellType;\r
+import org.apache.poi.ss.usermodel.Row;\r
+import org.apache.poi.ss.usermodel.Sheet;\r
+\r
+public class RowImpl implements Row {\r
+ SheetImpl sheetImpl;\r
+ \r
+ List<String> cellData;\r
+ List<String> cellTypes;\r
+ List<Cell> cells;\r
+\r
+ int index;\r
+ \r
+ public RowImpl(SheetImpl sheetImpl, List<String> cellData, List<String> cellTypes, int index) {\r
+ this.sheetImpl = sheetImpl;\r
+ this.cellData = cellData;\r
+ this.cellTypes = cellTypes;\r
+ this.cells = new ArrayList<Cell>(cellData.size());\r
+ for (int i = 0; i < cellData.size(); i++) {\r
+ cells.add(new CellImpl(this, i));\r
+ }\r
+ this.index = index;\r
+ }\r
+ \r
+ @Override\r
+ public Iterator<Cell> cellIterator() {\r
+ return cells.iterator();\r
+ }\r
+ \r
+ @Override\r
+ public Cell createCell(int column) {\r
+ return null;\r
+ }\r
+ \r
+ @Override\r
+ public Cell createCell(int column, int type) {\r
+ return null;\r
+ }\r
+ \r
+ @Override\r
+ public Cell getCell(int cellnum) {\r
+ return cells.get(cellnum);\r
+ }\r
+ \r
+ @Override\r
+ public Cell getCell(int cellnum, MissingCellPolicy policy) {\r
+ return cells.get(cellnum);\r
+ }\r
+ \r
+ @Override\r
+ public short getFirstCellNum() {\r
+ return 0;\r
+ }\r
+ \r
+ @Override\r
+ public short getLastCellNum() {\r
+ return (short)(cells.size()-1);\r
+ }\r
+ \r
+ \r
+ @Override\r
+ public short getHeight() {\r
+ return 0;\r
+ }\r
+ \r
+ @Override\r
+ public float getHeightInPoints() {\r
+ return 0;\r
+ }\r
+ \r
+ \r
+ @Override\r
+ public int getPhysicalNumberOfCells() {\r
+ return cells.size();\r
+ }\r
+ \r
+ @Override\r
+ public int getRowNum() {\r
+ return index;\r
+ }\r
+ \r
+ @Override\r
+ public CellStyle getRowStyle() {\r
+ return null;\r
+ }\r
+ \r
+ @Override\r
+ public Sheet getSheet() {\r
+ return sheetImpl;\r
+ }\r
+ \r
+ @Override\r
+ public boolean getZeroHeight() {\r
+ return false;\r
+ }\r
+ \r
+ @Override\r
+ public boolean isFormatted() {\r
+ return false;\r
+ }\r
+ \r
+ @Override\r
+ public Iterator<Cell> iterator() {\r
+ return cells.iterator();\r
+ }\r
+ \r
+ @Override\r
+ public void removeCell(Cell cell) {\r
+ \r
+ }\r
+ \r
+ @Override\r
+ public void setHeight(short height) {\r
+ \r
+ }\r
+ \r
+ @Override\r
+ public void setHeightInPoints(float height) {\r
+ \r
+ }\r
+ \r
+ @Override\r
+ public void setRowNum(int rowNum) {\r
+ \r
+ }\r
+ \r
+ @Override\r
+ public void setRowStyle(CellStyle style) {\r
+ \r
+ }\r
+ \r
+ @Override\r
+ public void setZeroHeight(boolean zHeight) {\r
+ \r
+ }\r
+ \r
+ @Override\r
+ public int getOutlineLevel() {\r
+ return 0;\r
+ }\r
+ \r
+ @Override\r
+ public Cell createCell(int arg0, CellType arg1) {\r
+ throw new UnsupportedOperationException();\r
+ }\r
+ \r
+ \r
+ \r
+ @Override\r
+ public String toString() {\r
+ String s = "";\r
+ for (int i = 0; i < cellData.size(); i++) {\r
+ s += cellTypes.get(i)+":" + cellData.get(i) + "; ";\r
+ }\r
+ return s;\r
+ }\r
+\r
+}\r