## Uses of Interface
jdbm.helper.Serializer

Packages that use Serializer
Package | Description
--- | ---
jdbm | Simplified public API corresponding to GDBM APIs.
jdbm.btree | B+Tree (scalable persistent tree) data structure implementation.
jdbm.helper | Miscelaneous utility classes and interfaces.
jdbm.recman | Core classes for managing persistent objects and processing transactions.

### Uses of Serializer in jdbm

Methods in jdbm with parameters of type Serializer
Modifier and Type | Method and Description
--- | ---
`Object` | RecordManager.`fetch(long recid, Serializer serializer)` Fetches a record using a custom serializer.
`long` | RecordManager.`insert(Object obj, Serializer serializer)` Inserts a new record using a custom serializer.
`void` | RecordManager.`update(long recid, Object obj, Serializer serializer)` Updates a record using a custom serializer.

### Uses of Serializer in jdbm.btree

Classes in jdbm.btree that implement Serializer
Modifier and Type | Class and Description
--- | ---
`class` | `BPage<K,V>` Page of a Btree.

Fields in jdbm.btree declared as Serializer
Modifier and Type | Field and Description
--- | ---
`protected Serializer` | BTree.`keySerializer` Serializer used to serialize index keys (optional)
`protected Serializer` | BTree.`valueSerializer` Serializer used to serialize index values (optional)

Methods in jdbm.btree with parameters of type Serializer
Modifier and Type | Method and Description
--- | ---
`void` | BTree.`setValueSerializer(Serializer valueSerializer)`

Constructors in jdbm.btree with parameters of type Serializer
Constructor and Description
`BTree(RecordManager recman, Comparator<K> comparator, Serializer keySerializer, Serializer valueSerializer)` Create a new persistent BTree, with 16 entries per node.
`BTree(RecordManager recman, Comparator<K> comparator, Serializer keySerializer, Serializer valueSerializer, int pageSize)` Create a new persistent BTree with the given number of entries per node.

### Uses of Serializer in jdbm.helper

Classes in jdbm.helper that implement Serializer
Modifier and Type | Class and Description
--- | ---
`class` | `ByteArraySerializer` Serializer for byte arrays -- simple returns the byte array itself.
`class` | `DefaultSerializer` Default java serializer.
`class` | `IntegerSerializer` Optimized serializer for integers.
`class` | `LongSerializer` Optimized serializer for long integers.

Methods in jdbm.helper with parameters of type Serializer
Modifier and Type | Method and Description
--- | ---
`V` | LRUCache.`get(K key, long version, Serializer serializer, boolean neverReplace)` Finds and returns the entry corresponding to the given key and version.
`void` | LRUCache.`put(K key, V value, long newVersion, Serializer serializer, boolean neverReplace)` Updates the entry identified with the key with the new value.
`V` | EntryIO.`read(K key, Serializer serializer)`
`void` | EntryIO.`write(K key, V value, Serializer serializer)`

### Uses of Serializer in jdbm.recman

Methods in jdbm.recman with parameters of type Serializer
Modifier and Type | Method and Description
--- | ---
`Object` | SnapshotRecordManager.`fetch(long recid, Serializer serializer)` Fetches a record using a custom serializer.
`Object` | CacheRecordManager.`fetch(long recid, Serializer serializer)` Fetches a record using a custom serializer.
`Object` | BaseRecordManager.`fetch(long recid, Serializer serializer)` Fetches a record using a custom serializer.
`long` | SnapshotRecordManager.`insert(Object obj, Serializer serializer)` Inserts a new record using a custom serializer.
`long` | CacheRecordManager.`insert(Object obj, Serializer serializer)` Inserts a new record using a custom serializer.
`long` | BaseRecordManager.`insert(Object obj, Serializer serializer)` Inserts a new record using a custom serializer.
`void` | SnapshotRecordManager.`update(long recid, Object obj, Serializer serializer)` Updates a record using a custom serializer.
`void` | CacheRecordManager.`update(long recid, Object obj, Serializer serializer)` Updates a record using a custom serializer.
`void` | BaseRecordManager.`update(long recid, Object obj, Serializer serializer)` Updates a record using a custom serializer.