Package org.apache.poi.ddf
Class EscherProperty
- java.lang.Object
-
- org.apache.poi.ddf.EscherProperty
-
- All Implemented Interfaces:
GenericRecord
- Direct Known Subclasses:
EscherComplexProperty
,EscherSimpleProperty
public abstract class EscherProperty extends Object implements GenericRecord
This is the abstract base class for all escher properties.- See Also:
EscherOptRecord
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
EscherProperty(short id)
The id is distinct from the actual property number.protected
EscherProperty(short propertyNumber, boolean isComplex, boolean isBlipId)
Constructs a new escher property.protected
EscherProperty(EscherPropertyTypes type, boolean isComplex, boolean isBlipId)
Constructs a new escher property.
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description List<? extends GenericRecord>
getGenericChildren()
Map<String,Supplier<?>>
getGenericProperties()
EscherPropertyTypes
getGenericRecordType()
short
getId()
String
getName()
short
getPropertyNumber()
int
getPropertySize()
Most properties are just 6 bytes in length.boolean
isBlipId()
boolean
isComplex()
abstract int
serializeComplexPart(byte[] data, int pos)
Escher properties consist of a simple fixed length part and a complex variable length part.abstract int
serializeSimplePart(byte[] data, int pos)
Escher properties consist of a simple fixed length part and a complex variable length part.String
toString()
String
toXml(String tab)
-
-
-
Constructor Detail
-
EscherProperty
protected EscherProperty(short id)
The id is distinct from the actual property number. The id includes the property number the blip id flag and an indicator whether the property is complex or not.- Parameters:
id
- the combined id
-
EscherProperty
protected EscherProperty(short propertyNumber, boolean isComplex, boolean isBlipId)
Constructs a new escher property. The three parameters are combined to form a property id.- Parameters:
propertyNumber
- the property numberisComplex
- true, if this is a complex propertyisBlipId
- true, if this property is a blip id
-
EscherProperty
protected EscherProperty(EscherPropertyTypes type, boolean isComplex, boolean isBlipId)
Constructs a new escher property. The three parameters are combined to form a property id.- Parameters:
type
- one of the defined property typesisComplex
- true, if this is a complex propertyisBlipId
- true, if this property is a blip id
-
-
Method Detail
-
getId
public short getId()
-
getPropertyNumber
public short getPropertyNumber()
-
isComplex
public boolean isComplex()
-
isBlipId
public boolean isBlipId()
-
getName
public String getName()
-
getPropertySize
public int getPropertySize()
Most properties are just 6 bytes in length. Override this if we're dealing with complex properties.- Returns:
- size of this property (in bytes)
-
serializeSimplePart
public abstract int serializeSimplePart(byte[] data, int pos)
Escher properties consist of a simple fixed length part and a complex variable length part. The fixed length part is serialized first.- Parameters:
data
- the buffer to write topos
- the starting position- Returns:
- the length of the part
-
serializeComplexPart
public abstract int serializeComplexPart(byte[] data, int pos)
Escher properties consist of a simple fixed length part and a complex variable length part. The fixed length part is serialized first.- Parameters:
data
- the buffer to write topos
- the starting position- Returns:
- the length of the part
-
getGenericProperties
public Map<String,Supplier<?>> getGenericProperties()
- Specified by:
getGenericProperties
in interfaceGenericRecord
-
getGenericChildren
public List<? extends GenericRecord> getGenericChildren()
- Specified by:
getGenericChildren
in interfaceGenericRecord
-
getGenericRecordType
public EscherPropertyTypes getGenericRecordType()
- Specified by:
getGenericRecordType
in interfaceGenericRecord
-
-