public class org.apache.zookeeper.server.DataTree extends java.lang.Object
{
private static final org.slf4j.Logger LOG;
private final org.apache.zookeeper.server.RateLogger RATE_LOGGER;
private final org.apache.zookeeper.server.NodeHashMap nodes;
private org.apache.zookeeper.server.watch.IWatchManager dataWatches;
private org.apache.zookeeper.server.watch.IWatchManager childWatches;
private final java.util.concurrent.atomic.AtomicLong nodeDataSize;
private static final java.lang.String rootZookeeper;
private static final java.lang.String procZookeeper;
private static final java.lang.String procChildZookeeper;
private static final java.lang.String quotaZookeeper;
private static final java.lang.String quotaChildZookeeper;
private static final java.lang.String configZookeeper;
private static final java.lang.String configChildZookeeper;
private final org.apache.zookeeper.common.PathTrie pTrie;
public static final int STAT_OVERHEAD_BYTES;
private final java.util.Map ephemerals;
private final java.util.Set containers;
private final java.util.Set ttls;
private final org.apache.zookeeper.server.ReferenceCountedACLCache aclCache;
public static final int DIGEST_LOG_LIMIT;
public static final int DIGEST_LOG_INTERVAL;
private org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot;
private volatile org.apache.zookeeper.server.DataTree$ZxidDigest lastProcessedZxidDigest;
private boolean firstMismatchTxn;
private final java.util.List digestWatchers;
private final java.util.LinkedList digestLog;
private final org.apache.zookeeper.server.DigestCalculator digestCalculator;
private org.apache.zookeeper.server.DataNode root;
private final org.apache.zookeeper.server.DataNode procDataNode;
private final org.apache.zookeeper.server.DataNode quotaDataNode;
public volatile long lastProcessedZxid;
static final boolean $assertionsDisabled;
public java.util.Set getEphemerals(long)
{
java.lang.Throwable v;
long v;
java.util.HashSet v;
java.lang.Long v;
java.util.Map v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: long;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
return v;
label:
entermonitor v;
label:
v = virtualinvoke v.<java.util.HashSet: java.lang.Object clone()>();
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
public java.util.Set getContainers()
{
java.util.HashSet v;
org.apache.zookeeper.server.DataTree v;
java.util.Set v;
v := @this: org.apache.zookeeper.server.DataTree;
v = new java.util.HashSet;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Set containers>;
specialinvoke v.<java.util.HashSet: void <init>(java.util.Collection)>(v);
return v;
}
public java.util.Set getTtls()
{
java.util.HashSet v;
org.apache.zookeeper.server.DataTree v;
java.util.Set v;
v := @this: org.apache.zookeeper.server.DataTree;
v = new java.util.HashSet;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Set ttls>;
specialinvoke v.<java.util.HashSet: void <init>(java.util.Collection)>(v);
return v;
}
public java.util.Collection getSessions()
{
org.apache.zookeeper.server.DataTree v;
java.util.Set v;
java.util.Map v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = interfaceinvoke v.<java.util.Map: java.util.Set keySet()>();
return v;
}
public org.apache.zookeeper.server.DataNode getNode(java.lang.String)
{
org.apache.zookeeper.server.DataTree v;
java.lang.String v;
org.apache.zookeeper.server.DataNode v;
org.apache.zookeeper.server.NodeHashMap v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
return v;
}
public int getNodeCount()
{
int v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.NodeHashMap v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: int size()>();
return v;
}
public int getWatchCount()
{
org.apache.zookeeper.server.watch.IWatchManager v, v;
int v, v, v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: int size()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: int size()>();
v = v + v;
return v;
}
public int getEphemeralsCount()
{
java.util.Iterator v;
java.util.Collection v;
java.util.Map v;
int v, v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v;
boolean v;
v := @this: org.apache.zookeeper.server.DataTree;
v = 0;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
v = interfaceinvoke v.<java.util.Collection: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.util.HashSet: int size()>();
v = v + v;
goto label;
label:
return v;
}
public long approximateDataSize()
{
java.lang.Throwable v;
byte[] v;
java.util.Iterator v;
java.util.Set v;
long v, v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v, v, v;
boolean v;
org.apache.zookeeper.server.NodeHashMap v;
v := @this: org.apache.zookeeper.server.DataTree;
v = 0L;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
entermonitor v;
label:
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
v = staticinvoke <org.apache.zookeeper.server.DataTree: long getNodeSize(java.lang.String,byte[])>(v, v);
v = v + v;
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return v;
catch java.lang.Throwable from label to label with label;
}
private static long getNodeSize(java.lang.String, byte[])
{
byte[] v;
int v, v, v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: byte[];
if v != null goto label;
v = 0;
goto label;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
label:
if v != null goto label;
v = 0;
goto label;
label:
v = lengthof v;
label:
v = v + v;
return v;
}
public long cachedApproximateDataSize()
{
org.apache.zookeeper.server.DataTree v;
java.util.concurrent.atomic.AtomicLong v;
long v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: java.util.concurrent.atomic.AtomicLong nodeDataSize>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long get()>();
return v;
}
public void <init>()
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.DigestCalculator v;
v := @this: org.apache.zookeeper.server.DataTree;
v = new org.apache.zookeeper.server.DigestCalculator;
specialinvoke v.<org.apache.zookeeper.server.DigestCalculator: void <init>()>();
specialinvoke v.<org.apache.zookeeper.server.DataTree: void <init>(org.apache.zookeeper.server.DigestCalculator)>(v);
return;
}
void <init>(org.apache.zookeeper.server.DigestCalculator)
{
byte[] v, v, v;
org.apache.zookeeper.server.DigestCalculator v;
org.apache.zookeeper.server.watch.IWatchManager v, v;
java.lang.Long v, v, v;
org.apache.zookeeper.server.DataNode v, v, v, v, v, v, v, v, v;
java.util.concurrent.ConcurrentHashMap v, v, v;
org.apache.zookeeper.common.PathTrie v;
java.util.Set v, v;
java.lang.Exception v;
org.apache.zookeeper.server.RateLogger v;
long v;
org.apache.zookeeper.server.NodeHashMapImpl v;
java.util.ArrayList v;
int v;
org.apache.zookeeper.data.StatPersisted v, v, v;
java.lang.String v, v;
java.util.LinkedList v;
org.slf4j.Logger v, v;
org.apache.zookeeper.server.ExitCode v;
java.util.concurrent.atomic.AtomicLong v, v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.ReferenceCountedACLCache v;
org.apache.zookeeper.server.NodeHashMap v, v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.zookeeper.server.DigestCalculator;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new org.apache.zookeeper.server.RateLogger;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
specialinvoke v.<org.apache.zookeeper.server.RateLogger: void <init>(org.slf4j.Logger,long)>(v, 900000L);
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.RateLogger RATE_LOGGER> = v;
v = new java.util.concurrent.atomic.AtomicLong;
specialinvoke v.<java.util.concurrent.atomic.AtomicLong: void <init>(long)>(0L);
v.<org.apache.zookeeper.server.DataTree: java.util.concurrent.atomic.AtomicLong nodeDataSize> = v;
v = new org.apache.zookeeper.common.PathTrie;
specialinvoke v.<org.apache.zookeeper.common.PathTrie: void <init>()>();
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.common.PathTrie pTrie> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v = staticinvoke <java.util.Collections: java.util.Set newSetFromMap(java.util.Map)>(v);
v.<org.apache.zookeeper.server.DataTree: java.util.Set containers> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v = staticinvoke <java.util.Collections: java.util.Set newSetFromMap(java.util.Map)>(v);
v.<org.apache.zookeeper.server.DataTree: java.util.Set ttls> = v;
v = new org.apache.zookeeper.server.ReferenceCountedACLCache;
specialinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: void <init>()>();
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache> = v;
v.<org.apache.zookeeper.server.DataTree: boolean firstMismatchTxn> = 1;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.apache.zookeeper.server.DataTree: java.util.List digestWatchers> = v;
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
v.<org.apache.zookeeper.server.DataTree: java.util.LinkedList digestLog> = v;
v = new org.apache.zookeeper.server.DataNode;
v = newarray (byte)[0];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(-1L);
v = new org.apache.zookeeper.data.StatPersisted;
specialinvoke v.<org.apache.zookeeper.data.StatPersisted: void <init>()>();
specialinvoke v.<org.apache.zookeeper.server.DataNode: void <init>(byte[],java.lang.Long,org.apache.zookeeper.data.StatPersisted)>(v, v, v);
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode root> = v;
v = new org.apache.zookeeper.server.DataNode;
v = newarray (byte)[0];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(-1L);
v = new org.apache.zookeeper.data.StatPersisted;
specialinvoke v.<org.apache.zookeeper.data.StatPersisted: void <init>()>();
specialinvoke v.<org.apache.zookeeper.server.DataNode: void <init>(byte[],java.lang.Long,org.apache.zookeeper.data.StatPersisted)>(v, v, v);
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode procDataNode> = v;
v = new org.apache.zookeeper.server.DataNode;
v = newarray (byte)[0];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(-1L);
v = new org.apache.zookeeper.data.StatPersisted;
specialinvoke v.<org.apache.zookeeper.data.StatPersisted: void <init>()>();
specialinvoke v.<org.apache.zookeeper.server.DataNode: void <init>(byte[],java.lang.Long,org.apache.zookeeper.data.StatPersisted)>(v, v, v);
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode quotaDataNode> = v;
v.<org.apache.zookeeper.server.DataTree: long lastProcessedZxid> = 0L;
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DigestCalculator digestCalculator> = v;
v = new org.apache.zookeeper.server.NodeHashMapImpl;
specialinvoke v.<org.apache.zookeeper.server.NodeHashMapImpl: void <init>(org.apache.zookeeper.server.DigestCalculator)>(v);
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes> = v;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode root>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode put(java.lang.String,org.apache.zookeeper.server.DataNode)>("", v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode root>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode putWithoutDigest(java.lang.String,org.apache.zookeeper.server.DataNode)>("/", v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode root>;
v = <org.apache.zookeeper.server.DataTree: java.lang.String procChildZookeeper>;
virtualinvoke v.<org.apache.zookeeper.server.DataNode: boolean addChild(java.lang.String)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode procDataNode>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode put(java.lang.String,org.apache.zookeeper.server.DataNode)>("/zookeeper", v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode procDataNode>;
v = <org.apache.zookeeper.server.DataTree: java.lang.String quotaChildZookeeper>;
virtualinvoke v.<org.apache.zookeeper.server.DataNode: boolean addChild(java.lang.String)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode quotaDataNode>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode put(java.lang.String,org.apache.zookeeper.server.DataNode)>("/zookeeper/quota", v);
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void addConfigNode()>();
v = v.<org.apache.zookeeper.server.DataTree: java.util.concurrent.atomic.AtomicLong nodeDataSize>;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: long approximateDataSize()>();
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: void set(long)>(v);
label:
v = staticinvoke <org.apache.zookeeper.server.watch.WatchManagerFactory: org.apache.zookeeper.server.watch.IWatchManager createWatchManager()>();
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches> = v;
v = staticinvoke <org.apache.zookeeper.server.watch.WatchManagerFactory: org.apache.zookeeper.server.watch.IWatchManager createWatchManager()>();
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches> = v;
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Unexpected exception when creating WatchManager, exiting abnormally", v);
v = <org.apache.zookeeper.server.ExitCode: org.apache.zookeeper.server.ExitCode UNEXPECTED_ERROR>;
v = virtualinvoke v.<org.apache.zookeeper.server.ExitCode: int getValue()>();
staticinvoke <org.apache.zookeeper.util.ServiceUtils: void requestSystemExit(int)>(v);
label:
return;
catch java.lang.Exception from label to label with label;
}
public void addConfigNode()
{
byte[] v;
java.lang.AssertionError v, v;
org.apache.zookeeper.KeeperException$NoNodeException v;
java.util.ArrayList v;
java.lang.Long v;
int v;
org.apache.zookeeper.data.StatPersisted v;
java.lang.String v;
boolean v, v;
org.apache.zookeeper.server.DataNode v, v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.NodeHashMap v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>("/zookeeper");
if v == null goto label;
v = <org.apache.zookeeper.server.DataTree: java.lang.String configChildZookeeper>;
virtualinvoke v.<org.apache.zookeeper.server.DataNode: boolean addChild(java.lang.String)>(v);
goto label;
label:
v = <org.apache.zookeeper.server.DataTree: boolean $assertionsDisabled>;
if v != 0 goto label;
v = new java.lang.AssertionError;
specialinvoke v.<java.lang.AssertionError: void <init>(java.lang.Object)>("There\'s no /zookeeper znode - this should never happen.");
throw v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = new org.apache.zookeeper.server.DataNode;
v = newarray (byte)[0];
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(-1L);
v = new org.apache.zookeeper.data.StatPersisted;
specialinvoke v.<org.apache.zookeeper.data.StatPersisted: void <init>()>();
specialinvoke v.<org.apache.zookeeper.server.DataNode: void <init>(byte[],java.lang.Long,org.apache.zookeeper.data.StatPersisted)>(v, v, v);
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode put(java.lang.String,org.apache.zookeeper.server.DataNode)>("/zookeeper/config", v);
label:
v = <org.apache.zookeeper.ZooDefs$Ids: java.util.ArrayList READ_ACL_UNSAFE>;
v = (int) -1;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.data.Stat setACL(java.lang.String,java.util.List,int)>("/zookeeper/config", v, v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.DataTree: boolean $assertionsDisabled>;
if v != 0 goto label;
v = new java.lang.AssertionError;
specialinvoke v.<java.lang.AssertionError: void <init>(java.lang.Object)>("There\'s no /zookeeper/config znode - this should never happen.");
throw v;
label:
return;
catch org.apache.zookeeper.KeeperException$NoNodeException from label to label with label;
}
boolean isSpecialPath(java.lang.String)
{
org.apache.zookeeper.server.DataTree v;
java.lang.String v, v, v, v, v;
boolean v, v, v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v = "/";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "/zookeeper";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "/zookeeper/quota";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "/zookeeper/config";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static void copyStatPersisted(org.apache.zookeeper.data.StatPersisted, org.apache.zookeeper.data.StatPersisted)
{
long v, v, v, v, v, v;
int v, v, v;
org.apache.zookeeper.data.StatPersisted v, v;
v := @parameter: org.apache.zookeeper.data.StatPersisted;
v := @parameter: org.apache.zookeeper.data.StatPersisted;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: int getAversion()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setAversion(int)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getCtime()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setCtime(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: int getCversion()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setCversion(int)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getCzxid()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setCzxid(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getMtime()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setMtime(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getMzxid()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setMzxid(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getPzxid()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setPzxid(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: int getVersion()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setVersion(int)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getEphemeralOwner()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setEphemeralOwner(long)>(v);
return;
}
public static void copyStat(org.apache.zookeeper.data.Stat, org.apache.zookeeper.data.Stat)
{
long v, v, v, v, v, v;
org.apache.zookeeper.data.Stat v, v;
int v, v, v, v, v;
v := @parameter: org.apache.zookeeper.data.Stat;
v := @parameter: org.apache.zookeeper.data.Stat;
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: int getAversion()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setAversion(int)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: long getCtime()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setCtime(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: int getCversion()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setCversion(int)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: long getCzxid()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setCzxid(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: long getMtime()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setMtime(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: long getMzxid()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setMzxid(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: long getPzxid()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setPzxid(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: int getVersion()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setVersion(int)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: long getEphemeralOwner()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setEphemeralOwner(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: int getDataLength()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setDataLength(int)>(v);
v = virtualinvoke v.<org.apache.zookeeper.data.Stat: int getNumChildren()>();
virtualinvoke v.<org.apache.zookeeper.data.Stat: void setNumChildren(int)>(v);
return;
}
public void updateQuotaStat(java.lang.String, long, int)
{
java.lang.Throwable v;
byte[] v, v;
long v, v, v, v, v;
int v;
java.lang.String v, v;
org.apache.zookeeper.server.DataNode v;
org.slf4j.Logger v;
org.apache.zookeeper.StatsTrack v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.NodeHashMap v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: long;
v := @parameter: int;
v = staticinvoke <org.apache.zookeeper.Quotas: java.lang.String statPath(java.lang.String)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Object)>("Missing node for stat {}", v);
return;
label:
entermonitor v;
label:
v = new org.apache.zookeeper.StatsTrack;
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
specialinvoke v.<org.apache.zookeeper.StatsTrack: void <init>(byte[])>(v);
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getCount()>();
v = v + v;
virtualinvoke v.<org.apache.zookeeper.StatsTrack: void setCount(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: long getBytes()>();
v = v + v;
virtualinvoke v.<org.apache.zookeeper.StatsTrack: void setBytes(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: byte[] getStatsBytes()>();
v.<org.apache.zookeeper.server.DataNode: byte[] data> = v;
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public void createNode(java.lang.String, byte[], java.util.List, long, int, long, long) throws org.apache.zookeeper.KeeperException$NoNodeException, org.apache.zookeeper.KeeperException$NodeExistsException
{
byte[] v;
long v, v, v;
java.util.List v;
int v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: byte[];
v := @parameter: java.util.List;
v := @parameter: long;
v := @parameter: int;
v := @parameter: long;
v := @parameter: long;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void createNode(java.lang.String,byte[],java.util.List,long,int,long,long,org.apache.zookeeper.data.Stat)>(v, v, v, v, v, v, v, null);
return;
}
public void createNode(java.lang.String, byte[], java.util.List, long, int, long, long, org.apache.zookeeper.data.Stat) throws org.apache.zookeeper.KeeperException$NoNodeException, org.apache.zookeeper.KeeperException$NodeExistsException
{
byte[] v, v;
org.apache.zookeeper.server.watch.IWatchManager v, v;
byte v;
java.lang.Long v, v;
java.util.Map v;
org.apache.zookeeper.common.PathTrie v;
java.util.Set v, v, v;
java.lang.Throwable v, v;
long v, v, v, v;
org.apache.zookeeper.data.StatPersisted v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.EphemeralType v, v, v;
java.util.concurrent.atomic.AtomicLong v;
org.apache.zookeeper.Watcher$Event$EventType v, v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.ReferenceCountedACLCache v;
org.apache.zookeeper.data.Stat v;
org.apache.zookeeper.KeeperException$NoNodeException v;
boolean v, v, v, v, v;
org.apache.zookeeper.server.DataNode v, v;
java.util.List v;
java.util.function.Function v;
int v, v, v, v, v, v, v;
org.apache.zookeeper.KeeperException$NodeExistsException v;
java.lang.Object v;
org.apache.zookeeper.server.NodeHashMap v, v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: byte[];
v := @parameter: java.util.List;
v := @parameter: long;
v := @parameter: int;
v := @parameter: long;
v := @parameter: long;
v := @parameter: org.apache.zookeeper.data.Stat;
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(47);
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
v = staticinvoke <org.apache.zookeeper.server.DataTree: org.apache.zookeeper.data.StatPersisted createStat(long,long,long)>(v, v, v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>()>();
throw v;
label:
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
v = virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: java.lang.Long convertAcls(java.util.List)>(v);
v = virtualinvoke v.<org.apache.zookeeper.server.DataNode: java.util.Set getChildren()>();
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v == 0 goto label;
v = new org.apache.zookeeper.KeeperException$NodeExistsException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NodeExistsException: void <init>()>();
throw v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void preChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
v = (int) -1;
if v != v goto label;
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: int getCversion()>();
v = v + 1;
label:
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: int getCversion()>();
if v <= v goto label;
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setCversion(int)>(v);
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setPzxid(long)>(v);
label:
v = new org.apache.zookeeper.server.DataNode;
specialinvoke v.<org.apache.zookeeper.server.DataNode: void <init>(byte[],java.lang.Long,org.apache.zookeeper.data.StatPersisted)>(v, v, v);
virtualinvoke v.<org.apache.zookeeper.server.DataNode: boolean addChild(java.lang.String)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void postChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
v = v.<org.apache.zookeeper.server.DataTree: java.util.concurrent.atomic.AtomicLong nodeDataSize>;
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
v = staticinvoke <org.apache.zookeeper.server.DataTree: long getNodeSize(java.lang.String,byte[])>(v, v);
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long addAndGet(long)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode put(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
v = staticinvoke <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType get(long)>(v);
v = <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType CONTAINER>;
if v != v goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Set containers>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
label:
v = <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType TTL>;
if v != v goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Set ttls>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v cmp 0L;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = staticinvoke <org.apache.zookeeper.server.DataTree$lambda_createNode_0__68: java.util.function.Function bootstrap$()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
entermonitor v;
label:
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
if v == null goto label;
virtualinvoke v.<org.apache.zookeeper.server.DataNode: void copyStat(org.apache.zookeeper.data.Stat)>(v);
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("/zookeeper/quota");
if v == 0 goto label;
v = "zookeeper_limits";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.common.PathTrie pTrie>;
v = staticinvoke <org.apache.zookeeper.Quotas: java.lang.String trimQuotaPath(java.lang.String)>(v);
virtualinvoke v.<org.apache.zookeeper.common.PathTrie: void addPath(java.lang.String)>(v);
label:
v = "zookeeper_stats";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = staticinvoke <org.apache.zookeeper.Quotas: java.lang.String trimQuotaPath(java.lang.String)>(v);
specialinvoke v.<org.apache.zookeeper.server.DataTree: void updateQuotaForPath(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: java.lang.String getMaxPrefixWithQuota(java.lang.String)>(v);
if v == null goto label;
v = lengthof v;
label:
if v == null goto label;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void updateQuotaStat(java.lang.String,long,int)>(v, v, 1);
label:
specialinvoke v.<org.apache.zookeeper.server.DataTree: void updateWriteStat(java.lang.String,long)>(v, v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeCreated>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: org.apache.zookeeper.server.watch.WatcherOrBitSet triggerWatch(java.lang.String,org.apache.zookeeper.Watcher$Event$EventType,long)>(v, v, v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("");
if v == 0 goto label;
v = "/";
goto label;
label:
v = v;
label:
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeChildrenChanged>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: org.apache.zookeeper.server.watch.WatcherOrBitSet triggerWatch(java.lang.String,org.apache.zookeeper.Watcher$Event$EventType,long)>(v, v, v);
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public void deleteNode(java.lang.String, long) throws org.apache.zookeeper.KeeperException$NoNodeException
{
byte[] v, v, v;
org.apache.zookeeper.server.watch.IWatchManager v, v, v;
byte v, v;
java.lang.Long v, v;
java.util.Map v;
org.apache.zookeeper.common.PathTrie v;
java.util.Set v, v;
java.lang.Throwable v, v, v, v, v;
long v, v, v, v, v;
org.apache.zookeeper.data.StatPersisted v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.EphemeralType v, v, v;
java.util.concurrent.atomic.AtomicLong v;
org.apache.zookeeper.Watcher$Event$EventType v, v, v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.ReferenceCountedACLCache v;
org.apache.zookeeper.KeeperException$NoNodeException v, v;
boolean v, v, v, v;
org.apache.zookeeper.server.DataNode v, v;
int v, v, v, v, v;
org.slf4j.Logger v, v, v;
org.apache.zookeeper.server.watch.WatcherOrBitSet v;
java.lang.Object v;
org.apache.zookeeper.server.NodeHashMap v, v, v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: long;
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(47);
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>()>();
throw v;
label:
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void preChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
virtualinvoke v.<org.apache.zookeeper.server.DataNode: boolean removeChild(java.lang.String)>(v);
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getPzxid()>();
v = v cmp v;
if v <= 0 goto label;
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setPzxid(long)>(v);
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void postChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>()>();
throw v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode remove(java.lang.String)>(v);
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
v = v.<org.apache.zookeeper.server.DataNode: java.lang.Long acl>;
virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: void removeUsage(java.lang.Long)>(v);
v = v.<org.apache.zookeeper.server.DataTree: java.util.concurrent.atomic.AtomicLong nodeDataSize>;
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
v = staticinvoke <org.apache.zookeeper.server.DataTree: long getNodeSize(java.lang.String,byte[])>(v, v);
v = neg v;
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long addAndGet(long)>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getEphemeralOwner()>();
v = staticinvoke <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType get(long)>(v);
v = <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType CONTAINER>;
if v != v goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Set containers>;
interfaceinvoke v.<java.util.Set: boolean remove(java.lang.Object)>(v);
goto label;
label:
v = <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType TTL>;
if v != v goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Set ttls>;
interfaceinvoke v.<java.util.Set: boolean remove(java.lang.Object)>(v);
goto label;
label:
v = v cmp 0L;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
entermonitor v;
label:
interfaceinvoke v.<java.util.Set: boolean remove(java.lang.Object)>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("/zookeeper");
if v == 0 goto label;
v = "zookeeper_limits";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.common.PathTrie pTrie>;
v = staticinvoke <org.apache.zookeeper.Quotas: java.lang.String trimQuotaPath(java.lang.String)>(v);
virtualinvoke v.<org.apache.zookeeper.common.PathTrie: void deletePath(java.lang.String)>(v);
label:
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: java.lang.String getMaxPrefixWithQuota(java.lang.String)>(v);
if v == null goto label;
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
if v != null goto label;
v = 0;
goto label;
label:
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
v = lengthof v;
v = neg v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = (int) -1;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void updateQuotaStat(java.lang.String,long,int)>(v, v, v);
label:
specialinvoke v.<org.apache.zookeeper.server.DataTree: void updateWriteStat(java.lang.String,long)>(v, 0L);
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.slf4j.Logger: boolean isTraceEnabled()>();
if v == 0 goto label;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("dataWatches.triggerWatch \u0001");
staticinvoke <org.apache.zookeeper.server.ZooTrace: void logTraceMessage(org.slf4j.Logger,long,java.lang.String)>(v, 64L, v);
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("childWatches.triggerWatch \u0001");
staticinvoke <org.apache.zookeeper.server.ZooTrace: void logTraceMessage(org.slf4j.Logger,long,java.lang.String)>(v, 64L, v);
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeDeleted>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: org.apache.zookeeper.server.watch.WatcherOrBitSet triggerWatch(java.lang.String,org.apache.zookeeper.Watcher$Event$EventType,long)>(v, v, v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeDeleted>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: org.apache.zookeeper.server.watch.WatcherOrBitSet triggerWatch(java.lang.String,org.apache.zookeeper.Watcher$Event$EventType,long,org.apache.zookeeper.server.watch.WatcherOrBitSet)>(v, v, v, v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = "";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = "/";
goto label;
label:
v = v;
label:
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeChildrenChanged>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: org.apache.zookeeper.server.watch.WatcherOrBitSet triggerWatch(java.lang.String,org.apache.zookeeper.Watcher$Event$EventType,long)>(v, v, v);
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public org.apache.zookeeper.data.Stat setData(java.lang.String, byte[], int, long, long) throws org.apache.zookeeper.KeeperException$NoNodeException
{
java.lang.Throwable v;
byte[] v, v;
long v, v, v, v, v;
org.apache.zookeeper.data.Stat v;
org.apache.zookeeper.KeeperException$NoNodeException v;
org.apache.zookeeper.server.watch.IWatchManager v;
int v, v, v, v, v;
org.apache.zookeeper.data.StatPersisted v, v, v;
java.lang.String v, v;
org.apache.zookeeper.server.DataNode v;
java.util.concurrent.atomic.AtomicLong v;
org.apache.zookeeper.Watcher$Event$EventType v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.NodeHashMap v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: long;
v := @parameter: long;
v = new org.apache.zookeeper.data.Stat;
specialinvoke v.<org.apache.zookeeper.data.Stat: void <init>()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>()>();
throw v;
label:
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void preChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
v.<org.apache.zookeeper.server.DataNode: byte[] data> = v;
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setMtime(long)>(v);
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setMzxid(long)>(v);
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setVersion(int)>(v);
virtualinvoke v.<org.apache.zookeeper.server.DataNode: void copyStat(org.apache.zookeeper.data.Stat)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void postChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: java.lang.String getMaxPrefixWithQuota(java.lang.String)>(v);
if v != null goto label;
v = 0;
goto label;
label:
v = lengthof v;
label:
if v != null goto label;
v = 0;
goto label;
label:
v = lengthof v;
label:
v = v - v;
if v == null goto label;
v = lengthof v;
label:
if v == null goto label;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void updateQuotaStat(java.lang.String,long,int)>(v, v, 0);
label:
v = v.<org.apache.zookeeper.server.DataTree: java.util.concurrent.atomic.AtomicLong nodeDataSize>;
v = staticinvoke <org.apache.zookeeper.server.DataTree: long getNodeSize(java.lang.String,byte[])>(v, v);
v = staticinvoke <org.apache.zookeeper.server.DataTree: long getNodeSize(java.lang.String,byte[])>(v, v);
v = v - v;
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: long addAndGet(long)>(v);
specialinvoke v.<org.apache.zookeeper.server.DataTree: void updateWriteStat(java.lang.String,long)>(v, v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeDataChanged>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: org.apache.zookeeper.server.watch.WatcherOrBitSet triggerWatch(java.lang.String,org.apache.zookeeper.Watcher$Event$EventType,long)>(v, v, v);
return v;
catch java.lang.Throwable from label to label with label;
}
public java.lang.String getMaxPrefixWithQuota(java.lang.String)
{
org.apache.zookeeper.common.PathTrie v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v, v, v;
boolean v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.common.PathTrie pTrie>;
v = virtualinvoke v.<org.apache.zookeeper.common.PathTrie: java.lang.String findMaxPrefix(java.lang.String)>(v);
v = "/";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
return null;
label:
return v;
}
public void addWatch(java.lang.String, org.apache.zookeeper.Watcher, int)
{
org.apache.zookeeper.Watcher v;
org.apache.zookeeper.server.watch.WatcherMode v, v;
org.apache.zookeeper.server.watch.IWatchManager v, v;
int v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: org.apache.zookeeper.Watcher;
v := @parameter: int;
v = staticinvoke <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode fromZooDef(int)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode PERSISTENT_RECURSIVE>;
if v == v goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
label:
return;
}
public byte[] getData(java.lang.String, org.apache.zookeeper.data.Stat, org.apache.zookeeper.Watcher) throws org.apache.zookeeper.KeeperException$NoNodeException
{
java.lang.Throwable v;
byte[] v;
org.apache.zookeeper.Watcher v;
org.apache.zookeeper.data.Stat v;
org.apache.zookeeper.KeeperException$NoNodeException v;
org.apache.zookeeper.server.watch.IWatchManager v;
int v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v;
org.apache.zookeeper.server.DataNode v;
org.apache.zookeeper.server.NodeHashMap v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: org.apache.zookeeper.data.Stat;
v := @parameter: org.apache.zookeeper.Watcher;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>()>();
throw v;
label:
entermonitor v;
label:
virtualinvoke v.<org.apache.zookeeper.server.DataNode: void copyStat(org.apache.zookeeper.data.Stat)>(v);
if v == null goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher)>(v, v);
label:
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
if v == null goto label;
v = lengthof v;
label:
specialinvoke v.<org.apache.zookeeper.server.DataTree: void updateReadStat(java.lang.String,long)>(v, v);
return v;
catch java.lang.Throwable from label to label with label;
}
public org.apache.zookeeper.data.Stat statNode(java.lang.String, org.apache.zookeeper.Watcher) throws org.apache.zookeeper.KeeperException$NoNodeException
{
java.lang.Throwable v;
org.apache.zookeeper.Watcher v;
org.apache.zookeeper.data.Stat v;
org.apache.zookeeper.KeeperException$NoNodeException v;
org.apache.zookeeper.server.watch.IWatchManager v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v;
org.apache.zookeeper.server.DataNode v;
org.apache.zookeeper.server.NodeHashMap v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: org.apache.zookeeper.Watcher;
if v == null goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher)>(v, v);
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>()>();
throw v;
label:
v = new org.apache.zookeeper.data.Stat;
specialinvoke v.<org.apache.zookeeper.data.Stat: void <init>()>();
entermonitor v;
label:
virtualinvoke v.<org.apache.zookeeper.server.DataNode: void copyStat(org.apache.zookeeper.data.Stat)>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
specialinvoke v.<org.apache.zookeeper.server.DataTree: void updateReadStat(java.lang.String,long)>(v, 0L);
return v;
catch java.lang.Throwable from label to label with label;
}
public java.util.List getChildren(java.lang.String, org.apache.zookeeper.data.Stat, org.apache.zookeeper.Watcher) throws org.apache.zookeeper.KeeperException$NoNodeException
{
java.lang.Throwable v;
org.apache.zookeeper.data.Stat v;
org.apache.zookeeper.KeeperException$NoNodeException v;
java.util.ArrayList v;
org.apache.zookeeper.server.watch.IWatchManager v;
int v, v;
java.lang.String v;
boolean v;
org.apache.zookeeper.server.DataNode v;
java.util.Iterator v;
org.apache.zookeeper.Watcher v;
java.util.Set v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v;
org.apache.zookeeper.server.NodeHashMap v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: org.apache.zookeeper.data.Stat;
v := @parameter: org.apache.zookeeper.Watcher;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>()>();
throw v;
label:
entermonitor v;
label:
if v == null goto label;
virtualinvoke v.<org.apache.zookeeper.server.DataNode: void copyStat(org.apache.zookeeper.data.Stat)>(v);
label:
v = new java.util.ArrayList;
v = virtualinvoke v.<org.apache.zookeeper.server.DataNode: java.util.Set getChildren()>();
specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
if v == null goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher)>(v, v);
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = 0;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + v;
goto label;
label:
specialinvoke v.<org.apache.zookeeper.server.DataTree: void updateReadStat(java.lang.String,long)>(v, v);
return v;
catch java.lang.Throwable from label to label with label;
}
public int getAllChildrenNumber(java.lang.String)
{
java.util.function.Predicate v;
java.util.Set v;
long v;
java.util.stream.Stream v, v;
int v, v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v, v;
boolean v;
org.apache.zookeeper.server.NodeHashMap v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v = "/";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: int size()>();
v = v - 2;
return v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.stream.Stream parallelStream()>();
v = staticinvoke <org.apache.zookeeper.server.DataTree$lambda_getAllChildrenNumber_1__69: java.util.function.Predicate bootstrap$(java.lang.String)>(v);
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = interfaceinvoke v.<java.util.stream.Stream: long count()>();
return v;
}
public org.apache.zookeeper.data.Stat setACL(java.lang.String, java.util.List, int) throws org.apache.zookeeper.KeeperException$NoNodeException
{
java.lang.Throwable v;
org.apache.zookeeper.data.Stat v;
org.apache.zookeeper.KeeperException$NoNodeException v;
java.lang.Long v, v;
int v;
org.apache.zookeeper.data.StatPersisted v;
java.lang.String v;
org.apache.zookeeper.server.DataNode v;
java.util.List v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.ReferenceCountedACLCache v, v;
org.apache.zookeeper.server.NodeHashMap v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v := @parameter: int;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>()>();
throw v;
label:
entermonitor v;
label:
v = new org.apache.zookeeper.data.Stat;
specialinvoke v.<org.apache.zookeeper.data.Stat: void <init>()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
v = v.<org.apache.zookeeper.server.DataNode: java.lang.Long acl>;
virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: void removeUsage(java.lang.Long)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void preChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setAversion(int)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
v = virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: java.lang.Long convertAcls(java.util.List)>(v);
v.<org.apache.zookeeper.server.DataNode: java.lang.Long acl> = v;
virtualinvoke v.<org.apache.zookeeper.server.DataNode: void copyStat(org.apache.zookeeper.data.Stat)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void postChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
public java.util.List getACL(java.lang.String, org.apache.zookeeper.data.Stat) throws org.apache.zookeeper.KeeperException$NoNodeException
{
java.lang.Throwable v;
org.apache.zookeeper.data.Stat v;
org.apache.zookeeper.KeeperException$NoNodeException v;
java.util.ArrayList v;
java.util.List v;
java.lang.Long v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v;
org.apache.zookeeper.server.ReferenceCountedACLCache v;
org.apache.zookeeper.server.DataNode v;
org.apache.zookeeper.server.NodeHashMap v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: org.apache.zookeeper.data.Stat;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>()>();
throw v;
label:
entermonitor v;
label:
if v == null goto label;
virtualinvoke v.<org.apache.zookeeper.server.DataNode: void copyStat(org.apache.zookeeper.data.Stat)>(v);
label:
v = new java.util.ArrayList;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
v = v.<org.apache.zookeeper.server.DataNode: java.lang.Long acl>;
v = virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: java.util.List convertLong(java.lang.Long)>(v);
specialinvoke v.<java.util.ArrayList: void <init>(java.util.Collection)>(v);
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
public java.util.List getACL(org.apache.zookeeper.server.DataNode)
{
java.lang.Throwable v;
java.util.List v;
java.lang.Long v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.ReferenceCountedACLCache v;
org.apache.zookeeper.server.DataNode v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.zookeeper.server.DataNode;
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
v = v.<org.apache.zookeeper.server.DataNode: java.lang.Long acl>;
v = virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: java.util.List convertLong(java.lang.Long)>(v);
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
public int aclCacheSize()
{
int v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.ReferenceCountedACLCache v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
v = virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: int size()>();
return v;
}
public org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxn(org.apache.zookeeper.txn.TxnHeader, org.apache.jute.Record, org.apache.zookeeper.txn.TxnDigest)
{
org.apache.zookeeper.server.DataTree v;
org.apache.jute.Record v;
org.apache.zookeeper.txn.TxnHeader v;
org.apache.zookeeper.txn.TxnDigest v;
org.apache.zookeeper.server.DataTree$ProcessTxnResult v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.zookeeper.txn.TxnHeader;
v := @parameter: org.apache.jute.Record;
v := @parameter: org.apache.zookeeper.txn.TxnDigest;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxn(org.apache.zookeeper.txn.TxnHeader,org.apache.jute.Record)>(v, v);
virtualinvoke v.<org.apache.zookeeper.server.DataTree: boolean compareDigest(org.apache.zookeeper.txn.TxnHeader,org.apache.jute.Record,org.apache.zookeeper.txn.TxnDigest)>(v, v, v);
return v;
}
public org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxn(org.apache.zookeeper.txn.TxnHeader, org.apache.jute.Record)
{
org.apache.zookeeper.server.DataTree v;
org.apache.jute.Record v;
org.apache.zookeeper.txn.TxnHeader v;
org.apache.zookeeper.server.DataTree$ProcessTxnResult v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.zookeeper.txn.TxnHeader;
v := @parameter: org.apache.jute.Record;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxn(org.apache.zookeeper.txn.TxnHeader,org.apache.jute.Record,boolean)>(v, v, 0);
return v;
}
public org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxn(org.apache.zookeeper.txn.TxnHeader, org.apache.jute.Record, boolean)
{
byte[] v, v, v, v, v, v;
java.lang.Integer v, v, v, v;
byte v;
java.lang.Long v;
java.util.Map v;
org.apache.zookeeper.txn.CreateTxn v;
org.apache.jute.Record v;
org.apache.zookeeper.txn.DeleteTxn v;
java.lang.Object[] v, v, v;
long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.EphemeralType v;
java.io.IOException v, v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.txn.SetDataTxn v;
org.apache.zookeeper.data.Stat v, v, v, v, v;
org.apache.zookeeper.KeeperException$NoNodeException v;
org.apache.zookeeper.txn.CheckVersionTxn v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.slf4j.Logger v, v, v, v, v;
org.apache.zookeeper.KeeperException v;
java.lang.Object v, v, v, v;
org.apache.zookeeper.server.DataTree$ProcessTxnResult v, v;
org.apache.zookeeper.txn.CreateTTLTxn v;
java.lang.AssertionError v;
java.util.ArrayList v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.zookeeper.server.DataTree$ZxidDigest v;
org.apache.zookeeper.txn.TxnHeader v, v;
org.apache.zookeeper.txn.ErrorTxn v, v;
java.nio.ByteBuffer v;
boolean v, v, v, v, v, v, v, v, v;
java.util.List v, v, v, v, v, v, v, v;
org.apache.zookeeper.txn.CreateContainerTxn v;
org.apache.zookeeper.KeeperException$Code v, v, v, v, v, v;
java.util.Iterator v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.zookeeper.txn.TxnHeader;
v := @parameter: org.apache.jute.Record;
v := @parameter: boolean;
v = new org.apache.zookeeper.server.DataTree$ProcessTxnResult;
specialinvoke v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: void <init>()>();
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getClientId()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: long clientId> = v;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: int getCxid()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int cxid> = v;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: long zxid> = v;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: int getType()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int type> = v;
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err> = 0;
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.util.List multiResult> = null;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: int getType()>();
tableswitch(v)
{
case -11: goto label;
case -10: goto label;
case -9: goto label;
case -8: goto label;
case -7: goto label;
case -6: goto label;
case -5: goto label;
case -4: goto label;
case -3: goto label;
case -2: goto label;
case -1: goto label;
case 0: goto label;
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
case 10: goto label;
case 11: goto label;
case 12: goto label;
case 13: goto label;
case 14: goto label;
case 15: goto label;
case 16: goto label;
case 17: goto label;
case 18: goto label;
case 19: goto label;
case 20: goto label;
case 21: goto label;
default: goto label;
};
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: java.lang.String getPath()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path> = v;
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: java.lang.String getPath()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: byte[] getData()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: java.util.List getAcl()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: boolean getEphemeral()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getClientId()>();
goto label;
label:
v = 0L;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: int getParentCVersion()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getTime()>();
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void createNode(java.lang.String,byte[],java.util.List,long,int,long,long,org.apache.zookeeper.data.Stat)>(v, v, v, v, v, v, v, null);
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: java.lang.String getPath()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path> = v;
v = new org.apache.zookeeper.data.Stat;
specialinvoke v.<org.apache.zookeeper.data.Stat: void <init>()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: java.lang.String getPath()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: byte[] getData()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: java.util.List getAcl()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: boolean getEphemeral()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getClientId()>();
goto label;
label:
v = 0L;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: int getParentCVersion()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getTime()>();
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void createNode(java.lang.String,byte[],java.util.List,long,int,long,long,org.apache.zookeeper.data.Stat)>(v, v, v, v, v, v, v, v);
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: org.apache.zookeeper.data.Stat stat> = v;
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTTLTxn: java.lang.String getPath()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path> = v;
v = new org.apache.zookeeper.data.Stat;
specialinvoke v.<org.apache.zookeeper.data.Stat: void <init>()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTTLTxn: java.lang.String getPath()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTTLTxn: byte[] getData()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTTLTxn: java.util.List getAcl()>();
v = <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType TTL>;
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTTLTxn: long getTtl()>();
v = virtualinvoke v.<org.apache.zookeeper.server.EphemeralType: long toEphemeralOwner(long)>(v);
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTTLTxn: int getParentCVersion()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getTime()>();
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void createNode(java.lang.String,byte[],java.util.List,long,int,long,long,org.apache.zookeeper.data.Stat)>(v, v, v, v, v, v, v, v);
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: org.apache.zookeeper.data.Stat stat> = v;
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateContainerTxn: java.lang.String getPath()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path> = v;
v = new org.apache.zookeeper.data.Stat;
specialinvoke v.<org.apache.zookeeper.data.Stat: void <init>()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateContainerTxn: java.lang.String getPath()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateContainerTxn: byte[] getData()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateContainerTxn: java.util.List getAcl()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateContainerTxn: int getParentCVersion()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getTime()>();
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void createNode(java.lang.String,byte[],java.util.List,long,int,long,long,org.apache.zookeeper.data.Stat)>(v, v, v, -9223372036854775808L, v, v, v, v);
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: org.apache.zookeeper.data.Stat stat> = v;
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.DeleteTxn: java.lang.String getPath()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path> = v;
v = virtualinvoke v.<org.apache.zookeeper.txn.DeleteTxn: java.lang.String getPath()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void deleteNode(java.lang.String,long)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.SetDataTxn: java.lang.String getPath()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path> = v;
v = virtualinvoke v.<org.apache.zookeeper.txn.SetDataTxn: java.lang.String getPath()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.SetDataTxn: byte[] getData()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.SetDataTxn: int getVersion()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getTime()>();
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.data.Stat setData(java.lang.String,byte[],int,long,long)>(v, v, v, v, v);
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: org.apache.zookeeper.data.Stat stat> = v;
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.SetACLTxn: java.lang.String getPath()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path> = v;
v = virtualinvoke v.<org.apache.zookeeper.txn.SetACLTxn: java.lang.String getPath()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.SetACLTxn: java.util.List getAcl()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.SetACLTxn: int getVersion()>();
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.data.Stat setACL(java.lang.String,java.util.List,int)>(v, v, v);
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: org.apache.zookeeper.data.Stat stat> = v;
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getClientId()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.zookeeper.txn.CloseSessionTxn: java.util.List getPaths2Delete()>();
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void killSession(long,long,java.util.Set,java.util.List)>(v, v, v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void killSession(long,long)>(v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.ErrorTxn: int getErr()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err> = v;
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.CheckVersionTxn: java.lang.String getPath()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path> = v;
goto label;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.MultiTxn: java.util.List getTxns()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.util.List multiResult> = v;
v = 0;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.Txn: int getType()>();
v = (int) -1;
if v != v goto label;
v = 1;
label:
v = 0;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.Txn: byte[] getData()>();
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[])>(v);
v = virtualinvoke v.<org.apache.zookeeper.txn.Txn: int getType()>();
tableswitch(v)
{
case -1: goto label;
case 0: goto label;
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
case 9: goto label;
case 10: goto label;
case 11: goto label;
case 12: goto label;
case 13: goto label;
case 14: goto label;
case 15: goto label;
case 16: goto label;
case 17: goto label;
case 18: goto label;
case 19: goto label;
case 20: goto label;
case 21: goto label;
default: goto label;
};
label:
v = new org.apache.zookeeper.txn.CreateTxn;
specialinvoke v.<org.apache.zookeeper.txn.CreateTxn: void <init>()>();
v = v;
goto label;
label:
v = new org.apache.zookeeper.txn.CreateTTLTxn;
specialinvoke v.<org.apache.zookeeper.txn.CreateTTLTxn: void <init>()>();
v = v;
goto label;
label:
v = new org.apache.zookeeper.txn.CreateContainerTxn;
specialinvoke v.<org.apache.zookeeper.txn.CreateContainerTxn: void <init>()>();
v = v;
goto label;
label:
v = new org.apache.zookeeper.txn.DeleteTxn;
specialinvoke v.<org.apache.zookeeper.txn.DeleteTxn: void <init>()>();
v = v;
goto label;
label:
v = new org.apache.zookeeper.txn.SetDataTxn;
specialinvoke v.<org.apache.zookeeper.txn.SetDataTxn: void <init>()>();
v = v;
goto label;
label:
v = new org.apache.zookeeper.txn.ErrorTxn;
specialinvoke v.<org.apache.zookeeper.txn.ErrorTxn: void <init>()>();
v = v;
v = 1;
goto label;
label:
v = new org.apache.zookeeper.txn.CheckVersionTxn;
specialinvoke v.<org.apache.zookeeper.txn.CheckVersionTxn: void <init>()>();
v = v;
goto label;
label:
v = new java.io.IOException;
v = virtualinvoke v.<org.apache.zookeeper.txn.Txn: int getType()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Invalid type of op: \u0001");
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>(v);
throw v;
label:
v = <org.apache.zookeeper.server.DataTree: boolean $assertionsDisabled>;
staticinvoke <org.apache.zookeeper.server.ByteBufferInputStream: void byteBuffer2Record(java.nio.ByteBuffer,org.apache.jute.Record)>(v, v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.txn.Txn: int getType()>();
v = (int) -1;
if v == v goto label;
if v == 0 goto label;
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code RUNTIMEINCONSISTENCY>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
goto label;
label:
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
label:
v = (int) -1;
virtualinvoke v.<org.apache.zookeeper.txn.Txn: void setType(int)>(v);
v = new org.apache.zookeeper.txn.ErrorTxn;
specialinvoke v.<org.apache.zookeeper.txn.ErrorTxn: void <init>(int)>(v);
v = v;
label:
v = <org.apache.zookeeper.server.DataTree: boolean $assertionsDisabled>;
if v != 0 goto label;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.zookeeper.txn.Txn: int getType()>();
v = (int) -1;
if v == v goto label;
v = new java.lang.AssertionError;
specialinvoke v.<java.lang.AssertionError: void <init>()>();
throw v;
label:
v = new org.apache.zookeeper.txn.TxnHeader;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getClientId()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: int getCxid()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getTime()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.Txn: int getType()>();
specialinvoke v.<org.apache.zookeeper.txn.TxnHeader: void <init>(long,int,long,long,int)>(v, v, v, v, v);
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ProcessTxnResult processTxn(org.apache.zookeeper.txn.TxnHeader,org.apache.jute.Record,boolean)>(v, v, 1);
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.util.List multiResult>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err>;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err>;
if v != 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err>;
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err> = v;
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v[0] = v;
v[1] = v;
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Failed: {}:{}", v);
v = virtualinvoke v.<org.apache.zookeeper.KeeperException: org.apache.zookeeper.KeeperException$Code code()>();
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err> = v;
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v[0] = v;
v[1] = v;
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Failed: {}:{}", v);
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: int getType()>();
if v != 1 goto label;
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err>;
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code NODEEXISTS>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
if v != v goto label;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: int getType()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path>;
v[1] = v;
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Adjusting parent cversion for Txn: {} path: {} err: {}", v);
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path>;
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(47);
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: java.lang.String path>;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.CreateTxn: int getParentCVersion()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void setCversionPzxid(java.lang.String,int,long)>(v, v, v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Object,java.lang.Object)>("Failed to set parent cversion for: {}", v, v);
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: org.apache.zookeeper.KeeperException$Code code()>();
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err> = v;
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err>;
v = <org.apache.zookeeper.KeeperException$Code: org.apache.zookeeper.KeeperException$Code OK>;
v = virtualinvoke v.<org.apache.zookeeper.KeeperException$Code: int intValue()>();
if v == v goto label;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: int getType()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: int err>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Ignoring processTxn failure hdr: {} : error: {}", v, v);
label:
if v != 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: long zxid>;
v = v.<org.apache.zookeeper.server.DataTree: long lastProcessedZxid>;
v = v cmp v;
if v <= 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: long zxid>;
v.<org.apache.zookeeper.server.DataTree: long lastProcessedZxid> = v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: long zxid>;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void compareSnapshotDigests(long)>(v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree$ProcessTxnResult: long zxid>;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: long getTreeDigest()>();
specialinvoke v.<org.apache.zookeeper.server.DataTree: void logZxidDigest(long,long)>(v, v);
label:
return v;
catch org.apache.zookeeper.KeeperException from label to label with label;
catch java.io.IOException from label to label with label;
catch org.apache.zookeeper.KeeperException$NoNodeException from label to label with label;
}
void killSession(long, long)
{
java.lang.Long v;
java.util.Map v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v;
long v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: long;
v := @parameter: long;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object remove(java.lang.Object)>(v);
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void killSession(long,long,java.util.Set,java.util.List)>(v, v, v, null);
return;
}
void killSession(long, long, java.util.Set, java.util.List)
{
org.slf4j.Logger v;
java.util.Iterator v;
java.util.Set v;
long v, v;
java.util.List v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v;
java.lang.String v;
boolean v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: long;
v := @parameter: long;
v := @parameter: java.util.Set;
v := @parameter: java.util.List;
if v == null goto label;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void deleteNodes(long,long,java.lang.Iterable)>(v, v, v);
label:
if v != null goto label;
return;
label:
if v == null goto label;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
interfaceinvoke v.<java.util.Set: boolean remove(java.lang.Object)>(v);
goto label;
label:
v = interfaceinvoke v.<java.util.Set: boolean isEmpty()>();
if v != 0 goto label;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("Unexpected extra paths under session {} which are not in txn 0x{}", v, v);
label:
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void deleteNodes(long,long,java.lang.Iterable)>(v, v, v);
return;
}
void deleteNodes(long, long, java.lang.Iterable)
{
long v, v;
java.lang.Iterable v;
org.apache.zookeeper.KeeperException$NoNodeException v;
java.lang.String v, v, v, v;
boolean v, v, v;
org.slf4j.Logger v, v;
java.util.Iterator v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v;
org.apache.zookeeper.audit.AuditEvent$Result v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: long;
v := @parameter: long;
v := @parameter: java.lang.Iterable;
v = interfaceinvoke v.<java.lang.Iterable: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = 0;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("0x\u0001");
label:
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void deleteNode(java.lang.String,long)>(v, v);
v = 1;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Deleting ephemeral node {} for session {}", v, v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object,java.lang.Object)>("Ignoring NoNodeException for path {} while removing ephemeral for dead session {}", v, v);
label:
v = staticinvoke <org.apache.zookeeper.audit.ZKAuditProvider: boolean isAuditEnabled()>();
if v == 0 goto label;
if v == 0 goto label;
v = staticinvoke <org.apache.zookeeper.audit.ZKAuditProvider: java.lang.String getZKUser()>();
v = <org.apache.zookeeper.audit.AuditEvent$Result: org.apache.zookeeper.audit.AuditEvent$Result SUCCESS>;
staticinvoke <org.apache.zookeeper.audit.ZKAuditProvider: void log(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,org.apache.zookeeper.audit.AuditEvent$Result)>(v, "ephemeralZNodeDeletionOnSessionCloseOrExpire", v, null, null, v, null, v);
goto label;
label:
v = staticinvoke <org.apache.zookeeper.audit.ZKAuditProvider: java.lang.String getZKUser()>();
v = <org.apache.zookeeper.audit.AuditEvent$Result: org.apache.zookeeper.audit.AuditEvent$Result FAILURE>;
staticinvoke <org.apache.zookeeper.audit.ZKAuditProvider: void log(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,org.apache.zookeeper.audit.AuditEvent$Result)>(v, "ephemeralZNodeDeletionOnSessionCloseOrExpire", v, null, null, v, null, v);
goto label;
label:
return;
catch org.apache.zookeeper.KeeperException$NoNodeException from label to label with label;
}
private void getCounts(java.lang.String, org.apache.zookeeper.server.DataTree$Counts)
{
java.lang.Throwable v;
byte[] v, v;
java.lang.Object[] v;
java.lang.String[] v;
long v, v;
org.apache.zookeeper.server.DataTree$Counts v;
int v, v, v, v, v;
java.lang.String v, v, v;
org.apache.zookeeper.server.DataNode v;
java.util.Set v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: org.apache.zookeeper.server.DataTree$Counts;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>(v);
if v != null goto label;
return;
label:
entermonitor v;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.DataNode: java.util.Set getChildren()>();
v = newarray (java.lang.String)[0];
v = interfaceinvoke v.<java.util.Set: java.lang.Object[] toArray(java.lang.Object[])>(v);
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
if v != null goto label;
v = 0;
goto label;
label:
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
v = lengthof v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = v.<org.apache.zookeeper.server.DataTree$Counts: int count>;
v = v + 1;
v.<org.apache.zookeeper.server.DataTree$Counts: int count> = v;
v = v.<org.apache.zookeeper.server.DataTree$Counts: long bytes>;
v = v + v;
v.<org.apache.zookeeper.server.DataTree$Counts: long bytes> = v;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001/\u0001");
specialinvoke v.<org.apache.zookeeper.server.DataTree: void getCounts(java.lang.String,org.apache.zookeeper.server.DataTree$Counts)>(v, v);
v = v + 1;
goto label;
label:
return;
catch java.lang.Throwable from label to label with label;
}
private void updateQuotaForPath(java.lang.String)
{
java.lang.Throwable v;
byte[] v;
org.slf4j.Logger v;
long v;
org.apache.zookeeper.StatsTrack v;
org.apache.zookeeper.server.DataTree$Counts v;
int v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v, v;
org.apache.zookeeper.server.DataNode v;
org.apache.zookeeper.server.NodeHashMap v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v = new org.apache.zookeeper.server.DataTree$Counts;
specialinvoke v.<org.apache.zookeeper.server.DataTree$Counts: void <init>()>();
specialinvoke v.<org.apache.zookeeper.server.DataTree: void getCounts(java.lang.String,org.apache.zookeeper.server.DataTree$Counts)>(v, v);
v = new org.apache.zookeeper.StatsTrack;
specialinvoke v.<org.apache.zookeeper.StatsTrack: void <init>()>();
v = v.<org.apache.zookeeper.server.DataTree$Counts: long bytes>;
virtualinvoke v.<org.apache.zookeeper.StatsTrack: void setBytes(long)>(v);
v = v.<org.apache.zookeeper.server.DataTree$Counts: int count>;
virtualinvoke v.<org.apache.zookeeper.StatsTrack: void setCount(long)>(v);
v = staticinvoke <org.apache.zookeeper.Quotas: java.lang.String statPath(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>(v);
if v != null goto label;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String,java.lang.Object)>("Missing quota stat node {}", v);
return;
label:
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void preChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
v = virtualinvoke v.<org.apache.zookeeper.StatsTrack: byte[] getStatsBytes()>();
v.<org.apache.zookeeper.server.DataNode: byte[] data> = v;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void postChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
private void traverseNode(java.lang.String)
{
java.lang.Throwable v;
java.lang.Object[] v;
java.lang.String[] v;
int v, v, v, v, v;
java.lang.String v, v, v, v, v;
boolean v;
org.apache.zookeeper.server.DataNode v;
org.apache.zookeeper.common.PathTrie v;
java.util.Set v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>(v);
entermonitor v;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.DataNode: java.util.Set getChildren()>();
v = newarray (java.lang.String)[0];
v = interfaceinvoke v.<java.util.Set: java.lang.Object[] toArray(java.lang.Object[])>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = lengthof v;
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("/zookeeper_limits");
if v == 0 goto label;
v = "/zookeeper/quota";
v = virtualinvoke v.<java.lang.String: int length()>();
v = virtualinvoke v.<java.lang.String: int indexOf(java.lang.String)>("/zookeeper_limits");
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(v, v);
specialinvoke v.<org.apache.zookeeper.server.DataTree: void updateQuotaForPath(java.lang.String)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.common.PathTrie pTrie>;
virtualinvoke v.<org.apache.zookeeper.common.PathTrie: void addPath(java.lang.String)>(v);
label:
return;
label:
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001/\u0001");
specialinvoke v.<org.apache.zookeeper.server.DataTree: void traverseNode(java.lang.String)>(v);
v = v + 1;
goto label;
label:
return;
catch java.lang.Throwable from label to label with label;
}
private void setupQuota()
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.DataNode v;
v := @this: org.apache.zookeeper.server.DataTree;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>("/zookeeper/quota");
if v != null goto label;
return;
label:
specialinvoke v.<org.apache.zookeeper.server.DataTree: void traverseNode(java.lang.String)>("/zookeeper/quota");
return;
}
void serializeNode(org.apache.jute.OutputArchive, java.lang.StringBuilder) throws java.io.IOException
{
java.lang.Throwable v;
byte[] v;
java.lang.Object[] v;
java.lang.String[] v;
java.lang.Long v;
int v, v, v;
org.apache.jute.OutputArchive v;
org.apache.zookeeper.data.StatPersisted v, v;
java.lang.String v, v;
org.apache.zookeeper.server.DataNode v, v;
java.util.Set v;
org.apache.zookeeper.server.DataTree v;
java.lang.StringBuilder v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.OutputArchive;
v := @parameter: java.lang.StringBuilder;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>(v);
if v != null goto label;
return;
label:
entermonitor v;
label:
v = new org.apache.zookeeper.data.StatPersisted;
specialinvoke v.<org.apache.zookeeper.data.StatPersisted: void <init>()>();
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
staticinvoke <org.apache.zookeeper.server.DataTree: void copyStatPersisted(org.apache.zookeeper.data.StatPersisted,org.apache.zookeeper.data.StatPersisted)>(v, v);
v = new org.apache.zookeeper.server.DataNode;
v = v.<org.apache.zookeeper.server.DataNode: byte[] data>;
v = v.<org.apache.zookeeper.server.DataNode: java.lang.Long acl>;
specialinvoke v.<org.apache.zookeeper.server.DataNode: void <init>(byte[],java.lang.Long,org.apache.zookeeper.data.StatPersisted)>(v, v, v);
v = virtualinvoke v.<org.apache.zookeeper.server.DataNode: java.util.Set getChildren()>();
v = newarray (java.lang.String)[0];
v = interfaceinvoke v.<java.util.Set: java.lang.Object[] toArray(java.lang.Object[])>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void serializeNodeData(org.apache.jute.OutputArchive,java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v, v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(47);
v = virtualinvoke v.<java.lang.StringBuilder: int length()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder delete(int,int)>(v, 2147483647);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void serializeNode(org.apache.jute.OutputArchive,java.lang.StringBuilder)>(v, v);
v = v + 1;
goto label;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public void serializeNodeData(org.apache.jute.OutputArchive, java.lang.String, org.apache.zookeeper.server.DataNode) throws java.io.IOException
{
org.apache.jute.OutputArchive v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v;
org.apache.zookeeper.server.DataNode v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.OutputArchive;
v := @parameter: java.lang.String;
v := @parameter: org.apache.zookeeper.server.DataNode;
interfaceinvoke v.<org.apache.jute.OutputArchive: void writeString(java.lang.String,java.lang.String)>(v, "path");
interfaceinvoke v.<org.apache.jute.OutputArchive: void writeRecord(org.apache.jute.Record,java.lang.String)>(v, "node");
return;
}
public void serializeAcls(org.apache.jute.OutputArchive) throws java.io.IOException
{
org.apache.jute.OutputArchive v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.ReferenceCountedACLCache v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.OutputArchive;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: void serialize(org.apache.jute.OutputArchive)>(v);
return;
}
public void serializeNodes(org.apache.jute.OutputArchive) throws java.io.IOException
{
org.apache.jute.OutputArchive v;
org.apache.zookeeper.server.DataTree v;
java.lang.StringBuilder v;
org.apache.zookeeper.server.DataNode v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.OutputArchive;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void serializeNode(org.apache.jute.OutputArchive,java.lang.StringBuilder)>(v, v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode root>;
if v == null goto label;
interfaceinvoke v.<org.apache.jute.OutputArchive: void writeString(java.lang.String,java.lang.String)>("/", "path");
label:
return;
}
public void serialize(org.apache.jute.OutputArchive, java.lang.String) throws java.io.IOException
{
org.apache.jute.OutputArchive v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.OutputArchive;
v := @parameter: java.lang.String;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void serializeAcls(org.apache.jute.OutputArchive)>(v);
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void serializeNodes(org.apache.jute.OutputArchive)>(v);
return;
}
public void deserialize(org.apache.jute.InputArchive, java.lang.String) throws java.io.IOException
{
org.apache.jute.InputArchive v;
byte v;
java.lang.Long v, v;
java.util.Map v;
boolean v;
org.apache.zookeeper.server.DataNode v, v, v;
org.apache.zookeeper.common.PathTrie v;
java.util.Set v, v;
java.lang.Throwable v;
long v, v;
java.util.function.Function v;
int v, v, v;
org.apache.zookeeper.data.StatPersisted v;
java.lang.String v, v, v, v, v, v;
org.apache.zookeeper.server.EphemeralType v, v, v;
java.io.IOException v;
java.util.concurrent.atomic.AtomicLong v, v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v;
org.apache.zookeeper.server.ReferenceCountedACLCache v, v, v;
org.apache.zookeeper.server.NodeHashMap v, v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.InputArchive;
v := @parameter: java.lang.String;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: void deserialize(org.apache.jute.InputArchive)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void clear()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.common.PathTrie pTrie>;
virtualinvoke v.<org.apache.zookeeper.common.PathTrie: void clear()>();
v = v.<org.apache.zookeeper.server.DataTree: java.util.concurrent.atomic.AtomicLong nodeDataSize>;
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: void set(long)>(0L);
v = interfaceinvoke v.<org.apache.jute.InputArchive: java.lang.String readString(java.lang.String)>("path");
label:
v = "/";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = new org.apache.zookeeper.server.DataNode;
specialinvoke v.<org.apache.zookeeper.server.DataNode: void <init>()>();
interfaceinvoke v.<org.apache.jute.InputArchive: void readRecord(org.apache.jute.Record,java.lang.String)>(v, "node");
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode put(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
v = v.<org.apache.zookeeper.server.DataNode: java.lang.Long acl>;
virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: void addUsage(java.lang.Long)>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(47);
v = (int) -1;
if v != v goto label;
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode root> = v;
goto label;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new java.io.IOException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Invalid Datatree, unable to find parent \u of path \u0001");
specialinvoke v.<java.io.IOException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
virtualinvoke v.<org.apache.zookeeper.server.DataNode: boolean addChild(java.lang.String)>(v);
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getEphemeralOwner()>();
v = staticinvoke <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType get(long)>(v);
v = <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType CONTAINER>;
if v != v goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Set containers>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
label:
v = <org.apache.zookeeper.server.EphemeralType: org.apache.zookeeper.server.EphemeralType TTL>;
if v != v goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Set ttls>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
label:
v = v cmp 0L;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = staticinvoke <org.apache.zookeeper.server.DataTree$lambda_deserialize_2__70: java.util.function.Function bootstrap$()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Function)>(v, v);
virtualinvoke v.<java.util.HashSet: boolean add(java.lang.Object)>(v);
label:
v = interfaceinvoke v.<org.apache.jute.InputArchive: java.lang.String readString(java.lang.String)>("path");
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode root>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode putWithoutDigest(java.lang.String,org.apache.zookeeper.server.DataNode)>("/", v);
v = v.<org.apache.zookeeper.server.DataTree: java.util.concurrent.atomic.AtomicLong nodeDataSize>;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: long approximateDataSize()>();
virtualinvoke v.<java.util.concurrent.atomic.AtomicLong: void set(long)>(v);
specialinvoke v.<org.apache.zookeeper.server.DataTree: void setupQuota()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
virtualinvoke v.<org.apache.zookeeper.server.ReferenceCountedACLCache: void purgeUnused()>();
return;
catch java.lang.Throwable from label to label with label;
}
public synchronized void dumpWatchesSummary(java.io.PrintWriter)
{
java.io.PrintWriter v;
org.apache.zookeeper.server.watch.IWatchManager v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.io.PrintWriter;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>(v);
return;
}
public synchronized void dumpWatches(java.io.PrintWriter, boolean)
{
java.io.PrintWriter v;
org.apache.zookeeper.server.watch.IWatchManager v;
org.apache.zookeeper.server.DataTree v;
boolean v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.io.PrintWriter;
v := @parameter: boolean;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: void dumpWatches(java.io.PrintWriter,boolean)>(v, v);
return;
}
public synchronized org.apache.zookeeper.server.watch.WatchesReport getWatches()
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.watch.IWatchManager v;
org.apache.zookeeper.server.watch.WatchesReport v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: org.apache.zookeeper.server.watch.WatchesReport getWatches()>();
return v;
}
public synchronized org.apache.zookeeper.server.watch.WatchesPathReport getWatchesByPath()
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.watch.IWatchManager v;
org.apache.zookeeper.server.watch.WatchesPathReport v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: org.apache.zookeeper.server.watch.WatchesPathReport getWatchesByPath()>();
return v;
}
public synchronized org.apache.zookeeper.server.watch.WatchesSummary getWatchesSummary()
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.watch.IWatchManager v;
org.apache.zookeeper.server.watch.WatchesSummary v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: org.apache.zookeeper.server.watch.WatchesSummary getWatchesSummary()>();
return v;
}
public void dumpEphemerals(java.io.PrintWriter)
{
java.lang.Throwable v;
long v;
java.util.Map v, v;
int v;
java.lang.String v, v, v, v;
boolean v, v;
java.io.PrintWriter v;
java.util.Iterator v, v;
java.util.Set v, v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v, v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.io.PrintWriter;
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = interfaceinvoke v.<java.util.Map: java.util.Set keySet()>();
v = interfaceinvoke v.<java.util.Set: int size()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Sessions with Ephemerals (\u):");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = interfaceinvoke v.<java.util.Map: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
v = virtualinvoke v.<java.lang.Long: long longValue()>();
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("0x\u0001");
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>(v);
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(":");
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
if v == null goto label;
entermonitor v;
label:
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Object)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\t\u0001");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
goto label;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public void shutdownWatcher()
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.watch.IWatchManager v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: void shutdown()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: void shutdown()>();
return;
}
public java.util.Map getEphemerals()
{
java.lang.Throwable v;
java.util.Iterator v;
java.util.Set v;
java.util.HashMap v;
java.util.HashSet v;
java.util.Map v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v, v, v, v;
boolean v;
v := @this: org.apache.zookeeper.server.DataTree;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = v.<org.apache.zookeeper.server.DataTree: java.util.Map ephemerals>;
v = interfaceinvoke v.<java.util.Map: java.util.Set entrySet()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
entermonitor v;
label:
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getKey()>();
v = new java.util.HashSet;
v = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
specialinvoke v.<java.util.HashSet: void <init>(java.util.Collection)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return v;
catch java.lang.Throwable from label to label with label;
}
public void removeCnxn(org.apache.zookeeper.Watcher)
{
org.apache.zookeeper.server.watch.IWatchManager v, v;
org.apache.zookeeper.Watcher v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.zookeeper.Watcher;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: void removeWatcher(org.apache.zookeeper.Watcher)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: void removeWatcher(org.apache.zookeeper.Watcher)>(v);
return;
}
public void setWatches(long, java.util.List, java.util.List, java.util.List, java.util.List, java.util.List, org.apache.zookeeper.Watcher)
{
org.apache.zookeeper.server.watch.WatcherMode v, v, v;
org.apache.zookeeper.server.watch.IWatchManager v, v, v, v, v, v;
byte v, v;
boolean v, v, v, v, v;
org.apache.zookeeper.server.DataNode v, v, v;
org.apache.zookeeper.Watcher$Event$KeeperState v, v, v, v, v;
java.util.List v, v, v, v, v;
long v, v, v;
org.apache.zookeeper.data.StatPersisted v, v;
java.util.Iterator v, v, v, v, v;
org.apache.zookeeper.Watcher v;
org.apache.zookeeper.WatchedEvent v, v, v, v, v;
org.apache.zookeeper.Watcher$Event$EventType v, v, v, v, v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v, v, v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: long;
v := @parameter: java.util.List;
v := @parameter: java.util.List;
v := @parameter: java.util.List;
v := @parameter: java.util.List;
v := @parameter: java.util.List;
v := @parameter: org.apache.zookeeper.Watcher;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.WatchedEvent;
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeDeleted>;
v = <org.apache.zookeeper.Watcher$Event$KeeperState: org.apache.zookeeper.Watcher$Event$KeeperState SyncConnected>;
specialinvoke v.<org.apache.zookeeper.WatchedEvent: void <init>(org.apache.zookeeper.Watcher$Event$EventType,org.apache.zookeeper.Watcher$Event$KeeperState,java.lang.String)>(v, v, v);
interfaceinvoke v.<org.apache.zookeeper.Watcher: void process(org.apache.zookeeper.WatchedEvent)>(v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getMzxid()>();
v = v cmp v;
if v <= 0 goto label;
v = new org.apache.zookeeper.WatchedEvent;
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeDataChanged>;
v = <org.apache.zookeeper.Watcher$Event$KeeperState: org.apache.zookeeper.Watcher$Event$KeeperState SyncConnected>;
specialinvoke v.<org.apache.zookeeper.WatchedEvent: void <init>(org.apache.zookeeper.Watcher$Event$EventType,org.apache.zookeeper.Watcher$Event$KeeperState,java.lang.String)>(v, v, v);
interfaceinvoke v.<org.apache.zookeeper.Watcher: void process(org.apache.zookeeper.WatchedEvent)>(v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher)>(v, v);
goto label;
label:
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>(v);
if v == null goto label;
v = new org.apache.zookeeper.WatchedEvent;
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeCreated>;
v = <org.apache.zookeeper.Watcher$Event$KeeperState: org.apache.zookeeper.Watcher$Event$KeeperState SyncConnected>;
specialinvoke v.<org.apache.zookeeper.WatchedEvent: void <init>(org.apache.zookeeper.Watcher$Event$EventType,org.apache.zookeeper.Watcher$Event$KeeperState,java.lang.String)>(v, v, v);
interfaceinvoke v.<org.apache.zookeeper.Watcher: void process(org.apache.zookeeper.WatchedEvent)>(v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher)>(v, v);
goto label;
label:
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataNode getNode(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.WatchedEvent;
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeDeleted>;
v = <org.apache.zookeeper.Watcher$Event$KeeperState: org.apache.zookeeper.Watcher$Event$KeeperState SyncConnected>;
specialinvoke v.<org.apache.zookeeper.WatchedEvent: void <init>(org.apache.zookeeper.Watcher$Event$EventType,org.apache.zookeeper.Watcher$Event$KeeperState,java.lang.String)>(v, v, v);
interfaceinvoke v.<org.apache.zookeeper.Watcher: void process(org.apache.zookeeper.WatchedEvent)>(v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: long getPzxid()>();
v = v cmp v;
if v <= 0 goto label;
v = new org.apache.zookeeper.WatchedEvent;
v = <org.apache.zookeeper.Watcher$Event$EventType: org.apache.zookeeper.Watcher$Event$EventType NodeChildrenChanged>;
v = <org.apache.zookeeper.Watcher$Event$KeeperState: org.apache.zookeeper.Watcher$Event$KeeperState SyncConnected>;
specialinvoke v.<org.apache.zookeeper.WatchedEvent: void <init>(org.apache.zookeeper.Watcher$Event$EventType,org.apache.zookeeper.Watcher$Event$KeeperState,java.lang.String)>(v, v, v);
interfaceinvoke v.<org.apache.zookeeper.Watcher: void process(org.apache.zookeeper.WatchedEvent)>(v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher)>(v, v);
goto label;
label:
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode PERSISTENT>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode PERSISTENT>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
goto label;
label:
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode PERSISTENT_RECURSIVE>;
interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean addWatch(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
goto label;
label:
return;
}
public void setCversionPzxid(java.lang.String, int, long) throws org.apache.zookeeper.KeeperException$NoNodeException
{
java.lang.Throwable v;
long v;
org.apache.zookeeper.KeeperException$NoNodeException v;
int v, v, v, v, v, v;
org.apache.zookeeper.data.StatPersisted v, v, v, v;
java.lang.String v;
boolean v;
org.apache.zookeeper.server.DataNode v;
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.NodeHashMap v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: int;
v := @parameter: long;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("/");
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: org.apache.zookeeper.server.DataNode get(java.lang.String)>(v);
if v != null goto label;
v = new org.apache.zookeeper.KeeperException$NoNodeException;
specialinvoke v.<org.apache.zookeeper.KeeperException$NoNodeException: void <init>(java.lang.String)>(v);
throw v;
label:
entermonitor v;
label:
v = (int) -1;
if v != v goto label;
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: int getCversion()>();
v = v + 1;
label:
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
v = virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: int getCversion()>();
if v <= v goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void preChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setCversion(int)>(v);
v = v.<org.apache.zookeeper.server.DataNode: org.apache.zookeeper.data.StatPersisted stat>;
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setPzxid(long)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: void postChange(java.lang.String,org.apache.zookeeper.server.DataNode)>(v, v);
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public boolean containsWatcher(java.lang.String, org.apache.zookeeper.Watcher$WatcherType, org.apache.zookeeper.Watcher)
{
org.apache.zookeeper.server.watch.WatcherMode v, v, v, v;
org.apache.zookeeper.server.watch.IWatchManager v, v, v, v, v, v;
int[] v;
int v, v;
java.lang.String v;
boolean v, v, v;
org.apache.zookeeper.Watcher v;
org.apache.zookeeper.Watcher$WatcherType v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: org.apache.zookeeper.Watcher$WatcherType;
v := @parameter: org.apache.zookeeper.Watcher;
v = 0;
v = <org.apache.zookeeper.server.DataTree$1: int[] $SwitchMap$org$apache$zookeeper$Watcher$WatcherType>;
v = virtualinvoke v.<org.apache.zookeeper.Watcher$WatcherType: int ordinal()>();
v = v[v];
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
default: goto label;
};
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode STANDARD>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean containsWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode STANDARD>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean containsWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode PERSISTENT>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean containsWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode PERSISTENT_RECURSIVE>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean containsWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean containsWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, null);
if v == 0 goto label;
v = 1;
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean containsWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, null);
if v == 0 goto label;
v = 1;
label:
return v;
}
public boolean removeWatch(java.lang.String, org.apache.zookeeper.Watcher$WatcherType, org.apache.zookeeper.Watcher)
{
org.apache.zookeeper.server.watch.WatcherMode v, v, v, v, v;
org.apache.zookeeper.server.watch.IWatchManager v, v, v, v, v, v, v;
int[] v;
int v, v;
java.lang.String v;
boolean v, v, v, v, v;
org.apache.zookeeper.Watcher v;
org.apache.zookeeper.Watcher$WatcherType v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: org.apache.zookeeper.Watcher$WatcherType;
v := @parameter: org.apache.zookeeper.Watcher;
v = 0;
v = <org.apache.zookeeper.server.DataTree$1: int[] $SwitchMap$org$apache$zookeeper$Watcher$WatcherType>;
v = virtualinvoke v.<org.apache.zookeeper.Watcher$WatcherType: int ordinal()>();
v = v[v];
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
default: goto label;
};
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode STANDARD>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean removeWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode STANDARD>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean removeWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode PERSISTENT>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean removeWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
if v == 0 goto label;
v = 1;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode PERSISTENT>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean removeWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = <org.apache.zookeeper.server.watch.WatcherMode: org.apache.zookeeper.server.watch.WatcherMode PERSISTENT_RECURSIVE>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean removeWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, v);
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager childWatches>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean removeWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, null);
if v == 0 goto label;
v = 1;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.watch.IWatchManager dataWatches>;
v = interfaceinvoke v.<org.apache.zookeeper.server.watch.IWatchManager: boolean removeWatcher(java.lang.String,org.apache.zookeeper.Watcher,org.apache.zookeeper.server.watch.WatcherMode)>(v, v, null);
if v == 0 goto label;
v = 1;
label:
return v;
}
public org.apache.zookeeper.server.ReferenceCountedACLCache getReferenceCountedAclCache()
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.ReferenceCountedACLCache v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.ReferenceCountedACLCache aclCache>;
return v;
}
private void updateReadStat(java.lang.String, long)
{
long v, v, v;
org.apache.zookeeper.metrics.SummarySet v;
org.apache.zookeeper.server.ServerMetrics v;
int v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: long;
v = staticinvoke <org.apache.zookeeper.common.PathUtils: java.lang.String getTopNamespace(java.lang.String)>(v);
if v != null goto label;
return;
label:
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + v;
v = v + 68L;
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.SummarySet READ_PER_NAMESPACE>;
interfaceinvoke v.<org.apache.zookeeper.metrics.SummarySet: void add(java.lang.String,long)>(v, v);
return;
}
private void updateWriteStat(java.lang.String, long)
{
long v, v;
org.apache.zookeeper.metrics.SummarySet v;
org.apache.zookeeper.server.ServerMetrics v;
int v;
org.apache.zookeeper.server.DataTree v;
java.lang.String v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: java.lang.String;
v := @parameter: long;
v = staticinvoke <org.apache.zookeeper.common.PathUtils: java.lang.String getTopNamespace(java.lang.String)>(v);
if v != null goto label;
return;
label:
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.SummarySet WRITE_PER_NAMESPACE>;
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + v;
interfaceinvoke v.<org.apache.zookeeper.metrics.SummarySet: void add(java.lang.String,long)>(v, v);
return;
}
private void logZxidDigest(long, long)
{
java.lang.Throwable v;
org.apache.zookeeper.server.DigestCalculator v;
long v, v, v, v;
byte v;
int v, v;
org.apache.zookeeper.server.DataTree v;
java.util.LinkedList v, v, v, v;
org.apache.zookeeper.server.DataTree$ZxidDigest v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: long;
v := @parameter: long;
v = new org.apache.zookeeper.server.DataTree$ZxidDigest;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DigestCalculator digestCalculator>;
v = virtualinvoke v.<org.apache.zookeeper.server.DigestCalculator: int getDigestVersion()>();
specialinvoke v.<org.apache.zookeeper.server.DataTree$ZxidDigest: void <init>(org.apache.zookeeper.server.DataTree,long,int,long)>(v, v, v, v);
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest lastProcessedZxidDigest> = v;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long zxid>;
v = v % 128L;
v = v cmp 0L;
if v != 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.LinkedList digestLog>;
entermonitor v;
label:
v = v.<org.apache.zookeeper.server.DataTree: java.util.LinkedList digestLog>;
virtualinvoke v.<java.util.LinkedList: boolean add(java.lang.Object)>(v);
v = v.<org.apache.zookeeper.server.DataTree: java.util.LinkedList digestLog>;
v = virtualinvoke v.<java.util.LinkedList: int size()>();
if v <= 1024 goto label;
v = v.<org.apache.zookeeper.server.DataTree: java.util.LinkedList digestLog>;
virtualinvoke v.<java.util.LinkedList: java.lang.Object poll()>();
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
public boolean serializeZxidDigest(org.apache.jute.OutputArchive) throws java.io.IOException
{
org.apache.jute.OutputArchive v;
org.apache.zookeeper.server.DataTree v;
boolean v;
org.apache.zookeeper.server.DataTree$ZxidDigest v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.OutputArchive;
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: boolean isDigestEnabled()>();
if v != 0 goto label;
return 0;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest lastProcessedZxidDigest>;
if v != null goto label;
v = new org.apache.zookeeper.server.DataTree$ZxidDigest;
specialinvoke v.<org.apache.zookeeper.server.DataTree$ZxidDigest: void <init>(org.apache.zookeeper.server.DataTree)>(v);
v = v;
label:
virtualinvoke v.<org.apache.zookeeper.server.DataTree$ZxidDigest: void serialize(org.apache.jute.OutputArchive)>(v);
return 1;
}
public boolean deserializeZxidDigest(org.apache.jute.InputArchive, long) throws java.io.IOException
{
java.lang.Object[] v;
org.apache.jute.InputArchive v;
long v, v, v, v, v, v;
java.lang.Integer v;
byte v, v;
java.lang.Long v;
int v;
java.lang.String v, v, v;
boolean v;
org.apache.zookeeper.server.DataTree$ZxidDigest v, v, v, v, v, v, v;
org.slf4j.Logger v, v, v, v;
java.io.EOFException v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.InputArchive;
v := @parameter: long;
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: boolean isDigestEnabled()>();
if v != 0 goto label;
return 0;
label:
v = new org.apache.zookeeper.server.DataTree$ZxidDigest;
specialinvoke v.<org.apache.zookeeper.server.DataTree$ZxidDigest: void <init>(org.apache.zookeeper.server.DataTree)>(v);
virtualinvoke v.<org.apache.zookeeper.server.DataTree$ZxidDigest: void deserialize(org.apache.jute.InputArchive)>(v);
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long zxid>;
v = v cmp 0L;
if v <= 0 goto label;
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot> = v;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[3];
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: int digestVersion>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long zxid>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v[1] = v;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long digest>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object[])>("The digest in the snapshot has digest version of {}, with zxid as 0x{}, and digest value as {}", v);
goto label;
label:
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot> = null;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String)>("The digest value is empty in snapshot");
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
if v == null goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long zxid>;
v = v cmp v;
if v >= 0 goto label;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long zxid>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("The zxid of snapshot digest 0x{} is smaller than the known snapshot highest zxid, the snapshot started with zxid 0x{}. It will be invalid to use this snapshot digest associated with this zxid, will ignore comparing it.", v, v);
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot> = null;
label:
return 1;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>("Got EOF exception while reading the digest, likely due to the reading an older snapshot.");
return 0;
catch java.io.EOFException from label to label with label;
}
public boolean serializeLastProcessedZxid(org.apache.jute.OutputArchive) throws java.io.IOException
{
org.apache.jute.OutputArchive v;
org.apache.zookeeper.server.DataTree v;
long v;
boolean v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.OutputArchive;
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: boolean isSerializeLastProcessedZxidEnabled()>();
if v != 0 goto label;
return 0;
label:
v = v.<org.apache.zookeeper.server.DataTree: long lastProcessedZxid>;
interfaceinvoke v.<org.apache.jute.OutputArchive: void writeLong(long,java.lang.String)>(v, "lastZxid");
return 1;
}
public boolean deserializeLastProcessedZxid(org.apache.jute.InputArchive) throws java.io.IOException
{
org.slf4j.Logger v;
org.apache.jute.InputArchive v;
org.apache.zookeeper.server.DataTree v;
long v;
java.io.EOFException v;
boolean v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.jute.InputArchive;
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: boolean isSerializeLastProcessedZxidEnabled()>();
if v != 0 goto label;
return 0;
label:
v = interfaceinvoke v.<org.apache.jute.InputArchive: long readLong(java.lang.String)>("lastZxid");
v.<org.apache.zookeeper.server.DataTree: long lastProcessedZxid> = v;
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void warn(java.lang.String)>("Got EOFException while reading the last processed zxid, likely due to reading an older snapshot.");
return 0;
label:
return 1;
catch java.io.EOFException from label to label with label;
}
public void compareSnapshotDigests(long)
{
org.apache.zookeeper.server.RateLogger v;
org.apache.zookeeper.server.DigestCalculator v, v;
long v, v, v, v, v, v, v;
java.lang.Integer v, v;
byte v, v, v, v;
int v, v, v, v;
java.lang.String v;
org.apache.zookeeper.server.DataTree$ZxidDigest v, v, v, v, v, v, v;
org.slf4j.Logger v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: long;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long zxid>;
v = v cmp v;
if v != 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DigestCalculator digestCalculator>;
v = virtualinvoke v.<org.apache.zookeeper.server.DigestCalculator: int getDigestVersion()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: int digestVersion>;
if v == v goto label;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: int digestVersion>;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DigestCalculator digestCalculator>;
v = virtualinvoke v.<org.apache.zookeeper.server.DigestCalculator: int getDigestVersion()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object,java.lang.Object)>("Digest version changed, local: {}, new: {}, skip comparing digest now.", v, v);
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot> = null;
return;
label:
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: long getTreeDigest()>();
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long getDigest()>();
v = v cmp v;
if v == 0 goto label;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void reportDigestMismatch(long)>(v);
label:
v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot> = null;
goto label;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long zxid>;
v = v cmp 0L;
if v == 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long zxid>;
v = v cmp v;
if v <= 0 goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.RateLogger RATE_LOGGER>;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
v = v.<org.apache.zookeeper.server.DataTree$ZxidDigest: long zxid>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
virtualinvoke v.<org.apache.zookeeper.server.RateLogger: void rateLimitLog(java.lang.String,java.lang.String)>("The txn 0x{} of snapshot digest does not exist.", v);
label:
return;
}
public boolean compareDigest(org.apache.zookeeper.txn.TxnHeader, org.apache.jute.Record, org.apache.zookeeper.txn.TxnDigest)
{
java.lang.Object[] v;
org.apache.zookeeper.server.RateLogger v, v;
org.apache.zookeeper.server.DigestCalculator v;
long v, v, v;
org.apache.zookeeper.txn.TxnDigest v;
byte v;
java.lang.Long v, v, v, v;
int v, v;
java.lang.String v, v;
boolean v, v;
org.apache.zookeeper.server.DataTree$ZxidDigest v;
org.slf4j.Logger v, v, v;
org.apache.jute.Record v;
org.apache.zookeeper.txn.TxnHeader v;
org.apache.zookeeper.server.DataTree v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.zookeeper.txn.TxnHeader;
v := @parameter: org.apache.jute.Record;
v := @parameter: org.apache.zookeeper.txn.TxnDigest;
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnHeader: long getZxid()>();
v = staticinvoke <org.apache.zookeeper.server.ZooKeeperServer: boolean isDigestEnabled()>();
if v == 0 goto label;
if v != null goto label;
label:
return 1;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
if v == null goto label;
return 1;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DigestCalculator digestCalculator>;
v = virtualinvoke v.<org.apache.zookeeper.server.DigestCalculator: int getDigestVersion()>();
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnDigest: int getVersion()>();
if v == v goto label;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.RateLogger RATE_LOGGER>;
v = staticinvoke <java.lang.String: java.lang.String valueOf(long)>(v);
virtualinvoke v.<org.apache.zookeeper.server.RateLogger: void rateLimitLog(java.lang.String,java.lang.String)>("Digest version not the same on zxid.", v);
return 1;
label:
v = virtualinvoke v.<org.apache.zookeeper.txn.TxnDigest: long getTreeDigest()>();
v = virtualinvoke v.<org.apache.zookeeper.server.DataTree: long getTreeDigest()>();
v = v cmp v;
if v == 0 goto label;
virtualinvoke v.<org.apache.zookeeper.server.DataTree: void reportDigestMismatch(long)>(v);
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Digest in log: {}, actual tree: {}", v, v);
v = v.<org.apache.zookeeper.server.DataTree: boolean firstMismatchTxn>;
if v == 0 goto label;
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = newarray (java.lang.Object)[4];
v[0] = v;
v[1] = v;
v[2] = v;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
v[3] = v;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Object[])>("First digest mismatch on txn: {}, {}, expected digest is {}, actual digest is {}, ", v);
v.<org.apache.zookeeper.server.DataTree: boolean firstMismatchTxn> = 0;
label:
return 0;
label:
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.RateLogger RATE_LOGGER>;
virtualinvoke v.<org.apache.zookeeper.server.RateLogger: void flush()>();
v = <org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG>;
v = staticinvoke <java.lang.Long: java.lang.String toHexString(long)>(v);
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Digests are matching for Zxid: {}, Digest in log and actual tree: {}", v, v);
return 1;
}
public void reportDigestMismatch(long)
{
java.util.Iterator v;
org.apache.zookeeper.metrics.Counter v;
org.apache.zookeeper.server.RateLogger v;
long v;
java.util.List v;
org.apache.zookeeper.server.ServerMetrics v;
org.apache.zookeeper.server.DataTree v;
java.lang.Object v;
java.lang.String v;
boolean v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: long;
v = staticinvoke <org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.server.ServerMetrics getMetrics()>();
v = v.<org.apache.zookeeper.server.ServerMetrics: org.apache.zookeeper.metrics.Counter DIGEST_MISMATCHES_COUNT>;
interfaceinvoke v.<org.apache.zookeeper.metrics.Counter: void add(long)>(1L);
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.RateLogger RATE_LOGGER>;
v = staticinvoke <java.lang.String: java.lang.String valueOf(long)>(v);
virtualinvoke v.<org.apache.zookeeper.server.RateLogger: void rateLimitLog(java.lang.String,java.lang.String)>("Digests are not matching. Value is Zxid.", v);
v = v.<org.apache.zookeeper.server.DataTree: java.util.List digestWatchers>;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
interfaceinvoke v.<org.apache.zookeeper.DigestWatcher: void process(long)>(v);
goto label;
label:
return;
}
public long getTreeDigest()
{
org.apache.zookeeper.server.DataTree v;
long v;
org.apache.zookeeper.server.NodeHashMap v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.NodeHashMap nodes>;
v = interfaceinvoke v.<org.apache.zookeeper.server.NodeHashMap: long getDigest()>();
return v;
}
public org.apache.zookeeper.server.DataTree$ZxidDigest getLastProcessedZxidDigest()
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.DataTree$ZxidDigest v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest lastProcessedZxidDigest>;
return v;
}
public org.apache.zookeeper.server.DataTree$ZxidDigest getDigestFromLoadedSnapshot()
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.server.DataTree$ZxidDigest v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: org.apache.zookeeper.server.DataTree$ZxidDigest digestFromLoadedSnapshot>;
return v;
}
public void addDigestWatcher(org.apache.zookeeper.DigestWatcher)
{
org.apache.zookeeper.server.DataTree v;
org.apache.zookeeper.DigestWatcher v;
java.util.List v;
v := @this: org.apache.zookeeper.server.DataTree;
v := @parameter: org.apache.zookeeper.DigestWatcher;
v = v.<org.apache.zookeeper.server.DataTree: java.util.List digestWatchers>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
return;
}
public java.util.List getDigestLog()
{
java.lang.Throwable v;
org.apache.zookeeper.server.DataTree v;
java.util.LinkedList v, v, v;
v := @this: org.apache.zookeeper.server.DataTree;
v = v.<org.apache.zookeeper.server.DataTree: java.util.LinkedList digestLog>;
entermonitor v;
label:
v = new java.util.LinkedList;
v = v.<org.apache.zookeeper.server.DataTree: java.util.LinkedList digestLog>;
specialinvoke v.<java.util.LinkedList: void <init>(java.util.Collection)>(v);
exitmonitor v;
label:
return v;
label:
v := @caughtexception;
exitmonitor v;
throw v;
catch java.lang.Throwable from label to label with label;
}
public static org.apache.zookeeper.data.StatPersisted createStat(long, long, long)
{
org.apache.zookeeper.data.StatPersisted v;
long v, v, v;
v := @parameter: long;
v := @parameter: long;
v := @parameter: long;
v = new org.apache.zookeeper.data.StatPersisted;
specialinvoke v.<org.apache.zookeeper.data.StatPersisted: void <init>()>();
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setCtime(long)>(v);
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setMtime(long)>(v);
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setCzxid(long)>(v);
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setMzxid(long)>(v);
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setPzxid(long)>(v);
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setVersion(int)>(0);
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setAversion(int)>(0);
virtualinvoke v.<org.apache.zookeeper.data.StatPersisted: void setEphemeralOwner(long)>(v);
return v;
}
static void <clinit>()
{
int v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v;
boolean v, v;
org.slf4j.Logger v;
java.lang.Class v;
v = class "Lorg/apache/zookeeper/server/DataTree;";
v = virtualinvoke v.<java.lang.Class: boolean desiredAssertionStatus()>();
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
<org.apache.zookeeper.server.DataTree: boolean $assertionsDisabled> = v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/zookeeper/server/DataTree;");
<org.apache.zookeeper.server.DataTree: org.slf4j.Logger LOG> = v;
v = "/zookeeper";
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(1);
<org.apache.zookeeper.server.DataTree: java.lang.String procChildZookeeper> = v;
v = "/zookeeper/quota";
v = "/zookeeper";
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
<org.apache.zookeeper.server.DataTree: java.lang.String quotaChildZookeeper> = v;
v = "/zookeeper/config";
v = "/zookeeper";
v = virtualinvoke v.<java.lang.String: int length()>();
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
<org.apache.zookeeper.server.DataTree: java.lang.String configChildZookeeper> = v;
return;
}
}