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/
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/
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/
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/
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/
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/
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/
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/
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
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