Berkeley DB
version 4.3.29

com.sleepycat.bind.serial
Class TupleSerialBinding

java.lang.Object
  extended bycom.sleepycat.bind.serial.TupleSerialBinding
All Implemented Interfaces:
EntityBinding
Direct Known Subclasses:
TupleSerialMarshalledBinding

public abstract class TupleSerialBinding
extends Object
implements EntityBinding

An abstract EntityBinding that treats an entity's key entry as a tuple and its data entry as a serialized object.

This class takes care of serializing and deserializing the data entry, and converting the key entry to/from TupleInput and TupleOutput objects. Its three abstract methods must be implemented by a concrete subclass to convert these objects to/from an entity object.


Constructor Summary
TupleSerialBinding(ClassCatalog classCatalog, Class baseClass)
          Creates a tuple-serial entity binding.
TupleSerialBinding(SerialBinding dataBinding)
          Creates a tuple-serial entity binding.
 
Method Summary
 Object entryToObject(DatabaseEntry key, DatabaseEntry data)
          Converts key and data entry buffers into an entity Object.
abstract  Object entryToObject(TupleInput keyInput, Object dataInput)
          Constructs an entity object from TupleInput key entry and deserialized data entry objects.
abstract  Object objectToData(Object object)
          Extracts a data object from an entity object.
 void objectToData(Object object, DatabaseEntry data)
          Extracts the data entry from an entity Object.
 void objectToKey(Object object, DatabaseEntry key)
          Extracts the key entry from an entity Object.
abstract  void objectToKey(Object object, TupleOutput keyOutput)
          Extracts a key tuple from an entity object.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TupleSerialBinding

public TupleSerialBinding(ClassCatalog classCatalog,
                          Class baseClass)
Creates a tuple-serial entity binding.

Parameters:
classCatalog - is the catalog to hold shared class information and for a database should be a StoredClassCatalog.
baseClass - is the base class.

TupleSerialBinding

public TupleSerialBinding(SerialBinding dataBinding)
Creates a tuple-serial entity binding.

Parameters:
dataBinding - is the data binding.
Method Detail

entryToObject

public Object entryToObject(DatabaseEntry key,
                            DatabaseEntry data)
Description copied from interface: EntityBinding
Converts key and data entry buffers into an entity Object.

Specified by:
entryToObject in interface EntityBinding
Parameters:
key - is the source key entry.
data - is the source data entry.
Returns:
the resulting Object.

objectToKey

public void objectToKey(Object object,
                        DatabaseEntry key)
Description copied from interface: EntityBinding
Extracts the key entry from an entity Object.

Specified by:
objectToKey in interface EntityBinding
Parameters:
object - is the source Object.
key - is the destination entry buffer.

objectToData

public void objectToData(Object object,
                         DatabaseEntry data)
Description copied from interface: EntityBinding
Extracts the data entry from an entity Object.

Specified by:
objectToData in interface EntityBinding
Parameters:
object - is the source Object.
data - is the destination entry buffer.

entryToObject

public abstract Object entryToObject(TupleInput keyInput,
                                     Object dataInput)
Constructs an entity object from TupleInput key entry and deserialized data entry objects.

Parameters:
keyInput - is the TupleInput key entry object.
dataInput - is the deserialized data entry object.
Returns:
the entity object constructed from the key and data.

objectToKey

public abstract void objectToKey(Object object,
                                 TupleOutput keyOutput)
Extracts a key tuple from an entity object.

Parameters:
object - is the entity object.
keyOutput - is the TupleOutput to which the key should be written.

objectToData

public abstract Object objectToData(Object object)
Extracts a data object from an entity object.

Parameters:
object - is the entity object.
Returns:
the deserialized data object.

Berkeley DB
version 4.3.29

Copyright (c) 1996-2004 Sleepycat Software, Inc. - All rights reserved.