Class MemoryKeyValueStore
Volatile in-memory key-value store.
It is useful for storing temporal small chains, e.g., fixtures for unit tests of game logic.
MemoryStore and MemoryKeyValueStore-backed
TrieStateStore can be instantiated from a URI with memory:
scheme
using LoadStore(Uri), e.g.:
memory:
memory://?secure=true
(trie keys are hashed)
Namespace: Libplanet.Store.Trie
Assembly: Libplanet.dll
Syntax
public sealed class MemoryKeyValueStore : object, IKeyValueStore, IDisposable
Methods
| Improve this Doc View SourceDelete(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. |
Get(IEnumerable<KeyBytes>)
Gets multiple values associated with the specified keys at once.
Declaration
public IReadOnlyDictionary<KeyBytes, byte[]> Get(IEnumerable<KeyBytes> keys)
Parameters
Type | Name | Description |
---|---|---|
IEnumerable<KeyBytes> | keys | Keys whose values to get. The order of keys does not matter. Duplicate keys after their first occurrence are ignored. |
Returns
Type | Description |
---|---|
IReadOnlyDictionary<KeyBytes, Byte[]> | Values associated the specified |
Explicit Interface Implementations
| Improve this Doc View SourceIKeyValueStore.Delete(in KeyBytes)
Deletes the given key. If the key does not exist, nothing happens.
Declaration
void IKeyValueStore.Delete(in KeyBytes key)
Parameters
Type | Name | Description |
---|---|---|
KeyBytes | key | A key to delete. |
IKeyValueStore.Exists(in KeyBytes)
Checks whether the given key exists in the store.
Declaration
bool IKeyValueStore.Exists(in KeyBytes key)
Parameters
Type | Name | Description |
---|---|---|
KeyBytes | key | A key to check. |
Returns
Type | Description |
---|---|
Boolean | true if the key exists; otherwise, false. |
IKeyValueStore.Get(in KeyBytes)
Gets the value associated with the specified key.
Declaration
byte[] IKeyValueStore.Get(in KeyBytes key)
Parameters
Type | Name | Description |
---|---|---|
KeyBytes | key | The key whose value to get. |
Returns
Type | Description |
---|---|
Byte[] | The value associated with the specified key. |
IKeyValueStore.ListKeys()
Declaration
IEnumerable<KeyBytes> IKeyValueStore.ListKeys()
Returns
Type | Description |
---|---|
IEnumerable<KeyBytes> |
IKeyValueStore.Set(IDictionary<KeyBytes, Byte[]>)
Sets all values in the given dictionary.
Declaration
void IKeyValueStore.Set(IDictionary<KeyBytes, byte[]> values)
Parameters
Type | Name | Description |
---|---|---|
IDictionary<KeyBytes, Byte[]> | values | A values to set. |
IKeyValueStore.Set(in KeyBytes, Byte[])
Sets the value to the key. If the key already exists, the value is overwritten.
Declaration
void IKeyValueStore.Set(in KeyBytes key, byte[] value)
Parameters
Type | Name | Description |
---|---|---|
KeyBytes | key | The key of the value to set. |
Byte[] | value | The value to set. |