com.sleepycat.bind.serial
public abstract class TupleSerialKeyCreator extends TupleBase implements SecondaryKeyCreator
Field Summary | |
---|---|
protected SerialBinding | dataBinding |
Constructor Summary | |
---|---|
TupleSerialKeyCreator(ClassCatalog classCatalog, Class dataClass)
Creates a tuple-serial key creator.
| |
TupleSerialKeyCreator(SerialBinding dataBinding)
Creates a tuple-serial key creator.
|
Method Summary | |
---|---|
boolean | createSecondaryKey(SecondaryDatabase db, DatabaseEntry primaryKeyEntry, DatabaseEntry dataEntry, DatabaseEntry indexKeyEntry) |
abstract boolean | createSecondaryKey(TupleInput primaryKeyInput, Object dataInput, TupleOutput indexKeyOutput)
Creates the index key entry from primary key tuple entry and
deserialized data entry.
|
boolean | nullifyForeignKey(SecondaryDatabase db, DatabaseEntry dataEntry) |
Object | nullifyForeignKey(Object data)
Clears the index key in the deserialized data entry.
|
Parameters: classCatalog is the catalog to hold shared class information and for a database should be a StoredClassCatalog. dataClass is the data base class.
Parameters: dataBinding is the data binding.
Parameters: primaryKeyInput is the TupleInput for the primary key entry, or null if no primary key entry is used to construct the index key. dataInput is the deserialized data entry, or null if no data entry is used to construct the index key. indexKeyOutput is the destination index key tuple. For index keys which are optionally present, no tuple entry should be output to indicate that the key is not present or null.
Returns: true if a key was created, or false to indicate that the key is not present.
On entry the data parameter contains the index key to be cleared. It should be changed by this method such that TupleSerialKeyCreator will return false. Other fields in the data object should remain unchanged.
Parameters: data is the source and destination deserialized data entry.
Returns: the destination data object, or null to indicate that the key is not present and no change is necessary. The data returned may be the same object passed as the data parameter or a newly created object.