Package org.apache.poi.hssf.record

Examples of org.apache.poi.hssf.record.EscherAggregate


        // aggregate drawing records.
        // The subrange [19, 388] is expected to be replaced with a EscherAggregate object
        DrawingManager2 drawingManager = iworkbook.findDrawingGroup();
        int loc = isheet.aggregateDrawingRecords(drawingManager, false);
        EscherAggregate agg = (EscherAggregate) records.get(loc);

        assertEquals("wrong size of the aggregated sheet records stream", 25, records.size());
        assertTrue(
                "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName(),
                records.get(18) instanceof RowRecordsAggregate);
        assertTrue("records.get(19) is expected to be EscherAggregate but was " + records.get(19).getClass().getSimpleName(),
                records.get(19) instanceof EscherAggregate);
        assertTrue("records.get(20) is expected to be Window2 but was " + records.get(20).getClass().getSimpleName(),
                records.get(20) instanceof WindowTwoRecord);

        byte[] dgBytesAfterSave = agg.serialize();
        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
        assertTrue("drawing data before and after save is different", Arrays.equals(dgBytes, dgBytesAfterSave));
    }
View Full Code Here


        // aggregate drawing records.
        // The subrange [19, 38] is expected to be replaced with a EscherAggregate object
        DrawingManager2 drawingManager = iworkbook.findDrawingGroup();
        int loc = isheet.aggregateDrawingRecords(drawingManager, false);
        EscherAggregate agg = (EscherAggregate) records.get(loc);

        assertEquals("wrong size of the aggregated sheet records stream", 26, records.size());
        assertTrue(
                "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName(),
                records.get(18) instanceof RowRecordsAggregate);
        assertTrue("records.get(19) is expected to be EscherAggregate but was " + records.get(19).getClass().getSimpleName(),
                records.get(19) instanceof EscherAggregate);
        assertTrue("records.get(20) is expected to be Window2 but was " + records.get(20).getClass().getSimpleName(),
                records.get(20) instanceof WindowTwoRecord);

        byte[] dgBytesAfterSave = agg.serialize();
        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
        assertTrue("drawing data before and after save is different", Arrays.equals(dgBytes, dgBytesAfterSave));

    }
View Full Code Here

        // aggregate drawing records.
        // The subrange [19, 38] is expected to be replaced with a EscherAggregate object
        DrawingManager2 drawingManager = iworkbook.findDrawingGroup();
        int loc = isheet.aggregateDrawingRecords(drawingManager, false);
        EscherAggregate agg = (EscherAggregate) records.get(loc);

        assertEquals("wrong size of the aggregated sheet records stream", 27, records.size());
        assertTrue(
                "records.get(18) is expected to be RowRecordsAggregate but was " + records.get(18).getClass().getSimpleName(),
                records.get(18) instanceof RowRecordsAggregate);
        assertTrue("records.get(19) is expected to be EscherAggregate but was " + records.get(19).getClass().getSimpleName(),
                records.get(19) instanceof EscherAggregate);
        assertTrue("records.get(20) is expected to be Window2 but was " + records.get(20).getClass().getSimpleName(),
                records.get(20) instanceof WindowTwoRecord);

        byte[] dgBytesAfterSave = agg.serialize();
        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
        assertTrue("drawing data before and after save is different", Arrays.equals(dgBytes, dgBytesAfterSave));
    }
View Full Code Here

        HSSFShapeGroup group = patriarch.createGroup(new HSSFClientAnchor());

        group.createShape(new HSSFChildAnchor());
        group.createShape(new HSSFChildAnchor());

        EscherAggregate agg = HSSFTestHelper.getEscherAggregate(patriarch);

        assertEquals(agg.getShapeToObjMapping().size(), 5);
        assertEquals(agg.getTailRecords().size(), 0);
        assertEquals(group.getChildren().size(), 2);

        group.clear();

        assertEquals(agg.getShapeToObjMapping().size(), 1);
        assertEquals(agg.getTailRecords().size(), 0);
        assertEquals(group.getChildren().size(), 0);

        wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
        sheet = wb.getSheetAt(0);
        patriarch = sheet.getDrawingPatriarch();

        group = (HSSFShapeGroup) patriarch.getChildren().get(0);

        assertEquals(agg.getShapeToObjMapping().size(), 1);
        assertEquals(agg.getTailRecords().size(), 0);
        assertEquals(group.getChildren().size(), 0);
    }
View Full Code Here

        // aggregate drawing records.
        // The subrange [19, 299] is expected to be replaced with a EscherAggregate object
        DrawingManager2 drawingManager = iworkbook.findDrawingGroup();
        int loc = isheet.aggregateDrawingRecords(drawingManager, false);
        EscherAggregate agg = (EscherAggregate) records.get(loc);

        assertEquals("wrong size of the aggregated sheet records stream", 38, records.size());
        assertTrue(
                "records.get(21) is expected to be RowRecordsAggregate but was " + records.get(21).getClass().getSimpleName(),
                records.get(21) instanceof RowRecordsAggregate);
        assertTrue("records.get(22) is expected to be EscherAggregate but was " + records.get(22).getClass().getSimpleName(),
                records.get(22) instanceof EscherAggregate);
        assertTrue("records.get(23) is expected to be Window2 but was " + records.get(23).getClass().getSimpleName(),
                records.get(23) instanceof WindowTwoRecord);

        byte[] dgBytesAfterSave = agg.serialize();
        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
        assertTrue("drawing data before and after save is different", Arrays.equals(dgBytes, dgBytesAfterSave));
    }
View Full Code Here

        sheet.aggregateDrawingRecords(drawingManager, false);
        assertEquals("drawing was not fully aggregated", 2, records.size());
        assertTrue("expected EscherAggregate", records.get(0) instanceof EscherAggregate);
        assertTrue("expected EOFRecord", records.get(1) instanceof EOFRecord);
        EscherAggregate agg = (EscherAggregate) records.get(0);

        byte[] dgBytesAfterSave = agg.serialize();
        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
        assertTrue("drawing data before and after save is different", Arrays.equals(dgBytes, dgBytesAfterSave));
    }
View Full Code Here

        sheet.aggregateDrawingRecords(drawingManager, false);
        assertEquals("drawing was not fully aggregated", 2, records.size());
        assertTrue("expected EscherAggregate", records.get(0) instanceof EscherAggregate);
        assertTrue("expected EOFRecord", records.get(1) instanceof EOFRecord);

        EscherAggregate agg = (EscherAggregate) records.get(0);

        byte[] dgBytesAfterSave = agg.serialize();
        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
        assertTrue("drawing data brefpore and after save is different", Arrays.equals(dgBytes, dgBytesAfterSave));
    }
View Full Code Here

        List<RecordBase> records = ish.getRecords();
        // records to be aggregated
        List<RecordBase> dgRecords = records.subList(19, 23);
        byte[] dgBytes = toByteArray(dgRecords);
        sh.getDrawingPatriarch();
        EscherAggregate agg = (EscherAggregate) ish.findFirstRecordBySid(EscherAggregate.sid);
        assertEquals(true, agg.getEscherRecords().get(0) instanceof EscherContainerRecord);
        assertEquals(EscherContainerRecord.DG_CONTAINER, agg.getEscherRecords().get(0).getRecordId());
        assertEquals((short) 0x0, agg.getEscherRecords().get(0).getOptions());
        agg = (EscherAggregate) ish.findFirstRecordBySid(EscherAggregate.sid);
        byte[] dgBytesAfterSave = agg.serialize();
        assertEquals("different size of drawing data before and after save", dgBytes.length, dgBytesAfterSave.length);
        assertTrue("drawing data before and after save is different", Arrays.equals(dgBytes, dgBytesAfterSave));
    }
View Full Code Here

        wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
        sheet1 = wb.getSheetAt(0);
        patriarch1 = sheet1.getDrawingPatriarch();

        EscherAggregate agg1 = HSSFTestHelper.getEscherAggregate(patriarch1);
        // last shape ID cached in EscherDgRecord
        EscherDgRecord dg1 =
                agg1.getEscherContainer().getChildById(EscherDgRecord.RECORD_ID);
        assertEquals(1026, dg1.getLastMSOSPID());

        // iterate over shapes and check shapeId
        EscherContainerRecord spgrContainer =
                agg1.getEscherContainer().getChildContainers().get(0);
        // root spContainer + 2 spContainers for shapes
        assertEquals(3, spgrContainer.getChildRecords().size());

        EscherSpRecord sp0 =
                ((EscherContainerRecord) spgrContainer.getChild(0)).getChildById(EscherSpRecord.RECORD_ID);
View Full Code Here

    public void testDgRecordNumShapes(){
        HSSFWorkbook wb = new HSSFWorkbook();
        HSSFSheet sheet = wb.createSheet();
        HSSFPatriarch patriarch = sheet.createDrawingPatriarch();

        EscherAggregate aggregate = HSSFTestHelper.getEscherAggregate(patriarch);
        EscherDgRecord dgRecord = (EscherDgRecord) aggregate.getEscherRecord(0).getChild(0);
        assertEquals(dgRecord.getNumShapes(), 1);
    }
View Full Code Here

TOP

Related Classes of org.apache.poi.hssf.record.EscherAggregate

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.