]> gerrit.simantics Code Review - simantics/interop.git/blobdiff - org.simantics.excel.poi/src/org/simantics/excel/poi/parser/streaming/RowImpl.java
Excel parsing interface
[simantics/interop.git] / org.simantics.excel.poi / src / org / simantics / excel / poi / parser / streaming / RowImpl.java
diff --git a/org.simantics.excel.poi/src/org/simantics/excel/poi/parser/streaming/RowImpl.java b/org.simantics.excel.poi/src/org/simantics/excel/poi/parser/streaming/RowImpl.java
new file mode 100644 (file)
index 0000000..1ca2eb3
--- /dev/null
@@ -0,0 +1,166 @@
+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