org.h2.mvstore

## Class MVMap.BasicBuilder<M extends MVMap<K,V>,K,V>

- java.lang.Object
- - org.h2.mvstore.MVMap.BasicBuilder<M,K,V>

Type Parameters:
  `K` - the key type
  `V` - the value type

All Implemented Interfaces:
  MVMap.MapBuilder<M,K,V>

Direct Known Subclasses:
  MVMap.Builder, MVRTreeMap.Builder

Enclosing class:
  MVMap<K,V>

    public abstract static class MVMap.BasicBuilder<M extends MVMap<K,V>,K,V>
    extends java.lang.Object
    implements MVMap.MapBuilder<M,K,V>

A builder for this class.

### Constructor Summary

Constructors
`protected` `MVMap.BasicBuilder()` Create a new builder with the default key and value data types.

### Method Summary

Methods
`protected abstract M` `create(java.util.Map<java.lang.String,java.lang.Object> config)` Create map from config.
`M` `create(MVStore store, java.util.Map<java.lang.String,java.lang.Object> config)` Create a new map of the given type.
`DataType` `getKeyType()`
`DataType` `getValueType()`
`MVMap.BasicBuilder<M,K,V>` `keyType(DataType keyType)` Set the key data type.
`void` `setKeyType(DataType keyType)`
`void` `setValueType(DataType valueType)`
`MVMap.BasicBuilder<M,K,V>` `valueType(DataType valueType)` Set the value data type.

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

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

### Constructor Detail

#### MVMap.BasicBuilder

    protected MVMap.BasicBuilder()

Create a new builder with the default key and value data types.

### Method Detail

#### getKeyType

    public DataType getKeyType()

Specified by:
  `getKeyType` in interface `MVMap.MapBuilder<M extends MVMap<K,V>,K,V>`

#### getValueType

    public DataType getValueType()

Specified by:
  `getValueType` in interface `MVMap.MapBuilder<M extends MVMap<K,V>,K,V>`

#### setKeyType

    public void setKeyType(DataType keyType)

Specified by:
  `setKeyType` in interface `MVMap.MapBuilder<M extends MVMap<K,V>,K,V>`

#### setValueType

    public void setValueType(DataType valueType)

Specified by:
  `setValueType` in interface `MVMap.MapBuilder<M extends MVMap<K,V>,K,V>`

#### keyType

    public MVMap.BasicBuilder<M,K,V> keyType(DataType keyType)

Set the key data type.

Parameters:
  `keyType` - the key type
Returns:
  this

#### valueType

    public MVMap.BasicBuilder<M,K,V> valueType(DataType valueType)

Set the value data type.

Parameters:
  `valueType` - the value type
Returns:
  this

#### create

    public M create(MVStore store,
           java.util.Map<java.lang.String,java.lang.Object> config)

Description copied from interface: `MVMap.MapBuilder`
Create a new map of the given type.

Specified by:
  `create` in interface `MVMap.MapBuilder<M extends MVMap<K,V>,K,V>`
Parameters:
  `store` - which will own this map
  `config` - configuration
Returns:
  the map

#### create

    protected abstract M create(java.util.Map<java.lang.String,java.lang.Object> config)

Create map from config.

Parameters:
  `config` - config map
Returns:
  new map