Class BinaryOrderableWrapper

java.lang.Object
org.apache.derby.impl.store.access.conglomerate.BinaryOrderableWrapper
All Implemented Interfaces:
Externalizable, Serializable, Formatable, Storable, TypedFormat

class BinaryOrderableWrapper extends Object implements Storable
The BinaryOrderableWrapper is a wrapper class which intercepts the readExternal() callback made by raw store during a fetch, and does a comparison instead.
  • Field Details

  • Constructor Details

    • BinaryOrderableWrapper

      BinaryOrderableWrapper()
  • Method Details

    • init

      protected void init(BinaryOrderable ref_object, BinaryOrderable other_object)
      Short one line description of routine.

      Longer descrption of routine.

      Parameters:
      ref_object - The object that this object is wrapping (ie. being read from disk)
      other_object - The object to compare ref_object to.
    • getCmpResult

      public int getCmpResult()
      Short one line description of routine.

      Longer descrption of routine.

      Returns:
      The identifier to be used to open the conglomerate later.
    • getTypeFormatId

      public int getTypeFormatId()
      Description copied from interface: TypedFormat
      Get a universally unique identifier for the type of this object.
      Specified by:
      getTypeFormatId in interface TypedFormat
      Returns:
      The identifier. (A UUID stuffed in an array of 16 bytes).
    • isNull

      public boolean isNull()
      Return whether the value is null or not. The containerid being zero is what determines nullness; subclasses are not expected to override this method.
      Specified by:
      isNull in interface Storable
      Returns:
      true if the value is null and false otherwise.
      See Also:
    • restoreToNull

      public void restoreToNull()
      Restore the in-memory representation to the null value. The containerid being zero is what determines nullness; subclasses are not expected to override this method.
      Specified by:
      restoreToNull in interface Storable
      See Also:
    • readExternal

      public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
      Restore the in-memory representation from the stream.
      Specified by:
      readExternal in interface Externalizable
      Throws:
      ClassNotFoundException - Thrown if the stored representation is serialized and a class named in the stream could not be found.
      IOException - thrown by readObject()
      See Also:
    • readExternalFromArray

      public void readExternalFromArray(ArrayInputStream in) throws IOException, ClassNotFoundException
      Throws:
      IOException
      ClassNotFoundException
    • writeExternal

      public void writeExternal(ObjectOutput out) throws IOException
      Store the stored representation of the column value in the stream.

      A BinaryOrderableWrapper is never used to store data out, only to read data from disk and compare it to another byte stream.

      Specified by:
      writeExternal in interface Externalizable
      Parameters:
      out - Stream to write the object to.
      Throws:
      IOException - thrown by writeObject()