Package org.apache.poi.ddf
Class UnknownEscherRecord
- java.lang.Object
-
- org.apache.poi.ddf.EscherRecord
-
- org.apache.poi.ddf.UnknownEscherRecord
-
- All Implemented Interfaces:
java.lang.Cloneable
public final class UnknownEscherRecord extends EscherRecord implements java.lang.Cloneable
This record is used whenever a escher record is encountered that we do not explicitly support.
-
-
Constructor Summary
Constructors Constructor Description UnknownEscherRecord()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addChildRecord(EscherRecord childRecord)
UnknownEscherRecord
clone()
Escher records may need to be clonable in the future.int
fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
The contract of this method is to deserialize an escher record including it's children.java.util.List<EscherRecord>
getChildRecords()
byte[]
getData()
java.lang.String
getRecordName()
Subclasses should return the short name for this escher record.int
getRecordSize()
Subclasses should effeciently return the number of bytes required to serialize the record.int
serialize(int offset, byte[] data, EscherSerializationListener listener)
Serializes the record to an existing byte array.void
setChildRecords(java.util.List<EscherRecord> childRecords)
Sets the child records for this record.-
Methods inherited from class org.apache.poi.ddf.EscherRecord
display, getChild, getInstance, getOptions, getRecordId, getVersion, isContainerRecord, serialize, serialize, setInstance, setOptions, setRecordId, setVersion, toString, toXml, toXml
-
-
-
-
Method Detail
-
fillFields
public int fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
Description copied from class:EscherRecord
The contract of this method is to deserialize an escher record including it's children.- Specified by:
fillFields
in classEscherRecord
- Parameters:
data
- The byte array containing the serialized escher records.offset
- The offset into the byte array.recordFactory
- A factory for creating new escher records.- Returns:
- The number of bytes written.
-
serialize
public int serialize(int offset, byte[] data, EscherSerializationListener listener)
Description copied from class:EscherRecord
Serializes the record to an existing byte array.- Specified by:
serialize
in classEscherRecord
- Parameters:
offset
- the offset within the byte arraydata
- the data array to serialize tolistener
- a listener for begin and end serialization events. This is useful because the serialization is hierarchical/recursive and sometimes you need to be able break into that.- Returns:
- the number of bytes written.
-
getData
public byte[] getData()
- Returns:
- the data which makes up this record
-
getRecordSize
public int getRecordSize()
Description copied from class:EscherRecord
Subclasses should effeciently return the number of bytes required to serialize the record.- Specified by:
getRecordSize
in classEscherRecord
- Returns:
- number of bytes
-
getChildRecords
public java.util.List<EscherRecord> getChildRecords()
- Overrides:
getChildRecords
in classEscherRecord
- Returns:
- Returns the children of this record. By default this will be an empty list. EscherCotainerRecord is the only record that may contain children.
- See Also:
EscherContainerRecord
-
setChildRecords
public void setChildRecords(java.util.List<EscherRecord> childRecords)
Description copied from class:EscherRecord
Sets the child records for this record. By default this will throw an exception as only EscherContainerRecords may have children.- Overrides:
setChildRecords
in classEscherRecord
- Parameters:
childRecords
- Not used in base implementation.
-
clone
public UnknownEscherRecord clone()
Description copied from class:EscherRecord
Escher records may need to be clonable in the future.- Overrides:
clone
in classEscherRecord
- Returns:
- the cloned object
-
getRecordName
public java.lang.String getRecordName()
Description copied from class:EscherRecord
Subclasses should return the short name for this escher record.- Specified by:
getRecordName
in classEscherRecord
- Returns:
- the short name for this escher record
-
addChildRecord
public void addChildRecord(EscherRecord childRecord)
-
-