Class EscherSpRecord

  • All Implemented Interfaces:
    java.lang.Cloneable

    public class EscherSpRecord
    extends EscherRecord
    Together the the EscherOptRecord this record defines some of the basic properties of a shape.
    • Constructor Detail

      • EscherSpRecord

        public EscherSpRecord()
    • Method Detail

      • 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.
      • serialize

        public int serialize​(int offset,
                             byte[] data,
                             EscherSerializationListener listener)
        This method serializes this escher record into a byte array.
        Specified by:
        serialize in class EscherRecord
        Parameters:
        offset - The offset into data to start writing the record data to.
        data - The byte array to serialize to.
        listener - A listener to retrieve start and end callbacks. Use a NullEscherSerailizationListener to ignore these events.
        Returns:
        The number of bytes written.
        See Also:
        NullEscherSerializationListener
      • 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
      • getRecordId

        public short getRecordId()
        Description copied from class: EscherRecord
        Return the current record id.
        Overrides:
        getRecordId in class EscherRecord
        Returns:
        The 16 bit record id.
      • getRecordName

        public java.lang.String getRecordName()
        Description copied from class: EscherRecord
        Subclasses should return the short name for this escher record.
        Specified by:
        getRecordName in class EscherRecord
        Returns:
        the short name for this escher record
      • getShapeId

        public int getShapeId()
        Returns:
        A number that identifies this shape
      • setShapeId

        public void setShapeId​(int field_1_shapeId)
        Sets a number that identifies this shape.
        Parameters:
        field_1_shapeId - the shape id
      • getShapeType

        public short getShapeType()
        Returns shape type. Must be one of MSOSPT values (see [MS-ODRAW] for details).
        Returns:
        shape type
      • setShapeType

        public void setShapeType​(short value)
        Sets shape type. Must be one of MSOSPT values (see [MS-ODRAW] for details).
        Parameters:
        value - new shape type
      • 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