Package loci.poi.ddf
Class EscherOptRecord
- java.lang.Object
-
- loci.poi.ddf.EscherRecord
-
- loci.poi.ddf.EscherOptRecord
-
public class EscherOptRecord extends EscherRecord
The opt record is used to store property values for a shape. It is the key to determining the attributes of a shape. Properties can be of two types: simple or complex. Simple types are fixed length. Complex properties are variable length.- Author:
- Glen Stampoultzis
-
-
Field Summary
Fields Modifier and Type Field Description static String
RECORD_DESCRIPTION
static short
RECORD_ID
-
Constructor Summary
Constructors Constructor Description EscherOptRecord()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addEscherProperty(EscherProperty prop)
Add a property to this record.int
fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
This method deserializes the record from a byte array.List
getEscherProperties()
The list of properties stored by this record.EscherProperty
getEscherProperty(int index)
The list of properties stored by this record.short
getOptions()
Automatically recalculate the correct optionString
getRecordName()
The short name for this recordint
getRecordSize()
Returns the number of bytes that are required to serialize this record.int
serialize(int offset, byte[] data, EscherSerializationListener listener)
This method serializes this escher record into a byte array.void
sortProperties()
Records should be sorted by property number before being stored.String
toString()
Retrieve the string representation of this record.-
Methods inherited from class loci.poi.ddf.EscherRecord
clone, display, fillFields, getChild, getChildRecords, getInstance, getRecordId, isContainerRecord, readHeader, serialize, serialize, setChildRecords, setOptions, setRecordId
-
-
-
-
Field Detail
-
RECORD_ID
public static final short RECORD_ID
- See Also:
- Constant Field Values
-
RECORD_DESCRIPTION
public static final String RECORD_DESCRIPTION
- See Also:
- Constant Field Values
-
-
Method Detail
-
fillFields
public int fillFields(byte[] data, int offset, EscherRecordFactory recordFactory)
This method deserializes the record from a byte array.- Specified by:
fillFields
in classEscherRecord
- Parameters:
data
- The byte array containing the escher record informationoffset
- The starting offset intodata
.recordFactory
- May be null since this is not a container record.- Returns:
- The number of bytes read from the byte array.
-
serialize
public int serialize(int offset, byte[] data, EscherSerializationListener listener)
This method serializes this escher record into a byte array.- Specified by:
serialize
in classEscherRecord
- Parameters:
offset
- The offset intodata
to start writing the record data to.data
- The byte array to serialize to.listener
- A listener to retrieve start and end callbacks. Use aNullEscherSerailizationListener
to ignore these events.- Returns:
- The number of bytes written.
- See Also:
NullEscherSerializationListener
-
getRecordSize
public int getRecordSize()
Returns the number of bytes that are required to serialize this record.- Specified by:
getRecordSize
in classEscherRecord
- Returns:
- Number of bytes
-
getOptions
public short getOptions()
Automatically recalculate the correct option- Overrides:
getOptions
in classEscherRecord
- Returns:
- The options field for this record. All records have one.
-
getRecordName
public String getRecordName()
The short name for this record- Specified by:
getRecordName
in classEscherRecord
-
toString
public String toString()
Retrieve the string representation of this record.
-
getEscherProperties
public List getEscherProperties()
The list of properties stored by this record.
-
getEscherProperty
public EscherProperty getEscherProperty(int index)
The list of properties stored by this record.
-
addEscherProperty
public void addEscherProperty(EscherProperty prop)
Add a property to this record.
-
sortProperties
public void sortProperties()
Records should be sorted by property number before being stored.
-
-