public class io.vertx.core.impl.HAManager
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.core.impl.HAManager
super_class: java.lang.Object
{
private static final io.vertx.core.impl.logging.Logger log;
descriptor: Lio/vertx/core/impl/logging/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final long QUORUM_CHECK_PERIOD;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1000
private final io.vertx.core.impl.VertxInternal vertx;
descriptor: Lio/vertx/core/impl/VertxInternal;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.vertx.core.impl.DeploymentManager deploymentManager;
descriptor: Lio/vertx/core/impl/DeploymentManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.vertx.core.impl.VerticleManager verticleFactoryManager;
descriptor: Lio/vertx/core/impl/VerticleManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.vertx.core.spi.cluster.ClusterManager clusterManager;
descriptor: Lio/vertx/core/spi/cluster/ClusterManager;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final int quorumSize;
descriptor: I
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.lang.String group;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.vertx.core.json.JsonObject haInfo;
descriptor: Lio/vertx/core/json/JsonObject;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<java.lang.String, java.lang.String> clusterMap;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
private final java.lang.String nodeID;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Queue<java.lang.Runnable> toDeployOnQuorum;
descriptor: Ljava/util/Queue;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Queue<Ljava/lang/Runnable;>;
private final boolean enabled;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private long quorumTimerID;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private long checkQuorumTimerID;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private volatile boolean attainedQuorum;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile io.vertx.core.impl.FailoverCompleteHandler failoverCompleteHandler;
descriptor: Lio/vertx/core/impl/FailoverCompleteHandler;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile boolean failDuringFailover;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile boolean stopped;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile boolean killed;
descriptor: Z
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private java.util.function.Consumer<java.util.Set<java.lang.String>> clusterViewChangedHandler;
descriptor: Ljava/util/function/Consumer;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/function/Consumer<Ljava/util/Set<Ljava/lang/String;>;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lio/vertx/core/impl/HAManager;
invokestatic io.vertx.core.impl.logging.LoggerFactory.getLogger:(Ljava/lang/Class;)Lio/vertx/core/impl/logging/Logger;
putstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
1: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(io.vertx.core.impl.VertxInternal, io.vertx.core.impl.DeploymentManager, io.vertx.core.impl.VerticleManager, io.vertx.core.spi.cluster.ClusterManager, java.util.Map<java.lang.String, java.lang.String>, int, java.lang.String, );
descriptor: (Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/impl/DeploymentManager;Lio/vertx/core/impl/VerticleManager;Lio/vertx/core/spi/cluster/ClusterManager;Ljava/util/Map;ILjava/lang/String;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=9, args_size=9
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 start local 8 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.ConcurrentLinkedQueue
dup
invokespecial java.util.concurrent.ConcurrentLinkedQueue.<init>:()V
putfield io.vertx.core.impl.HAManager.toDeployOnQuorum:Ljava/util/Queue;
2: aload 0
ldc -1
putfield io.vertx.core.impl.HAManager.checkQuorumTimerID:J
3: aload 0
aload 1
putfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
4: aload 0
aload 2
putfield io.vertx.core.impl.HAManager.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
5: aload 0
aload 3
putfield io.vertx.core.impl.HAManager.verticleFactoryManager:Lio/vertx/core/impl/VerticleManager;
6: aload 0
aload 4
putfield io.vertx.core.impl.HAManager.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
7: aload 0
aload 5
putfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
8: aload 0
iload 8
ifeq 9
iload 6
goto 10
StackMap locals: io.vertx.core.impl.HAManager io.vertx.core.impl.VertxInternal io.vertx.core.impl.DeploymentManager io.vertx.core.impl.VerticleManager io.vertx.core.spi.cluster.ClusterManager java.util.Map int java.lang.String int
StackMap stack: io.vertx.core.impl.HAManager
9: iconst_0
StackMap locals: io.vertx.core.impl.HAManager io.vertx.core.impl.VertxInternal io.vertx.core.impl.DeploymentManager io.vertx.core.impl.VerticleManager io.vertx.core.spi.cluster.ClusterManager java.util.Map int java.lang.String int
StackMap stack: io.vertx.core.impl.HAManager int
10: putfield io.vertx.core.impl.HAManager.quorumSize:I
11: aload 0
iload 8
ifeq 12
aload 7
goto 13
StackMap locals:
StackMap stack: io.vertx.core.impl.HAManager
12: ldc "__DISABLED__"
StackMap locals: io.vertx.core.impl.HAManager io.vertx.core.impl.VertxInternal io.vertx.core.impl.DeploymentManager io.vertx.core.impl.VerticleManager io.vertx.core.spi.cluster.ClusterManager java.util.Map int java.lang.String int
StackMap stack: io.vertx.core.impl.HAManager java.lang.String
13: putfield io.vertx.core.impl.HAManager.group:Ljava/lang/String;
14: aload 0
iload 8
putfield io.vertx.core.impl.HAManager.enabled:Z
15: aload 0
new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
ldc "verticles"
new io.vertx.core.json.JsonArray
dup
invokespecial io.vertx.core.json.JsonArray.<init>:()V
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
ldc "group"
aload 0
getfield io.vertx.core.impl.HAManager.group:Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
putfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
16: aload 0
aload 4
invokeinterface io.vertx.core.spi.cluster.ClusterManager.getNodeId:()Ljava/lang/String;
putfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
17: return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lio/vertx/core/impl/HAManager;
0 18 1 vertx Lio/vertx/core/impl/VertxInternal;
0 18 2 deploymentManager Lio/vertx/core/impl/DeploymentManager;
0 18 3 verticleFactoryManager Lio/vertx/core/impl/VerticleManager;
0 18 4 clusterManager Lio/vertx/core/spi/cluster/ClusterManager;
0 18 5 clusterMap Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
0 18 6 quorumSize I
0 18 7 group Ljava/lang/String;
0 18 8 enabled Z
Signature: (Lio/vertx/core/impl/VertxInternal;Lio/vertx/core/impl/DeploymentManager;Lio/vertx/core/impl/VerticleManager;Lio/vertx/core/spi/cluster/ClusterManager;Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;ILjava/lang/String;Z)V
MethodParameters:
Name Flags
vertx
deploymentManager
verticleFactoryManager
clusterManager
clusterMap
quorumSize
group
enabled
void init();
descriptor: ()V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
dup
astore 1
monitorenter
1: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
invokevirtual io.vertx.core.json.JsonObject.encode:()Ljava/lang/String;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
2: aload 1
monitorexit
3: goto 6
StackMap locals: io.vertx.core.impl.HAManager io.vertx.core.json.JsonObject
StackMap stack: java.lang.Throwable
4: aload 1
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.impl.HAManager.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
new io.vertx.core.impl.HAManager$1
dup
aload 0
invokespecial io.vertx.core.impl.HAManager$1.<init>:(Lio/vertx/core/impl/HAManager;)V
invokeinterface io.vertx.core.spi.cluster.ClusterManager.nodeListener:(Lio/vertx/core/spi/cluster/NodeListener;)V
7: aload 0
aload 0
getfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
ldc 1000
aload 0
invokedynamic handle(Lio/vertx/core/impl/HAManager;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$0(Ljava/lang/Long;)V (7)
(Ljava/lang/Long;)V
invokeinterface io.vertx.core.impl.VertxInternal.setPeriodic:(JLio/vertx/core/Handler;)J
putfield io.vertx.core.impl.HAManager.quorumTimerID:J
8: aload 0
dup
astore 1
monitorenter
9: aload 0
invokevirtual io.vertx.core.impl.HAManager.checkQuorum:()V
10: aload 1
monitorexit
11: goto 14
StackMap locals: io.vertx.core.impl.HAManager io.vertx.core.impl.HAManager
StackMap stack: java.lang.Throwable
12: aload 1
monitorexit
13: athrow
14: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lio/vertx/core/impl/HAManager;
Exception table:
from to target type
1 3 4 any
4 5 4 any
9 11 12 any
12 13 12 any
public void removeFromHA(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.impl.HAManager.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
aload 1
invokevirtual io.vertx.core.impl.DeploymentManager.getDeployment:(Ljava/lang/String;)Lio/vertx/core/impl/Deployment;
astore 2
start local 2 1: aload 2
ifnull 2
aload 2
invokeinterface io.vertx.core.impl.Deployment.deploymentOptions:()Lio/vertx/core/DeploymentOptions;
invokevirtual io.vertx.core.DeploymentOptions.isHa:()Z
ifne 3
2: StackMap locals: io.vertx.core.impl.Deployment
StackMap stack:
return
3: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
dup
astore 3
monitorenter
4: aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
ldc "verticles"
invokevirtual io.vertx.core.json.JsonObject.getJsonArray:(Ljava/lang/String;)Lio/vertx/core/json/JsonArray;
astore 4
start local 4 5: aload 4
invokevirtual io.vertx.core.json.JsonArray.iterator:()Ljava/util/Iterator;
astore 5
start local 5 6: goto 11
7: StackMap locals: io.vertx.core.json.JsonObject io.vertx.core.json.JsonArray java.util.Iterator
StackMap stack:
aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 6
start local 6 8: aload 6
checkcast io.vertx.core.json.JsonObject
astore 7
start local 7 9: aload 7
ldc "dep_id"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
10: aload 5
invokeinterface java.util.Iterator.remove:()V
end local 7 end local 6 11: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
12: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
invokevirtual io.vertx.core.json.JsonObject.encode:()Ljava/lang/String;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 5 end local 4 13: aload 3
monitorexit
14: goto 17
StackMap locals: io.vertx.core.impl.HAManager java.lang.String io.vertx.core.impl.Deployment io.vertx.core.json.JsonObject
StackMap stack: java.lang.Throwable
15: aload 3
monitorexit
16: athrow
17: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lio/vertx/core/impl/HAManager;
0 18 1 depID Ljava/lang/String;
1 18 2 dep Lio/vertx/core/impl/Deployment;
5 13 4 haMods Lio/vertx/core/json/JsonArray;
6 13 5 iter Ljava/util/Iterator<Ljava/lang/Object;>;
8 11 6 obj Ljava/lang/Object;
9 11 7 mod Lio/vertx/core/json/JsonObject;
Exception table:
from to target type
4 14 15 any
15 16 15 any
MethodParameters:
Name Flags
depID
public void addDataToAHAInfo(java.lang.String, io.vertx.core.json.JsonObject);
descriptor: (Ljava/lang/String;Lio/vertx/core/json/JsonObject;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
dup
astore 3
monitorenter
1: aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
aload 1
aload 2
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
2: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
invokevirtual io.vertx.core.json.JsonObject.encode:()Ljava/lang/String;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 3
monitorexit
4: goto 7
StackMap locals: io.vertx.core.impl.HAManager java.lang.String io.vertx.core.json.JsonObject io.vertx.core.json.JsonObject
StackMap stack: java.lang.Throwable
5: aload 3
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/vertx/core/impl/HAManager;
0 8 1 key Ljava/lang/String;
0 8 2 value Lio/vertx/core/json/JsonObject;
Exception table:
from to target type
1 4 5 any
5 6 5 any
MethodParameters:
Name Flags
key
value
public void deployVerticle(java.lang.String, io.vertx.core.DeploymentOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
descriptor: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.vertx.core.impl.HAManager.attainedQuorum:Z
ifeq 3
1: aload 0
aload 1
aload 2
aload 3
invokevirtual io.vertx.core.impl.HAManager.doDeployVerticle:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
2: goto 5
3: StackMap locals:
StackMap stack:
getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "Quorum not attained. Deployment of verticle will be delayed until there's a quorum."
invokeinterface io.vertx.core.impl.logging.Logger.info:(Ljava/lang/Object;)V
4: aload 0
aload 1
aload 2
aload 3
invokevirtual io.vertx.core.impl.HAManager.addToHADeployList:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
5: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/impl/HAManager;
0 6 1 verticleName Ljava/lang/String;
0 6 2 deploymentOptions Lio/vertx/core/DeploymentOptions;
0 6 3 doneHandler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
Signature: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
MethodParameters:
Name Flags
verticleName final
deploymentOptions
doneHandler final
public void stop();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.stopped:Z
ifne 9
1: aload 0
getfield io.vertx.core.impl.HAManager.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
invokeinterface io.vertx.core.spi.cluster.ClusterManager.isActive:()Z
ifeq 3
2: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
3: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.impl.HAManager.checkQuorumTimerID:J
lstore 1
start local 1 4: lload 1
lconst_0
lcmp
iflt 7
5: aload 0
ldc -1
putfield io.vertx.core.impl.HAManager.checkQuorumTimerID:J
6: aload 0
getfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
lload 1
invokeinterface io.vertx.core.impl.VertxInternal.cancelTimer:(J)Z
pop
7: StackMap locals: long
StackMap stack:
aload 0
getfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
aload 0
getfield io.vertx.core.impl.HAManager.quorumTimerID:J
invokeinterface io.vertx.core.impl.VertxInternal.cancelTimer:(J)Z
pop
8: aload 0
iconst_1
putfield io.vertx.core.impl.HAManager.stopped:Z
end local 1 9: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/vertx/core/impl/HAManager;
4 9 1 timerID J
public void simulateKill();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.stopped:Z
ifne 29
1: aload 0
iconst_1
putfield io.vertx.core.impl.HAManager.killed:Z
2: new java.util.concurrent.CountDownLatch
dup
iconst_1
invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
astore 1
start local 1 3: invokestatic io.vertx.core.Promise.promise:()Lio/vertx/core/Promise;
astore 2
start local 2 4: aload 0
getfield io.vertx.core.impl.HAManager.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
aload 2
invokeinterface io.vertx.core.spi.cluster.ClusterManager.leave:(Lio/vertx/core/Promise;)V
5: aload 2
invokeinterface io.vertx.core.Promise.future:()Lio/vertx/core/Future;
6: invokedynamic handle()Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$1(Ljava/lang/Throwable;)V (6)
(Ljava/lang/Throwable;)V
invokeinterface io.vertx.core.Future.onFailure:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
7: aload 1
invokedynamic handle(Ljava/util/concurrent/CountDownLatch;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$2(Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
pop
8: aload 0
getfield io.vertx.core.impl.HAManager.checkQuorumTimerID:J
lstore 3
start local 3 9: lload 3
lconst_0
lcmp
iflt 12
10: aload 0
ldc -1
putfield io.vertx.core.impl.HAManager.checkQuorumTimerID:J
11: aload 0
getfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
lload 3
invokeinterface io.vertx.core.impl.VertxInternal.cancelTimer:(J)Z
pop
12: StackMap locals: java.util.concurrent.CountDownLatch io.vertx.core.Promise long
StackMap stack:
aload 0
getfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
aload 0
getfield io.vertx.core.impl.HAManager.quorumTimerID:J
invokeinterface io.vertx.core.impl.VertxInternal.cancelTimer:(J)Z
pop
13: iconst_0
istore 5
start local 5 14: getstatic java.util.concurrent.TimeUnit.MINUTES:Ljava/util/concurrent/TimeUnit;
lconst_1
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
lstore 6
start local 6 15: invokestatic java.lang.System.nanoTime:()J
lload 6
ladd
lstore 8
start local 8 16: StackMap locals: int long long
StackMap stack:
aload 1
lload 6
getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.CountDownLatch.await:(JLjava/util/concurrent/TimeUnit;)Z
pop
17: goto 26
18: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
19: iconst_1
istore 5
20: lload 8
invokestatic java.lang.System.nanoTime:()J
lsub
lstore 6
21: goto 16
end local 8 end local 6 22: StackMap locals: io.vertx.core.impl.HAManager java.util.concurrent.CountDownLatch io.vertx.core.Promise long int
StackMap stack: java.lang.Throwable
astore 10
23: iload 5
ifeq 25
24: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.interrupt:()V
25: StackMap locals: io.vertx.core.impl.HAManager java.util.concurrent.CountDownLatch io.vertx.core.Promise long int top top top top java.lang.Throwable
StackMap stack:
aload 10
athrow
26: StackMap locals: io.vertx.core.impl.HAManager java.util.concurrent.CountDownLatch io.vertx.core.Promise long int
StackMap stack:
iload 5
ifeq 28
27: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
invokevirtual java.lang.Thread.interrupt:()V
28: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield io.vertx.core.impl.HAManager.stopped:Z
end local 5 end local 3 end local 2 end local 1 29: StackMap locals: io.vertx.core.impl.HAManager
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lio/vertx/core/impl/HAManager;
3 29 1 latch Ljava/util/concurrent/CountDownLatch;
4 29 2 promise Lio/vertx/core/Promise<Ljava/lang/Void;>;
9 29 3 timerID J
14 29 5 interrupted Z
15 22 6 remainingNanos J
16 22 8 end J
Exception table:
from to target type
16 17 18 Class java.lang.InterruptedException
14 22 22 any
public void setFailoverCompleteHandler(io.vertx.core.impl.FailoverCompleteHandler);
descriptor: (Lio/vertx/core/impl/FailoverCompleteHandler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield io.vertx.core.impl.HAManager.failoverCompleteHandler:Lio/vertx/core/impl/FailoverCompleteHandler;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/impl/HAManager;
0 2 1 failoverCompleteHandler Lio/vertx/core/impl/FailoverCompleteHandler;
MethodParameters:
Name Flags
failoverCompleteHandler
public boolean isKilled();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.killed:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/impl/HAManager;
public boolean isEnabled();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.enabled:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/impl/HAManager;
public void failDuringFailover(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield io.vertx.core.impl.HAManager.failDuringFailover:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/impl/HAManager;
0 2 1 fail Z
MethodParameters:
Name Flags
fail
private void doDeployVerticle(java.lang.String, io.vertx.core.DeploymentOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
descriptor: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokedynamic handle(Lio/vertx/core/impl/HAManager;Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$3(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
(Lio/vertx/core/AsyncResult;)V
astore 4
start local 4 1: aload 0
getfield io.vertx.core.impl.HAManager.verticleFactoryManager:Lio/vertx/core/impl/VerticleManager;
aload 1
aload 2
invokevirtual io.vertx.core.impl.VerticleManager.deployVerticle:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;)Lio/vertx/core/Future;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
io/vertx/core/impl/Deployment.deploymentID()Ljava/lang/String; (9 itf)
(Lio/vertx/core/impl/Deployment;)Ljava/lang/String;
invokeinterface io.vertx.core.Future.map:(Ljava/util/function/Function;)Lio/vertx/core/Future;
aload 4
invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
pop
2: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/impl/HAManager;
0 3 1 verticleName Ljava/lang/String;
0 3 2 deploymentOptions Lio/vertx/core/DeploymentOptions;
0 3 3 doneHandler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
1 3 4 wrappedHandler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
Signature: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
MethodParameters:
Name Flags
verticleName final
deploymentOptions
doneHandler final
private synchronized void nodeAdded(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.vertx.core.impl.HAManager.addHaInfoIfLost:()V
1: aload 0
aload 1
invokestatic java.lang.System.currentTimeMillis:()J
invokevirtual io.vertx.core.impl.HAManager.checkQuorumWhenAdded:(Ljava/lang/String;J)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/impl/HAManager;
0 3 1 nodeID Ljava/lang/String;
MethodParameters:
Name Flags
nodeID final
private synchronized void nodeLeft(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.vertx.core.impl.HAManager.addHaInfoIfLost:()V
1: aload 0
invokevirtual io.vertx.core.impl.HAManager.checkQuorum:()V
2: aload 0
getfield io.vertx.core.impl.HAManager.attainedQuorum:Z
ifeq 14
3: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 2
start local 2 4: aload 2
ifnull 7
5: new io.vertx.core.json.JsonObject
dup
aload 2
invokespecial io.vertx.core.json.JsonObject.<init>:(Ljava/lang/String;)V
astore 3
start local 3 6: aload 0
aload 1
aload 3
invokevirtual io.vertx.core.impl.HAManager.checkFailover:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)V
end local 3 7: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield io.vertx.core.impl.HAManager.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
invokeinterface io.vertx.core.spi.cluster.ClusterManager.getNodes:()Ljava/util/List;
astore 3
start local 3 8: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
invokeinterface java.util.Map.entrySet:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 5
goto 13
StackMap locals: io.vertx.core.impl.HAManager java.lang.String java.lang.String java.util.List top java.util.Iterator
StackMap stack:
9: aload 5
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 4
start local 4 10: aload 1
aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 13
aload 3
aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifne 13
11: new io.vertx.core.json.JsonObject
dup
aload 4
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.String
invokespecial io.vertx.core.json.JsonObject.<init>:(Ljava/lang/String;)V
astore 6
start local 6 12: aload 0
aload 4
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
aload 6
invokevirtual io.vertx.core.impl.HAManager.checkFailover:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)V
end local 6 end local 4 13: StackMap locals:
StackMap stack:
aload 5
invokeinterface java.util.Iterator.hasNext:()Z
ifne 9
end local 3 end local 2 14: StackMap locals: io.vertx.core.impl.HAManager java.lang.String
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lio/vertx/core/impl/HAManager;
0 15 1 leftNodeID Ljava/lang/String;
4 14 2 sclusterInfo Ljava/lang/String;
6 7 3 clusterInfo Lio/vertx/core/json/JsonObject;
8 14 3 nodes Ljava/util/List<Ljava/lang/String;>;
10 13 4 entry Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/String;>;
12 13 6 haInfo Lio/vertx/core/json/JsonObject;
MethodParameters:
Name Flags
leftNodeID
private void addHaInfoIfLost();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
invokeinterface io.vertx.core.spi.cluster.ClusterManager.getNodes:()Ljava/util/List;
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 7
aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifne 7
1: aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
dup
astore 1
monitorenter
2: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
invokevirtual io.vertx.core.json.JsonObject.encode:()Ljava/lang/String;
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
3: aload 1
monitorexit
4: goto 7
StackMap locals: io.vertx.core.impl.HAManager io.vertx.core.json.JsonObject
StackMap stack: java.lang.Throwable
5: aload 1
monitorexit
6: athrow
7: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/vertx/core/impl/HAManager;
Exception table:
from to target type
2 4 5 any
5 6 5 any
private synchronized void checkQuorumWhenAdded(java.lang.String, long);
descriptor: (Ljava/lang/String;J)V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=8, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.vertx.core.impl.HAManager.stopped:Z
ifne 5
1: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.containsKey:(Ljava/lang/Object;)Z
ifeq 4
2: aload 0
invokevirtual io.vertx.core.impl.HAManager.checkQuorum:()V
3: goto 5
4: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
ldc 200
aload 0
lload 2
aload 1
invokedynamic handle(Lio/vertx/core/impl/HAManager;JLjava/lang/String;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$7(JLjava/lang/String;Ljava/lang/Long;)V (7)
(Ljava/lang/Long;)V
invokeinterface io.vertx.core.impl.VertxInternal.setTimer:(JLio/vertx/core/Handler;)J
putfield io.vertx.core.impl.HAManager.checkQuorumTimerID:J
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/impl/HAManager;
0 6 1 nodeID Ljava/lang/String;
0 6 2 start J
MethodParameters:
Name Flags
nodeID final
start final
private void checkQuorum();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.quorumSize:I
ifne 3
1: aload 0
iconst_1
putfield io.vertx.core.impl.HAManager.attainedQuorum:Z
2: goto 24
3: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.impl.HAManager.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
invokeinterface io.vertx.core.spi.cluster.ClusterManager.getNodes:()Ljava/util/List;
astore 1
start local 1 4: iconst_0
istore 2
start local 2 5: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 13
StackMap locals: io.vertx.core.impl.HAManager java.util.List int top java.util.Iterator
StackMap stack:
6: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 7: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 3
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 8: aload 5
ifnull 13
9: new io.vertx.core.json.JsonObject
dup
aload 5
invokespecial io.vertx.core.json.JsonObject.<init>:(Ljava/lang/String;)V
astore 6
start local 6 10: aload 6
ldc "group"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 11: aload 7
aload 0
getfield io.vertx.core.impl.HAManager.group:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 13
12: iinc 2 1
end local 7 end local 6 end local 5 end local 3 13: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
14: iload 2
aload 0
getfield io.vertx.core.impl.HAManager.quorumSize:I
if_icmplt 15
iconst_1
goto 16
StackMap locals: io.vertx.core.impl.HAManager java.util.List int
StackMap stack:
15: iconst_0
StackMap locals:
StackMap stack: int
16: istore 3
start local 3 17: aload 0
getfield io.vertx.core.impl.HAManager.attainedQuorum:Z
ifne 21
iload 3
ifeq 21
18: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "A quorum has been obtained. Any deploymentIDs waiting on a quorum will now be deployed"
invokeinterface io.vertx.core.impl.logging.Logger.info:(Ljava/lang/Object;)V
19: aload 0
iconst_1
putfield io.vertx.core.impl.HAManager.attainedQuorum:Z
20: goto 24
StackMap locals: int
StackMap stack:
21: aload 0
getfield io.vertx.core.impl.HAManager.attainedQuorum:Z
ifeq 24
iload 3
ifne 24
22: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "There is no longer a quorum. Any HA deploymentIDs will be undeployed until a quorum is re-attained"
invokeinterface io.vertx.core.impl.logging.Logger.info:(Ljava/lang/Object;)V
23: aload 0
iconst_0
putfield io.vertx.core.impl.HAManager.attainedQuorum:Z
end local 3 end local 2 end local 1 24: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Lio/vertx/core/impl/HAManager;
4 24 1 nodes Ljava/util/List<Ljava/lang/String;>;
5 24 2 count I
7 13 3 node Ljava/lang/String;
8 13 5 json Ljava/lang/String;
10 13 6 clusterInfo Lio/vertx/core/json/JsonObject;
11 13 7 group Ljava/lang/String;
17 24 3 attained Z
private void addToHA(java.lang.String, java.lang.String, io.vertx.core.DeploymentOptions);
descriptor: (Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/DeploymentOptions;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
dup
astore 5
monitorenter
1: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
ldc "dep_id"
aload 1
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
astore 6
start local 6 2: aload 6
ldc "verticle_name"
aload 2
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
3: aload 6
ldc "options"
aload 3
invokevirtual io.vertx.core.DeploymentOptions.toJson:()Lio/vertx/core/json/JsonObject;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
4: aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
ldc "verticles"
invokevirtual io.vertx.core.json.JsonObject.getJsonArray:(Ljava/lang/String;)Lio/vertx/core/json/JsonArray;
astore 7
start local 7 5: aload 7
aload 6
invokevirtual io.vertx.core.json.JsonArray.add:(Ljava/lang/Object;)Lio/vertx/core/json/JsonArray;
pop
6: aload 0
getfield io.vertx.core.impl.HAManager.haInfo:Lio/vertx/core/json/JsonObject;
invokevirtual io.vertx.core.json.JsonObject.encode:()Ljava/lang/String;
astore 4
start local 4 7: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
aload 4
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 7 end local 6 8: aload 5
monitorexit
9: goto 12
end local 4 StackMap locals: io.vertx.core.impl.HAManager java.lang.String java.lang.String io.vertx.core.DeploymentOptions top io.vertx.core.json.JsonObject
StackMap stack: java.lang.Throwable
10: aload 5
monitorexit
11: athrow
start local 4 12: StackMap locals: io.vertx.core.impl.HAManager java.lang.String java.lang.String io.vertx.core.DeploymentOptions java.lang.String
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/vertx/core/impl/HAManager;
0 13 1 deploymentID Ljava/lang/String;
0 13 2 verticleName Ljava/lang/String;
0 13 3 deploymentOptions Lio/vertx/core/DeploymentOptions;
7 10 4 encoded Ljava/lang/String;
12 13 4 encoded Ljava/lang/String;
2 8 6 verticleConf Lio/vertx/core/json/JsonObject;
5 8 7 haMods Lio/vertx/core/json/JsonArray;
Exception table:
from to target type
1 9 10 any
10 11 10 any
MethodParameters:
Name Flags
deploymentID
verticleName
deploymentOptions
private void addToHADeployList(java.lang.String, io.vertx.core.DeploymentOptions, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.String>>);
descriptor: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.vertx.core.impl.HAManager.toDeployOnQuorum:Ljava/util/Queue;
aload 0
aload 1
aload 2
aload 3
invokedynamic run(Lio/vertx/core/impl/HAManager;Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)Ljava/lang/Runnable;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()V
io/vertx/core/impl/HAManager.lambda$10(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V (7)
()V
invokeinterface java.util.Queue.add:(Ljava/lang/Object;)Z
pop
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/impl/HAManager;
0 2 1 verticleName Ljava/lang/String;
0 2 2 deploymentOptions Lio/vertx/core/DeploymentOptions;
0 2 3 doneHandler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;
Signature: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/String;>;>;)V
MethodParameters:
Name Flags
verticleName final
deploymentOptions final
doneHandler final
private void checkHADeployments();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.attainedQuorum:Z
ifeq 3
1: aload 0
invokevirtual io.vertx.core.impl.HAManager.deployHADeployments:()V
2: goto 7
3: StackMap locals:
StackMap stack:
aload 0
invokevirtual io.vertx.core.impl.HAManager.undeployHADeployments:()V
4: goto 7
StackMap locals:
StackMap stack: java.lang.Throwable
5: astore 1
start local 1 6: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "Failed when checking HA deploymentIDs"
aload 1
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 1 7: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/vertx/core/impl/HAManager;
6 7 1 t Ljava/lang/Throwable;
Exception table:
from to target type
0 4 5 Class java.lang.Throwable
private void undeployHADeployments();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
invokevirtual io.vertx.core.impl.DeploymentManager.deployments:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 2
goto 6
StackMap locals: io.vertx.core.impl.HAManager top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 1
start local 1 2: aload 0
getfield io.vertx.core.impl.HAManager.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
aload 1
invokevirtual io.vertx.core.impl.DeploymentManager.getDeployment:(Ljava/lang/String;)Lio/vertx/core/impl/Deployment;
astore 3
start local 3 3: aload 3
ifnull 6
4: aload 3
invokeinterface io.vertx.core.impl.Deployment.deploymentOptions:()Lio/vertx/core/DeploymentOptions;
invokevirtual io.vertx.core.DeploymentOptions.isHa:()Z
ifeq 6
5: aload 0
aload 1
aload 3
invokedynamic handle(Lio/vertx/core/impl/HAManager;Ljava/lang/String;Lio/vertx/core/impl/Deployment;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$12(Ljava/lang/String;Lio/vertx/core/impl/Deployment;Ljava/lang/Void;)V (7)
(Ljava/lang/Void;)V
invokestatic io.vertx.core.impl.ContextImpl.executeIsolated:(Lio/vertx/core/Handler;)V
end local 3 end local 1 6: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
7: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/vertx/core/impl/HAManager;
2 6 1 deploymentID Ljava/lang/String;
3 6 3 dep Lio/vertx/core/impl/Deployment;
private void deployHADeployments();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=1
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.toDeployOnQuorum:Ljava/util/Queue;
invokeinterface java.util.Queue.size:()I
istore 1
start local 1 1: iload 1
ifeq 10
2: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
new java.lang.StringBuilder
dup
ldc "There are "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " HA deploymentIDs waiting on a quorum. These will now be deployed"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.vertx.core.impl.logging.Logger.info:(Ljava/lang/Object;)V
3: goto 8
start local 2 4: StackMap locals: int java.lang.Runnable
StackMap stack:
aload 2
invokeinterface java.lang.Runnable.run:()V
5: goto 8
StackMap locals:
StackMap stack: java.lang.Throwable
6: astore 3
start local 3 7: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "Failed to run redeployment task"
aload 3
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 3 end local 2 8: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.core.impl.HAManager.toDeployOnQuorum:Ljava/util/Queue;
invokeinterface java.util.Queue.poll:()Ljava/lang/Object;
checkcast java.lang.Runnable
dup
astore 2
start local 2 9: ifnonnull 4
end local 2 10: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/vertx/core/impl/HAManager;
1 11 1 size I
4 8 2 task Ljava/lang/Runnable;
9 10 2 task Ljava/lang/Runnable;
7 8 3 t Ljava/lang/Throwable;
Exception table:
from to target type
4 5 6 Class java.lang.Throwable
private void checkFailover(java.lang.String, io.vertx.core.json.JsonObject);
descriptor: (Ljava/lang/String;Lio/vertx/core/json/JsonObject;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 2
ldc "verticles"
invokevirtual io.vertx.core.json.JsonObject.getJsonArray:(Ljava/lang/String;)Lio/vertx/core/json/JsonArray;
astore 3
start local 3 1: aload 2
ldc "group"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 2: aload 0
aload 4
aload 1
invokevirtual java.lang.String.hashCode:()I
invokevirtual io.vertx.core.impl.HAManager.chooseHashedNode:(Ljava/lang/String;I)Ljava/lang/String;
astore 5
start local 5 3: aload 5
ifnull 17
aload 5
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 17
4: aload 3
ifnull 11
aload 3
invokevirtual io.vertx.core.json.JsonArray.size:()I
ifeq 11
5: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
new java.lang.StringBuilder
dup
ldc "node"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield io.vertx.core.impl.HAManager.nodeID:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " says: Node "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " has failed. This node will deploy "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual io.vertx.core.json.JsonArray.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " deploymentIDs from that node."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.vertx.core.impl.logging.Logger.info:(Ljava/lang/Object;)V
6: aload 3
invokevirtual io.vertx.core.json.JsonArray.iterator:()Ljava/util/Iterator;
astore 7
goto 10
StackMap locals: io.vertx.core.impl.HAManager java.lang.String io.vertx.core.json.JsonObject io.vertx.core.json.JsonArray java.lang.String java.lang.String top java.util.Iterator
StackMap stack:
7: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
astore 6
start local 6 8: aload 6
checkcast io.vertx.core.json.JsonObject
astore 8
start local 8 9: aload 0
aload 8
invokevirtual io.vertx.core.impl.HAManager.processFailover:(Lio/vertx/core/json/JsonObject;)V
end local 8 end local 6 10: StackMap locals:
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
11: StackMap locals: io.vertx.core.impl.HAManager java.lang.String io.vertx.core.json.JsonObject io.vertx.core.json.JsonArray java.lang.String java.lang.String
StackMap stack:
aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
12: aload 0
aload 0
aload 1
aload 2
invokedynamic run(Lio/vertx/core/impl/HAManager;Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Ljava/lang/Runnable;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()V
io/vertx/core/impl/HAManager.lambda$15(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)V (7)
()V
invokevirtual io.vertx.core.impl.HAManager.runOnContextAndWait:(Ljava/lang/Runnable;)V
end local 5 end local 4 end local 3 13: goto 17
StackMap locals: io.vertx.core.impl.HAManager java.lang.String io.vertx.core.json.JsonObject
StackMap stack: java.lang.Throwable
14: astore 3
start local 3 15: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "Failed to handle failover"
aload 3
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
16: aload 0
aload 0
aload 1
aload 2
invokedynamic run(Lio/vertx/core/impl/HAManager;Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Ljava/lang/Runnable;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()V
io/vertx/core/impl/HAManager.lambda$16(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)V (7)
()V
invokevirtual io.vertx.core.impl.HAManager.runOnContextAndWait:(Ljava/lang/Runnable;)V
end local 3 17: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lio/vertx/core/impl/HAManager;
0 18 1 failedNodeID Ljava/lang/String;
0 18 2 theHAInfo Lio/vertx/core/json/JsonObject;
1 13 3 deployments Lio/vertx/core/json/JsonArray;
2 13 4 group Ljava/lang/String;
3 13 5 chosen Ljava/lang/String;
8 10 6 obj Ljava/lang/Object;
9 10 8 app Lio/vertx/core/json/JsonObject;
15 17 3 t Ljava/lang/Throwable;
Exception table:
from to target type
0 13 14 Class java.lang.Throwable
MethodParameters:
Name Flags
failedNodeID
theHAInfo
private void runOnContextAndWait(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: new java.util.concurrent.CountDownLatch
dup
iconst_1
invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
astore 2
start local 2 1: aload 0
getfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
aload 2
aload 1
invokedynamic handle(Ljava/util/concurrent/CountDownLatch;Ljava/lang/Runnable;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$17(Ljava/util/concurrent/CountDownLatch;Ljava/lang/Runnable;Ljava/lang/Void;)V (6)
(Ljava/lang/Void;)V
invokeinterface io.vertx.core.impl.VertxInternal.runOnContext:(Lio/vertx/core/Handler;)V
2: aload 2
ldc 30
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.CountDownLatch.await:(JLjava/util/concurrent/TimeUnit;)Z
pop
3: goto 5
StackMap locals: io.vertx.core.impl.HAManager java.lang.Runnable java.util.concurrent.CountDownLatch
StackMap stack: java.lang.InterruptedException
4: pop
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/impl/HAManager;
0 6 1 runnable Ljava/lang/Runnable;
1 6 2 latch Ljava/util/concurrent/CountDownLatch;
Exception table:
from to target type
2 3 4 Class java.lang.InterruptedException
MethodParameters:
Name Flags
runnable
private void processFailover(io.vertx.core.json.JsonObject);
descriptor: (Lio/vertx/core/json/JsonObject;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.core.impl.HAManager.failDuringFailover:Z
ifeq 2
1: new io.vertx.core.VertxException
dup
ldc "Oops!"
invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 1
ldc "verticle_name"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 3: new java.util.concurrent.CountDownLatch
dup
iconst_1
invokespecial java.util.concurrent.CountDownLatch.<init>:(I)V
astore 3
start local 3 4: new java.util.concurrent.atomic.AtomicReference
dup
invokespecial java.util.concurrent.atomic.AtomicReference.<init>:()V
astore 4
start local 4 5: aload 0
aload 1
aload 2
aload 4
aload 3
invokedynamic handle(Lio/vertx/core/impl/HAManager;Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$18(Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Ljava/lang/Void;)V (7)
(Ljava/lang/Void;)V
invokestatic io.vertx.core.impl.ContextImpl.executeIsolated:(Lio/vertx/core/Handler;)V
6: aload 3
ldc 120
getstatic java.util.concurrent.TimeUnit.SECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual java.util.concurrent.CountDownLatch.await:(JLjava/util/concurrent/TimeUnit;)Z
ifne 10
7: new io.vertx.core.VertxException
dup
ldc "Timed out waiting for redeploy on failover"
invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: io.vertx.core.impl.HAManager io.vertx.core.json.JsonObject java.lang.String java.util.concurrent.CountDownLatch java.util.concurrent.atomic.AtomicReference
StackMap stack: java.lang.InterruptedException
astore 5
start local 5 9: new java.lang.IllegalStateException
dup
aload 5
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 5 10: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/vertx/core/impl/HAManager;
0 11 1 failedVerticle Lio/vertx/core/json/JsonObject;
3 11 2 verticleName Ljava/lang/String;
4 11 3 latch Ljava/util/concurrent/CountDownLatch;
5 11 4 err Ljava/util/concurrent/atomic/AtomicReference<Ljava/lang/Throwable;>;
9 10 5 e Ljava/lang/InterruptedException;
Exception table:
from to target type
6 8 8 Class java.lang.InterruptedException
MethodParameters:
Name Flags
failedVerticle
private java.lang.String chooseHashedNode(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.vertx.core.impl.HAManager.clusterManager:Lio/vertx/core/spi/cluster/ClusterManager;
invokeinterface io.vertx.core.spi.cluster.ClusterManager.getNodes:()Ljava/util/List;
astore 3
start local 3 1: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 2: aload 3
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 10
StackMap locals: io.vertx.core.impl.HAManager java.lang.String int java.util.List java.util.ArrayList top java.util.Iterator
StackMap stack:
3: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 4: aload 0
getfield io.vertx.core.impl.HAManager.clusterMap:Ljava/util/Map;
aload 5
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 7
start local 7 5: aload 7
ifnull 10
6: new io.vertx.core.json.JsonObject
dup
aload 7
invokespecial io.vertx.core.json.JsonObject.<init>:(Ljava/lang/String;)V
astore 8
start local 8 7: aload 8
ldc "group"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
astore 9
start local 9 8: aload 1
ifnull 9
aload 1
aload 9
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
9: StackMap locals: io.vertx.core.impl.HAManager java.lang.String int java.util.List java.util.ArrayList java.lang.String java.util.Iterator java.lang.String io.vertx.core.json.JsonObject java.lang.String
StackMap stack:
aload 4
aload 5
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
end local 9 end local 8 end local 7 end local 5 10: StackMap locals: io.vertx.core.impl.HAManager java.lang.String int java.util.List java.util.ArrayList top java.util.Iterator
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
11: aload 4
invokevirtual java.util.ArrayList.isEmpty:()Z
ifne 15
12: iload 2
i2l
ldc 2147483647
ladd
lstore 5
start local 5 13: lload 5
aload 4
invokevirtual java.util.ArrayList.size:()I
i2l
lrem
lstore 7
start local 7 14: aload 4
lload 7
l2i
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast java.lang.String
areturn
end local 7 end local 5 15: StackMap locals: io.vertx.core.impl.HAManager java.lang.String int java.util.List java.util.ArrayList
StackMap stack:
aconst_null
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lio/vertx/core/impl/HAManager;
0 16 1 group Ljava/lang/String;
0 16 2 hashCode I
1 16 3 nodes Ljava/util/List<Ljava/lang/String;>;
2 16 4 matchingMembers Ljava/util/ArrayList<Ljava/lang/String;>;
4 10 5 node Ljava/lang/String;
5 10 7 sclusterInfo Ljava/lang/String;
7 10 8 clusterInfo Lio/vertx/core/json/JsonObject;
8 10 9 memberGroup Ljava/lang/String;
13 15 5 absHash J
14 15 7 lpos J
MethodParameters:
Name Flags
group
hashCode
private void lambda$0(java.lang.Long);
descriptor: (Ljava/lang/Long;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual io.vertx.core.impl.HAManager.checkHADeployments:()V
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/core/impl/HAManager;
0 1 1 tid Ljava/lang/Long;
private static void lambda$1(java.lang.Throwable);
descriptor: (Ljava/lang/Throwable;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "Failed to leave cluster"
aload 0
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 t Ljava/lang/Throwable;
private static void lambda$2(java.util.concurrent.CountDownLatch, io.vertx.core.AsyncResult);
descriptor: (Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 1 0: aload 0
invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 ar Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;
private void lambda$3(java.lang.String, io.vertx.core.DeploymentOptions, io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 4 0: aload 0
getfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
aload 0
aload 4
aload 1
aload 2
invokedynamic handle(Lio/vertx/core/impl/HAManager;Lio/vertx/core/AsyncResult;Ljava/lang/String;Lio/vertx/core/DeploymentOptions;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$4(Lio/vertx/core/AsyncResult;Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Promise;)V (7)
(Lio/vertx/core/Promise;)V
1: iconst_0
aload 3
invokedynamic handle(Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$5(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
2: invokeinterface io.vertx.core.impl.VertxInternal.executeBlocking:(Lio/vertx/core/Handler;ZLio/vertx/core/Handler;)V
3: return
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/core/impl/HAManager;
0 4 4 ar1 Lio/vertx/core/AsyncResult<Ljava/lang/String;>;
private void lambda$7(long, java.lang.String, java.lang.Long);
descriptor: (JLjava/lang/String;Ljava/lang/Long;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 4 0: aload 0
ldc -1
putfield io.vertx.core.impl.HAManager.checkQuorumTimerID:J
1: aload 0
getfield io.vertx.core.impl.HAManager.stopped:Z
ifne 5
2: aload 0
getfield io.vertx.core.impl.HAManager.vertx:Lio/vertx/core/impl/VertxInternal;
aload 0
lload 1
aload 3
invokedynamic handle(Lio/vertx/core/impl/HAManager;JLjava/lang/String;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$8(JLjava/lang/String;Lio/vertx/core/Promise;)V (7)
(Lio/vertx/core/Promise;)V
3: aconst_null
4: invokeinterface io.vertx.core.impl.VertxInternal.executeBlockingInternal:(Lio/vertx/core/Handler;Lio/vertx/core/Handler;)V
5: StackMap locals:
StackMap stack:
return
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/impl/HAManager;
0 6 4 tid Ljava/lang/Long;
private void lambda$10(java.lang.String, io.vertx.core.DeploymentOptions, io.vertx.core.Handler);
descriptor: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 0: aload 0
aload 1
aload 2
aload 3
invokedynamic handle(Lio/vertx/core/impl/HAManager;Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$11(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;Ljava/lang/Void;)V (7)
(Ljava/lang/Void;)V
invokestatic io.vertx.core.impl.ContextImpl.executeIsolated:(Lio/vertx/core/Handler;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/impl/HAManager;
private void lambda$12(java.lang.String, io.vertx.core.impl.Deployment, java.lang.Void);
descriptor: (Ljava/lang/String;Lio/vertx/core/impl/Deployment;Ljava/lang/Void;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 3 0: aload 0
getfield io.vertx.core.impl.HAManager.deploymentManager:Lio/vertx/core/impl/DeploymentManager;
aload 1
invokevirtual io.vertx.core.impl.DeploymentManager.undeployVerticle:(Ljava/lang/String;)Lio/vertx/core/Future;
aload 0
aload 1
aload 2
invokedynamic handle(Lio/vertx/core/impl/HAManager;Ljava/lang/String;Lio/vertx/core/impl/Deployment;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$13(Ljava/lang/String;Lio/vertx/core/impl/Deployment;Lio/vertx/core/AsyncResult;)V (7)
(Lio/vertx/core/AsyncResult;)V
invokeinterface io.vertx.core.Future.onComplete:(Lio/vertx/core/Handler;)Lio/vertx/core/Future;
pop
1: return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/impl/HAManager;
0 2 3 v Ljava/lang/Void;
private void lambda$15(java.lang.String, io.vertx.core.json.JsonObject);
descriptor: (Ljava/lang/String;Lio/vertx/core/json/JsonObject;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=3, args_size=3
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.failoverCompleteHandler:Lio/vertx/core/impl/FailoverCompleteHandler;
ifnull 2
1: aload 0
getfield io.vertx.core.impl.HAManager.failoverCompleteHandler:Lio/vertx/core/impl/FailoverCompleteHandler;
aload 1
aload 2
iconst_1
invokeinterface io.vertx.core.impl.FailoverCompleteHandler.handle:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;Z)V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/impl/HAManager;
private void lambda$16(java.lang.String, io.vertx.core.json.JsonObject);
descriptor: (Ljava/lang/String;Lio/vertx/core/json/JsonObject;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=3, args_size=3
start local 0 0: aload 0
getfield io.vertx.core.impl.HAManager.failoverCompleteHandler:Lio/vertx/core/impl/FailoverCompleteHandler;
ifnull 2
1: aload 0
getfield io.vertx.core.impl.HAManager.failoverCompleteHandler:Lio/vertx/core/impl/FailoverCompleteHandler;
aload 1
aload 2
iconst_0
invokeinterface io.vertx.core.impl.FailoverCompleteHandler.handle:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;Z)V
2: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/impl/HAManager;
private static void lambda$17(java.util.concurrent.CountDownLatch, java.lang.Runnable, java.lang.Void);
descriptor: (Ljava/util/concurrent/CountDownLatch;Ljava/lang/Runnable;Ljava/lang/Void;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=4, args_size=3
start local 2 0: aload 1
invokeinterface java.lang.Runnable.run:()V
1: goto 5
StackMap locals:
StackMap stack: java.lang.Throwable
2: astore 3
3: aload 0
invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
4: aload 3
athrow
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
6: return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 7 2 v Ljava/lang/Void;
Exception table:
from to target type
0 2 2 any
private void lambda$18(io.vertx.core.json.JsonObject, java.lang.String, java.util.concurrent.atomic.AtomicReference, java.util.concurrent.CountDownLatch, java.lang.Void);
descriptor: (Lio/vertx/core/json/JsonObject;Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Ljava/lang/Void;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=6, locals=7, args_size=6
start local 0 start local 5 0: aload 1
ldc "options"
invokevirtual io.vertx.core.json.JsonObject.getJsonObject:(Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
astore 6
start local 6 1: aload 0
aload 2
new io.vertx.core.DeploymentOptions
dup
aload 6
invokespecial io.vertx.core.DeploymentOptions.<init>:(Lio/vertx/core/json/JsonObject;)V
aload 2
aload 3
aload 4
invokedynamic handle(Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$19(Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
invokevirtual io.vertx.core.impl.HAManager.doDeployVerticle:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
end local 6 2: return
end local 5 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/core/impl/HAManager;
0 3 5 v Ljava/lang/Void;
1 2 6 options Lio/vertx/core/json/JsonObject;
private void lambda$4(io.vertx.core.AsyncResult, java.lang.String, io.vertx.core.DeploymentOptions, io.vertx.core.Promise);
descriptor: (Lio/vertx/core/AsyncResult;Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Promise;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=6, args_size=5
start local 0 start local 4 0: aload 1
invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
ifeq 5
1: aload 1
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 2: aload 0
aload 5
aload 2
aload 3
invokevirtual io.vertx.core.impl.HAManager.addToHA:(Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/DeploymentOptions;)V
3: aload 4
aload 5
invokeinterface io.vertx.core.Promise.complete:(Ljava/lang/Object;)V
end local 5 4: goto 6
5: StackMap locals:
StackMap stack:
aload 4
aload 1
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokeinterface io.vertx.core.Promise.fail:(Ljava/lang/Throwable;)V
6: StackMap locals:
StackMap stack:
return
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/vertx/core/impl/HAManager;
0 7 4 fut Lio/vertx/core/Promise<Ljava/lang/String;>;
2 4 5 deploymentID Ljava/lang/String;
private static void lambda$5(io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 1 0: aload 0
ifnull 3
1: aload 0
aload 1
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: goto 5
StackMap locals:
StackMap stack:
3: aload 1
invokeinterface io.vertx.core.AsyncResult.failed:()Z
ifeq 5
4: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "Failed to deploy verticle"
aload 1
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
5: StackMap locals:
StackMap stack:
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 6 1 ar2 Lio/vertx/core/AsyncResult<Ljava/lang/String;>;
private void lambda$8(long, java.lang.String, io.vertx.core.Promise);
descriptor: (JLjava/lang/String;Lio/vertx/core/Promise;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 4 0: invokestatic java.lang.System.currentTimeMillis:()J
lload 1
lsub
ldc 10000
lcmp
ifle 3
1: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "Timed out waiting for group information to appear"
invokeinterface io.vertx.core.impl.logging.Logger.warn:(Ljava/lang/Object;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 3
lload 1
invokedynamic handle(Lio/vertx/core/impl/HAManager;Ljava/lang/String;J)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$9(Ljava/lang/String;JLjava/lang/Void;)V (7)
(Ljava/lang/Void;)V
invokestatic io.vertx.core.impl.ContextImpl.executeIsolated:(Lio/vertx/core/Handler;)V
4: StackMap locals:
StackMap stack:
aload 4
invokeinterface io.vertx.core.Promise.complete:()V
5: return
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/impl/HAManager;
0 6 4 fut Lio/vertx/core/Promise<Ljava/lang/Object;>;
private void lambda$11(java.lang.String, io.vertx.core.DeploymentOptions, io.vertx.core.Handler, java.lang.Void);
descriptor: (Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;Ljava/lang/Void;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=5, args_size=5
start local 0 start local 4 0: aload 0
aload 1
aload 2
aload 3
invokevirtual io.vertx.core.impl.HAManager.deployVerticle:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
1: return
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/impl/HAManager;
0 2 4 v Ljava/lang/Void;
private void lambda$13(java.lang.String, io.vertx.core.impl.Deployment, io.vertx.core.AsyncResult);
descriptor: (Ljava/lang/String;Lio/vertx/core/impl/Deployment;Lio/vertx/core/AsyncResult;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=4, args_size=4
start local 0 start local 3 0: aload 3
invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
ifeq 4
1: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Successfully undeployed HA deployment "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "-"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
invokeinterface io.vertx.core.impl.Deployment.verticleIdentifier:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " as there is no quorum"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.vertx.core.impl.logging.Logger.info:(Ljava/lang/Object;)V
2: aload 0
aload 2
invokeinterface io.vertx.core.impl.Deployment.verticleIdentifier:()Ljava/lang/String;
aload 2
invokeinterface io.vertx.core.impl.Deployment.deploymentOptions:()Lio/vertx/core/DeploymentOptions;
aload 2
invokedynamic handle(Lio/vertx/core/impl/Deployment;)Lio/vertx/core/Handler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
io/vertx/core/impl/HAManager.lambda$14(Lio/vertx/core/impl/Deployment;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
invokevirtual io.vertx.core.impl.HAManager.addToHADeployList:(Ljava/lang/String;Lio/vertx/core/DeploymentOptions;Lio/vertx/core/Handler;)V
3: goto 5
4: StackMap locals:
StackMap stack:
getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "Failed to undeploy deployment on lost quorum"
aload 3
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
5: StackMap locals:
StackMap stack:
return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/core/impl/HAManager;
0 6 3 result Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;
private static void lambda$19(java.lang.String, java.util.concurrent.atomic.AtomicReference, java.util.concurrent.CountDownLatch, io.vertx.core.AsyncResult);
descriptor: (Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicReference;Ljava/util/concurrent/CountDownLatch;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=5, args_size=4
start local 3 0: aload 3
invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
ifeq 3
1: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Successfully redeployed verticle "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " after failover"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.vertx.core.impl.logging.Logger.info:(Ljava/lang/Object;)V
2: goto 5
3: StackMap locals:
StackMap stack:
getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
ldc "Failed to redeploy verticle after failover"
aload 3
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
4: aload 1
aload 3
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokevirtual java.util.concurrent.atomic.AtomicReference.set:(Ljava/lang/Object;)V
5: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.util.concurrent.CountDownLatch.countDown:()V
6: aload 1
invokevirtual java.util.concurrent.atomic.AtomicReference.get:()Ljava/lang/Object;
checkcast java.lang.Throwable
astore 4
start local 4 7: aload 4
ifnull 9
8: new io.vertx.core.VertxException
dup
aload 4
invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 4 9: StackMap locals:
StackMap stack:
return
end local 3 LocalVariableTable:
Start End Slot Name Signature
0 10 3 result Lio/vertx/core/AsyncResult<Ljava/lang/String;>;
7 9 4 t Ljava/lang/Throwable;
private void lambda$9(java.lang.String, long, java.lang.Void);
descriptor: (Ljava/lang/String;JLjava/lang/Void;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=5, args_size=4
start local 0 start local 4 0: aload 0
aload 1
lload 2
invokevirtual io.vertx.core.impl.HAManager.checkQuorumWhenAdded:(Ljava/lang/String;J)V
1: return
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/core/impl/HAManager;
0 2 4 v Ljava/lang/Void;
private static void lambda$14(io.vertx.core.impl.Deployment, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/impl/Deployment;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=4, locals=2, args_size=2
start local 1 0: aload 1
invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
ifeq 3
1: getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Successfully redeployed verticle "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokeinterface io.vertx.core.impl.Deployment.verticleIdentifier:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " after quorum was re-attained"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.vertx.core.impl.logging.Logger.info:(Ljava/lang/Object;)V
2: goto 4
3: StackMap locals:
StackMap stack:
getstatic io.vertx.core.impl.HAManager.log:Lio/vertx/core/impl/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Failed to redeploy verticle "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokeinterface io.vertx.core.impl.Deployment.verticleIdentifier:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " after quorum was re-attained"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 1
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
4: StackMap locals:
StackMap stack:
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 5 1 result1 Lio/vertx/core/AsyncResult<Ljava/lang/String;>;
}
SourceFile: "HAManager.java"
NestMembers:
io.vertx.core.impl.HAManager$1
InnerClasses:
io.vertx.core.impl.HAManager$1
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Entry = java.util.Map$Entry of java.util.Map