1 package com.github.mygreen.cellformatter;
2
3 import java.util.Date;
4
5 import org.apache.poi.ss.usermodel.Cell;
6 import org.apache.poi.ss.usermodel.CellType;
7 import org.apache.poi.ss.usermodel.CellValue;
8
9 import com.github.mygreen.cellformatter.lang.ExcelDateUtils;
10
11
12
13
14
15
16
17
18
19 public class POIEvaluatedCell extends POICell {
20
21 private final CellValue value;
22
23
24
25
26
27
28 public POIEvaluatedCell(final Cell cell, final CellValue value) {
29 super(cell);
30 this.value = value;
31
32 }
33
34
35
36
37
38 public CellValue getCellValue() {
39 return value;
40 }
41
42 @Override
43 public boolean isText() {
44 return value.getCellType() == CellType.STRING;
45 }
46
47 @Override
48 public String getTextCellValue() {
49 return value.getStringValue();
50 }
51
52 @Override
53 public boolean isBoolean() {
54 return value.getCellType() == CellType.BOOLEAN;
55 }
56
57 @Override
58 public boolean getBooleanCellValue() {
59 return value.getBooleanValue();
60 }
61
62 @Override
63 public boolean isNumber() {
64 return value.getCellType() == CellType.NUMERIC;
65 }
66
67 @Override
68 public double getNumberCellValue() {
69 return value.getNumberValue();
70 }
71
72 @Override
73 public Date getDateCellValue() {
74 return ExcelDateUtils.convertJavaDate(getNumberCellValue(), isDateStart1904());
75
76 }
77
78 }