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 voidaddChildRecord(EscherRecord childRecord)UnknownEscherRecordclone()Escher records may need to be clonable in the future.intfillFields(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.StringgetRecordName()Subclasses should return the short name for this escher record.intgetRecordSize()Subclasses should effeciently return the number of bytes required to serialize the record.intserialize(int offset, byte[] data, EscherSerializationListener listener)Serializes the record to an existing byte array.voidsetChildRecords(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:EscherRecordThe contract of this method is to deserialize an escher record including it's children.- Specified by:
fillFieldsin 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:EscherRecordSerializes the record to an existing byte array.- Specified by:
serializein 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:EscherRecordSubclasses should effeciently return the number of bytes required to serialize the record.- Specified by:
getRecordSizein classEscherRecord- Returns:
- number of bytes
-
getChildRecords
public java.util.List<EscherRecord> getChildRecords()
- Overrides:
getChildRecordsin 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:EscherRecordSets the child records for this record. By default this will throw an exception as only EscherContainerRecords may have children.- Overrides:
setChildRecordsin classEscherRecord- Parameters:
childRecords- Not used in base implementation.
-
clone
public UnknownEscherRecord clone()
Description copied from class:EscherRecordEscher records may need to be clonable in the future.- Overrides:
clonein classEscherRecord- Returns:
- the cloned object
-
getRecordName
public java.lang.String getRecordName()
Description copied from class:EscherRecordSubclasses should return the short name for this escher record.- Specified by:
getRecordNamein classEscherRecord- Returns:
- the short name for this escher record
-
addChildRecord
public void addChildRecord(EscherRecord childRecord)
-
-