Author: berlog
Date: Wed Sep  5 17:03:55 2012
New Revision: 1381249

URL: http://svn.apache.org/viewvc?rev=1381249&view=rev
Log:
bugzilla ticket 53642: added detailed logging for formula evaluation in both 
HSSF and XSSF modules

Modified:
    poi/trunk/src/documentation/content/xdocs/spreadsheet/eval.xml
    poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFFormulaEvaluator.java
    poi/trunk/src/java/org/apache/poi/ss/usermodel/FormulaEvaluator.java
    poi/trunk/src/java/org/apache/poi/ss/util/SheetUtil.java
    
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFormulaEvaluator.java

Modified: poi/trunk/src/documentation/content/xdocs/spreadsheet/eval.xml
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/documentation/content/xdocs/spreadsheet/eval.xml?rev=1381249&r1=1381248&r2=1381249&view=diff
==============================================================================
--- poi/trunk/src/documentation/content/xdocs/spreadsheet/eval.xml (original)
+++ poi/trunk/src/documentation/content/xdocs/spreadsheet/eval.xml Wed Sep  5 
17:03:55 2012
@@ -319,16 +319,16 @@ for(int sheetNum = 0; sheetNum < wb.g
        // activate logging to console
        System.setProperty("org.apache.poi.util.POILogger", 
"org.apache.poi.util.SystemOutLogger");
        System.setProperty("poi.log.level", POILogger.INFO + "");
-       
+
        // open your file
        Workbook wb = new HSSFWorkbook(new FileInputStream("foobar.xls"));
-    HSSFFormulaEvaluator fe = (HSSFFormulaEvaluator) 
wb.getCreationHelper().createFormulaEvaluator();
+    FormulaEvaluator evaluator = 
wb.getCreationHelper().createFormulaEvaluator();
 
        // get your cell
        Cell cell = wb.getSheet(0).getRow(0).getCell(0);                // just 
a dummy example
 
        // perform debug output for the next evaluate-call only
-    fe.setDebugEvaluationOutputForNextEval(true);
+    evaluator.setDebugEvaluationOutputForNextEval(true);
        evaluator.evaluateFormulaCell(cell);
        evaluator.evaluateFormulaCell(cell);            // no logging performed 
for this next evaluate-call
                </source>

Modified: 
poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFFormulaEvaluator.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFFormulaEvaluator.java?rev=1381249&r1=1381248&r2=1381249&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFFormulaEvaluator.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/hssf/usermodel/HSSFFormulaEvaluator.java 
Wed Sep  5 17:03:55 2012
@@ -389,14 +389,7 @@ public class HSSFFormulaEvaluator implem
         _bookEvaluator.setIgnoreMissingWorkbooks(ignore);
     }
 
-    /**
-     * @param value whether perform detailed output
-     *
-     * Perform detailed output of formula evaluation for next evaluation only?
-     * Is for developer use only (also developers using POI for their XLS 
files).
-     * Log-Level WARN is for basic info, INFO for detailed information. These 
quite
-     * high levels are used because you have to explicitly enable this 
specific logging.
-     */
+    /** {@inheritDoc} */
     public void setDebugEvaluationOutputForNextEval(boolean value){
         _bookEvaluator.setDebugEvaluationOutputForNextEval(value);
     }

Modified: poi/trunk/src/java/org/apache/poi/ss/usermodel/FormulaEvaluator.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/usermodel/FormulaEvaluator.java?rev=1381249&r1=1381248&r2=1381249&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ss/usermodel/FormulaEvaluator.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/ss/usermodel/FormulaEvaluator.java Wed 
Sep  5 17:03:55 2012
@@ -114,4 +114,15 @@ public interface FormulaEvaluator {
      * @param cell
      */
     Cell evaluateInCell(Cell cell);
+
+    /**
+     * Perform detailed output of formula evaluation for next evaluation only?
+     * Is for developer use only (also developers using POI for their XLS 
files).
+     * Log-Level WARN is for basic info, INFO for detailed information. These 
quite
+     * high levels are used because you have to explicitly enable this 
specific logging.
+        
+     * @param value whether to perform detailed output
+     */
+    void setDebugEvaluationOutputForNextEval(boolean value);
+       
 }

Modified: poi/trunk/src/java/org/apache/poi/ss/util/SheetUtil.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/util/SheetUtil.java?rev=1381249&r1=1381248&r2=1381249&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/ss/util/SheetUtil.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/util/SheetUtil.java Wed Sep  5 
17:03:55 2012
@@ -61,6 +61,8 @@ public class SheetUtil {
         public void notifyUpdateCell(Cell cell) {}
         public CellValue evaluate(Cell cell) {return null;  }
         public Cell evaluateInCell(Cell cell) { return null; }
+        public void setDebugEvaluationOutputForNextEval(boolean value) {}
+
         public void evaluateAll() {}
 
         public int evaluateFormulaCell(Cell cell) {

Modified: 
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFormulaEvaluator.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFormulaEvaluator.java?rev=1381249&r1=1381248&r2=1381249&view=diff
==============================================================================
--- 
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFormulaEvaluator.java
 (original)
+++ 
poi/trunk/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFFormulaEvaluator.java
 Wed Sep  5 17:03:55 2012
@@ -279,4 +279,10 @@ public class XSSFFormulaEvaluator implem
                }
                throw new RuntimeException("Unexpected eval class (" + 
eval.getClass().getName() + ")");
        }
+       
+    /** {@inheritDoc} */
+    public void setDebugEvaluationOutputForNextEval(boolean value){
+        _bookEvaluator.setDebugEvaluationOutputForNextEval(value);
+    }
+
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to