public final class UnknownEscherRecord extends EscherRecord implements java.lang.Cloneable
Constructor and Description |
---|
UnknownEscherRecord() |
Modifier and Type | Method and 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.
|
protected java.lang.Object[][] |
getAttributeMap()
For the purpose of providing toString() and toXml() a subclass can either override those methods
or provide a Object[][] array in the form { { "Attribute Name (Header)", value, "optional attribute", value }, ...
|
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.
|
display, fillFields, getChild, getInstance, getOptions, getRecordId, getVersion, isContainerRecord, readHeader, readInstance, serialize, serialize, setInstance, setOptions, setRecordId, setVersion, toString, toXml, toXml
public int fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
EscherRecord
fillFields
in class EscherRecord
data
- The byte array containing the serialized escher
records.offset
- The offset into the byte array.recordFactory
- A factory for creating new escher records.public int serialize(int offset, byte[] data, EscherSerializationListener listener)
EscherRecord
serialize
in class EscherRecord
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.public byte[] getData()
public int getRecordSize()
EscherRecord
getRecordSize
in class EscherRecord
public java.util.List<EscherRecord> getChildRecords()
getChildRecords
in class EscherRecord
EscherContainerRecord
public void setChildRecords(java.util.List<EscherRecord> childRecords)
EscherRecord
setChildRecords
in class EscherRecord
childRecords
- Not used in base implementation.public UnknownEscherRecord clone()
EscherRecord
clone
in class EscherRecord
public java.lang.String getRecordName()
EscherRecord
getRecordName
in class EscherRecord
public void addChildRecord(EscherRecord childRecord)
protected java.lang.Object[][] getAttributeMap()
EscherRecord
{ { "Attribute Name (Header)", value, "optional attribute", value }, ... }
.Null values won't be printed.
The attributes record, version, instance, options must not be returned.
getAttributeMap
in class EscherRecord
Copyright 2018 The Apache Software Foundation or its licensors, as applicable.