Package loci.poi.ddf

Class EscherComplexProperty

java.lang.Object
loci.poi.ddf.EscherProperty
loci.poi.ddf.EscherComplexProperty
Direct Known Subclasses:
EscherArrayProperty

public class EscherComplexProperty extends EscherProperty
A complex property differs from a simple property in that the data can not fit inside a 32 bit integer. See the specification for more detailed information regarding exactly what is stored here.
Author:
Glen Stampoultzis
  • Field Summary

    Fields inherited from class loci.poi.ddf.EscherProperty

    id
  • Constructor Summary

    Constructors
    Constructor
    Description
    EscherComplexProperty(short propertyNumber, boolean isBlipId, byte[] complexData)
    Create a complex property using the property number, a flag to indicate whether this is a blip reference and the complex property data.
    EscherComplexProperty(short id, byte[] complexData)
    Create a complex property using the property id and a byte array containing the complex data value.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Determine whether this property is equal to another property.
    byte[]
    Get the complex data value.
    int
    Caclulates the number of bytes required to serialize this property.
    int
    Calculates a hashcode for this property.
    int
    serializeComplexPart(byte[] data, int pos)
    Serializes the complex part of this property
    int
    serializeSimplePart(byte[] data, int pos)
    Serializes the simple part of this property.
    Retrieves the string representation for this property.

    Methods inherited from class loci.poi.ddf.EscherProperty

    getId, getName, getPropertyNumber, isBlipId, isComplex

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • EscherComplexProperty

      public EscherComplexProperty(short id, byte[] complexData)
      Create a complex property using the property id and a byte array containing the complex data value.
      Parameters:
      id - The id consists of the property number, a flag indicating whether this is a blip id and a flag indicating that this is a complex property.
      complexData - The value of this property.
    • EscherComplexProperty

      public EscherComplexProperty(short propertyNumber, boolean isBlipId, byte[] complexData)
      Create a complex property using the property number, a flag to indicate whether this is a blip reference and the complex property data.
      Parameters:
      propertyNumber - The property number
      isBlipId - Whether this is a blip id. Should be false.
      complexData - The value of this complex property.
  • Method Details

    • serializeSimplePart

      public int serializeSimplePart(byte[] data, int pos)
      Serializes the simple part of this property. ie the first 6 bytes.
      Specified by:
      serializeSimplePart in class EscherProperty
    • serializeComplexPart

      public int serializeComplexPart(byte[] data, int pos)
      Serializes the complex part of this property
      Specified by:
      serializeComplexPart in class EscherProperty
      Parameters:
      data - The data array to serialize to
      pos - The offset within data to start serializing to.
      Returns:
      The number of bytes serialized.
    • getComplexData

      public byte[] getComplexData()
      Get the complex data value.
    • equals

      public boolean equals(Object o)
      Determine whether this property is equal to another property.
      Overrides:
      equals in class Object
      Parameters:
      o - The object to compare to.
      Returns:
      True if the objects are equal.
    • getPropertySize

      public int getPropertySize()
      Caclulates the number of bytes required to serialize this property.
      Overrides:
      getPropertySize in class EscherProperty
      Returns:
      Number of bytes
    • hashCode

      public int hashCode()
      Calculates a hashcode for this property.
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Retrieves the string representation for this property.
      Overrides:
      toString in class Object