You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@poi.apache.org by ni...@apache.org on 2008/06/09 15:30:19 UTC
svn commit: r664700 [1/3] - in /poi/branches/ooxml: ./
src/documentation/content/xdocs/ src/java/org/apache/poi/ddf/
src/java/org/apache/poi/hssf/model/ src/java/org/apache/poi/hssf/record/
src/java/org/apache/poi/hssf/record/formula/ src/java/org/apac...
Author: nick
Date: Mon Jun 9 06:30:17 2008
New Revision: 664700
URL: http://svn.apache.org/viewvc?rev=664700&view=rev
Log:
Merged revisions 638786-638802,638805-638811,638813-638814,638816-639230,639233-639241,639243-639253,639255-639486,639488-639601,639603-639835,639837-639917,639919-640056,640058-640710,640712-641156,641158-641184,641186-641795,641797-641798,641800-641933,641935-641963,641965-641966,641968-641995,641997-642230,642232-642562,642564-642565,642568-642570,642572-642573,642576-642736,642739-642877,642879,642881-642890,642892-642903,642905-642945,642947-643624,643626-643653,643655-643669,643671,643673-643830,643832-643833,643835-644342,644344-644472,644474-644508,644510-645347,645349-645351,645353-645559,645561-645565,645568-645951,645953-646193,646195-646311,646313-646404,646406-646665,646667-646853,646855-646869,646871-647151,647153-647185,647187-647277,647279-647566,647568-647573,647575,647578-647711,647714-647737,647739-647823,647825-648155,648157-648202,648204-648273,648275,648277-648302,648304-648333,648335-648588,648590-648622,648625-648673,648675-649141,649144,649146-649556,
649558-649795,649799,649801-649910,649912-649913,649915-650128,650131-650132,650134-650137,650140-650914,650916-651991,651993-652284,652286-652287,652289,652291,652293-652297,652299-652328,652330-652425,652427-652445,652447-652560,652562-652933,652935,652937-652993,652995-653116,653118-653124,653126-653483,653487-653519,653522-653550,653552-653607,653609-653667,653669-653674,653676-653814,653817-653830,653832-653891,653893-653944,653946-654055,654057-654355,654357-654365,654367-654648,654651-655215,655217-655277,655279-655281,655283-655911,655913-656212,656214,656216-656251,656253-656698,656700-656756,656758-656892,656894-657135,657137-657165,657168-657179,657181-657354,657356-657357,657359-657701,657703-657874,657876-658032,658034-658284,658286,658288-658301,658303-658307,658309-658321,658323-658335,658337-658348,658351,658353-658832,658834-658983,658985,658987-659066,659068-659402,659404-659428,659430-659451,659453-659454,659456-659461,659463-659477,659479-659524,659526-65
9571,659574,659576-660255,660257-660262,660264-660279,660281-660343,660345-660473,660475-660827,660829-660833,660835-660888,660890-663321,663323-663435,663437-663764,663766-663854,663856-664671 via svnmerge from
https://svn.apache.org:443/repos/asf/poi/trunk
........
r664220 | josh | 2008-06-07 01:53:01 +0100 (Sat, 07 Jun 2008) | 1 line
Fix for bug 45091 - serialization of RefN~ tokens. Simplified Ptg class hierarchy
........
r664490 | yegor | 2008-06-08 13:30:25 +0100 (Sun, 08 Jun 2008) | 1 line
Correctly increment the reference count of a blip when a picture is inserted
........
r664491 | yegor | 2008-06-08 13:31:19 +0100 (Sun, 08 Jun 2008) | 1 line
Support custom image renderers
........
r664492 | yegor | 2008-06-08 13:32:10 +0100 (Sun, 08 Jun 2008) | 1 line
Fixed TextShape.resizeToFitText() to properly resize TextShape. See patch#45140
........
r664493 | yegor | 2008-06-08 13:37:39 +0100 (Sun, 08 Jun 2008) | 1 line
expose access to OEPlaceholderAtom so that users can determine whether a shape represents ppt placeholder (date/time, footer or slide number)
........
r664515 | yegor | 2008-06-08 16:31:05 +0100 (Sun, 08 Jun 2008) | 1 line
bug#44692 - Fixed HSSFPicture.resize() to properly resize pictures if the underlying columns/rows have modified size
........
Added:
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaPtg.java
- copied unchanged from r664515, poi/trunk/src/java/org/apache/poi/hssf/record/formula/AreaPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java
- copied, changed from r664515, poi/trunk/src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/RefPtg.java
- copied unchanged from r664515, poi/trunk/src/java/org/apache/poi/hssf/record/formula/RefPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/RefPtgBase.java
- copied, changed from r664515, poi/trunk/src/java/org/apache/poi/hssf/record/formula/RefPtgBase.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/blip/BitmapPainter.java
- copied unchanged from r664515, poi/trunk/src/scratchpad/src/org/apache/poi/hslf/blip/BitmapPainter.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/blip/ImagePainter.java
- copied unchanged from r664515, poi/trunk/src/scratchpad/src/org/apache/poi/hslf/blip/ImagePainter.java
poi/branches/ooxml/src/scratchpad/testcases/org/apache/poi/hslf/model/TestImagePainter.java
- copied unchanged from r664515, poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/model/TestImagePainter.java
poi/branches/ooxml/src/scratchpad/testcases/org/apache/poi/hslf/model/TestPicture.java
- copied unchanged from r664515, poi/trunk/src/scratchpad/testcases/org/apache/poi/hslf/model/TestPicture.java
Removed:
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaAPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaNAPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaNVPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaVPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ArrayPtgA.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ArrayPtgV.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/RefAPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/RefNAPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/RefNVPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/RefVPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ReferencePtg.java
Modified:
poi/branches/ooxml/ (props changed)
poi/branches/ooxml/src/documentation/content/xdocs/changes.xml
poi/branches/ooxml/src/documentation/content/xdocs/status.xml
poi/branches/ooxml/src/java/org/apache/poi/ddf/EscherDggRecord.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/model/FormulaParser.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/FormulaRecord.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/NameRecord.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/SharedFormulaRecord.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AbstractFunctionPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AddPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaErrPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaNPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ArrayPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/BoolPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/DividePtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/EqualPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterEqualPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterThanPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntersectionPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessEqualPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessThanPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemAreaPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemFuncPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NamePtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NameXPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NotEqualPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NumberPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/OperationPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ParenthesisPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/PercentPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/PowerPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/Ptg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/RangePtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/Ref3DPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/RefErrorPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/RefNPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ScalarConstantPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/StringPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/SubtractPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/UnaryMinusPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/UnaryPlusPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/UnionPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ValueOperatorPtg.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/eval/Ref2DEval.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/usermodel/HSSFPicture.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java
poi/branches/ooxml/src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java
poi/branches/ooxml/src/java/org/apache/poi/ss/usermodel/FormulaEvaluator.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/model/MasterSheet.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/model/Picture.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/model/SimpleShape.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/model/Slide.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/model/TextRun.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/model/TextShape.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/record/StyleTextPropAtom.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/usermodel/PictureData.java
poi/branches/ooxml/src/scratchpad/src/org/apache/poi/hslf/usermodel/SlideShow.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/model/TestFormulaParser.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/model/TestFormulaParserIf.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/model/TestRVA.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/TestFormulaRecord.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/TestSharedFormulaRecord.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/formula/TestArrayPtg.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/formula/TestReferencePtg.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/formula/eval/TestPercentEval.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/formula/eval/TestUnaryPlusEval.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/formula/functions/EvalFactory.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/formula/functions/TestCountFuncs.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/formula/functions/TestMid.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/formula/functions/TestSumproduct.java
poi/branches/ooxml/src/testcases/org/apache/poi/hssf/record/formula/functions/TestTFunc.java
Propchange: poi/branches/ooxml/
------------------------------------------------------------------------------
--- svnmerge-integrated (original)
+++ svnmerge-integrated Mon Jun 9 06:30:17 2008
@@ -1 +1 @@
-/poi/trunk:1-638784,638786-639486,639488-639601,639603-640056,640058-642562,642564-642566,642568-642574,642576-642736,642739-650914,650916-663870
+/poi/trunk:1-638784,638786-639486,639488-639601,639603-640056,640058-642562,642564-642566,642568-642574,642576-642736,642739-650914,650916-664671
Modified: poi/branches/ooxml/src/documentation/content/xdocs/changes.xml
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/documentation/content/xdocs/changes.xml?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/documentation/content/xdocs/changes.xml (original)
+++ poi/branches/ooxml/src/documentation/content/xdocs/changes.xml Mon Jun 9 06:30:17 2008
@@ -46,6 +46,11 @@
<action dev="POI-DEVELOPERS" type="add">Created a common interface for handling Excel files, irrespective of if they are .xls or .xlsx</action>
</release>
<release version="3.1-final" date="2008-06-??">
+ <action dev="POI-DEVELOPERS" type="fix">44692 - Fixed HSSFPicture.resize() to properly resize pictures if the underlying columns/rows have modified size</action>
+ <action dev="POI-DEVELOPERS" type="add">Support custom image renderers in HSLF</action>
+ <action dev="POI-DEVELOPERS" type="fix">Correctly increment the reference count of a blip when a picture is inserted</action>
+ <action dev="POI-DEVELOPERS" type="fix">45110 - Fixed TextShape.resizeToFitText() to properly resize TextShape</action>
+ <action dev="POI-DEVELOPERS" type="fix">45091 - Fixed serialization of RefN~ tokens. Simplified Ptg class hierarchy</action>
<action dev="POI-DEVELOPERS" type="fix">45133 - Fixed OBJ Record (5Dh) to pad the sub-record data to a 4-byte boundary</action>
<action dev="POI-DEVELOPERS" type="fix">45145 - Fixed Sheet to always enforce RowRecordsAggregate before ValueRecordsAggregate</action>
<action dev="POI-DEVELOPERS" type="fix">45123 - Fixed SharedFormulaRecord.convertSharedFormulas() to propagate token operand classes</action>
Modified: poi/branches/ooxml/src/documentation/content/xdocs/status.xml
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/documentation/content/xdocs/status.xml?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/documentation/content/xdocs/status.xml (original)
+++ poi/branches/ooxml/src/documentation/content/xdocs/status.xml Mon Jun 9 06:30:17 2008
@@ -43,6 +43,11 @@
<action dev="POI-DEVELOPERS" type="add">Created a common interface for handling Excel files, irrespective of if they are .xls or .xlsx</action>
</release>
<release version="3.1-final" date="2008-06-??">
+ <action dev="POI-DEVELOPERS" type="fix">44692 - Fixed HSSFPicture.resize() to properly resize pictures if the underlying columns/rows have modified size</action>
+ <action dev="POI-DEVELOPERS" type="add">Support custom image renderers in HSLF</action>
+ <action dev="POI-DEVELOPERS" type="fix">Correctly increment the reference count of a blip when a picture is inserted</action>
+ <action dev="POI-DEVELOPERS" type="fix">45110 - Fixed TextShape.resizeToFitText() to properly resize TextShape</action>
+ <action dev="POI-DEVELOPERS" type="fix">45091 - Fixed serialization of RefN~ tokens. Simplified Ptg class hierarchy</action>
<action dev="POI-DEVELOPERS" type="fix">45133 - Fixed OBJ Record (5Dh) to pad the sub-record data to a 4-byte boundary</action>
<action dev="POI-DEVELOPERS" type="fix">45145 - Fixed Sheet to always enforce RowRecordsAggregate before ValueRecordsAggregate</action>
<action dev="POI-DEVELOPERS" type="fix">45123 - Fixed SharedFormulaRecord.convertSharedFormulas() to propagate token operand classes</action>
Modified: poi/branches/ooxml/src/java/org/apache/poi/ddf/EscherDggRecord.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/ddf/EscherDggRecord.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/ddf/EscherDggRecord.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/ddf/EscherDggRecord.java Mon Jun 9 06:30:17 2008
@@ -238,6 +238,10 @@
return maxDgId;
}
+ public void setMaxDrawingGroupId(int id){
+ maxDgId = id;
+ }
+
public FileIdCluster[] getFileIdClusters()
{
return field_5_fileIdClusters;
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/model/FormulaParser.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/model/FormulaParser.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/model/FormulaParser.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/model/FormulaParser.java Mon Jun 9 06:30:17 2008
@@ -97,7 +97,7 @@
* parse results.
* This class is recommended only for single threaded use.
*
- * If you only have a usermodel.HSSFWorkbook, and not a
+ * If you only have a usermodel.Workbook, and not a
* model.Workbook, then use the convenience method on
* usermodel.HSSFFormulaEvaluator
*/
@@ -274,7 +274,7 @@
boolean cellRef = CELL_REFERENCE_PATTERN.matcher(name).matches();
if (cellRef) {
- return new ReferencePtg(name);
+ return new RefPtg(name);
}
for(int i = 0; i < book.getNumberOfNames(); i++) {
@@ -324,9 +324,9 @@
FunctionMetadata fm = FunctionMetadataRegistry.getFunctionByName(name.toUpperCase());
int numArgs = args.length;
if(fm == null) {
- if (namePtg == null) {
- throw new IllegalStateException("NamePtg must be supplied for external functions");
- }
+ if (namePtg == null) {
+ throw new IllegalStateException("NamePtg must be supplied for external functions");
+ }
// must be external function
ParseNode[] allArgs = new ParseNode[numArgs+1];
allArgs[0] = new ParseNode(namePtg);
@@ -335,8 +335,8 @@
}
if (namePtg != null) {
- throw new IllegalStateException("NamePtg no applicable to internal functions");
- }
+ throw new IllegalStateException("NamePtg no applicable to internal functions");
+ }
boolean isVarArgs = !fm.hasFixedArgsLength();
int funcIx = fm.getIndex();
validateNumArgs(args.length, fm);
@@ -392,7 +392,7 @@
SkipWhite();
if (isArgumentDelimiter(look)) {
if (missedPrevArg) {
- temp.add(new ParseNode(new MissingArgPtg()));
+ temp.add(new ParseNode(MissingArgPtg.instance));
numArgs++;
}
if (look == ')') {
@@ -417,7 +417,7 @@
/** Parse and Translate a Math Factor */
private ParseNode powerFactor() {
- ParseNode result = percentFactor();
+ ParseNode result = percentFactor();
while(true) {
SkipWhite();
if(look != '^') {
@@ -425,19 +425,19 @@
}
Match('^');
ParseNode other = percentFactor();
- result = new ParseNode(new PowerPtg(), result, other);
+ result = new ParseNode(PowerPtg.instance, result, other);
}
}
private ParseNode percentFactor() {
- ParseNode result = parseSimpleFactor();
+ ParseNode result = parseSimpleFactor();
while(true) {
SkipWhite();
if(look != '%') {
return result;
}
Match('%');
- result = new ParseNode(new PercentPtg(), result);
+ result = new ParseNode(PercentPtg.instance, result);
}
}
@@ -452,15 +452,15 @@
return new ParseNode(parseErrorLiteral());
case '-':
Match('-');
- return new ParseNode(new UnaryMinusPtg(), powerFactor());
+ return new ParseNode(UnaryMinusPtg.instance, powerFactor());
case '+':
Match('+');
- return new ParseNode(new UnaryPlusPtg(), powerFactor());
+ return new ParseNode(UnaryPlusPtg.instance, powerFactor());
case '(':
Match('(');
ParseNode inside = comparisonExpression();
Match(')');
- return new ParseNode(new ParenthesisPtg(), inside);
+ return new ParseNode(ParenthesisPtg.instance, inside);
case '"':
return new ParseNode(parseStringLiteral());
}
@@ -625,18 +625,18 @@
/** Parse and Translate a Math Term */
private ParseNode Term() {
- ParseNode result = powerFactor();
+ ParseNode result = powerFactor();
while(true) {
SkipWhite();
Ptg operator;
switch(look) {
case '*':
Match('*');
- operator = new MultiplyPtg();
+ operator = MultiplyPtg.instance;
break;
case '/':
Match('/');
- operator = new DividePtg();
+ operator = DividePtg.instance;
break;
default:
return result; // finished with Term
@@ -647,7 +647,7 @@
}
private ParseNode comparisonExpression() {
- ParseNode result = concatExpression();
+ ParseNode result = concatExpression();
while (true) {
SkipWhite();
switch(look) {
@@ -666,26 +666,26 @@
private Ptg getComparisonToken() {
if(look == '=') {
Match(look);
- return new EqualPtg();
+ return EqualPtg.instance;
}
boolean isGreater = look == '>';
Match(look);
if(isGreater) {
if(look == '=') {
Match('=');
- return new GreaterEqualPtg();
+ return GreaterEqualPtg.instance;
}
- return new GreaterThanPtg();
+ return GreaterThanPtg.instance;
}
switch(look) {
case '=':
Match('=');
- return new LessEqualPtg();
+ return LessEqualPtg.instance;
case '>':
Match('>');
- return new NotEqualPtg();
+ return NotEqualPtg.instance;
}
- return new LessThanPtg();
+ return LessThanPtg.instance;
}
@@ -698,7 +698,7 @@
}
Match('&');
ParseNode other = additiveExpression();
- result = new ParseNode(new ConcatPtg(), result, other);
+ result = new ParseNode(ConcatPtg.instance, result, other);
}
return result;
}
@@ -706,18 +706,18 @@
/** Parse and Translate an Expression */
private ParseNode additiveExpression() {
- ParseNode result = Term();
+ ParseNode result = Term();
while (true) {
SkipWhite();
Ptg operator;
switch(look) {
case '+':
Match('+');
- operator = new AddPtg();
+ operator = AddPtg.instance;
break;
case '-':
Match('-');
- operator = new SubtractPtg();
+ operator = SubtractPtg.instance;
break;
default:
return result; // finished with additive expression
@@ -743,7 +743,7 @@
/**
* API call to execute the parsing of the formula
- * @deprecated use Ptg[] FormulaParser.parse(String, HSSFWorkbook) directly
+ * @deprecated use Ptg[] FormulaParser.parse(String, Workbook) directly
*/
public void parse() {
pointer=0;
@@ -771,9 +771,9 @@
}
public Ptg[] getRPNPtg(int formulaType) {
- OperandClassTransformer oct = new OperandClassTransformer(formulaType);
+ OperandClassTransformer oct = new OperandClassTransformer(formulaType);
// RVA is for 'operand class': 'reference', 'value', 'array'
- oct.transformFormula(_rootNode);
+ oct.transformFormula(_rootNode);
return ParseNode.toTokenArray(_rootNode);
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/FormulaRecord.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/FormulaRecord.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/FormulaRecord.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/FormulaRecord.java Mon Jun 9 06:30:17 2008
@@ -557,7 +557,7 @@
if (field_8_parsed_expr != null)
size = field_8_parsed_expr.size();
for (int i=0; i< size; i++) {
- Ptg ptg = (Ptg)((Ptg)field_8_parsed_expr.get(i)).clone();
+ Ptg ptg = ((Ptg)field_8_parsed_expr.get(i)).copy();
rec.field_8_parsed_expr.add(i, ptg);
}
rec.value_data = value_data;
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/NameRecord.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/NameRecord.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/NameRecord.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/NameRecord.java Mon Jun 9 06:30:17 2008
@@ -737,7 +737,7 @@
}
// And then a union if we had more than one area
if(refs.length > 1) {
- ptg = new UnionPtg();
+ ptg = UnionPtg.instance;
field_13_name_definition.push(ptg);
this.setDefinitionTextLength( (short)(getDefinitionLength() + ptg.getSize()) );
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/SharedFormulaRecord.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/SharedFormulaRecord.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/SharedFormulaRecord.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/SharedFormulaRecord.java Mon Jun 9 06:30:17 2008
@@ -207,22 +207,10 @@
}
if (ptg instanceof RefNPtg) {
RefNPtg refNPtg = (RefNPtg)ptg;
- ptg = new ReferencePtg(fixupRelativeRow(formulaRow,refNPtg.getRow(),refNPtg.isRowRelative()),
+ ptg = new RefPtg(fixupRelativeRow(formulaRow,refNPtg.getRow(),refNPtg.isRowRelative()),
fixupRelativeColumn(formulaColumn,refNPtg.getColumn(),refNPtg.isColRelative()),
refNPtg.isRowRelative(),
refNPtg.isColRelative());
- } else if (ptg instanceof RefNVPtg) {
- RefNVPtg refNVPtg = (RefNVPtg)ptg;
- ptg = new RefVPtg(fixupRelativeRow(formulaRow,refNVPtg.getRow(),refNVPtg.isRowRelative()),
- fixupRelativeColumn(formulaColumn,refNVPtg.getColumn(),refNVPtg.isColRelative()),
- refNVPtg.isRowRelative(),
- refNVPtg.isColRelative());
- } else if (ptg instanceof RefNAPtg) {
- RefNAPtg refNAPtg = (RefNAPtg)ptg;
- ptg = new RefAPtg( fixupRelativeRow(formulaRow,refNAPtg.getRow(),refNAPtg.isRowRelative()),
- fixupRelativeColumn(formulaColumn,refNAPtg.getColumn(),refNAPtg.isColRelative()),
- refNAPtg.isRowRelative(),
- refNAPtg.isColRelative());
} else if (ptg instanceof AreaNPtg) {
AreaNPtg areaNPtg = (AreaNPtg)ptg;
ptg = new AreaPtg(fixupRelativeRow(formulaRow,areaNPtg.getFirstRow(),areaNPtg.isFirstRowRelative()),
@@ -233,26 +221,6 @@
areaNPtg.isLastRowRelative(),
areaNPtg.isFirstColRelative(),
areaNPtg.isLastColRelative());
- } else if (ptg instanceof AreaNVPtg) {
- AreaNVPtg areaNVPtg = (AreaNVPtg)ptg;
- ptg = new AreaVPtg(fixupRelativeRow(formulaRow,areaNVPtg.getFirstRow(),areaNVPtg.isFirstRowRelative()),
- fixupRelativeRow(formulaRow,areaNVPtg.getLastRow(),areaNVPtg.isLastRowRelative()),
- fixupRelativeColumn(formulaColumn,areaNVPtg.getFirstColumn(),areaNVPtg.isFirstColRelative()),
- fixupRelativeColumn(formulaColumn,areaNVPtg.getLastColumn(),areaNVPtg.isLastColRelative()),
- areaNVPtg.isFirstRowRelative(),
- areaNVPtg.isLastRowRelative(),
- areaNVPtg.isFirstColRelative(),
- areaNVPtg.isLastColRelative());
- } else if (ptg instanceof AreaNAPtg) {
- AreaNAPtg areaNAPtg = (AreaNAPtg)ptg;
- ptg = new AreaAPtg(fixupRelativeRow(formulaRow,areaNAPtg.getFirstRow(),areaNAPtg.isFirstRowRelative()),
- fixupRelativeRow(formulaRow,areaNAPtg.getLastRow(),areaNAPtg.isLastRowRelative()),
- fixupRelativeColumn(formulaColumn,areaNAPtg.getFirstColumn(),areaNAPtg.isFirstColRelative()),
- fixupRelativeColumn(formulaColumn,areaNAPtg.getLastColumn(),areaNAPtg.isLastColRelative()),
- areaNAPtg.isFirstRowRelative(),
- areaNAPtg.isLastRowRelative(),
- areaNAPtg.isFirstColRelative(),
- areaNAPtg.isLastColRelative());
}
if (!ptg.isBaseToken()) {
ptg.setClass(originalOperandClass);
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AbstractFunctionPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AbstractFunctionPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AbstractFunctionPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AbstractFunctionPtg.java Mon Jun 9 06:30:17 2008
@@ -56,12 +56,6 @@
return sb.toString();
}
- public int getType() {
- return -1;
- }
-
-
-
public short getFunctionIndex() {
return field_2_fnc_index;
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AddPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AddPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AddPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AddPtg.java Mon Jun 9 06:30:17 2008
@@ -17,9 +17,6 @@
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
-
/**
* Addition operator PTG the "+" binomial operator. If you need more
* explanation than that then well...We really can't help you here.
@@ -27,49 +24,23 @@
* @author Jason Height (jheight at chariot dot net dot au)
*/
public final class AddPtg extends ValueOperatorPtg {
- public final static int SIZE = 1;
public final static byte sid = 0x03;
private final static String ADD = "+";
- /** Creates new AddPtg */
-
- public AddPtg()
- {
- }
-
- public AddPtg(RecordInputStream in)
- {
+ public static final ValueOperatorPtg instance = new AddPtg();
- // doesn't need anything
+ private AddPtg() {
+ // enforce singleton
}
-
- public void writeBytes(byte [] array, int offset)
- {
- array[ offset + 0 ] = sid;
- }
-
- public int getSize()
- {
- return SIZE;
+ protected byte getSid() {
+ return sid;
}
- public int getType()
- {
- return TYPE_BINARY;
- }
-
- public int getNumberOfOperands()
- {
+ public int getNumberOfOperands() {
return 2;
}
-
- /** Implementation of method from Ptg */
- public String toFormulaString(Workbook book)
- {
- return "+";
- }
/** implementation of method from OperationsPtg*/
public String toFormulaString(String[] operands) {
@@ -80,9 +51,4 @@
buffer.append(operands[ 1 ]);
return buffer.toString();
}
-
- public Object clone() {
- return new AddPtg();
- }
-
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java Mon Jun 9 06:30:17 2008
@@ -18,9 +18,9 @@
package org.apache.poi.hssf.record.formula;
import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
+import org.apache.poi.ss.util.CellReference;
import org.apache.poi.hssf.util.AreaReference;
-import org.apache.poi.hssf.util.CellReference;
+import org.apache.poi.hssf.record.RecordInputStream;
import org.apache.poi.util.BitField;
import org.apache.poi.util.BitFieldFactory;
import org.apache.poi.util.LittleEndian;
@@ -95,7 +95,7 @@
public void writeBytes( byte[] array, int offset )
{
- array[0 + offset] = (byte) ( sid + ptgClass );
+ array[0 + offset] = (byte) ( sid + getPtgClass() );
LittleEndian.putShort( array, 1 + offset, getExternSheetIndex() );
LittleEndian.putShort( array, 3 + offset, (short)getFirstRow() );
LittleEndian.putShort( array, 5 + offset, (short)getLastRow() );
@@ -280,24 +280,10 @@
return retval.toString();
}
- public byte getDefaultOperandClass()
- {
+ public byte getDefaultOperandClass() {
return Ptg.CLASS_REF;
}
-
- public Object clone()
- {
- Area3DPtg ptg = new Area3DPtg();
- ptg.field_1_index_extern_sheet = field_1_index_extern_sheet;
- ptg.field_2_first_row = field_2_first_row;
- ptg.field_3_last_row = field_3_last_row;
- ptg.field_4_first_column = field_4_first_column;
- ptg.field_5_last_column = field_5_last_column;
- ptg.setClass(ptgClass);
- return ptg;
- }
-
-
+ // TODO - one junit relies on this. remove
public boolean equals( Object o )
{
if ( this == o ) return true;
@@ -313,18 +299,4 @@
return true;
}
-
- public int hashCode()
- {
- // TODO - hashCode seems to be unused
- int result;
- result = (int) field_1_index_extern_sheet;
- result = 29 * result + (int) field_2_first_row;
- result = 29 * result + (int) field_3_last_row;
- result = 29 * result + (int) field_4_first_column;
- result = 29 * result + (int) field_5_last_column;
- return result;
- }
-
-
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaErrPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaErrPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaErrPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaErrPtg.java Mon Jun 9 06:30:17 2008
@@ -17,73 +17,40 @@
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.util.LittleEndian;
-import org.apache.poi.util.BitField;
-
-import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.hssf.record.RecordInputStream;
+import org.apache.poi.ss.usermodel.Workbook;
+import org.apache.poi.util.LittleEndian;
/**
* AreaErr - handles deleted cell area references.
*
* @author Daniel Noll (daniel at nuix dot com dot au)
*/
-public class AreaErrPtg extends AreaPtg
-{
+public final class AreaErrPtg extends OperandPtg {
public final static byte sid = 0x2b;
- private AreaErrPtg()
- {
- //Required for clone methods
- super();
- }
-
- public AreaErrPtg(RecordInputStream in)
- {
- super(in);
- }
-
- public String toString()
- {
- StringBuffer buffer = new StringBuffer();
-
- buffer.append("AreaErrPtg\n");
- buffer.append("firstRow = " + getFirstRow()).append("\n");
- buffer.append("lastRow = " + getLastRow()).append("\n");
- buffer.append("firstCol = " + getFirstColumn()).append("\n");
- buffer.append("lastCol = " + getLastColumn()).append("\n");
- buffer.append("firstColRowRel= "
- + isFirstRowRelative()).append("\n");
- buffer.append("lastColRowRel = "
- + isLastRowRelative()).append("\n");
- buffer.append("firstColRel = " + isFirstColRelative()).append("\n");
- buffer.append("lastColRel = " + isLastColRelative()).append("\n");
- return buffer.toString();
+ public AreaErrPtg(RecordInputStream in) {
+ // 8 bytes unused:
+ in.readInt();
+ in.readInt();
}
public void writeBytes(byte [] array, int offset) {
- super.writeBytes(array, offset);
- array[offset] = (byte) (sid + ptgClass);
+ array[offset] = (byte) (sid + getPtgClass());
+ LittleEndian.putInt(array, offset+1, 0);
+ LittleEndian.putInt(array, offset+5, 0);
}
- public String toFormulaString(Workbook book)
- {
+ public String toFormulaString(Workbook book) {
return "#REF!";
}
-
- public Object clone()
- {
- AreaErrPtg ptg = new AreaErrPtg();
- ptg.setFirstRow(getFirstRow());
- ptg.setFirstColumn(getFirstColumn());
- ptg.setLastRow(getLastRow());
- ptg.setLastColumn(getLastColumn());
- ptg.setFirstColRelative(isFirstColRelative());
- ptg.setLastColRelative(isLastColRelative());
- ptg.setFirstRowRelative(isFirstRowRelative());
- ptg.setLastRowRelative(isLastRowRelative());
- ptg.setClass(ptgClass);
- return ptg;
- }
+
+ public byte getDefaultOperandClass() {
+ return Ptg.CLASS_REF;
+ }
+
+ public int getSize() {
+ return 9;
+ }
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaNPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaNPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaNPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaNPtg.java Mon Jun 9 06:30:17 2008
@@ -1,4 +1,3 @@
-
/* ====================================================================
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -16,49 +15,22 @@
limitations under the License.
==================================================================== */
-/*
- * AreaPtg.java
- *
- * Created on November 17, 2001, 9:30 PM
- */
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.util.LittleEndian;
-import org.apache.poi.util.BitField;
-
import org.apache.poi.hssf.record.RecordInputStream;
-import org.apache.poi.hssf.util.AreaReference;
-import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.ss.usermodel.Workbook;
/**
* Specifies a rectangular area of cells A1:A4 for instance.
* @author Jason Height (jheight at chariot dot net dot au)
*/
+public final class AreaNPtg extends AreaPtgBase {
+ public final static short sid = 0x2D;
-public final class AreaNPtg extends AreaPtg
-{
- public final static short sid = 0x2D;
-
- protected AreaNPtg() {
- //Required for clone methods
- }
-
- public AreaNPtg(RecordInputStream in)
- {
- super(in);
- }
-
- public String getAreaPtgName() {
- return "AreaNPtg";
- }
-
- public String toFormulaString(Workbook book)
- {
- throw notImplemented();
- }
-
- public Object clone() {
- throw notImplemented();
- }
+ public AreaNPtg(RecordInputStream in) {
+ super(in);
+ }
+
+ protected byte getSid() {
+ return sid;
+ }
}
Copied: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java (from r664515, poi/trunk/src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java)
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java?p2=poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java&p1=poi/trunk/src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java&r1=664515&r2=664700&rev=664700&view=diff
==============================================================================
--- poi/trunk/src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java Mon Jun 9 06:30:17 2008
@@ -21,9 +21,9 @@
import org.apache.poi.util.BitField;
import org.apache.poi.util.BitFieldFactory;
+import org.apache.poi.ss.util.CellReference;
+import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.hssf.util.AreaReference;
-import org.apache.poi.hssf.util.CellReference;
-import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.record.RecordInputStream;
/**
@@ -276,7 +276,7 @@
field_4_last_column = column;
}
- public String toFormulaString(HSSFWorkbook book) {
+ public String toFormulaString(Workbook book) {
return AreaReference.formatAsString(this);
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ArrayPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ArrayPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ArrayPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ArrayPtg.java Mon Jun 9 06:30:17 2008
@@ -35,29 +35,28 @@
*
* @author Jason Height (jheight at chariot dot net dot au)
*/
-public class ArrayPtg extends Ptg {
+public final class ArrayPtg extends Ptg {
public static final byte sid = 0x20;
private static final int RESERVED_FIELD_LEN = 7;
// TODO - fix up field visibility and subclasses
- protected byte[] field_1_reserved;
+ private byte[] field_1_reserved;
+
// data from these fields comes after the Ptg data of all tokens in current formula
- protected short token_1_columns;
- protected short token_2_rows;
- protected Object[] token_3_arrayValues;
-
- protected ArrayPtg() {
- //Required for clone methods
- }
+ private short token_1_columns;
+ private short token_2_rows;
+ private Object[] token_3_arrayValues;
- public ArrayPtg(RecordInputStream in)
- {
+ public ArrayPtg(RecordInputStream in) {
field_1_reserved = new byte[RESERVED_FIELD_LEN];
// TODO - add readFully method to RecordInputStream
for(int i=0; i< RESERVED_FIELD_LEN; i++) {
field_1_reserved[i] = in.readByte();
}
}
+ public Object[] getTokenArrayValues() {
+ return (Object[]) token_3_arrayValues.clone();
+ }
public boolean isBaseToken() {
return false;
@@ -117,7 +116,7 @@
public void writeBytes(byte[] data, int offset) {
- LittleEndian.putByte(data, offset + 0, sid + ptgClass);
+ LittleEndian.putByte(data, offset + 0, sid + getPtgClass());
System.arraycopy(field_1_reserved, 0, data, offset+1, RESERVED_FIELD_LEN);
}
@@ -190,13 +189,9 @@
}
public Object clone() {
- ArrayPtg ptg = new ArrayPtg();
+ ArrayPtg ptg = (ArrayPtg) super.clone();
ptg.field_1_reserved = (byte[]) field_1_reserved.clone();
-
- ptg.token_1_columns = token_1_columns;
- ptg.token_2_rows = token_2_rows;
ptg.token_3_arrayValues = (Object[]) token_3_arrayValues.clone();
- ptg.setClass(ptgClass);
return ptg;
}
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/BoolPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/BoolPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/BoolPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/BoolPtg.java Mon Jun 9 06:30:17 2008
@@ -30,11 +30,7 @@
public final class BoolPtg extends ScalarConstantPtg {
public final static int SIZE = 2;
public final static byte sid = 0x1d;
- private boolean field_1_value;
-
- private BoolPtg() {
- //Required for clone methods
- }
+ private final boolean field_1_value;
public BoolPtg(RecordInputStream in)
{
@@ -46,11 +42,6 @@
field_1_value = (formulaToken.equals("TRUE"));
}
- public void setValue(boolean value)
- {
- field_1_value = value;
- }
-
public boolean getValue()
{
return field_1_value;
@@ -71,10 +62,4 @@
{
return field_1_value ? "TRUE" : "FALSE";
}
-
- public Object clone() {
- BoolPtg ptg = new BoolPtg();
- ptg.field_1_value = field_1_value;
- return ptg;
- }
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ConcatPtg.java Mon Jun 9 06:30:17 2008
@@ -17,54 +17,29 @@
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
-
/**
*
* @author andy
* @author Jason Height (jheight at chariot dot net dot au)
*/
public final class ConcatPtg extends ValueOperatorPtg {
- public final static int SIZE = 1;
public final static byte sid = 0x08;
private final static String CONCAT = "&";
- public ConcatPtg(RecordInputStream in)
- {
- // No contents
- }
-
- public ConcatPtg() {
-
- }
-
- public void writeBytes(byte [] array, int offset)
- {
- array[ offset + 0 ] = sid;
- }
+ public static final ValueOperatorPtg instance = new ConcatPtg();
- public int getSize()
- {
- return SIZE;
+ private ConcatPtg() {
+ // enforce singleton
}
-
- public int getType()
- {
- return TYPE_BINARY;
+
+ protected byte getSid() {
+ return sid;
}
- public int getNumberOfOperands()
- {
+ public int getNumberOfOperands() {
return 2;
}
-
- public String toFormulaString(Workbook book)
- {
- return CONCAT;
- }
-
public String toFormulaString(String[] operands) {
StringBuffer buffer = new StringBuffer();
@@ -74,9 +49,4 @@
buffer.append(operands[ 1 ]);
return buffer.toString();
}
-
- public Object clone() {
- return new ConcatPtg();
- }
-
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/DividePtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/DividePtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/DividePtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/DividePtg.java Mon Jun 9 06:30:17 2008
@@ -17,66 +17,34 @@
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
-
/**
* This PTG implements the standard binomial divide "/"
* @author Andrew C. Oliver acoliver at apache dot org
* @author Jason Height (jheight at chariot dot net dot au)
*/
public final class DividePtg extends ValueOperatorPtg {
- public final static int SIZE = 1;
public final static byte sid = 0x06;
- /** Creates new AddPtg */
-
- public DividePtg()
- {
- }
-
- public DividePtg(RecordInputStream in)
- {
+ public static final ValueOperatorPtg instance = new DividePtg();
- // doesn't need anything
+ private DividePtg() {
+ // enforce singleton
}
-
- public void writeBytes(byte [] array, int offset)
- {
- array[ offset + 0 ] = sid;
- }
-
- public int getSize()
- {
- return SIZE;
+
+ protected byte getSid() {
+ return sid;
}
- public int getType()
- {
- return TYPE_BINARY;
- }
-
- public int getNumberOfOperands()
- {
+ public int getNumberOfOperands() {
return 2;
}
- public String toFormulaString(Workbook book)
- {
- return "/";
- }
-
public String toFormulaString(String[] operands) {
StringBuffer buffer = new StringBuffer();
buffer.append(operands[ 0 ]);
- buffer.append(toFormulaString((Workbook)null));
+ buffer.append("/");
buffer.append(operands[ 1 ]);
return buffer.toString();
}
-
- public Object clone() {
- DividePtg ptg = new DividePtg();
- return ptg;
- }
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/EqualPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/EqualPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/EqualPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/EqualPtg.java Mon Jun 9 06:30:17 2008
@@ -17,67 +17,34 @@
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
-
/**
*
* @author andy
*/
public final class EqualPtg extends ValueOperatorPtg {
- public final static int SIZE = 1;
public final static byte sid = 0x0b;
- /** Creates new AddPtg */
-
- public EqualPtg()
- {
- }
-
- public EqualPtg(RecordInputStream in)
- {
+ public static final ValueOperatorPtg instance = new EqualPtg();
- // doesn't need anything
+ private EqualPtg() {
+ // enforce singleton
}
-
- public void writeBytes(byte [] array, int offset)
- {
- array[ offset + 0 ] = sid;
- }
-
- public int getSize()
- {
- return SIZE;
+
+ protected byte getSid() {
+ return sid;
}
- public int getType()
- {
- return TYPE_BINARY;
- }
-
- public int getNumberOfOperands()
- {
+ public int getNumberOfOperands() {
return 2;
}
-
- public String toFormulaString(Workbook book)
- {
- return "=";
- }
public String toFormulaString(String[] operands) {
StringBuffer buffer = new StringBuffer();
buffer.append(operands[ 0 ]);
- buffer.append(toFormulaString((Workbook)null));
+ buffer.append("=");
buffer.append(operands[ 1 ]);
return buffer.toString();
}
-
- public Object clone() {
- return new EqualPtg();
- }
-
-
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ErrPtg.java Mon Jun 9 06:30:17 2008
@@ -47,7 +47,7 @@
public static final short sid = 0x1c;
private static final int SIZE = 2;
- private int field_1_error_code;
+ private final int field_1_error_code;
/** Creates new ErrPtg */
@@ -64,7 +64,7 @@
public void writeBytes(byte [] array, int offset)
{
- array[offset] = (byte) (sid + ptgClass);
+ array[offset] = (byte) (sid + getPtgClass());
array[offset + 1] = (byte)field_1_error_code;
}
@@ -76,10 +76,6 @@
return SIZE;
}
- public Object clone() {
- return new ErrPtg(field_1_error_code);
- }
-
public int getErrorCode() {
return field_1_error_code;
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/ExpPtg.java Mon Jun 9 06:30:17 2008
@@ -1,4 +1,3 @@
-
/* ====================================================================
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -30,20 +29,11 @@
* @author Jason Height (jheight at chariot dot net dot au)
* @author dmui (save existing implementation)
*/
-
public final class ExpPtg extends ControlPtg {
private final static int SIZE = 5;
public final static short sid = 0x1;
- private short field_1_first_row;
- private short field_2_first_col;
-
- /** Creates new ExpPtg */
-
- public ExpPtg()
- {
- }
-
- /** Creates new ExpPtg */
+ private final short field_1_first_row;
+ private final short field_2_first_col;
public ExpPtg(RecordInputStream in)
{
@@ -83,12 +73,4 @@
buffer.append("col = ").append(getColumn()).append("\n");
return buffer.toString();
}
-
- public Object clone() {
- ExpPtg result = new ExpPtg();
- result.field_1_first_row = field_1_first_row;
- result.field_2_first_col = field_2_first_col;
- return result;
- }
-
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncPtg.java Mon Jun 9 06:30:17 2008
@@ -56,7 +56,7 @@
}
public void writeBytes(byte[] array, int offset) {
- array[offset+0]= (byte) (sid + ptgClass);
+ array[offset+0]= (byte) (sid + getPtgClass());
LittleEndian.putShort(array,offset+1,field_2_fnc_index);
}
@@ -64,12 +64,6 @@
return numParams;
}
- public Object clone() {
- FuncPtg ptg = new FuncPtg(field_2_fnc_index);
- ptg.setClass(ptgClass);
- return ptg;
- }
-
public int getSize() {
return SIZE;
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/FuncVarPtg.java Mon Jun 9 06:30:17 2008
@@ -30,11 +30,7 @@
public final static byte sid = 0x22;
private final static int SIZE = 4;
- private FuncVarPtg() {
- //Required for clone methods
- }
-
- /**Creates new function pointer from a byte array
+ /**Creates new function pointer from a byte array
* usually called while reading an excel file.
*/
public FuncVarPtg(RecordInputStream in) {
@@ -69,7 +65,7 @@
}
public void writeBytes(byte[] array, int offset) {
- array[offset+0]=(byte) (sid + ptgClass);
+ array[offset+0]=(byte) (sid + getPtgClass());
array[offset+1]=field_1_num_args;
LittleEndian.putShort(array,offset+2,field_2_fnc_index);
}
@@ -78,14 +74,6 @@
return field_1_num_args;
}
- public Object clone() {
- FuncVarPtg ptg = new FuncVarPtg();
- ptg.field_1_num_args = field_1_num_args;
- ptg.field_2_fnc_index = field_2_fnc_index;
- ptg.setClass(ptgClass);
- return ptg;
- }
-
public int getSize() {
return SIZE;
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterEqualPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterEqualPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterEqualPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterEqualPtg.java Mon Jun 9 06:30:17 2008
@@ -17,8 +17,6 @@
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
/**
* PTG class to implement greater or equal to
@@ -29,56 +27,28 @@
public final static int SIZE = 1;
public final static byte sid = 0x0c;
- /** Creates new GreaterEqualPtg */
+ public static final ValueOperatorPtg instance = new GreaterEqualPtg();
- public GreaterEqualPtg()
- {
+ private GreaterEqualPtg() {
+ // enforce singleton
}
-
- public GreaterEqualPtg(RecordInputStream in)
- {
-
- // doesn't need anything
- }
-
- public void writeBytes(byte [] array, int offset)
- {
- array[ offset + 0 ] = sid;
+
+ protected byte getSid() {
+ return sid;
}
- public int getSize()
- {
- return SIZE;
- }
-
- public int getType()
- {
- return TYPE_BINARY;
- }
-
- public int getNumberOfOperands()
- {
+ public int getNumberOfOperands() {
return 2;
}
- public String toFormulaString(Workbook book)
- {
- return ">=";
- }
-
public String toFormulaString(String[] operands) {
StringBuffer buffer = new StringBuffer();
buffer.append(operands[ 0 ]);
- buffer.append(toFormulaString((Workbook)null));
+ buffer.append(">=");
buffer.append(operands[ 1 ]);
return buffer.toString();
}
-
- public Object clone() {
- return new GreaterEqualPtg();
- }
-
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterThanPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterThanPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterThanPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/GreaterThanPtg.java Mon Jun 9 06:30:17 2008
@@ -17,82 +17,34 @@
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
/**
* Greater than operator PTG ">"
* @author Cameron Riley (criley at ekmail.com)
*/
public final class GreaterThanPtg extends ValueOperatorPtg {
- public final static int SIZE = 1;
public final static byte sid = 0x0D;
private final static String GREATERTHAN = ">";
- /**
- * Constructor. Creates new GreaterThanPtg
- */
- public GreaterThanPtg()
- {
- //deliberately empty
- }
+ public static final ValueOperatorPtg instance = new GreaterThanPtg();
- /**
- * Constructor. Create a new GreaterThanPtg.
- * @param in the RecordInputstream to read the record from
- */
- public GreaterThanPtg(RecordInputStream in)
- {
- //deliberately empty
+ private GreaterThanPtg() {
+ // enforce singleton
}
- /**
- * Write the sid to an array
- * @param array the array of bytes to write the sid to
- * @param offset the offset to add the sid to
- */
- public void writeBytes(byte [] array, int offset)
- {
- array[ offset + 0 ] = sid;
- }
-
- /**
- * Get the size of the sid
- * @return int the size of the sid in terms of byte additions to an array
- */
- public int getSize()
- {
- return SIZE;
- }
-
- /**
- * Get the type of PTG for Greater Than
- * @return int the identifier for the type
- */
- public int getType()
- {
- return TYPE_BINARY;
+ protected byte getSid() {
+ return sid;
}
/**
* Get the number of operands for the Less than operator
* @return int the number of operands
*/
- public int getNumberOfOperands()
- {
+ public int getNumberOfOperands() {
return 2;
}
/**
- * Implementation of method from Ptg
- * @param book the Sheet References
- */
- public String toFormulaString(Workbook book)
- {
- return this.GREATERTHAN;
- }
-
- /**
* Implementation of method from OperationsPtg
* @param operands a String array of operands
* @return String the Formula as a String
@@ -102,17 +54,8 @@
StringBuffer buffer = new StringBuffer();
buffer.append(operands[ 0 ]);
- buffer.append(this.GREATERTHAN);
+ buffer.append(GREATERTHAN);
buffer.append(operands[ 1 ]);
return buffer.toString();
}
-
- /**
- * Implementation of clone method from Object
- * @return Object a clone of this class as an Object
- */
- public Object clone()
- {
- return new GreaterThanPtg();
- }
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntPtg.java Mon Jun 9 06:30:17 2008
@@ -43,13 +43,12 @@
public final static int SIZE = 3;
public final static byte sid = 0x1e;
- private int field_1_value;
+ private final int field_1_value;
public IntPtg(RecordInputStream in) {
this(in.readUShort());
}
-
public IntPtg(int value) {
if(!isInRange(value)) {
throw new IllegalArgumentException("value is out of range: " + value);
@@ -61,7 +60,6 @@
return field_1_value;
}
-
public void writeBytes(byte [] array, int offset)
{
array[ offset + 0 ] = sid;
@@ -76,9 +74,6 @@
return String.valueOf(getValue());
}
- public Object clone() {
- return new IntPtg(field_1_value);
- }
public String toString() {
StringBuffer sb = new StringBuffer(64);
sb.append(getClass().getName()).append(" [");
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntersectionPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntersectionPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntersectionPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/IntersectionPtg.java Mon Jun 9 06:30:17 2008
@@ -18,7 +18,6 @@
package org.apache.poi.hssf.record.formula;
import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
/**
* @author Daniel Noll (daniel at nuix dot com dot au)
@@ -26,14 +25,10 @@
public final class IntersectionPtg extends OperationPtg {
public final static byte sid = 0x0f;
+ public static final OperationPtg instance = new IntersectionPtg();
- public IntersectionPtg()
- {
- }
-
- public IntersectionPtg(RecordInputStream in)
- {
- // doesn't need anything
+ private IntersectionPtg() {
+ // enforce singleton
}
public final boolean isBaseToken() {
@@ -50,16 +45,6 @@
array[ offset + 0 ] = sid;
}
- public Object clone()
- {
- return new IntersectionPtg();
- }
-
- public int getType()
- {
- return TYPE_BINARY;
- }
-
/** Implementation of method from Ptg */
public String toFormulaString(Workbook book)
{
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessEqualPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessEqualPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessEqualPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessEqualPtg.java Mon Jun 9 06:30:17 2008
@@ -19,8 +19,6 @@
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
/**
@@ -29,58 +27,27 @@
* @author fred at stsci dot edu
*/
public final class LessEqualPtg extends ValueOperatorPtg {
- public final static int SIZE = 1;
public final static byte sid = 0x0a;
- /**
- * Creates new LessEqualPtg
- */
- public LessEqualPtg()
- {
+ public static final ValueOperatorPtg instance = new LessEqualPtg();
+ private LessEqualPtg() {
+ // enforce singleton
}
-
- public LessEqualPtg( RecordInputStream in )
- {
- // doesn't need anything
- }
-
- public void writeBytes( byte[] array, int offset )
- {
- array[offset + 0] = sid;
+
+ protected byte getSid() {
+ return sid;
}
- public int getSize()
- {
- return SIZE;
- }
-
- public int getType()
- {
- return TYPE_BINARY;
- }
-
- public int getNumberOfOperands()
- {
+ public int getNumberOfOperands() {
return 2;
}
- public String toFormulaString( Workbook book )
- {
- return "<=";
- }
-
- public String toFormulaString( String[] operands )
- {
+ public String toFormulaString(String[] operands) {
StringBuffer buffer = new StringBuffer();
buffer.append( operands[0] );
- buffer.append( toFormulaString( (Workbook) null ) );
+ buffer.append("<=");
buffer.append( operands[1] );
return buffer.toString();
}
-
- public Object clone()
- {
- return new LessEqualPtg();
- }
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessThanPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessThanPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessThanPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/LessThanPtg.java Mon Jun 9 06:30:17 2008
@@ -17,9 +17,6 @@
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
-
/**
* Less than operator PTG "<". The SID is taken from the
* Openoffice.orgs Documentation of the Excel File Format,
@@ -27,79 +24,31 @@
* @author Cameron Riley (criley at ekmail.com)
*/
public final class LessThanPtg extends ValueOperatorPtg {
- /** the size of the Ptg */
- public final static int SIZE = 1;
-
/** the sid for the less than operator as hex */
public final static byte sid = 0x09;
/** identifier for LESS THAN char */
private final static String LESSTHAN = "<";
- /**
- * Constructor. Creates new LessThanPtg
- */
- public LessThanPtg()
- {
- //deliberately empty
- }
+ public static final ValueOperatorPtg instance = new LessThanPtg();
- /**
- * Constructor. Create a new LessThanPtg.
- * @param in the RecordInputstream to read the record from
- */
- public LessThanPtg(RecordInputStream in)
- {
- //deliberately empty
+ private LessThanPtg() {
+ // enforce singleton
}
- /**
- * Write the sid to an array
- * @param array the array of bytes to write the sid to
- * @param offset the offset to add the sid to
- */
- public void writeBytes(byte[] array, int offset)
- {
- array[ offset + 0 ] = sid;
- }
-
- /**
- * Get the size of the sid
- * @return int the size of the sid in terms of byte additions to an array
- */
- public int getSize()
- {
- return SIZE;
- }
-
- /**
- * Get the type of PTG for Less Than
- * @return int the identifier for the type
- */
- public int getType()
- {
- return TYPE_BINARY;
+ protected byte getSid() {
+ return sid;
}
/**
* Get the number of operands for the Less than operator
* @return int the number of operands
*/
- public int getNumberOfOperands()
- {
+ public int getNumberOfOperands() {
return 2;
}
- /**
- * Implementation of method from Ptg
- * @param book the Sheet References
- */
- public String toFormulaString(Workbook book)
- {
- return this.LESSTHAN;
- }
-
- /**
+ /**
* Implementation of method from OperationsPtg
* @param operands a String array of operands
* @return String the Formula as a String
@@ -108,18 +57,8 @@
{
StringBuffer buffer = new StringBuffer();
buffer.append(operands[ 0 ]);
- buffer.append(this.LESSTHAN);
+ buffer.append(LESSTHAN);
buffer.append(operands[ 1 ]);
return buffer.toString();
}
-
- /**
- * Implementation of clone method from Object
- * @return Object a clone of this class as an Object
- */
- public Object clone()
- {
- return new LessThanPtg();
- }
-
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemAreaPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemAreaPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemAreaPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemAreaPtg.java Mon Jun 9 06:30:17 2008
@@ -64,7 +64,7 @@
public void writeBytes(byte [] array, int offset)
{
- array[offset] = (byte) (sid + ptgClass);
+ array[offset] = (byte) (sid + getPtgClass());
LittleEndian.putInt(array, offset + 1, field_1_reserved);
LittleEndian.putShort(array, offset + 5, field_2_subex_len);
}
@@ -79,12 +79,7 @@
return ""; // TODO: Not sure how to format this. -- DN
}
- public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;}
-
- public Object clone() {
- MemAreaPtg ptg = new MemAreaPtg();
- ptg.field_1_reserved = field_1_reserved;
- ptg.field_2_subex_len = field_2_subex_len;
- return ptg;
+ public byte getDefaultOperandClass() {
+ return Ptg.CLASS_VALUE;
}
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemErrPtg.java Mon Jun 9 06:30:17 2008
@@ -1,4 +1,3 @@
-
/* ====================================================================
Licensed to the Apache Software Foundation (ASF) under one or more
contributor license agreements. See the NOTICE file distributed with
@@ -16,17 +15,10 @@
limitations under the License.
==================================================================== */
-
-/*
- * MemErrPtg.java
- *
- * Created on November 21, 2001, 8:46 AM
- */
package org.apache.poi.hssf.record.formula;
-import org.apache.poi.util.LittleEndian;
-import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.hssf.record.RecordInputStream;
+import org.apache.poi.ss.usermodel.Workbook;
/**
*
@@ -35,9 +27,7 @@
* @author Daniel Noll (daniel at nuix dot com dot au)
*/
-public class MemErrPtg
- extends MemAreaPtg
-{
+public final class MemErrPtg extends MemAreaPtg {
public final static short sid = 0x27;
/** Creates new MemErrPtg */
@@ -46,26 +36,17 @@
{
}
- public MemErrPtg(RecordInputStream in)
- {
+ public MemErrPtg(RecordInputStream in) {
super(in);
}
- public void writeBytes(byte [] array, int offset)
- {
+ public void writeBytes(byte [] array, int offset) {
super.writeBytes(array, offset);
- array[offset] = (byte) (sid + ptgClass);
+ array[offset] = (byte) (sid + getPtgClass());
}
public String toFormulaString(Workbook book)
{
return "ERR#";
}
-
- public Object clone() {
- MemErrPtg ptg = new MemErrPtg();
- ptg.setReserved(getReserved());
- ptg.setSubexpressionLength(getSubexpressionLength());
- return ptg;
- }
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemFuncPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemFuncPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemFuncPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MemFuncPtg.java Mon Jun 9 06:30:17 2008
@@ -15,12 +15,6 @@
limitations under the License.
==================================================================== */
-
-/*
- * Ptg.java
- *
- * Created on October 28, 2001, 6:30 PM
- */
package org.apache.poi.hssf.record.formula;
import org.apache.poi.util.LittleEndian;
@@ -30,25 +24,23 @@
/**
* @author Glen Stampoultzis (glens at apache.org)
*/
-public class MemFuncPtg extends OperandPtg {
+public final class MemFuncPtg extends OperandPtg {
public final static byte sid = 0x29;
- private short field_1_len_ref_subexpression = 0;
-
- public MemFuncPtg()
- {
- //Required for clone methods
- }
+ private final int field_1_len_ref_subexpression;
/**Creates new function pointer from a byte array
* usually called while reading an excel file.
*/
- public MemFuncPtg( RecordInputStream in )
- {
- field_1_len_ref_subexpression = in.readShort();
+ public MemFuncPtg(RecordInputStream in) {
+ this(in.readUShort());
}
- public int getSize()
+ public MemFuncPtg(int subExprLen) {
+ field_1_len_ref_subexpression = subExprLen;
+ }
+
+ public int getSize()
{
return 3;
}
@@ -56,7 +48,7 @@
public void writeBytes( byte[] array, int offset )
{
array[offset + 0] = sid ;
- LittleEndian.putShort( array, offset + 1, (short)field_1_len_ref_subexpression );
+ LittleEndian.putUShort( array, offset + 1, field_1_len_ref_subexpression );
}
public String toFormulaString(Workbook book)
@@ -66,7 +58,7 @@
public byte getDefaultOperandClass()
{
- return 0;
+ return Ptg.CLASS_REF;
}
public int getNumberOfOperands()
@@ -74,21 +66,8 @@
return field_1_len_ref_subexpression;
}
- public Object clone()
- {
- MemFuncPtg ptg = new MemFuncPtg();
- ptg.field_1_len_ref_subexpression = this.field_1_len_ref_subexpression;
- return ptg;
- }
-
public int getLenRefSubexpression()
{
return field_1_len_ref_subexpression;
}
-
- public void setLenRefSubexpression(int len)
- {
- field_1_len_ref_subexpression = (short)len;
- }
-
}
\ No newline at end of file
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MissingArgPtg.java Mon Jun 9 06:30:17 2008
@@ -18,7 +18,6 @@
package org.apache.poi.hssf.record.formula;
import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
/**
* Missing Function Arguments
@@ -31,16 +30,10 @@
private final static int SIZE = 1;
public final static byte sid = 0x16;
- public MissingArgPtg()
+ public static final Ptg instance = new MissingArgPtg();
+ private MissingArgPtg()
{
}
-
- public MissingArgPtg(RecordInputStream in)
- {
- // doesn't need anything
- }
-
-
public void writeBytes(byte [] array, int offset)
{
@@ -51,15 +44,9 @@
{
return SIZE;
}
-
public String toFormulaString(Workbook book)
{
return " ";
}
-
- public Object clone() {
- return new MissingArgPtg();
- }
-
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/MultiplyPtg.java Mon Jun 9 06:30:17 2008
@@ -14,83 +14,37 @@
See the License for the specific language governing permissions and
limitations under the License.
==================================================================== */
-package org.apache.poi.hssf.record.formula;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.hssf.record.RecordInputStream;
+package org.apache.poi.hssf.record.formula;
/**
* Implements the standard mathmatical multiplication - *
* @author Andrew C. Oliver (acoliver at apache dot org)
* @author Jason Height (jheight at chariot dot net dot au)
*/
-
public final class MultiplyPtg extends ValueOperatorPtg {
- public final static int SIZE = 1;
public final static byte sid = 0x05;
- /** Creates new AddPtg */
-
- public MultiplyPtg()
- {
- }
-
- public MultiplyPtg(RecordInputStream in)
- {
+ public static final ValueOperatorPtg instance = new MultiplyPtg();
- // doesn't need anything
+ private MultiplyPtg() {
+ // enforce singleton
}
- public void writeBytes(byte [] array, int offset)
- {
- array[ offset + 0 ] = sid;
+ protected byte getSid() {
+ return sid;
}
- public int getSize()
- {
- return SIZE;
- }
-
- public int getType()
- {
- return TYPE_BINARY;
- }
-
- public int getNumberOfOperands()
- {
+ public int getNumberOfOperands() {
return 2;
}
-
- public int getStringLength() {
- return 1;
- }
-
-
- public String toFormulaString(Workbook book)
- {
- return "*";
- }
-
- public String toFormulaString(Ptg [] operands)
- {
- StringBuffer buffer = new StringBuffer();
-
- buffer.append(operands[ 0 ].toFormulaString((Workbook)null));
- buffer.append("*");
- buffer.append(operands[ 1 ].toFormulaString((Workbook)null));
- return buffer.toString();
- }
public String toFormulaString(String[] operands) {
StringBuffer buffer = new StringBuffer();
buffer.append(operands[ 0 ]);
- buffer.append(toFormulaString((Workbook)null));
+ buffer.append("*");
buffer.append(operands[ 1 ]);
return buffer.toString();
}
-
- public Object clone() {
- return new MultiplyPtg();
- }
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NamePtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NamePtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NamePtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NamePtg.java Mon Jun 9 06:30:17 2008
@@ -33,12 +33,6 @@
/** one-based index to defined name record */
private short field_1_label_index;
private short field_2_zero; // reserved must be 0
- boolean xtra=false;
-
-
- private NamePtg() {
- //Required for clone methods
- }
/**
* Creates new NamePtg and sets its name index to that of the corresponding defined name record
@@ -68,12 +62,9 @@
/** Creates new NamePtg */
- public NamePtg(RecordInputStream in)
- {
- //field_1_ixti = LittleEndian.getShort(data, offset);
+ public NamePtg(RecordInputStream in) {
field_1_label_index = in.readShort();
field_2_zero = in.readShort();
- //if (data[offset+6]==0) xtra=true;
}
/**
@@ -83,15 +74,13 @@
return field_1_label_index-1; // convert to zero based
}
- public void writeBytes(byte [] array, int offset)
- {
- array[offset+0]= (byte) (sid + ptgClass);
+ public void writeBytes(byte [] array, int offset) {
+ array[offset+0]= (byte) (sid + getPtgClass());
LittleEndian.putShort(array,offset+1,field_1_label_index);
LittleEndian.putShort(array,offset+3, field_2_zero);
}
- public int getSize()
- {
+ public int getSize() {
return SIZE;
}
@@ -100,12 +89,7 @@
return book.getNameName(field_1_label_index - 1);
}
- public byte getDefaultOperandClass() {return Ptg.CLASS_REF;}
-
- public Object clone() {
- NamePtg ptg = new NamePtg();
- ptg.field_1_label_index = field_1_label_index;
- ptg.field_2_zero = field_2_zero;
- return ptg;
- }
+ public byte getDefaultOperandClass() {
+ return Ptg.CLASS_REF;
+ }
}
Modified: poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NameXPtg.java
URL: http://svn.apache.org/viewvc/poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NameXPtg.java?rev=664700&r1=664699&r2=664700&view=diff
==============================================================================
--- poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NameXPtg.java (original)
+++ poi/branches/ooxml/src/java/org/apache/poi/hssf/record/formula/NameXPtg.java Mon Jun 9 06:30:17 2008
@@ -33,31 +33,20 @@
private short field_3_reserved; // reserved must be 0
- private NameXPtg() {
- //Required for clone methods
- }
-
- /** Creates new NamePtg */
-
- public NameXPtg(RecordInputStream in)
- {
+ public NameXPtg(RecordInputStream in) {
field_1_ixals = in.readShort();
field_2_ilbl = in.readShort();
field_3_reserved = in.readShort();
-
- //field_2_reserved = LittleEndian.getByteArray(data, offset + 12,12);
}
- public void writeBytes(byte [] array, int offset)
- {
- array[ offset + 0 ] = (byte)(sid + ptgClass);
+ public void writeBytes(byte [] array, int offset) {
+ array[ offset + 0 ] = (byte)(sid + getPtgClass());
LittleEndian.putShort(array, offset + 1, field_1_ixals);
LittleEndian.putShort(array,offset+3, field_2_ilbl);
LittleEndian.putShort(array, offset + 5, field_3_reserved);
}
- public int getSize()
- {
+ public int getSize() {
return SIZE;
}
@@ -67,14 +56,7 @@
return book.resolveNameXText(field_1_ixals, field_2_ilbl-1);
}
- public byte getDefaultOperandClass() {return Ptg.CLASS_VALUE;}
-
- public Object clone() {
- NameXPtg ptg = new NameXPtg();
- ptg.field_1_ixals = field_1_ixals;
- ptg.field_3_reserved = field_3_reserved;
- ptg.field_2_ilbl = field_2_ilbl;
- ptg.setClass(ptgClass);
- return ptg;
- }
+ public byte getDefaultOperandClass() {
+ return Ptg.CLASS_VALUE;
+ }
}
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@poi.apache.org
For additional commands, e-mail: commits-help@poi.apache.org