Package org.apache.poi.hslf.record
Class ExOleObjStg
java.lang.Object
org.apache.poi.hslf.record.Record
org.apache.poi.hslf.record.RecordAtom
org.apache.poi.hslf.record.PositionDependentRecordAtom
org.apache.poi.hslf.record.ExOleObjStg
- All Implemented Interfaces:
PersistRecord
,PositionDependentRecord
Storage for embedded OLE objects.
-
Field Summary
-
Constructor Summary
ConstructorsModifierConstructorDescriptionConstructs a new empty storage container.protected
ExOleObjStg
(byte[] source, int start, int len) Constructs the link related atom record from its source data. -
Method Summary
Modifier and TypeMethodDescriptiongetData()
Opens an input stream which will decompress the data on the fly.int
Gets the uncompressed length of the data.int
Fetch our sheet ID, as found from a PersistPtrHolder.byte[]
int
Gets the record instance from the headerlong
Gets the record type.boolean
void
setData
(byte[] data) Sets the embedded data.void
setPersistId
(int id) Set our sheet ID, as found from a PersistPtrHoldervoid
updateOtherRecordReferences
(Map<Integer, Integer> oldToNewReferencesLookup) Offer the record the list of records that have changed their location as part of the writeout.void
writeOut
(OutputStream out) Write the contents of the record back, so it can be written to disk.Methods inherited from class org.apache.poi.hslf.record.PositionDependentRecordAtom
getLastOnDiskOffset, setLastOnDiskOffset
Methods inherited from class org.apache.poi.hslf.record.RecordAtom
getChildRecords, isAnAtom
Methods inherited from class org.apache.poi.hslf.record.Record
buildRecordAtOffset, createRecordForType, findChildRecords, writeLittleEndian, writeLittleEndian
-
Constructor Details
-
ExOleObjStg
public ExOleObjStg()Constructs a new empty storage container. -
ExOleObjStg
protected ExOleObjStg(byte[] source, int start, int len) Constructs the link related atom record from its source data.- Parameters:
source
- the source data as a byte array.start
- the start offset into the byte array.len
- the length of the slice in the byte array.
-
-
Method Details
-
isCompressed
public boolean isCompressed() -
getDataLength
public int getDataLength()Gets the uncompressed length of the data.- Returns:
- the uncompressed length of the data.
-
getData
Opens an input stream which will decompress the data on the fly.- Returns:
- the data input stream.
-
getRawData
public byte[] getRawData() -
setData
Sets the embedded data.- Parameters:
data
- the embedded data.- Throws:
IOException
-
getRecordType
public long getRecordType()Gets the record type.- Specified by:
getRecordType
in classRecord
- Returns:
- the record type.
-
getRecordInstance
public int getRecordInstance()Gets the record instance from the header- Returns:
- record instance
-
writeOut
Write the contents of the record back, so it can be written to disk.- Specified by:
writeOut
in classRecord
- Parameters:
out
- the output stream to write to.- Throws:
IOException
- if an error occurs.
-
getPersistId
public int getPersistId()Fetch our sheet ID, as found from a PersistPtrHolder. Should match the RefId of our matching SlidePersistAtom- Specified by:
getPersistId
in interfacePersistRecord
-
setPersistId
public void setPersistId(int id) Set our sheet ID, as found from a PersistPtrHolder- Specified by:
setPersistId
in interfacePersistRecord
-
updateOtherRecordReferences
Description copied from class:PositionDependentRecordAtom
Offer the record the list of records that have changed their location as part of the writeout. Allows records to update their internal pointers to other records locations- Specified by:
updateOtherRecordReferences
in interfacePositionDependentRecord
- Specified by:
updateOtherRecordReferences
in classPositionDependentRecordAtom
-