Search in sources :

Example 6 with ClassID

use of org.apache.poi.hpsf.ClassID in project poi by apache.

the class TestClassID method testWriteArrayStoreException.

/**
     * Try to write to a buffer that is too small. This should
     *   throw an Exception
     */
public void testWriteArrayStoreException() {
    ClassID clsidTest = new ClassID(new byte[] { 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10 }, 0);
    boolean bExceptionOccurred = false;
    try {
        clsidTest.write(new byte[15], 0);
    } catch (Exception e) {
        bExceptionOccurred = true;
    }
    Assert.assertTrue(bExceptionOccurred);
    bExceptionOccurred = false;
    try {
        clsidTest.write(new byte[16], 1);
    } catch (Exception e) {
        bExceptionOccurred = true;
    }
    Assert.assertTrue(bExceptionOccurred);
    // These should work without throwing an Exception
    bExceptionOccurred = false;
    try {
        clsidTest.write(new byte[16], 0);
        clsidTest.write(new byte[17], 1);
    } catch (Exception e) {
        bExceptionOccurred = true;
    }
    Assert.assertFalse(bExceptionOccurred);
}
Also used : ClassID(org.apache.poi.hpsf.ClassID)

Example 7 with ClassID

use of org.apache.poi.hpsf.ClassID in project poi by apache.

the class HSSFWorkbook method getOleMap.

protected static Map<String, ClassID> getOleMap() {
    Map<String, ClassID> olemap = new HashMap<String, ClassID>();
    olemap.put("PowerPoint Document", ClassID.PPT_SHOW);
    for (String str : WORKBOOK_DIR_ENTRY_NAMES) {
        olemap.put(str, ClassID.XLS_WORKBOOK);
    }
    // ... to be continued
    return olemap;
}
Also used : HashMap(java.util.HashMap) ClassID(org.apache.poi.hpsf.ClassID) UnicodeString(org.apache.poi.hssf.record.common.UnicodeString)

Example 8 with ClassID

use of org.apache.poi.hpsf.ClassID in project poi by apache.

the class TestHSSFWorkbook method bug47920.

/**
     * Test that the storage clsid property is preserved
     */
@Test
public void bug47920() throws IOException {
    POIFSFileSystem fs1 = new POIFSFileSystem(POIDataSamples.getSpreadSheetInstance().openResourceAsStream("47920.xls"));
    HSSFWorkbook wb = new HSSFWorkbook(fs1);
    ClassID clsid1 = fs1.getRoot().getStorageClsid();
    ByteArrayOutputStream out = new ByteArrayOutputStream(4096);
    wb.write(out);
    byte[] bytes = out.toByteArray();
    POIFSFileSystem fs2 = new POIFSFileSystem(new ByteArrayInputStream(bytes));
    ClassID clsid2 = fs2.getRoot().getStorageClsid();
    assertTrue(clsid1.equals(clsid2));
    fs2.close();
    wb.close();
    fs1.close();
}
Also used : ByteArrayInputStream(java.io.ByteArrayInputStream) OPOIFSFileSystem(org.apache.poi.poifs.filesystem.OPOIFSFileSystem) POIFSFileSystem(org.apache.poi.poifs.filesystem.POIFSFileSystem) NPOIFSFileSystem(org.apache.poi.poifs.filesystem.NPOIFSFileSystem) ClassID(org.apache.poi.hpsf.ClassID) ByteArrayOutputStream(java.io.ByteArrayOutputStream) Test(org.junit.Test)

Aggregations

ClassID (org.apache.poi.hpsf.ClassID)8 ByteArrayOutputStream (java.io.ByteArrayOutputStream)4 HashMap (java.util.HashMap)3 ByteArrayInputStream (java.io.ByteArrayInputStream)2 IOException (java.io.IOException)2 Map (java.util.Map)2 UnicodeString (org.apache.poi.hssf.record.common.UnicodeString)2 DirectoryNode (org.apache.poi.poifs.filesystem.DirectoryNode)2 NPOIFSFileSystem (org.apache.poi.poifs.filesystem.NPOIFSFileSystem)2 POIFSFileSystem (org.apache.poi.poifs.filesystem.POIFSFileSystem)2 Test (org.junit.Test)2 File (java.io.File)1 FileInputStream (java.io.FileInputStream)1 FileOutputStream (java.io.FileOutputStream)1 OutputStream (java.io.OutputStream)1 UnsupportedEncodingException (java.io.UnsupportedEncodingException)1 EscherBSERecord (org.apache.poi.ddf.EscherBSERecord)1 EscherContainerRecord (org.apache.poi.ddf.EscherContainerRecord)1 EscherOptRecord (org.apache.poi.ddf.EscherOptRecord)1 HPSFException (org.apache.poi.hpsf.HPSFException)1