Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.poi.ddf
Class AbstractEscherOptRecord

    java.lang.Object
      org.apache.poi.ddf.EscherRecord
          org.apache.poi.ddf.AbstractEscherOptRecord

All Implemented Interfaces:
  java.lang.Cloneable

Direct Known Subclasses:
  EscherOptRecord, EscherTertiaryOptRecord

    public abstract class AbstractEscherOptRecord

extends EscherRecord

Common abstract class for `EscherOptRecord` and `EscherTertiaryOptRecord`

Constructor Summary
`AbstractEscherOptRecord()`

Method Summary
`void` | `addEscherProperty(EscherProperty prop)` Add a property to this record.
`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<EscherProperty>` | `getEscherProperties()` The list of properties stored by this record.
`EscherProperty` | `getEscherProperty(int index)` The list of properties stored by this record.
`int` | `getRecordSize()` Subclasses should effeciently return the number of bytes required to serialize the record.
`
`<T extends EscherProperty> T`
` | `lookup(int propId)`
`void` | `removeEscherProperty(int num)`
`int` | `serialize(int offset, byte[] data, EscherSerializationListener listener)` Serializes the record to an existing byte array.
`void` | `setEscherProperty(EscherProperty value)` Set an escher property.
`void` | `sortProperties()` Records should be sorted by property number before being stored.

Methods inherited from class org.apache.poi.ddf.EscherRecord
`clone, display, fillFields, getChild, getChildRecords, getInstance, getOptions, getRecordId, getRecordName, getVersion, isContainerRecord, readHeader, readInstance, serialize, serialize, setChildRecords, setInstance, setOptions, setRecordId, setVersion, toString, toXml, toXml`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### AbstractEscherOptRecord

    public AbstractEscherOptRecord()

Method Detail

### addEscherProperty

    public void addEscherProperty(EscherProperty prop)

  Add a property to this record.

  Parameters:
    `prop` - the escher property to add

### 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 class `EscherRecord`
  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.

### getEscherProperties

    public java.util.List<EscherProperty> getEscherProperties()

  The list of properties stored by this record.

  Returns:
    the list of properties

### getEscherProperty

    public EscherProperty getEscherProperty(int index)

  The list of properties stored by this record.

  Parameters:
    `index` - the ordinal index of the property
  Returns:
    the escher property

### 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 class `EscherRecord`
  Returns:
    number of bytes

### lookup

    public <T extends EscherProperty> T lookup(int propId)

### 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 class `EscherRecord`
  Parameters:
    `offset` - the offset within the byte array
    `data` - the data array to serialize to
    `listener` - 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.

### sortProperties

    public void sortProperties()

  Records should be sorted by property number before being stored.

### setEscherProperty

    public void setEscherProperty(EscherProperty value)

  Set an escher property. If a property with given propId already exists it is replaced.

  Parameters:
    `value` - the property to set.

### removeEscherProperty

    public void removeEscherProperty(int num)

### getAttributeMap

    protected java.lang.Object[][] getAttributeMap()

  Description copied from class: `EscherRecord`
  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 }, ... }` .

  Null values won't be printed.

  The attributes record, version, instance, options must not be returned.

  Specified by:
    `getAttributeMap` in class `EscherRecord`
  Returns:
    the attribute map

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright 2017 The Apache Software Foundation or its licensors, as applicable.