svn commit: r1876433 [8/8] - in /poi: site/src/documentation/content/xdocs/ trunk/src/java/org/apache/poi/common/usermodel/ trunk/src/java/org/apache/poi/hpsf/ trunk/src/java/org/apache/poi/hssf/dev/

2020-04-12 Thread kiwiwings
Modified: poi/trunk/src/java/org/apache/poi/ss/formula/ptg/MemFuncPtg.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/formula/ptg/MemFuncPtg.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/ss/formula/ptg/MemFuncPtg.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/formula/ptg/MemFuncPtg.java Sun Apr 12 
22:03:52 2020
@@ -17,6 +17,10 @@
 
 package org.apache.poi.ss.formula.ptg;
 
+import java.util.Map;
+import java.util.function.Supplier;
+
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianInput;
 import org.apache.poi.util.LittleEndianOutput;
 
@@ -61,18 +65,15 @@ public final class MemFuncPtg extends Op
public int getLenRefSubexpression() {
return field_1_len_ref_subexpression;
}
-   @Override
-   public final String toString() {
-   StringBuilder sb = new StringBuilder(64);
-   sb.append(getClass().getName()).append(" [len=");
-   sb.append(field_1_len_ref_subexpression);
-   sb.append("]");
-   return sb.toString();
-   }
 
@Override
public MemFuncPtg copy() {
// immutable
return this;
}
+
+   @Override
+   public Map> getGenericProperties() {
+   return 
GenericRecordUtil.getGenericProperties("lenRefSubexpression", 
this::getLenRefSubexpression);
+   }
 }
\ No newline at end of file

Modified: poi/trunk/src/java/org/apache/poi/ss/formula/ptg/MissingArgPtg.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/formula/ptg/MissingArgPtg.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/ss/formula/ptg/MissingArgPtg.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/ss/formula/ptg/MissingArgPtg.java Sun Apr 
12 22:03:52 2020
@@ -17,6 +17,9 @@
 
 package org.apache.poi.ss.formula.ptg;
 
+import java.util.Map;
+import java.util.function.Supplier;
+
 import org.apache.poi.util.LittleEndianOutput;
 
 /**
@@ -49,4 +52,9 @@ public final class MissingArgPtg extends
public MissingArgPtg copy() {
return this;
}
+
+   @Override
+   public Map> getGenericProperties() {
+   return null;
+   }
 }

Modified: poi/trunk/src/java/org/apache/poi/ss/formula/ptg/NamePtg.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/formula/ptg/NamePtg.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/ss/formula/ptg/NamePtg.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/formula/ptg/NamePtg.java Sun Apr 12 
22:03:52 2020
@@ -17,8 +17,12 @@
 
 package org.apache.poi.ss.formula.ptg;
 
+import java.util.Map;
+import java.util.function.Supplier;
+
 import org.apache.poi.ss.formula.FormulaRenderingWorkbook;
 import org.apache.poi.ss.formula.WorkbookDependentFormula;
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianInput;
 import org.apache.poi.util.LittleEndianOutput;
 
@@ -90,4 +94,9 @@ public final class NamePtg extends Opera
public NamePtg copy() {
return new NamePtg(this);
}
+
+   @Override
+   public Map> getGenericProperties() {
+   return GenericRecordUtil.getGenericProperties("index", 
this::getIndex);
+   }
 }

Modified: poi/trunk/src/java/org/apache/poi/ss/formula/ptg/NameXPtg.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/ss/formula/ptg/NameXPtg.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/ss/formula/ptg/NameXPtg.java (original)
+++ poi/trunk/src/java/org/apache/poi/ss/formula/ptg/NameXPtg.java Sun Apr 12 
22:03:52 2020
@@ -17,8 +17,12 @@
 
 package org.apache.poi.ss.formula.ptg;
 
+import java.util.Map;
+import java.util.function.Supplier;
+
 import org.apache.poi.ss.formula.FormulaRenderingWorkbook;
 import org.apache.poi.ss.formula.WorkbookDependentFormula;
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianInput;
 import org.apache.poi.util.LittleEndianOutput;
 
@@ -78,11 +82,6 @@ public final class NameXPtg extends Oper
throw new RuntimeException("3D references need a workbook to 
determine formula text");
}
 
-   public String toString(){
-return "NameXPtg:[sheetRefIndex:" + _sheetRefIndex +
-   " , nameNumber:" + _nameNumber + "]";
-   }
-
public byte getDefaultOperandClass() {
return Ptg.CLASS_VALUE;
}
@@ -99,4 +98,12 @@ public final class NameXPtg extends Oper
  

svn commit: r1876433 [3/8] - in /poi: site/src/documentation/content/xdocs/ trunk/src/java/org/apache/poi/common/usermodel/ trunk/src/java/org/apache/poi/hpsf/ trunk/src/java/org/apache/poi/hssf/dev/

2020-04-12 Thread kiwiwings
Modified: 
poi/trunk/src/java/org/apache/poi/hssf/record/FormulaSpecialCachedValue.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/FormulaSpecialCachedValue.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- 
poi/trunk/src/java/org/apache/poi/hssf/record/FormulaSpecialCachedValue.java 
(original)
+++ 
poi/trunk/src/java/org/apache/poi/hssf/record/FormulaSpecialCachedValue.java 
Sun Apr 12 22:03:52 2020
@@ -17,8 +17,15 @@
 
 package org.apache.poi.hssf.record;
 
+import static org.apache.poi.util.GenericRecordUtil.getEnumBitsAsString;
+
+import java.util.Map;
+import java.util.function.Supplier;
+
+import org.apache.poi.common.usermodel.GenericRecord;
 import org.apache.poi.ss.formula.eval.ErrorEval;
 import org.apache.poi.ss.usermodel.CellType;
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.HexDump;
 import org.apache.poi.util.Internal;
 import org.apache.poi.util.LittleEndianOutput;
@@ -29,7 +36,7 @@ import org.apache.poi.util.LittleEndianO
  * values that are decoded/encoded by this class.
  */
 @Internal
-public final class FormulaSpecialCachedValue {
+public final class FormulaSpecialCachedValue implements GenericRecord {
 /** deliberately chosen by Excel in order to encode other values within 
Double NaNs */
 private static final long BIT_MARKER = 0xL;
 private static final int VARIABLE_DATA_LENGTH = 6;
@@ -164,4 +171,29 @@ public final class FormulaSpecialCachedV
 }
 return getDataValue();
 }
+
+private Object getGenericValue() {
+int typeCode = getTypeCode();
+switch (typeCode) {
+case EMPTY: // is this correct?
+return null;
+case STRING:
+return "string";
+case BOOLEAN:
+return getBooleanValue();
+case ERROR_CODE:
+return getErrorValue();
+}
+throw new IllegalStateException("Unexpected type id (" + typeCode + 
")");
+}
+
+@Override
+public Map> getGenericProperties() {
+return GenericRecordUtil.getGenericProperties(
+"value", this::getGenericValue,
+"typeCode", getEnumBitsAsString(this::getTypeCode,
+new int[]{STRING,BOOLEAN,ERROR_CODE,EMPTY},
+new String[]{"STRING","BOOLEAN","ERROR_CODE","EMPTY"})
+);
+}
 }

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/FtCblsSubRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/FtCblsSubRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/hssf/record/FtCblsSubRecord.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/FtCblsSubRecord.java Sun Apr 
12 22:03:52 2020
@@ -17,7 +17,10 @@
 
 package org.apache.poi.hssf.record;
 
-import org.apache.poi.util.HexDump;
+import java.util.Map;
+import java.util.function.Supplier;
+
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.LittleEndianInput;
 import org.apache.poi.util.LittleEndianOutput;
@@ -48,6 +51,10 @@ public final class FtCblsSubRecord exten
 }
 
 public FtCblsSubRecord(LittleEndianInput in, int size) {
+this(in,size,-1);
+}
+
+FtCblsSubRecord(LittleEndianInput in, int size, int cmoOt) {
 if (size != ENCODED_SIZE) {
 throw new RecordFormatException("Unexpected size (" + size + ")");
 }
@@ -58,21 +65,6 @@ public final class FtCblsSubRecord exten
 }
 
 /**
- * Convert this record to string.
- * Used by BiffViewer and other utilities.
- */
-public String toString()
-{
-StringBuilder buffer = new StringBuilder();
-
-buffer.append("[FtCbls ]").append("\n");
-buffer.append("  size = ").append(getDataSize()).append("\n");
-buffer.append("  reserved = 
").append(HexDump.toHex(reserved)).append("\n");
-buffer.append("[/FtCbls ]").append("\n");
-return buffer.toString();
-}
-
-/**
  * Serialize the record data into the supplied array of bytes
  *
  * @param out the stream to serialize into
@@ -108,4 +100,13 @@ public final class FtCblsSubRecord exten
 return new FtCblsSubRecord(this);
 }
 
+@Override
+public SubRecordTypes getGenericRecordType() {
+return SubRecordTypes.FT_CBLS;
+}
+
+@Override
+public Map> getGenericProperties() {
+return GenericRecordUtil.getGenericProperties("reserved", () -> 
reserved);
+}
 }
\ No newline at end of file

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/FtCfSubRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/FtCfSubRecord.java?rev=1876433&r1=1876432&r2=1876433&view=di

svn commit: r1876433 [7/8] - in /poi: site/src/documentation/content/xdocs/ trunk/src/java/org/apache/poi/common/usermodel/ trunk/src/java/org/apache/poi/hpsf/ trunk/src/java/org/apache/poi/hssf/dev/

2020-04-12 Thread kiwiwings
Modified: poi/trunk/src/java/org/apache/poi/hssf/record/chart/UnitsRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/chart/UnitsRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/hssf/record/chart/UnitsRecord.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/chart/UnitsRecord.java Sun 
Apr 12 22:03:52 2020
@@ -17,9 +17,13 @@
 
 package org.apache.poi.hssf.record.chart;
 
+import java.util.Map;
+import java.util.function.Supplier;
+
+import org.apache.poi.hssf.record.HSSFRecordTypes;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.record.StandardRecord;
-import org.apache.poi.util.HexDump;
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
 import org.apache.poi.util.Removal;
 
@@ -42,20 +46,6 @@ public final class UnitsRecord extends S
 field_1_units = in.readShort();
 }
 
-public String toString()
-{
-StringBuilder buffer = new StringBuilder();
-
-buffer.append("[UNITS]\n");
-buffer.append(".units= ")
-.append("0x").append(HexDump.toHex(  getUnits ()))
-.append(" (").append( getUnits() ).append(" )");
-buffer.append(System.getProperty("line.separator"));
-
-buffer.append("[/UNITS]\n");
-return buffer.toString();
-}
-
 public void serialize(LittleEndianOutput out) {
 out.writeShort(field_1_units);
 }
@@ -70,7 +60,7 @@ public final class UnitsRecord extends S
 }
 
 @Override
-@SuppressWarnings("squid:S2975")
+@SuppressWarnings({"squid:S2975", "MethodDoesntCallSuperMethod"})
 @Deprecated
 @Removal(version = "5.0.0")
 public UnitsRecord clone() {
@@ -97,4 +87,14 @@ public final class UnitsRecord extends S
 {
 this.field_1_units = field_1_units;
 }
+
+@Override
+public HSSFRecordTypes getGenericRecordType() {
+return HSSFRecordTypes.UNITS;
+}
+
+@Override
+public Map> getGenericProperties() {
+return GenericRecordUtil.getGenericProperties("units", this::getUnits);
+}
 }

Modified: 
poi/trunk/src/java/org/apache/poi/hssf/record/chart/ValueRangeRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/chart/ValueRangeRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/hssf/record/chart/ValueRangeRecord.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/chart/ValueRangeRecord.java 
Sun Apr 12 22:03:52 2020
@@ -17,11 +17,15 @@
 
 package org.apache.poi.hssf.record.chart;
 
+import java.util.Map;
+import java.util.function.Supplier;
+
+import org.apache.poi.hssf.record.HSSFRecordTypes;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.record.StandardRecord;
 import org.apache.poi.util.BitField;
 import org.apache.poi.util.BitFieldFactory;
-import org.apache.poi.util.HexDump;
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
 import org.apache.poi.util.Removal;
 
@@ -69,44 +73,6 @@ public final class ValueRangeRecord exte
 field_6_options   = in.readShort();
 }
 
-public String toString()
-{
-StringBuilder buffer = new StringBuilder();
-
-buffer.append("[VALUERANGE]\n");
-buffer.append(".minimumAxisValue = ")
-.append(" (").append( getMinimumAxisValue() ).append(" )");
-buffer.append(System.getProperty("line.separator"));
-buffer.append(".maximumAxisValue = ")
-.append(" (").append( getMaximumAxisValue() ).append(" )");
-buffer.append(System.getProperty("line.separator"));
-buffer.append(".majorIncrement   = ")
-.append(" (").append( getMajorIncrement() ).append(" )");
-buffer.append(System.getProperty("line.separator"));
-buffer.append(".minorIncrement   = ")
-.append(" (").append( getMinorIncrement() ).append(" )");
-buffer.append(System.getProperty("line.separator"));
-buffer.append(".categoryAxisCross= ")
-.append(" (").append( getCategoryAxisCross() ).append(" )");
-buffer.append(System.getProperty("line.separator"));
-buffer.append(".options  = ")
-.append("0x").append(HexDump.toHex(  getOptions ()))
-.append(" (").append( getOptions() ).append(" )");
-buffer.append(System.getProperty("line.separator"));
-buffer.append(" .automaticMinimum = 
").append(isAutomaticMinimum()).append('\n');
-buffer.append(" .automaticMaximum = 
").append(isAutomaticMaximum()).append('\n');
-   

svn commit: r1876433 [4/8] - in /poi: site/src/documentation/content/xdocs/ trunk/src/java/org/apache/poi/common/usermodel/ trunk/src/java/org/apache/poi/hpsf/ trunk/src/java/org/apache/poi/hssf/dev/

2020-04-12 Thread kiwiwings
Modified: poi/trunk/src/java/org/apache/poi/hssf/record/PageBreakRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/PageBreakRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/hssf/record/PageBreakRecord.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/PageBreakRecord.java Sun Apr 
12 22:03:52 2020
@@ -21,7 +21,10 @@ import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.Map;
+import java.util.function.Supplier;
 
+import org.apache.poi.common.usermodel.GenericRecord;
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
 
 /**
@@ -47,7 +50,7 @@ public abstract class PageBreakRecord ex
  * The subs (rows or columns, don't seem to be able to set but excel sets
  * them automatically)
  */
-public static final class Break {
+public static final class Break implements GenericRecord {
 
 public static final int ENCODED_SIZE = 6;
 public int main;
@@ -77,6 +80,15 @@ public abstract class PageBreakRecord ex
 out.writeShort(subFrom);
 out.writeShort(subTo);
 }
+
+@Override
+public Map> getGenericProperties() {
+return GenericRecordUtil.getGenericProperties(
+"main", () -> main,
+"subFrom", () -> subFrom,
+"subTo", () -> subTo
+);
+}
 }
 
 protected PageBreakRecord() {}
@@ -86,7 +98,7 @@ public abstract class PageBreakRecord ex
 initMap();
 }
 
-public PageBreakRecord(RecordInputStream in) {
+protected PageBreakRecord(RecordInputStream in) {
 final int nBreaks = in.readShort();
 _breaks.ensureCapacity(nBreaks + 2);
 for(int k = 0; k < nBreaks; k++) {
@@ -96,7 +108,7 @@ public abstract class PageBreakRecord ex
 }
 
 private void initMap() {
-_breaks.forEach(br -> _breakMap.put(Integer.valueOf(br.main), br));
+_breaks.forEach(br -> _breakMap.put(br.main, br));
 }
 
 public boolean isEmpty() {
@@ -122,40 +134,6 @@ public abstract class PageBreakRecord ex
 return _breaks.iterator();
 }
 
-public String toString() {
-StringBuilder retval = new StringBuilder();
-
-String label;
-String mainLabel;
-String subLabel;
-
-if (getSid() == HorizontalPageBreakRecord.sid) {
-   label = "HORIZONTALPAGEBREAK";
-   mainLabel = "row";
-   subLabel = "col";
-} else {
-   label = "VERTICALPAGEBREAK";
-   mainLabel = "column";
-   subLabel = "row";
-}
-
-retval.append("["+label+"]").append("\n");
-retval.append(" .sid=").append(getSid()).append("\n");
-retval.append(" .numbreaks =").append(getNumBreaks()).append("\n");
-Iterator iterator = getBreaksIterator();
-for(int k = 0; k < getNumBreaks(); k++)
-{
-Break region = iterator.next();
-
-retval.append(" .").append(mainLabel).append(" (zero-based) 
=").append(region.main).append("\n");
-retval.append(" .").append(subLabel).append("From
=").append(region.subFrom).append("\n");
-retval.append(" .").append(subLabel).append("To  
=").append(region.subTo).append("\n");
-}
-
-retval.append("["+label+"]").append("\n");
-return retval.toString();
-}
-
/**
 * Adds the page break at the specified parameters
 * @param main Depending on sid, will determine row or column to put page 
break (zero-based)
@@ -164,7 +142,7 @@ public abstract class PageBreakRecord ex
 */
 public void addBreak(int main, int subFrom, int subTo) {
 
-Integer key = Integer.valueOf(main);
+Integer key = main;
 Break region = _breakMap.get(key);
 if(region == null) {
 region = new Break(main, subFrom, subTo);
@@ -182,7 +160,7 @@ public abstract class PageBreakRecord ex
  * @param main (zero-based)
  */
 public final void removeBreak(int main) {
-Integer rowKey = Integer.valueOf(main);
+Integer rowKey = main;
 Break region = _breakMap.get(rowKey);
 _breaks.remove(region);
 _breakMap.remove(rowKey);
@@ -194,7 +172,7 @@ public abstract class PageBreakRecord ex
  * @return The Break or null if no break exists at the row/col specified.
  */
 public final Break getBreak(int main) {
-Integer rowKey = Integer.valueOf(main);
+Integer rowKey = main;
 return _breakMap.get(rowKey);
 }
 
@@ -213,4 +191,12 @@ public abstract class PageBreakRecord ex
 
 @Override
 public abstract PageBreakRecord copy();
+
+@Override
+public Map> getGenericProperties() {
+return GenericRecordUtil.get

svn commit: r1876433 [1/8] - in /poi: site/src/documentation/content/xdocs/ trunk/src/java/org/apache/poi/common/usermodel/ trunk/src/java/org/apache/poi/hpsf/ trunk/src/java/org/apache/poi/hssf/dev/

2020-04-12 Thread kiwiwings
Author: kiwiwings
Date: Sun Apr 12 22:03:52 2020
New Revision: 1876433

URL: http://svn.apache.org/viewvc?rev=1876433&view=rev
Log:
#63745 - Add traversing and debugging interface to HSSF

This makes toString() implementations obsolete.

This also contains preparation for #64036 to (maybe) change the record factory 
interface of HSSF. 

Remove duplicated record SeriesToChartGroupRecord, which is a duplicate of 
SeriesChartGroupIndexRecord.

Added:
poi/trunk/src/java/org/apache/poi/hssf/record/HSSFRecordTypes.java   (with 
props)
poi/trunk/src/java/org/apache/poi/ss/formula/ptg/ArrayInitialPtg.java
  - copied, changed from r1876397, 
poi/trunk/src/java/org/apache/poi/ss/formula/ptg/ArrayPtg.java
Removed:

poi/trunk/src/java/org/apache/poi/hssf/record/chart/SeriesToChartGroupRecord.java

poi/trunk/src/testcases/org/apache/poi/hssf/record/chart/TestSeriesToChartGroupRecord.java
Modified:
poi/site/src/documentation/content/xdocs/changes.xml
poi/trunk/src/java/org/apache/poi/common/usermodel/GenericRecord.java
poi/trunk/src/java/org/apache/poi/hpsf/ClassID.java
poi/trunk/src/java/org/apache/poi/hssf/dev/BiffViewer.java

poi/trunk/src/java/org/apache/poi/hssf/eventusermodel/dummyrecord/DummyRecordBase.java

poi/trunk/src/java/org/apache/poi/hssf/eventusermodel/dummyrecord/LastCellOfRowDummyRecord.java

poi/trunk/src/java/org/apache/poi/hssf/eventusermodel/dummyrecord/MissingCellDummyRecord.java

poi/trunk/src/java/org/apache/poi/hssf/eventusermodel/dummyrecord/MissingRowDummyRecord.java

poi/trunk/src/java/org/apache/poi/hssf/record/AbstractEscherHolderRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/ArrayRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/AutoFilterInfoRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/BOFRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/BackupRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/BlankRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/BookBoolRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/BoolErrRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/BottomMarginRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/BoundSheetRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CFHeader12Record.java
poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderBase.java
poi/trunk/src/java/org/apache/poi/hssf/record/CFHeaderRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CFRule12Record.java
poi/trunk/src/java/org/apache/poi/hssf/record/CFRuleBase.java
poi/trunk/src/java/org/apache/poi/hssf/record/CFRuleRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CRNCountRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CRNRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CalcCountRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CalcModeRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CellRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CodepageRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/ColumnInfoRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CommonObjectDataSubRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/ContinueRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/CountryRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DBCellRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DConRefRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DSFRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DVALRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DVRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DateWindow1904Record.java
poi/trunk/src/java/org/apache/poi/hssf/record/DefaultColWidthRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DefaultRowHeightRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DeltaRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DimensionsRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DrawingGroupRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/DrawingRecord.java

poi/trunk/src/java/org/apache/poi/hssf/record/DrawingRecordForBiffViewer.java
poi/trunk/src/java/org/apache/poi/hssf/record/DrawingSelectionRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/EOFRecord.java

poi/trunk/src/java/org/apache/poi/hssf/record/EmbeddedObjectRefSubRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/EndSubRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/EscherAggregate.java
poi/trunk/src/java/org/apache/poi/hssf/record/ExtSSTRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/ExtendedFormatRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/ExternSheetRecord.java
poi/trunk/src/java/org/apache/poi/hssf/record/ExternalNameRecord.java
poi/trunk/src/java/org/a

svn commit: r1876433 [2/8] - in /poi: site/src/documentation/content/xdocs/ trunk/src/java/org/apache/poi/common/usermodel/ trunk/src/java/org/apache/poi/hpsf/ trunk/src/java/org/apache/poi/hssf/dev/

2020-04-12 Thread kiwiwings
Modified: poi/trunk/src/java/org/apache/poi/hssf/record/DBCellRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/DBCellRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/hssf/record/DBCellRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/DBCellRecord.java Sun Apr 12 
22:03:52 2020
@@ -17,7 +17,10 @@
 
 package org.apache.poi.hssf.record;
 
-import org.apache.poi.util.HexDump;
+import java.util.Map;
+import java.util.function.Supplier;
+
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
 import org.apache.poi.util.Removal;
 
@@ -50,19 +53,6 @@ public final class DBCellRecord extends
 }
 }
 
-public String toString() {
-StringBuilder buffer = new StringBuilder();
-
-buffer.append("[DBCELL]\n");
-buffer.append(".rowoffset = 
").append(HexDump.intToHex(field_1_row_offset)).append("\n");
-for (int k = 0; k < field_2_cell_offsets.length; k++) {
-buffer.append(".cell_").append(k).append(" = ")
-.append(HexDump.shortToHex(field_2_cell_offsets[ k 
])).append("\n");
-}
-buffer.append("[/DBCELL]\n");
-return buffer.toString();
-}
-
 public void serialize(LittleEndianOutput out) {
 out.writeInt(field_1_row_offset);
 for (short field_2_cell_offset : field_2_cell_offsets) {
@@ -78,7 +68,7 @@ public final class DBCellRecord extends
 }
 
 @Override
-@SuppressWarnings("squid:S2975")
+@SuppressWarnings({"squid:S2975", "MethodDoesntCallSuperMethod"})
 @Deprecated
 @Removal(version = "5.0.0")
 public DBCellRecord clone() {
@@ -90,4 +80,17 @@ public final class DBCellRecord extends
 // safe because immutable
 return this;
 }
+
+@Override
+public HSSFRecordTypes getGenericRecordType() {
+return HSSFRecordTypes.DB_CELL;
+}
+
+@Override
+public Map> getGenericProperties() {
+return GenericRecordUtil.getGenericProperties(
+"rowOffset", () -> field_1_row_offset,
+"cellOffsets", () -> field_2_cell_offsets
+);
+}
 }

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/DConRefRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/DConRefRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/hssf/record/DConRefRecord.java (original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/DConRefRecord.java Sun Apr 12 
22:03:52 2020
@@ -20,7 +20,10 @@ package org.apache.poi.hssf.record;
 
 import java.io.ByteArrayInputStream;
 import java.util.Arrays;
+import java.util.Map;
+import java.util.function.Supplier;
 
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.IOUtils;
 import org.apache.poi.util.LittleEndianOutput;
 import org.apache.poi.util.RecordFormatException;
@@ -228,25 +231,6 @@ public class DConRefRecord extends Stand
 return lastRow;
 }
 
-@Override
-public String toString()
-{
-StringBuilder b = new StringBuilder();
-   b.append("[DCONREF]\n");
-b.append(".ref\n");
-b.append(".firstrow   = ").append(firstRow).append("\n");
-b.append(".lastrow= ").append(lastRow).append("\n");
-b.append(".firstcol   = ").append(firstCol).append("\n");
-b.append(".lastcol= ").append(lastCol).append("\n");
-b.append(".cch= ").append(charCount).append("\n");
-   b.append(".stFile\n");
-   b.append(".h  = ").append(charType).append("\n");
-   b.append(".rgb= 
").append(getReadablePath()).append("\n");
-   b.append("[/DCONREF]\n");
-
-return b.toString();
-}
-
 /**
  *
  * @return raw path byte array.
@@ -298,4 +282,22 @@ public class DConRefRecord extends Stand
 ric.nextRecord();
 return ric;
 }
+
+@Override
+public HSSFRecordTypes getGenericRecordType() {
+return HSSFRecordTypes.DCON_REF;
+}
+
+@Override
+public Map> getGenericProperties() {
+return GenericRecordUtil.getGenericProperties(
+"firstRow", this::getFirstRow,
+"lastRow", this::getLastRow,
+"firstColumn", this::getFirstColumn,
+"lastColumn", this::getLastColumn,
+"charCount", () -> charCount,
+"charType", () -> charType,
+"path", this::getReadablePath
+);
+}
 }

Modified: poi/trunk/src/java/org/apache/poi/hssf/record/DSFRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/DSFRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
=

svn commit: r1876433 [6/8] - in /poi: site/src/documentation/content/xdocs/ trunk/src/java/org/apache/poi/common/usermodel/ trunk/src/java/org/apache/poi/hpsf/ trunk/src/java/org/apache/poi/hssf/dev/

2020-04-12 Thread kiwiwings
Modified: 
poi/trunk/src/java/org/apache/poi/hssf/record/chart/ChartStartObjectRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/chart/ChartStartObjectRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- 
poi/trunk/src/java/org/apache/poi/hssf/record/chart/ChartStartObjectRecord.java 
(original)
+++ 
poi/trunk/src/java/org/apache/poi/hssf/record/chart/ChartStartObjectRecord.java 
Sun Apr 12 22:03:52 2020
@@ -17,9 +17,13 @@
 
 package org.apache.poi.hssf.record.chart;
 
+import java.util.Map;
+import java.util.function.Supplier;
+
+import org.apache.poi.hssf.record.HSSFRecordTypes;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.record.StandardRecord;
-import org.apache.poi.util.HexDump;
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
 
 /**
@@ -74,23 +78,25 @@ public final class ChartStartObjectRecor
out.writeShort(iObjectInstance2);
}
 
-   public String toString() {
-
-   StringBuilder buffer = new StringBuilder();
+   @Override
+   public ChartStartObjectRecord copy() {
+   return new ChartStartObjectRecord(this);
+   }
 
-   buffer.append("[STARTOBJECT]\n");
-   buffer.append(".rt  
=").append(HexDump.shortToHex(rt)).append('\n');
-   buffer.append(".grbitFrt
=").append(HexDump.shortToHex(grbitFrt)).append('\n');
-   buffer.append(".iObjectKind 
=").append(HexDump.shortToHex(iObjectKind)).append('\n');
-   buffer.append(".iObjectContext  
=").append(HexDump.shortToHex(iObjectContext)).append('\n');
-   buffer.append("
.iObjectInstance1=").append(HexDump.shortToHex(iObjectInstance1)).append('\n');
-   buffer.append("
.iObjectInstance2=").append(HexDump.shortToHex(iObjectInstance2)).append('\n');
-   buffer.append("[/STARTOBJECT]\n");
-   return buffer.toString();
+   @Override
+   public HSSFRecordTypes getGenericRecordType() {
+   return HSSFRecordTypes.CHART_START_OBJECT;
}
 
@Override
-   public ChartStartObjectRecord copy() {
-   return new ChartStartObjectRecord(this);
+   public Map> getGenericProperties() {
+   return GenericRecordUtil.getGenericProperties(
+   "rt", () -> rt,
+   "grbitFrt", () -> grbitFrt,
+   "iObjectKind", () -> iObjectKind,
+   "iObjectContext", () -> iObjectContext,
+   "iObjectInstance1", () -> iObjectInstance1,
+   "iObjectInstance2", () -> iObjectInstance2
+   );
}
 }

Modified: 
poi/trunk/src/java/org/apache/poi/hssf/record/chart/ChartTitleFormatRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/chart/ChartTitleFormatRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- 
poi/trunk/src/java/org/apache/poi/hssf/record/chart/ChartTitleFormatRecord.java 
(original)
+++ 
poi/trunk/src/java/org/apache/poi/hssf/record/chart/ChartTitleFormatRecord.java 
Sun Apr 12 22:03:52 2020
@@ -20,10 +20,15 @@
  */
 package org.apache.poi.hssf.record.chart;
 
+import java.util.Map;
+import java.util.function.Supplier;
 import java.util.stream.Stream;
 
+import org.apache.poi.common.usermodel.GenericRecord;
+import org.apache.poi.hssf.record.HSSFRecordTypes;
 import org.apache.poi.hssf.record.RecordInputStream;
 import org.apache.poi.hssf.record.StandardRecord;
+import org.apache.poi.util.GenericRecordUtil;
 import org.apache.poi.util.LittleEndianOutput;
 
 /**
@@ -35,7 +40,7 @@ public class ChartTitleFormatRecord exte
 
private final CTFormat[] _formats;
 
-   private static final class CTFormat {
+   private static final class CTFormat implements GenericRecord {
public static final int ENCODED_SIZE=4;
private int _offset;
private int _fontIndex;
@@ -64,6 +69,14 @@ public class ChartTitleFormatRecord exte
out.writeShort(_offset);
out.writeShort(_fontIndex);
}
+
+   @Override
+   public Map> getGenericProperties() {
+   return GenericRecordUtil.getGenericProperties(
+   "offset", this::getOffset,
+   "fontIndex", this::getFontIndex
+   );
+   }
}
 
public ChartTitleFormatRecord(ChartTitleFormatRecord other) {
@@ -82,9 +95,9 @@ public class ChartTitleFormatRecord exte
 
public void serialize(LittleEndianOutput out) {
 out.writeShort(_formats.length);
-

svn commit: r1876433 [5/8] - in /poi: site/src/documentation/content/xdocs/ trunk/src/java/org/apache/poi/common/usermodel/ trunk/src/java/org/apache/poi/hpsf/ trunk/src/java/org/apache/poi/hssf/dev/

2020-04-12 Thread kiwiwings
Modified: poi/trunk/src/java/org/apache/poi/hssf/record/TextObjectRecord.java
URL: 
http://svn.apache.org/viewvc/poi/trunk/src/java/org/apache/poi/hssf/record/TextObjectRecord.java?rev=1876433&r1=1876432&r2=1876433&view=diff
==
--- poi/trunk/src/java/org/apache/poi/hssf/record/TextObjectRecord.java 
(original)
+++ poi/trunk/src/java/org/apache/poi/hssf/record/TextObjectRecord.java Sun Apr 
12 22:03:52 2020
@@ -17,6 +17,11 @@
 
 package org.apache.poi.hssf.record;
 
+import java.util.Collections;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.function.Supplier;
+
 import org.apache.poi.hssf.record.cont.ContinuableRecord;
 import org.apache.poi.hssf.record.cont.ContinuableRecordOutput;
 import org.apache.poi.hssf.usermodel.HSSFRichTextString;
@@ -24,7 +29,6 @@ import org.apache.poi.ss.formula.ptg.Ope
 import org.apache.poi.ss.formula.ptg.Ptg;
 import org.apache.poi.util.BitField;
 import org.apache.poi.util.BitFieldFactory;
-import org.apache.poi.util.HexDump;
 import org.apache.poi.util.RecordFormatException;
 import org.apache.poi.util.Removal;
 
@@ -125,11 +129,7 @@ public final class TextObjectRecord exte
+ " tokens but expected exactly 
1");
}
_linkRefPtg = (OperandPtg) ptgs[0];
-   if (in.remaining() > 0) {
-   _unknownPostFormulaByte = 
Byte.valueOf(in.readByte());
-   } else {
-   _unknownPostFormulaByte = null;
-   }
+   _unknownPostFormulaByte = in.remaining() > 0 ? 
in.readByte() : null;
} else {
_linkRefPtg = null;
}
@@ -195,7 +195,7 @@ public final class TextObjectRecord exte
out.writeInt(_unknownPreFormulaInt);
_linkRefPtg.write(out);
if (_unknownPostFormulaByte != null) {
-   
out.writeByte(_unknownPostFormulaByte.byteValue());
+   out.writeByte(_unknownPostFormulaByte);
}
}
}
@@ -317,33 +317,8 @@ public final class TextObjectRecord exte
return _linkRefPtg;
}
 
-   public String toString() {
-   StringBuilder sb = new StringBuilder();
-
-   sb.append("[TXO]\n");
-   sb.append(".options= 
").append(HexDump.shortToHex(field_1_options)).append("\n");
-   sb.append(" .isHorizontal = 
").append(getHorizontalTextAlignment()).append('\n');
-   sb.append(" .isVertical   = 
").append(getVerticalTextAlignment()).append('\n');
-   sb.append(" .textLocked   = 
").append(isTextLocked()).append('\n');
-   sb.append(".textOrientation= 
").append(HexDump.shortToHex(getTextOrientation())).append("\n");
-   sb.append(".reserved4  = 
").append(HexDump.shortToHex(field_3_reserved4)).append("\n");
-   sb.append(".reserved5  = 
").append(HexDump.shortToHex(field_4_reserved5)).append("\n");
-   sb.append(".reserved6  = 
").append(HexDump.shortToHex(field_5_reserved6)).append("\n");
-   sb.append(".textLength = 
").append(HexDump.shortToHex(_text.length())).append("\n");
-   sb.append(".reserved7  = 
").append(HexDump.intToHex(field_8_reserved7)).append("\n");
-
-   sb.append(".string = ").append(_text).append('\n');
-
-   for (int i = 0; i < _text.numFormattingRuns(); i++) {
-   sb.append(".textrun = 
").append(_text.getFontOfFormattingRun(i)).append('\n');
-
-   }
-   sb.append("[/TXO]\n");
-   return sb.toString();
-   }
-
@Override
-   @SuppressWarnings("squid:S2975")
+   @SuppressWarnings({"squid:S2975", "MethodDoesntCallSuperMethod"})
@Deprecated
@Removal(version = "5.0.0")
public TextObjectRecord clone() {
@@ -354,4 +329,24 @@ public final class TextObjectRecord exte
public TextObjectRecord copy() {
return new TextObjectRecord(this);
}
+
+   @Override
+   public HSSFRecordTypes getGenericRecordType() {
+   return HSSFRecordTypes.TEXT_OBJECT;
+   }
+
+   @Override
+   public Map> getGenericProperties() {
+   final Map> m = new LinkedHashMap<>();
+   m.put("isHorizontal", this::getHorizontalTextAlignment);
+   m.put("isVertical", this::getVerticalTextAlignment);
+   m.put("textLocked", this::isTextLocked);
+   m.put("textOrientation", this::getTextOrientation);
+   m.put("string", this::getStr);
+   m.put("reserved4", () -> field_3_re

svn commit: r1876430 - in /poi/site: .gitignore src/documentation/content/xdocs/changes.xml

2020-04-12 Thread abearez
Author: abearez
Date: Sun Apr 12 18:23:16 2020
New Revision: 1876430

URL: http://svn.apache.org/viewvc?rev=1876430&view=rev
Log:
Improvements for paragraphs in XSLF and XWPF

Added:
poi/site/.gitignore
Modified:
poi/site/src/documentation/content/xdocs/changes.xml

Added: poi/site/.gitignore
URL: http://svn.apache.org/viewvc/poi/site/.gitignore?rev=1876430&view=auto
==
--- poi/site/.gitignore (added)
+++ poi/site/.gitignore Sun Apr 12 18:23:16 2020
@@ -0,0 +1,3 @@
+*.iml
+.idea/
+.project/
\ No newline at end of file

Modified: poi/site/src/documentation/content/xdocs/changes.xml
URL: 
http://svn.apache.org/viewvc/poi/site/src/documentation/content/xdocs/changes.xml?rev=1876430&r1=1876429&r2=1876430&view=diff
==
--- poi/site/src/documentation/content/xdocs/changes.xml (original)
+++ poi/site/src/documentation/content/xdocs/changes.xml Sun Apr 12 18:23:16 
2020
@@ -74,6 +74,8 @@
 
 Upgrade to XMLSec 2.1.5
 updated dependencies to Bouncycastle 1.65, 
Commons-Codec 1.14, Commons-Compress 1.20
+XWPF - improvements in table and 
paragraph
+XSLF - improvements for paragraph
 
 
 HSMF 
enhancements - NamedIdChunk, MultiValueChunks, ByteChunkDeferred



-
To unsubscribe, e-mail: commits-unsubscr...@poi.apache.org
For additional commands, e-mail: commits-h...@poi.apache.org