USERKEY - The user key.public class IONodeStore<USERKEY> extends java.lang.Object implements NodeStore<USERKEY,byte[],java.io.InputStream>
NodeStore that stores and returns streams of data.| Modifier and Type | Class and Description |
|---|---|
static interface |
IONodeStore.NodeAccessor<USERKEY>
How a
IONodeStore accesses Node data. |
| Constructor and Description |
|---|
IONodeStore(IONodeStore.NodeAccessor<USERKEY> accessor) |
| Modifier and Type | Method and Description |
|---|---|
byte[] |
convert(USERKEY key)
By default this returns the key parameter.
|
byte[] |
generateKey(Node<USERKEY,byte[]> node,
java.io.InputStream inputStream)
Generate a key to store a node or data element.
|
java.io.InputStream |
loadData(byte[] key)
Load the user's data.
|
Node<USERKEY,byte[]> |
loadNode(byte[] key)
Load a node object from
NodeStore. |
void |
removeData(byte[] key)
Remove the given data key.
|
void |
removeNode(byte[] key)
Remove the given node key.
|
void |
store(byte[] key,
java.io.InputStream data)
Store user data.
|
void |
store(byte[] key,
Node<USERKEY,byte[]> node)
Store the given node.
|
public IONodeStore(IONodeStore.NodeAccessor<USERKEY> accessor)
public java.io.InputStream loadData(byte[] key)
NodeStorepublic Node<USERKEY,byte[]> loadNode(byte[] key)
NodeStoreNodeStore.public void store(byte[] key,
java.io.InputStream data)
NodeStorepublic void store(byte[] key,
Node<USERKEY,byte[]> node)
NodeStorepublic void removeNode(byte[] key)
NodeStoreremoveNode in interface NodeStore<USERKEY,byte[],java.io.InputStream>public void removeData(byte[] key)
NodeStoreremoveData in interface NodeStore<USERKEY,byte[],java.io.InputStream>public byte[] generateKey(Node<USERKEY,byte[]> node, java.io.InputStream inputStream)
NodeStoregenerateKey in interface NodeStore<USERKEY,byte[],java.io.InputStream>node - This is provided to implementations for some context.
If generateKey is being called for the purposes of
storing a user key, this will be null.inputStream - If a key is being generated for a user key value, it will
be passed along. This is most useful
when things like a PagedList
are adding a value, but the List API does not
provide a way to specify a key.