|
Berkeley DB version 5.2.28 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.sleepycat.bind.tuple.TupleBase<E> com.sleepycat.bind.tuple.TupleTupleKeyCreator<E> com.sleepycat.bind.tuple.TupleTupleMarshalledKeyCreator<E>
public class TupleTupleMarshalledKeyCreator<E extends MarshalledTupleEntry & MarshalledTupleKeyEntity>
A concrete key creator that works in conjunction with a TupleTupleMarshalledBinding
. This key creator works by calling the
methods of the MarshalledTupleKeyEntity
interface to create and
clear the index key.
Note that a marshalled tuple key creator is somewhat less efficient than a non-marshalled key tuple creator because more conversions are needed. A marshalled key creator must convert the entry to an object in order to create the key, while an unmarshalled key creator does not.
Constructor Summary | |
---|---|
TupleTupleMarshalledKeyCreator(TupleTupleMarshalledBinding<E> binding,
String keyName)
Creates a tuple-tuple marshalled key creator. |
Method Summary | |
---|---|
boolean |
createSecondaryKey(TupleInput primaryKeyInput,
TupleInput dataInput,
TupleOutput indexKeyOutput)
Creates the index key from primary key tuple and data tuple. |
boolean |
nullifyForeignKey(TupleInput dataInput,
TupleOutput dataOutput)
Clears the index key in the tuple data entry. |
Methods inherited from class com.sleepycat.bind.tuple.TupleTupleKeyCreator |
---|
createSecondaryKey, nullifyForeignKey |
Methods inherited from class com.sleepycat.bind.tuple.TupleBase |
---|
entryToInput, getTupleBufferSize, getTupleOutput, inputToEntry, newOutput, newOutput, outputToEntry, setTupleBufferSize |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public TupleTupleMarshalledKeyCreator(TupleTupleMarshalledBinding<E> binding, String keyName)
binding
- is the binding used for the tuple-tuple entity.keyName
- is the key name passed to the MarshalledTupleKeyEntity.marshalSecondaryKey(java.lang.String, com.sleepycat.bind.tuple.TupleOutput)
method to identify the
index key.Method Detail |
---|
public boolean createSecondaryKey(TupleInput primaryKeyInput, TupleInput dataInput, TupleOutput indexKeyOutput)
TupleTupleKeyCreator
createSecondaryKey
in class TupleTupleKeyCreator<E extends MarshalledTupleEntry & MarshalledTupleKeyEntity>
primaryKeyInput
- is the TupleInput
for the primary key
entry.dataInput
- is the TupleInput
for the data entry.indexKeyOutput
- is the destination index key tuple.
public boolean nullifyForeignKey(TupleInput dataInput, TupleOutput dataOutput)
TupleTupleKeyCreator
The secondary key should be output or removed by this method such
that TupleTupleKeyCreator.createSecondaryKey(com.sleepycat.db.SecondaryDatabase, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry, com.sleepycat.db.DatabaseEntry)
will return false. Other fields in the
data object should remain unchanged.
nullifyForeignKey
in class TupleTupleKeyCreator<E extends MarshalledTupleEntry & MarshalledTupleKeyEntity>
dataInput
- is the TupleInput
for the data entry.dataOutput
- is the destination TupleOutput
.
|
Berkeley DB version 5.2.28 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |