public interface KeyValueStore
An abstraction of a store that persists the nodes of a Patricia tree.
-
Method Summary
Modifier and TypeMethodDescriptionbyte[]get(byte[] key) Gets the association of a key in this store.byte[]getRoot()Yields the hash of the root of the Patricia trie that this store supports.voidput(byte[] key, byte[] value) Persists an association of a key to a value in this store.voidremove(byte[] key) Deletes the association for the given key, that must exist in store.voidsetRoot(byte[] root) Sets the hash of the root of the Patricia trie that this store supports.
-
Method Details
-
getRoot
byte[] getRoot()Yields the hash of the root of the Patricia trie that this store supports.- Returns:
- the hash of the root; this might be
nullif this store supports the empty Patricia trie
-
setRoot
void setRoot(byte[] root) Sets the hash of the root of the Patricia trie that this store supports.- Parameters:
root- the hash of the root of the trie
-
put
void put(byte[] key, byte[] value) Persists an association of a key to a value in this store. It replaces it if it was already present.- Parameters:
key- the keyvalue- the value
-
remove
void remove(byte[] key) Deletes the association for the given key, that must exist in store.- Parameters:
key- the key
-
get
Gets the association of a key in this store.- Parameters:
key- the key- Returns:
- the value associated with the key
- Throws:
NoSuchElementException- if the key is not associated in this store
-