Index: src/java/org/apache/poi/hssf/dev/BiffDrawingToXml.java
===================================================================
--- src/java/org/apache/poi/hssf/dev/BiffDrawingToXml.java (revision 1713221)
+++ src/java/org/apache/poi/hssf/dev/BiffDrawingToXml.java (working copy)
@@ -24,14 +24,12 @@
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
-import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import org.apache.poi.ddf.EscherRecord;
import org.apache.poi.hssf.model.InternalWorkbook;
import org.apache.poi.hssf.record.DrawingGroupRecord;
-import org.apache.poi.hssf.record.EscherAggregate;
import org.apache.poi.hssf.usermodel.HSSFPatriarch;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.NPOIFSFileSystem;
@@ -137,7 +135,7 @@
public static void writeToFile(OutputStream fos, InputStream xlsWorkbook, boolean excludeWorkbookRecords, String[] params) throws IOException {
NPOIFSFileSystem fs = new NPOIFSFileSystem(xlsWorkbook);
HSSFWorkbook workbook = new HSSFWorkbook(fs);
- InternalWorkbook internalWorkbook = getInternalWorkbook(workbook);
+ InternalWorkbook internalWorkbook = workbook.getInternalWorkbook();
DrawingGroupRecord r = (DrawingGroupRecord) internalWorkbook.findFirstRecordBySid(DrawingGroupRecord.sid);
r.decode();
@@ -155,7 +153,7 @@
HSSFPatriarch p = workbook.getSheetAt(i).getDrawingPatriarch();
if(p != null ) {
builder.append(tab).append("\n");
- builder.append(getHSSFPatriarchBoundAggregate(p).toXml(tab + "\t"));
+ builder.append(p.getBoundAggregate().toXml(tab + "\t"));
builder.append(tab).append("\n");
}
}
@@ -164,31 +162,4 @@
fos.close();
}
- private static EscherAggregate getHSSFPatriarchBoundAggregate(HSSFPatriarch patriarch) {
- Field boundAggregateField = null;
- try {
- boundAggregateField = patriarch.getClass().getDeclaredField("_boundAggregate");
- boundAggregateField.setAccessible(true);
- return (EscherAggregate) boundAggregateField.get(patriarch);
- } catch (NoSuchFieldException e) {
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- }
- return null;
- }
-
- private static InternalWorkbook getInternalWorkbook(HSSFWorkbook workbook) {
- Field internalSheetField = null;
- try {
- internalSheetField = workbook.getClass().getDeclaredField("workbook");
- internalSheetField.setAccessible(true);
- return (InternalWorkbook) internalSheetField.get(workbook);
- } catch (NoSuchFieldException e) {
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- }
- return null;
- }
}
Index: src/java/org/apache/poi/hssf/usermodel/HSSFComment.java
===================================================================
--- src/java/org/apache/poi/hssf/usermodel/HSSFComment.java (revision 1713221)
+++ src/java/org/apache/poi/hssf/usermodel/HSSFComment.java (working copy)
@@ -87,7 +87,7 @@
@Override
void afterInsert(HSSFPatriarch patriarch) {
super.afterInsert(patriarch);
- patriarch._getBoundAggregate().addTailRecord(getNoteRecord());
+ patriarch.getBoundAggregate().addTailRecord(getNoteRecord());
}
@Override
@@ -253,7 +253,7 @@
public void afterRemove(HSSFPatriarch patriarch){
super.afterRemove(patriarch);
- patriarch._getBoundAggregate().removeTailRecord(getNoteRecord());
+ patriarch.getBoundAggregate().removeTailRecord(getNoteRecord());
}
@Override
Index: src/java/org/apache/poi/hssf/usermodel/HSSFObjectData.java
===================================================================
--- src/java/org/apache/poi/hssf/usermodel/HSSFObjectData.java (revision 1713221)
+++ src/java/org/apache/poi/hssf/usermodel/HSSFObjectData.java (working copy)
@@ -126,7 +126,7 @@
@Override
void afterInsert(HSSFPatriarch patriarch) {
- EscherAggregate agg = patriarch._getBoundAggregate();
+ EscherAggregate agg = patriarch.getBoundAggregate();
agg.associateShapeToObjRecord(getEscherContainer().getChildById(EscherClientDataRecord.RECORD_ID), getObjRecord());
EscherBSERecord bse =
patriarch.getSheet().getWorkbook().getWorkbook().getBSERecord(getPictureIndex());
Index: src/java/org/apache/poi/hssf/usermodel/HSSFPatriarch.java
===================================================================
--- src/java/org/apache/poi/hssf/usermodel/HSSFPatriarch.java (revision 1713221)
+++ src/java/org/apache/poi/hssf/usermodel/HSSFPatriarch.java (working copy)
@@ -495,7 +495,8 @@
* Returns the aggregate escher record we're bound to
* @return - low level representation of sheet drawing data
*/
- protected EscherAggregate _getBoundAggregate() {
+ @Internal
+ public EscherAggregate getBoundAggregate() {
return _boundAggregate;
}
Index: src/java/org/apache/poi/hssf/usermodel/HSSFPicture.java
===================================================================
--- src/java/org/apache/poi/hssf/usermodel/HSSFPicture.java (revision 1713221)
+++ src/java/org/apache/poi/hssf/usermodel/HSSFPicture.java (working copy)
@@ -211,7 +211,7 @@
@Override
void afterInsert(HSSFPatriarch patriarch) {
- EscherAggregate agg = patriarch._getBoundAggregate();
+ EscherAggregate agg = patriarch.getBoundAggregate();
agg.associateShapeToObjRecord(getEscherContainer().getChildById(EscherClientDataRecord.RECORD_ID), getObjRecord());
EscherBSERecord bse =
patriarch.getSheet().getWorkbook().getWorkbook().getBSERecord(getPictureIndex());
Index: src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java
===================================================================
--- src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java (revision 1713221)
+++ src/java/org/apache/poi/hssf/usermodel/HSSFPolygon.java (working copy)
@@ -116,7 +116,7 @@
@Override
protected void afterRemove(HSSFPatriarch patriarch) {
- patriarch._getBoundAggregate().removeShapeToObjRecord(getEscherContainer().getChildById(EscherClientDataRecord.RECORD_ID));
+ patriarch.getBoundAggregate().removeShapeToObjRecord(getEscherContainer().getChildById(EscherClientDataRecord.RECORD_ID));
}
/**
Index: src/java/org/apache/poi/hssf/usermodel/HSSFShapeGroup.java
===================================================================
--- src/java/org/apache/poi/hssf/usermodel/HSSFShapeGroup.java (revision 1713221)
+++ src/java/org/apache/poi/hssf/usermodel/HSSFShapeGroup.java (working copy)
@@ -122,7 +122,7 @@
@Override
protected void afterRemove(HSSFPatriarch patriarch) {
- patriarch._getBoundAggregate().removeShapeToObjRecord(getEscherContainer().getChildContainers().get(0)
+ patriarch.getBoundAggregate().removeShapeToObjRecord(getEscherContainer().getChildContainers().get(0)
.getChildById(EscherClientDataRecord.RECORD_ID));
for ( int i=0; i it = root.getEntries(); it.hasNext();){
Entry entry = it.next();
Index: src/java/org/apache/poi/poifs/dev/POIFSHeaderDumper.java
===================================================================
--- src/java/org/apache/poi/poifs/dev/POIFSHeaderDumper.java (revision 1713221)
+++ src/java/org/apache/poi/poifs/dev/POIFSHeaderDumper.java (working copy)
@@ -19,8 +19,6 @@
import java.io.FileInputStream;
import java.io.InputStream;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
import org.apache.poi.poifs.common.POIFSBigBlockSize;
import org.apache.poi.poifs.common.POIFSConstants;
@@ -118,11 +116,8 @@
System.out.println("Raw Blocks Details:");
System.out.println(" Number of blocks: " + data_blocks.blockCount());
- Method gbm = data_blocks.getClass().getSuperclass().getDeclaredMethod("get", int.class);
- gbm.setAccessible(true);
-
for(int i=0; i> 4;
int dg_id_2 = dg2.getOptions() >> 4;
assertEquals(dg_id_1 + 1, dg_id_2);
Index: src/testcases/org/apache/poi/hssf/usermodel/TestPatriarch.java
===================================================================
--- src/testcases/org/apache/poi/hssf/usermodel/TestPatriarch.java (revision 1713221)
+++ src/testcases/org/apache/poi/hssf/usermodel/TestPatriarch.java (working copy)
@@ -40,7 +40,7 @@
assertSame(patriarch, sh.getDrawingPatriarch());
- EscherAggregate agg = patriarch._getBoundAggregate();
+ EscherAggregate agg = patriarch.getBoundAggregate();
EscherDgRecord dg = agg.getEscherContainer().getChildById(EscherDgRecord.RECORD_ID);
int lastId = dg.getLastMSOSPID();
@@ -50,7 +50,7 @@
wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
sh = wb.getSheetAt(0);
patriarch = sh.createDrawingPatriarch();
- dg = patriarch._getBoundAggregate().getEscherContainer().getChildById(EscherDgRecord.RECORD_ID);
+ dg = patriarch.getBoundAggregate().getEscherContainer().getChildById(EscherDgRecord.RECORD_ID);
assertEquals(lastId, dg.getLastMSOSPID());
}