Show / Hide Table of Contents

Class DefaultKeyValueStore

The default built-in IKeyValueStore implementation. This stores data in the file system or in memory.

DefaultStore and DefaultKeyValueStore-backed TrieStateStore can be instantiated from a URI with default+file: scheme using LoadStore(Uri), e.g.:

  • default+file:///var/data/planet/
  • default+file:///c:/Users/john/AppData/Local/planet/

The following query string parameters are supported:

journaltrue (default) or false. Corresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s journal parameter.
index-cacheCorresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s indexCacheSize parameter. 50000 by default.
block-cacheCorresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s blockCacheSize parameter. 512 by default.
tx-cacheCorresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s txCacheSize parameter. 1024 by default.
flushtrue (default) or false. Corresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s flush parameter.
readonlytrue or false (default). Corresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s readOnly parameter.
states-dirCorresponds to DefaultKeyValueStore(String)'s path parameter. It is relative to the URI path, and defaults to states.
Inheritance
Object
DefaultKeyValueStore
Implements
IKeyValueStore
IDisposable
Inherited Members
Object.Equals(Object)
Object.Equals(Object, Object)
Object.GetHashCode()
System.Object.GetType()
Object.MemberwiseClone()
Object.ReferenceEquals(Object, Object)
System.Object.ToString()
Namespace: Libplanet.Store.Trie
Assembly: Libplanet.Store.dll
Syntax
public class DefaultKeyValueStore : IKeyValueStore, IDisposable

Constructors

| Improve this Doc View Source

DefaultKeyValueStore(String)

Creates a new DefaultKeyValueStore.

Declaration
public DefaultKeyValueStore(string path)
Parameters
Type Name Description
String path

The path of the directory where the storage files will be saved. If the path is null, the database is created in memory.

Methods

| Improve this Doc View Source

Delete(in KeyBytes)

Deletes the given key. If the key does not exist, nothing happens.

Declaration
public void Delete(in KeyBytes key)
Parameters
Type Name Description
KeyBytes key

A key to delete.

| Improve this Doc View Source

Delete(IEnumerable<KeyBytes>)

Delete multiple keys at once.

Declaration
public void Delete(IEnumerable<KeyBytes> keys)
Parameters
Type Name Description
IEnumerable<KeyBytes> keys

Keys to delete. The order of keys does not matter. Non-existent keys are ignored.

| Improve this Doc View Source

Dispose()

The default built-in IKeyValueStore implementation. This stores data in the file system or in memory.

DefaultStore and DefaultKeyValueStore-backed TrieStateStore can be instantiated from a URI with default+file: scheme using LoadStore(Uri), e.g.:

  • default+file:///var/data/planet/
  • default+file:///c:/Users/john/AppData/Local/planet/

The following query string parameters are supported:

journaltrue (default) or false. Corresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s journal parameter.
index-cacheCorresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s indexCacheSize parameter. 50000 by default.
block-cacheCorresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s blockCacheSize parameter. 512 by default.
tx-cacheCorresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s txCacheSize parameter. 1024 by default.
flushtrue (default) or false. Corresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s flush parameter.
readonlytrue or false (default). Corresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s readOnly parameter.
states-dirCorresponds to DefaultKeyValueStore(String)'s path parameter. It is relative to the URI path, and defaults to states.
Declaration
public void Dispose()
| Improve this Doc View Source

Exists(in KeyBytes)

Checks whether the given key exists in the store.

Declaration
public bool Exists(in KeyBytes key)
Parameters
Type Name Description
KeyBytes key

A key to check.

Returns
Type Description
System.Boolean

true if the key exists; otherwise, false.

| Improve this Doc View Source

Get(in KeyBytes)

Gets the value associated with the specified key.

Declaration
public byte[] Get(in KeyBytes key)
Parameters
Type Name Description
KeyBytes key

The key whose value to get.

Returns
Type Description
System.Byte[]

The value associated with the specified key.

Exceptions
Type Condition
KeyNotFoundException

Thrown when the key is not found.

| Improve this Doc View Source

ListKeys()

Lists all keys that have been stored in the storage.

Declaration
public IEnumerable<KeyBytes> ListKeys()
Returns
Type Description
IEnumerable<KeyBytes>

All keys in an arbitrary order. The order might be vary for each call.

| Improve this Doc View Source

Set(in KeyBytes, Byte[])

Sets the value to the key. If the key already exists, the value is overwritten.

Declaration
public void Set(in KeyBytes key, byte[] value)
Parameters
Type Name Description
KeyBytes key

The key of the value to set.

System.Byte[] value

The value to set.

| Improve this Doc View Source

Set(IDictionary<KeyBytes, Byte[]>)

The default built-in IKeyValueStore implementation. This stores data in the file system or in memory.

DefaultStore and DefaultKeyValueStore-backed TrieStateStore can be instantiated from a URI with default+file: scheme using LoadStore(Uri), e.g.:

  • default+file:///var/data/planet/
  • default+file:///c:/Users/john/AppData/Local/planet/

The following query string parameters are supported:

journaltrue (default) or false. Corresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s journal parameter.
index-cacheCorresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s indexCacheSize parameter. 50000 by default.
block-cacheCorresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s blockCacheSize parameter. 512 by default.
tx-cacheCorresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s txCacheSize parameter. 1024 by default.
flushtrue (default) or false. Corresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s flush parameter.
readonlytrue or false (default). Corresponds to DefaultStore(String, Boolean, Int32, Int32, Int32, Boolean, Boolean)'s readOnly parameter.
states-dirCorresponds to DefaultKeyValueStore(String)'s path parameter. It is relative to the URI path, and defaults to states.
Declaration
public void Set(IDictionary<KeyBytes, byte[]> values)
Parameters
Type Name Description
System.Collections.Generic.IDictionary<KeyBytes, System.Byte[]> values

Implements

IKeyValueStore
System.IDisposable
  • Improve this Doc
  • View Source
In This Article
Back to top Copyright © 2018–2023 Planetarium