]> source.dussan.org Git - poi.git/commitdiff
Removed generic type parameter from OperandPtg because it was not worth the extra...
authorJosh Micich <josh@apache.org>
Fri, 4 Dec 2009 23:05:06 +0000 (23:05 +0000)
committerJosh Micich <josh@apache.org>
Fri, 4 Dec 2009 23:05:06 +0000 (23:05 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@887432 13f79535-47bb-0310-9956-ffa450edef68

src/java/org/apache/poi/hssf/record/SharedFormulaRecord.java
src/java/org/apache/poi/hssf/record/TextObjectRecord.java
src/java/org/apache/poi/hssf/record/formula/Area3DPtg.java
src/java/org/apache/poi/hssf/record/formula/AreaPtgBase.java
src/java/org/apache/poi/hssf/record/formula/OperandPtg.java
src/java/org/apache/poi/hssf/record/formula/Ref3DPtg.java
src/java/org/apache/poi/hssf/record/formula/RefPtgBase.java
src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java

index c01cf77a3487e1e9979e7c8cbb32755cccec1ce7..0b0625855866abe062ad85b18be705e1cf9e9c8f 100644 (file)
@@ -130,9 +130,9 @@ public final class SharedFormulaRecord extends SharedValueRecordBase {
                                 areaNPtg.isFirstColRelative(),
                                 areaNPtg.isLastColRelative());
                 ptg.setClass(originalOperandClass);
-            } else if (ptg instanceof OperandPtg<?>) {
+            } else if (ptg instanceof OperandPtg) {
                 // Any subclass of OperandPtg is mutable, so it's safest to not share these instances.
-                ptg = ((OperandPtg<?>) ptg).copy();
+                ptg = ((OperandPtg) ptg).copy();
             } else {
                // all other Ptgs are immutable and can be shared
             }
index 68398bb70cb6c2b96fed9cc9d4af5e1b6dc25a8f..27a7edd9b83f3c750004db6cfd25a11ea82d1337 100644 (file)
@@ -75,7 +75,7 @@ public final class TextObjectRecord extends ContinuableRecord {
         */
        private int _unknownPreFormulaInt;
        /** expect tRef, tRef3D, tArea, tArea3D or tName */
-       private OperandPtg<?> _linkRefPtg;
+       private OperandPtg _linkRefPtg;
        /**
         * Not clear if needed .  Excel seems to be OK if this byte is not present.
         * Value is often the same as the earlier firstColumn byte. */
@@ -108,7 +108,7 @@ public final class TextObjectRecord extends ContinuableRecord {
                                throw new RecordFormatException("Read " + ptgs.length
                                                + " tokens but expected exactly 1");
                        }
-                       _linkRefPtg = (OperandPtg<?>) ptgs[0];
+                       _linkRefPtg = (OperandPtg) ptgs[0];
                        if (in.remaining() > 0) {
                                _unknownPostFormulaByte = Byte.valueOf(in.readByte());
                        } else {
index 2acbaf3e1eb7cdf254c8872da6f42b0cfd514c73..d8d855b07b0a8e95b05d5e70ecd490793599fd2f 100644 (file)
@@ -32,7 +32,7 @@ import org.apache.poi.util.LittleEndianOutput;
  * @author avik
  * @author Jason Height (jheight at chariot dot net dot au)
  */
-public final class Area3DPtg extends AreaPtgBase<Area3DPtg> implements WorkbookDependentFormula, ExternSheetReferenceToken {
+public final class Area3DPtg extends AreaPtgBase implements WorkbookDependentFormula, ExternSheetReferenceToken {
        public final static byte sid = 0x3b;
        private final static int SIZE = 11; // 10 + 1 for Ptg
 
index d50fca02f9bea3258c6f55938d8a35d8e9d5a871..8c6863ef219085796f65ec3107bd1fccac6734b9 100644 (file)
@@ -29,7 +29,7 @@ import org.apache.poi.util.LittleEndianOutput;
  * @author  andy
  * @author Jason Height (jheight at chariot dot net dot au)
  */
-public abstract class AreaPtgBase<Z extends AreaPtgBase<Z>> extends OperandPtg<Z> implements AreaI {
+public abstract class AreaPtgBase extends OperandPtg implements AreaI {
        /**
         * TODO - (May-2008) fix subclasses of AreaPtg 'AreaN~' which are used in shared formulas.
         * see similar comment in ReferencePtg
index bd1490289ca2678f72f5e3295fe163641045dc26..b8cf6ed096970f4c7980a08d57d77a972e3ecb69 100644 (file)
 
 package org.apache.poi.hssf.record.formula;
 
-
 /**
  * @author Josh Micich
  */
-public abstract class OperandPtg<Y extends OperandPtg<Y>> extends Ptg implements Cloneable {
+public abstract class OperandPtg extends Ptg implements Cloneable {
 
        /**
         * All Operand {@link Ptg}s are classified ('relative', 'value', 'array')
@@ -29,11 +28,9 @@ public abstract class OperandPtg<Y extends OperandPtg<Y>> extends Ptg implements
        public final boolean isBaseToken() {
                return false;
        }
-       public final Y copy() {
+       public final OperandPtg copy() {
                try {
-                       @SuppressWarnings("unchecked")
-                       Y result = (Y) clone();
-                       return result;
+                       return (OperandPtg) clone();
                } catch (CloneNotSupportedException e) {
                        throw new RuntimeException(e);
                }
index ece0e1c2c5b59d971960f892b3be469f05ee3e96..8d7fc79499d145501db915a9496aa87f5ab030c0 100644 (file)
@@ -31,7 +31,7 @@ import org.apache.poi.util.LittleEndianOutput;
  * @author Libin Roman (Vista Portal LDT. Developer)
  * @author Jason Height (jheight at chariot dot net dot au)
  */
-public final class Ref3DPtg extends RefPtgBase<Ref3DPtg> implements WorkbookDependentFormula, ExternSheetReferenceToken {
+public final class Ref3DPtg extends RefPtgBase implements WorkbookDependentFormula, ExternSheetReferenceToken {
     public final static byte sid  = 0x3a;
 
     private final static int  SIZE = 7; // 6 + 1 for Ptg
index 28e7ebd9fb15cdf600648a900328876de2693b39..70ed4da87ac1d816609bcd4ebebb3da2f97facf5 100644 (file)
@@ -29,7 +29,7 @@ import org.apache.poi.util.LittleEndianOutput;
  * @author Andrew C. Oliver (acoliver@apache.org)
  * @author Jason Height (jheight at chariot dot net dot au)
  */
-public abstract class RefPtgBase<Z extends RefPtgBase<Z>> extends OperandPtg<Z> {
+public abstract class RefPtgBase extends OperandPtg {
 
        /** The row index - zero based unsigned 16 bit value */
        private int field_1_row;
index 612eb67b18f9d383741f50f49414716b1eb8a670..a935916bad2517e65e20deed6087f9bde9b9ca35 100644 (file)
@@ -58,6 +58,7 @@ import org.apache.poi.hssf.record.aggregates.RecordAggregate.RecordVisitor;
 import org.apache.poi.hssf.record.formula.Area3DPtg;
 import org.apache.poi.hssf.record.formula.MemFuncPtg;
 import org.apache.poi.hssf.record.formula.NameXPtg;
+import org.apache.poi.hssf.record.formula.OperandPtg;
 import org.apache.poi.hssf.record.formula.Ptg;
 import org.apache.poi.hssf.record.formula.Ref3DPtg;
 import org.apache.poi.hssf.record.formula.SheetNameFormatter;
@@ -678,11 +679,11 @@ public class HSSFWorkbook extends POIDocument implements org.apache.poi.ss.userm
                 Ptg ptg = ptgs[i];
 
                 if (ptg instanceof Area3DPtg) {
-                    Area3DPtg a3p = ((Area3DPtg) ptg).copy();
+                    Area3DPtg a3p = (Area3DPtg) ((OperandPtg) ptg).copy();
                     a3p.setExternSheetIndex(newExtSheetIx);
                     ptgs[i] = a3p;
                 } else if (ptg instanceof Ref3DPtg) {
-                    Ref3DPtg r3p = ((Ref3DPtg) ptg).copy();
+                    Ref3DPtg r3p = (Ref3DPtg) ((OperandPtg) ptg).copy();
                     r3p.setExternSheetIndex(newExtSheetIx);
                     ptgs[i] = r3p;
                 }