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
- KeeperException
KeeperException.NoNodeException
KeeperException.NodeExistsException
public void deleteNode(java.lang.String path) throws KeeperException.NoNodeException
KeeperException.NoNodeException
public Stat setData(java.lang.String path, byte[] data, int version, long zxid, long time) throws KeeperException.NoNodeException
KeeperException.NoNodeException
public byte[] getData(java.lang.String path, Stat stat, Watcher watcher) throws KeeperException.NoNodeException
KeeperException.NoNodeException
public Stat statNode(java.lang.String path, Watcher watcher) throws KeeperException.NoNodeException
KeeperException.NoNodeException
public java.util.ArrayList<java.lang.String> getChildren(java.lang.String path, Stat stat, Watcher watcher) throws KeeperException.NoNodeException
KeeperException.NoNodeException
public Stat setACL(java.lang.String path, java.util.List<ACL> acl, int version) throws KeeperException.NoNodeException
KeeperException.NoNodeException
public java.util.List<ACL> getACL(java.lang.String path, Stat stat) throws KeeperException.NoNodeException
KeeperException.NoNodeException
public 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.IOException
java.lang.InterruptedException
public void deserialize(org.apache.jute.InputArchive ia, java.lang.String tag) throws java.io.IOException
java.io.IOException
public java.lang.String dumpEphemerals()
public void removeCnxn(Watcher watcher)
public void clear()
Copyright © 2018 The Apache Software Foundation