Package oracle.kv

Class Value

java.lang.Object
oracle.kv.Value
All Implemented Interfaces:
oracle.kv.impl.util.FastExternalizable

public class Value extends Object implements oracle.kv.impl.util.FastExternalizable
The Value in a Key/Value store.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static enum 
    Identifies the format of a value.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final Value
    An instance that represents an empty value for key-only records.
  • Method Summary

    Modifier and Type
    Method
    Description
    static Value
    createValue(byte[] val)
    Creates a Value from a value byte array.
    boolean
    equals(Object other)
     
    static Value
    fromByteArray(byte[] bytes)
    Deserializes the given bytes that were returned earlier by toByteArray() and returns the resulting Value.
    Returns the value's format.
    byte[]
    Returns the value byte array.
    int
     
    byte[]
    Returns this Value as a serialized byte array, such that fromByteArray(byte[]) may be used to reconstitute the Value.
     

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface oracle.kv.impl.util.FastExternalizable

    deserializedForm
  • Field Details

    • EMPTY_VALUE

      public static final Value EMPTY_VALUE
      An instance that represents an empty value for key-only records.
  • Method Details

    • toByteArray

      public byte[] toByteArray()
      Returns this Value as a serialized byte array, such that fromByteArray(byte[]) may be used to reconstitute the Value.

      The intended use case for the toByteArray() and fromByteArray(byte[]) methods is to serialize values of various formats in a uniform manner, for storage outside of NoSQL DB or for sending across a network.

      Values returned by calls to this method can be used with current and newer releases, but are not guaranteed to be compatible with earlier releases.

      WARNING: The array returned by this method should be considered to be opaque by the caller. This array is not necessarily equal to the array returned by getValue(); in particular, the returned array may contain an extra byte identifying the format. The only valid use of this array is to pass it to fromByteArray(byte[]) at a later time in order to reconstruct the Value object. Normally getValue() should be used instead of this method.

      See Also:
    • fromByteArray

      public static Value fromByteArray(byte[] bytes)
      Deserializes the given bytes that were returned earlier by toByteArray() and returns the resulting Value.

      The intended use case for the toByteArray() and fromByteArray(byte[]) methods is to serialize values of various formats in a uniform manner, for storage outside of NoSQL DB or for sending across a network.

      Values created with either the current or earlier releases can be used with this method, but values created by later releases are not guaranteed to be compatible.

      WARNING: Misuse of this method could result in data corruption if the returned object is added to the store. The array passed to this method must have been previously created by calling fromByteArray(byte[]). To create a Value object of format Value.Format.NONE, call createValue(byte[]) instead.

      See Also:
    • createValue

      public static Value createValue(byte[] val)
      Creates a Value from a value byte array. The format of the returned value is Value.Format.NONE.
    • getValue

      public byte[] getValue()
      Returns the value byte array.
    • getFormat

      public Value.Format getFormat()
      Returns the value's format.
      Since:
      2.0
    • equals

      public boolean equals(Object other)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object