Berkeley DB version 4.2.52

## com.sleepycat.bdb.bind.serial
Class TupleSerialMarshalledKeyExtractor

    java.lang.Object
      |
      +--com.sleepycat.bdb.bind.serial.TupleSerialKeyExtractor
            |
            +--com.sleepycat.bdb.bind.serial.TupleSerialMarshalledKeyExtractor

All Implemented Interfaces:
  KeyExtractor

public class TupleSerialMarshalledKeyExtractor
extends TupleSerialKeyExtractor

A concrete key extractor that works in conjunction with a `TupleSerialMarshalledBinding`. This key extractor works by calling the methods of the `MarshalledTupleKeyEntity` interface to extract and clear the index key data.

Constructor Summary
`TupleSerialMarshalledKeyExtractor(TupleSerialMarshalledBinding binding, TupleFormat indexKeyFormat, String keyName, boolean usePrimaryKey, boolean useValue)` Creates a tuple-serial marshalled key extractor.

Method Summary
`void` `clearIndexKey(Object valueInput)` Clears the index key in the deserialized value data.
`void` `extractIndexKey(TupleInput primaryKeyInput, Object valueInput, TupleOutput indexKeyOutput)` Extracts the index key data from primary key tuple data and deserialized value data.

Methods inherited from class com.sleepycat.bdb.bind.serial.TupleSerialKeyExtractor
`clearIndexKey, extractIndexKey, getIndexKeyFormat, getPrimaryKeyFormat, getValueFormat`

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### TupleSerialMarshalledKeyExtractor

    public TupleSerialMarshalledKeyExtractor(TupleSerialMarshalledBinding binding,
                                             TupleFormat indexKeyFormat,
                                             String keyName,
                                             boolean usePrimaryKey,
                                             boolean useValue)

  Creates a tuple-serial marshalled key extractor.

Parameters:
  `binding` - is the binding used for the tuple-serial entity.
  `indexKeyFormat` - is the index key format.
  `keyName` - is the key name passed to the `MarshalledTupleKeyEntity.marshalIndexKey(java.lang.String, com.sleepycat.bdb.bind.tuple.TupleOutput)` method to identify the index key.
  `usePrimaryKey` - is true if the primary key data is used to construct the index key.
  `useValue` - is true if the value data is used to construct the index key.

Method Detail

### extractIndexKey

    public void extractIndexKey(TupleInput primaryKeyInput,
                                Object valueInput,
                                TupleOutput indexKeyOutput)
                         throws IOException

  Description copied from class: `TupleSerialKeyExtractor`
  Extracts the index key data from primary key tuple data and deserialized value data.

  Specified by:
    `extractIndexKey` in class `TupleSerialKeyExtractor`
  Parameters:
    `primaryKeyInput` - is the `TupleInput` for the primary key data, or null if no primary key data is used to construct the index key.
    `valueInput` - is the deserialized value data, or null if no value data is used to construct the index key.
    `indexKeyOutput` - is the destination index key tuple. For index keys which are optionally present, no tuple data should be output to indicate that the key is not present or null.
    `IOException`

### clearIndexKey

    public void clearIndexKey(Object valueInput)
                       throws IOException

  Description copied from class: `TupleSerialKeyExtractor`
  Clears the index key in the deserialized value data.

  Specified by:
    `clearIndexKey` in class `TupleSerialKeyExtractor`
  Parameters:
    `valueInput` - is the source and destination deserialized value data. On entry this contains the index key to be cleared. It should be changed by this method such that `TupleSerialKeyExtractor.extractIndexKey(com.sleepycat.bdb.bind.DataBuffer, com.sleepycat.bdb.bind.DataBuffer, com.sleepycat.bdb.bind.DataBuffer)` will extract a null key (not output any tuple data). Other data in the value object should remain unchanged.
    `IOException`

Berkeley DB version 4.2.52

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