Class PackedLongBinding

All Implemented Interfaces:
EntryBinding<Long>

public class PackedLongBinding extends TupleBinding<Long>
A concrete TupleBinding for an unsorted Long primitive wrapper or an unsorted long primitive, that stores the value in the smallest number of bytes possible.

There are two ways to use this class:

  1. When using the com.sleepycat.db package directly, the static methods in this class can be used to convert between primitive values and DatabaseEntry objects.
  2. When using the com.sleepycat.collections package, an instance of this class can be used with any stored collection.
See Also:
  • Constructor Details

    • PackedLongBinding

      public PackedLongBinding()
  • Method Details

    • entryToObject

      public Long entryToObject(TupleInput input)
      Description copied from class: TupleBinding
      Constructs a key or data object from a TupleInput entry.
      Specified by:
      entryToObject in class TupleBinding<Long>
      Parameters:
      input - is the tuple key or data entry.
      Returns:
      the key or data object constructed from the entry.
    • objectToEntry

      public void objectToEntry(Long object, TupleOutput output)
      Description copied from class: TupleBinding
      Converts a key or data object to a tuple entry.
      Specified by:
      objectToEntry in class TupleBinding<Long>
      Parameters:
      object - is the key or data object.
      output - is the tuple entry to which the key or data should be written.
    • getTupleOutput

      protected TupleOutput getTupleOutput(Long object)
      Description copied from class: TupleBase
      Returns an empty TupleOutput instance that will be used by the tuple binding or key creator.

      The default implementation of this method creates a new TupleOutput with an initial buffer size that can be changed using the TupleBase.setTupleBufferSize(int) method.

      This method may be overridden to return a TupleOutput instance. For example, an instance per thread could be created and returned by this method. If a TupleOutput instance is reused, be sure to call its FastOutputStream.reset() method before each use.

      Overrides:
      getTupleOutput in class TupleBase<Long>
      Parameters:
      object - is the object to be written to the tuple output, and may be used by subclasses to determine the size of the output buffer.
      Returns:
      an empty TupleOutput instance.
      See Also:
    • entryToLong

      public static Long entryToLong(DatabaseEntry entry)
      Converts an entry buffer into a simple Long value.
      Parameters:
      entry - is the source entry buffer.
      Returns:
      the resulting value.
    • longToEntry

      public static void longToEntry(long val, DatabaseEntry entry)
      Converts a simple Long value into an entry buffer, using PackedLong format.
      Parameters:
      val - is the source value.
      entry - is the destination entry buffer.