public class DataTreeV1
extends java.lang.Object
The tree maintains two parallel data structures: a hashtable that maps from full paths to DataNodes and a tree of DataNodes. All accesses to a path is through the hashtable. The tree is traversed only when serializing to disk.
| Modifier and Type | Class and Description |
|---|---|
static class |
DataTreeV1.ProcessTxnResult |
| Modifier and Type | Field and Description |
|---|---|
boolean |
initialized |
long |
lastProcessedZxid |
| Constructor and Description |
|---|
DataTreeV1() |
| Modifier and Type | Method and Description |
|---|---|
void |
clear() |
static void |
copyStat(Stat from,
Stat to) |
static void |
copyStatPersisted(StatPersistedV1 from,
StatPersistedV1 to) |
java.lang.String |
createNode(java.lang.String path,
byte[] data,
java.util.List<ACL> acl,
long ephemeralOwner,
long zxid,
long time) |
void |
deleteNode(java.lang.String path) |
void |
deserialize(org.apache.jute.InputArchive ia,
java.lang.String tag) |
java.lang.String |
dumpEphemerals() |
java.util.List<ACL> |
getACL(java.lang.String path,
Stat stat) |
java.util.ArrayList<java.lang.String> |
getChildren(java.lang.String path,
Stat stat,
Watcher watcher) |
byte[] |
getData(java.lang.String path,
Stat stat,
Watcher watcher) |
java.util.HashSet<java.lang.String> |
getEphemerals(long sessionId) |
java.util.Map<java.lang.Long,java.util.HashSet<java.lang.String>> |
getEphemeralsMap()
return the ephemerals for this tree
|
DataNodeV1 |
getNode(java.lang.String path) |
java.util.Collection<java.lang.Long> |
getSessions() |
DataTreeV1.ProcessTxnResult |
processTxn(TxnHeader header,
org.apache.jute.Record txn) |
void |
removeCnxn(Watcher watcher) |
void |
serialize(org.apache.jute.OutputArchive oa,
java.lang.String tag) |
Stat |
setACL(java.lang.String path,
java.util.List<ACL> acl,
int version) |
Stat |
setData(java.lang.String path,
byte[] data,
int version,
long zxid,
long time) |
void |
setEphemeralsMap(java.util.Map<java.lang.Long,java.util.HashSet<java.lang.String>> ephemerals) |
Stat |
statNode(java.lang.String path,
Watcher watcher) |
public volatile long lastProcessedZxid
public boolean initialized
public java.util.Map<java.lang.Long,java.util.HashSet<java.lang.String>> getEphemeralsMap()
public void setEphemeralsMap(java.util.Map<java.lang.Long,java.util.HashSet<java.lang.String>> ephemerals)
public java.util.HashSet<java.lang.String> getEphemerals(long sessionId)
public java.util.Collection<java.lang.Long> getSessions()
public DataNodeV1 getNode(java.lang.String path)
public static void copyStatPersisted(StatPersistedV1 from, StatPersistedV1 to)
public java.lang.String createNode(java.lang.String path,
byte[] data,
java.util.List<ACL> acl,
long ephemeralOwner,
long zxid,
long time)
throws KeeperException.NoNodeException,
KeeperException.NodeExistsException
path - data - acl - ephemeralOwner - the session id that owns this node. -1 indicates this is
not an ephemeral node.zxid - time - KeeperExceptionKeeperException.NoNodeExceptionKeeperException.NodeExistsExceptionpublic void deleteNode(java.lang.String path)
throws KeeperException.NoNodeException
KeeperException.NoNodeExceptionpublic Stat setData(java.lang.String path, byte[] data, int version, long zxid, long time) throws KeeperException.NoNodeException
KeeperException.NoNodeExceptionpublic byte[] getData(java.lang.String path,
Stat stat,
Watcher watcher)
throws KeeperException.NoNodeException
KeeperException.NoNodeExceptionpublic Stat statNode(java.lang.String path, Watcher watcher) throws KeeperException.NoNodeException
KeeperException.NoNodeExceptionpublic java.util.ArrayList<java.lang.String> getChildren(java.lang.String path,
Stat stat,
Watcher watcher)
throws KeeperException.NoNodeException
KeeperException.NoNodeExceptionpublic Stat setACL(java.lang.String path, java.util.List<ACL> acl, int version) throws KeeperException.NoNodeException
KeeperException.NoNodeExceptionpublic java.util.List<ACL> getACL(java.lang.String path, Stat stat) throws KeeperException.NoNodeException
KeeperException.NoNodeExceptionpublic DataTreeV1.ProcessTxnResult processTxn(TxnHeader header, org.apache.jute.Record txn)
public void serialize(org.apache.jute.OutputArchive oa,
java.lang.String tag)
throws java.io.IOException,
java.lang.InterruptedException
java.io.IOExceptionjava.lang.InterruptedExceptionpublic void deserialize(org.apache.jute.InputArchive ia,
java.lang.String tag)
throws java.io.IOException
java.io.IOExceptionpublic java.lang.String dumpEphemerals()
public void removeCnxn(Watcher watcher)
public void clear()
Copyright © 2016 The Apache Software Foundation