public class org.apache.zookeeper.test.ClientBase$CountdownWatcher extends java.lang.Object implements org.apache.zookeeper.Watcher
{
volatile java.util.concurrent.CountDownLatch clientConnected;
volatile boolean connected;
volatile boolean syncConnected;
volatile boolean readOnlyConnected;
public void <init>()
{
org.apache.zookeeper.test.ClientBase$CountdownWatcher v;
v := @this: org.apache.zookeeper.test.ClientBase$CountdownWatcher;
specialinvoke v.<java.lang.Object: void <init>()>();
virtualinvoke v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: void reset()>();
return;
}
public synchronized void reset()
{
java.util.concurrent.CountDownLatch v;
org.apache.zookeeper.test.ClientBase$CountdownWatcher v;
v := @this: org.apache.zookeeper.test.ClientBase$CountdownWatcher;
v = new java.util.concurrent.CountDownLatch;
specialinvoke v.<java.util.concurrent.CountDownLatch: void <init>(int)>(1);
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: java.util.concurrent.CountDownLatch clientConnected> = v;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected> = 0;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean syncConnected> = 0;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean readOnlyConnected> = 0;
return;
}
public synchronized void process(org.apache.zookeeper.WatchedEvent)
{
org.apache.zookeeper.Watcher$Event$KeeperState v, v, v;
java.util.concurrent.CountDownLatch v;
org.apache.zookeeper.WatchedEvent v;
org.apache.zookeeper.test.ClientBase$CountdownWatcher v;
boolean v;
v := @this: org.apache.zookeeper.test.ClientBase$CountdownWatcher;
v := @parameter: org.apache.zookeeper.WatchedEvent;
v = virtualinvoke v.<org.apache.zookeeper.WatchedEvent: org.apache.zookeeper.Watcher$Event$KeeperState getState()>();
v = <org.apache.zookeeper.Watcher$Event$KeeperState: org.apache.zookeeper.Watcher$Event$KeeperState SyncConnected>;
if v != v goto label;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected> = 1;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean syncConnected> = 1;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean readOnlyConnected> = 0;
goto label;
label:
v = <org.apache.zookeeper.Watcher$Event$KeeperState: org.apache.zookeeper.Watcher$Event$KeeperState ConnectedReadOnly>;
if v != v goto label;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected> = 1;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean syncConnected> = 0;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean readOnlyConnected> = 1;
goto label;
label:
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected> = 0;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean syncConnected> = 0;
v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean readOnlyConnected> = 0;
label:
virtualinvoke v.<java.lang.Object: void notifyAll()>();
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected>;
if v == 0 goto label;
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: java.util.concurrent.CountDownLatch clientConnected>;
virtualinvoke v.<java.util.concurrent.CountDownLatch: void countDown()>();
label:
return;
}
public synchronized boolean isConnected()
{
org.apache.zookeeper.test.ClientBase$CountdownWatcher v;
boolean v;
v := @this: org.apache.zookeeper.test.ClientBase$CountdownWatcher;
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected>;
return v;
}
protected synchronized java.lang.String connectionDescription()
{
java.lang.Object[] v;
org.apache.zookeeper.test.ClientBase$CountdownWatcher v;
java.lang.Boolean v, v, v;
java.lang.String v;
boolean v, v, v;
v := @this: org.apache.zookeeper.test.ClientBase$CountdownWatcher;
v = newarray (java.lang.Object)[3];
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
v[0] = v;
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean syncConnected>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
v[1] = v;
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean readOnlyConnected>;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(v);
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("connected(%s), syncConnected(%s), readOnlyConnected(%s)", v);
return v;
}
public synchronized void waitForConnected(long) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException
{
java.util.concurrent.TimeoutException v;
long v, v, v, v, v;
org.apache.zookeeper.test.ClientBase$CountdownWatcher v;
byte v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.zookeeper.test.ClientBase$CountdownWatcher;
v := @parameter: long;
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v + v;
v = v;
label:
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected>;
if v != 0 goto label;
v = v cmp 0L;
if v <= 0 goto label;
virtualinvoke v.<java.lang.Object: void wait(long)>(v);
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v - v;
goto label;
label:
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected>;
if v != 0 goto label;
v = new java.util.concurrent.TimeoutException;
v = virtualinvoke v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: java.lang.String connectionDescription()>();
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[])>("Failed to connect to ZooKeeper server: \u0001");
specialinvoke v.<java.util.concurrent.TimeoutException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public synchronized void waitForSyncConnected(long) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException
{
java.util.concurrent.TimeoutException v;
long v, v, v, v, v;
org.apache.zookeeper.test.ClientBase$CountdownWatcher v;
byte v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.zookeeper.test.ClientBase$CountdownWatcher;
v := @parameter: long;
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v + v;
v = v;
label:
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean syncConnected>;
if v != 0 goto label;
v = v cmp 0L;
if v <= 0 goto label;
virtualinvoke v.<java.lang.Object: void wait(long)>(v);
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v - v;
goto label;
label:
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean syncConnected>;
if v != 0 goto label;
v = new java.util.concurrent.TimeoutException;
v = virtualinvoke v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: java.lang.String connectionDescription()>();
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[])>("Failed to connect to read-write ZooKeeper server: \u0001");
specialinvoke v.<java.util.concurrent.TimeoutException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public synchronized void waitForReadOnlyConnected(long) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException
{
java.util.concurrent.TimeoutException v;
long v, v, v, v, v;
org.apache.zookeeper.test.ClientBase$CountdownWatcher v;
byte v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.zookeeper.test.ClientBase$CountdownWatcher;
v := @parameter: long;
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v + v;
v = v;
label:
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean readOnlyConnected>;
if v != 0 goto label;
v = v cmp 0L;
if v <= 0 goto label;
virtualinvoke v.<java.lang.Object: void wait(long)>(v);
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v - v;
goto label;
label:
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean readOnlyConnected>;
if v != 0 goto label;
v = new java.util.concurrent.TimeoutException;
v = virtualinvoke v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: java.lang.String connectionDescription()>();
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[])>("Failed to connect in read-only mode to ZooKeeper server: \u0001");
specialinvoke v.<java.util.concurrent.TimeoutException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public synchronized void waitForDisconnected(long) throws java.lang.InterruptedException, java.util.concurrent.TimeoutException
{
java.util.concurrent.TimeoutException v;
long v, v, v, v, v;
org.apache.zookeeper.test.ClientBase$CountdownWatcher v;
byte v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.zookeeper.test.ClientBase$CountdownWatcher;
v := @parameter: long;
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v + v;
v = v;
label:
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected>;
if v == 0 goto label;
v = v cmp 0L;
if v <= 0 goto label;
virtualinvoke v.<java.lang.Object: void wait(long)>(v);
v = staticinvoke <org.apache.zookeeper.common.Time: long currentElapsedTime()>();
v = v - v;
goto label;
label:
v = v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: boolean connected>;
if v == 0 goto label;
v = new java.util.concurrent.TimeoutException;
v = virtualinvoke v.<org.apache.zookeeper.test.ClientBase$CountdownWatcher: java.lang.String connectionDescription()>();
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[])>("Did not disconnect: \u0001");
specialinvoke v.<java.util.concurrent.TimeoutException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
}