TupleSerialFactory (Oracle - Berkeley DB Java API)
Date: 2017-04-13

com.sleepycat.collections

## Class TupleSerialFactory

- java.lang.Object
- - com.sleepycat.collections.TupleSerialFactory

-     public class TupleSerialFactory
      extends java.lang.Object

  Creates stored collections having tuple keys and serialized entity values. The entity classes must be Serializable and must implement the MarshalledTupleKeyEntity interfaces. The key classes must either implement the MarshalledTupleEntry interface or be one of the Java primitive type classes. Underlying binding objects are created automatically.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `TupleSerialFactory(ClassCatalog catalog)` Creates a tuple-serial factory for given environment and class catalog.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `ClassCatalog` | `getCatalog()` Returns the class catalog associated with this factory.
    `<V extends MarshalledTupleKeyEntity> TupleSerialMarshalledBinding<V>` | `getEntityBinding(java.lang.Class<V> baseClass)`
    `<V extends MarshalledTupleKeyEntity> TupleSerialMarshalledKeyCreator<V>` | `getKeyCreator(java.lang.Class<V> valueBaseClass, java.lang.String keyName)` Creates a `SecondaryKeyCreator` object for use in configuring a `SecondaryDatabase`.
    `<K,V extends MarshalledTupleKeyEntity> StoredMap<K,V>` | `newMap(Database db, java.lang.Class<K> keyClass, java.lang.Class<V> valueBaseClass, boolean writeAllowed)` Creates a map from a previously opened Database object.
    `<K,V extends MarshalledTupleKeyEntity> StoredSortedMap<K,V>` | `newSortedMap(Database db, java.lang.Class<K> keyClass, java.lang.Class<V> valueBaseClass, boolean writeAllowed)` Creates a sorted map from a previously opened Database object.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### TupleSerialFactory

          public TupleSerialFactory(ClassCatalog catalog)

      Creates a tuple-serial factory for given environment and class catalog.
      Parameters:
        `catalog` - the ClassCatalog.

  - ### Method Detail

    - #### getCatalog

          public final ClassCatalog getCatalog()

      Returns the class catalog associated with this factory.
      Returns:
        the catalog.

    - #### newMap

          public <K,V extends MarshalledTupleKeyEntity> StoredMap<K,V> newMap(Database db,
                                                                              java.lang.Class<K> keyClass,
                                                                              java.lang.Class<V> valueBaseClass,
                                                                              boolean writeAllowed)

      Creates a map from a previously opened Database object.
      Type Parameters:
        `K` - the key class.
        `V` - the value base class.
      Parameters:
        `db` - the previously opened Database object.
        `keyClass` - is the class used for map keys. It must implement the `MarshalledTupleEntry` interface or be one of the Java primitive type classes.
        `valueBaseClass` - the base class of the entity values for this store. It must implement the `MarshalledTupleKeyEntity` interface.
        `writeAllowed` - is true to create a read-write collection or false to create a read-only collection.
      Returns:
        the map.

    - #### newSortedMap

          public <K,V extends MarshalledTupleKeyEntity> StoredSortedMap<K,V> newSortedMap(Database db,
                                                                                          java.lang.Class<K> keyClass,
                                                                                          java.lang.Class<V> valueBaseClass,
                                                                                          boolean writeAllowed)

      Creates a sorted map from a previously opened Database object.
      Type Parameters:
        `K` - the key class.
        `V` - the value base class.
      Parameters:
        `db` - the previously opened Database object.
        `keyClass` - is the class used for map keys. It must implement the `MarshalledTupleEntry` interface or be one of the Java primitive type classes.
        `valueBaseClass` - the base class of the entity values for this store. It must implement the `MarshalledTupleKeyEntity` interface.
        `writeAllowed` - is true to create a read-write collection or false to create a read-only collection.
      Returns:
        the sorted map.

    - #### getKeyCreator

          public <V extends MarshalledTupleKeyEntity> TupleSerialMarshalledKeyCreator<V> getKeyCreator(java.lang.Class<V> valueBaseClass,
                                                                                                       java.lang.String keyName)

      Creates a `SecondaryKeyCreator` object for use in configuring a `SecondaryDatabase`. The returned object implements the `SecondaryKeyCreator` interface.
      Type Parameters:
        `V` - the value base class.
      Parameters:
        `valueBaseClass` - the base class of the entity values for this store. It must implement the `MarshalledTupleKeyEntity` interface.
        `keyName` - is the key name passed to the `MarshalledTupleKeyEntity.marshalSecondaryKey(java.lang.String, com.sleepycat.bind.tuple.TupleOutput)` method to identify the secondary key.
      Returns:
        the key creator.

    - #### getEntityBinding

          public <V extends MarshalledTupleKeyEntity> TupleSerialMarshalledBinding<V> getEntityBinding(java.lang.Class<V> baseClass)

Copyright (c) 1996, 2017 Oracle and/or its affiliates. All rights reserved.