]> source.dussan.org Git - poi.git/commitdiff
change CellFormat.ultimateType to return CellType
authorPJ Fanning <fanningpj@apache.org>
Mon, 18 Sep 2017 16:06:54 +0000 (16:06 +0000)
committerPJ Fanning <fanningpj@apache.org>
Mon, 18 Sep 2017 16:06:54 +0000 (16:06 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1808739 13f79535-47bb-0310-9956-ffa450edef68

src/java/org/apache/poi/ss/format/CellFormat.java
src/ooxml/testcases/org/apache/poi/ss/format/TestCellFormatPart.java

index 016f1fab696be37624f86e15038c8bacc3e5e8cb..6c218d55b10a35b95283a06803efce481e7ed32e 100644 (file)
@@ -37,6 +37,7 @@ import org.apache.poi.ss.usermodel.DataFormatter;
 import org.apache.poi.ss.usermodel.DateUtil;
 import org.apache.poi.ss.util.DateFormatConverter;
 import org.apache.poi.util.LocaleUtil;
+import org.apache.poi.util.Removal;
 
 /**
  * Format a value according to the standard Excel behavior.  This "standard" is
@@ -289,7 +290,7 @@ public class CellFormat {
      * @return The result, in a {@link CellFormatResult}.
      */
     public CellFormatResult apply(Cell c) {
-        switch (ultimateTypeEnum(c)) {
+        switch (ultimateType(c)) {
         case BLANK:
             return apply("");
         case BOOLEAN:
@@ -359,7 +360,7 @@ public class CellFormat {
      * @return The result, in a {@link CellFormatResult}.
      */
     public CellFormatResult apply(JLabel label, Cell c) {
-        switch (ultimateTypeEnum(c)) {
+        switch (ultimateType(c)) {
             case BLANK:
                 return apply(label, "");
             case BOOLEAN:
@@ -438,16 +439,16 @@ public class CellFormat {
      * {@link Cell#getCachedFormulaResultType()}.  Otherwise this returns the
      * result of {@link Cell#getCellType()}.
      * 
-     * Will return {@link CellType} in a future version of POI.
-     * For forwards compatibility, do not hard-code cell type literals in your code.
-     *
      * @param cell The cell.
      *
      * @return The ultimate type of this cell.
-     * @deprecated POI 3.15. This will return a CellType enum in the future
      */
-    public static int ultimateType(Cell cell) {
-        return ultimateTypeEnum(cell).getCode();
+    public static CellType ultimateType(Cell cell) {
+        CellType type = cell.getCellType();
+        if (type == CellType.FORMULA)
+            return cell.getCachedFormulaResultType();
+        else
+            return type;
     }
 
     /**
@@ -460,15 +461,12 @@ public class CellFormat {
      *
      * @return The ultimate type of this cell.
      * @since POI 3.15 beta 3
-     * @deprecated POI 3.15 beta 3
-     * Will be deleted when we make the CellType enum transition. See bug 59791.
+     * @deprecated use <code>ultimateType</code> instead
      */
+    @Deprecated
+    @Removal(version = "4.2")
     public static CellType ultimateTypeEnum(Cell cell) {
-        CellType type = cell.getCellType();
-        if (type == CellType.FORMULA)
-            return cell.getCachedFormulaResultType();
-        else
-            return type;
+        return ultimateType(cell);
     }
 
     /**
index ea5192638954a2358394b4e7380f831c598dee0a..0bccba83c9f018f9fa497781ba6110e5bf33cde4 100644 (file)
@@ -59,7 +59,7 @@ public class TestCellFormatPart extends CellFormatTestBase {
         runFormatTests("GeneralFormatTests.xlsx", new CellValue() {
             @Override
             public Object getValue(Cell cell) {
-                switch (CellFormat.ultimateTypeEnum(cell)) {
+                switch (CellFormat.ultimateType(cell)) {
                     case BOOLEAN:
                         return cell.getBooleanCellValue();
                     case NUMERIC:
@@ -132,7 +132,7 @@ public class TestCellFormatPart extends CellFormatTestBase {
         runFormatTests("TextFormatTests.xlsx", new CellValue() {
             @Override
             public Object getValue(Cell cell) {
-                switch(CellFormat.ultimateTypeEnum(cell)) {
+                switch(CellFormat.ultimateType(cell)) {
                     case BOOLEAN:
                         return cell.getBooleanCellValue();
                     default:
@@ -158,7 +158,7 @@ public class TestCellFormatPart extends CellFormatTestBase {
             throw new IllegalArgumentException(
                     "Cannot find numer in \"" + str + "\"");
 
-        StringBuffer sb = new StringBuffer();
+        StringBuilder sb = new StringBuilder();
         // The groups in the pattern are the parts of the number
         for (int i = 1; i <= m.groupCount(); i++) {
             String part = m.group(i);