public class org.apache.cassandra.service.DatacenterSyncWriteResponseHandler<T> extends org.apache.cassandra.service.AbstractWriteResponseHandler<T>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.cassandra.service.DatacenterSyncWriteResponseHandler
super_class: org.apache.cassandra.service.AbstractWriteResponseHandler
{
private static final org.apache.cassandra.locator.IEndpointSnitch snitch;
descriptor: Lorg/apache/cassandra/locator/IEndpointSnitch;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final java.util.Map<java.lang.String, java.util.concurrent.atomic.AtomicInteger> responses;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicInteger;>;
private final java.util.concurrent.atomic.AtomicInteger acks;
descriptor: Ljava/util/concurrent/atomic/AtomicInteger;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lorg/apache/cassandra/service/DatacenterSyncWriteResponseHandler;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.$assertionsDisabled:Z
3: invokestatic org.apache.cassandra.config.DatabaseDescriptor.getEndpointSnitch:()Lorg/apache/cassandra/locator/IEndpointSnitch;
putstatic org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.snitch:Lorg/apache/cassandra/locator/IEndpointSnitch;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.util.Collection<java.net.InetAddress>, java.util.Collection<java.net.InetAddress>, org.apache.cassandra.db.ConsistencyLevel, org.apache.cassandra.db.Keyspace, java.lang.Runnable, org.apache.cassandra.db.WriteType, );
descriptor: (Ljava/util/Collection;Ljava/util/Collection;Lorg/apache/cassandra/db/ConsistencyLevel;Lorg/apache/cassandra/db/Keyspace;Ljava/lang/Runnable;Lorg/apache/cassandra/db/WriteType;J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=13, args_size=8
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 start local 7 0: aload 0
aload 4
aload 1
aload 2
aload 3
aload 5
aload 6
lload 7
invokespecial org.apache.cassandra.service.AbstractWriteResponseHandler.<init>:(Lorg/apache/cassandra/db/Keyspace;Ljava/util/Collection;Ljava/util/Collection;Lorg/apache/cassandra/db/ConsistencyLevel;Ljava/lang/Runnable;Lorg/apache/cassandra/db/WriteType;J)V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.responses:Ljava/util/Map;
2: aload 0
new java.util.concurrent.atomic.AtomicInteger
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
putfield org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.acks:Ljava/util/concurrent/atomic/AtomicInteger;
3: getstatic org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.$assertionsDisabled:Z
ifne 4
aload 3
getstatic org.apache.cassandra.db.ConsistencyLevel.EACH_QUORUM:Lorg/apache/cassandra/db/ConsistencyLevel;
if_acmpeq 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: org.apache.cassandra.service.DatacenterSyncWriteResponseHandler java.util.Collection java.util.Collection org.apache.cassandra.db.ConsistencyLevel org.apache.cassandra.db.Keyspace java.lang.Runnable org.apache.cassandra.db.WriteType long
StackMap stack:
aload 4
invokevirtual org.apache.cassandra.db.Keyspace.getReplicationStrategy:()Lorg/apache/cassandra/locator/AbstractReplicationStrategy;
checkcast org.apache.cassandra.locator.NetworkTopologyStrategy
astore 9
start local 9 5: aload 9
invokevirtual org.apache.cassandra.locator.NetworkTopologyStrategy.getDatacenters:()Ljava/util/Set;
invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
astore 11
goto 9
StackMap locals: org.apache.cassandra.service.DatacenterSyncWriteResponseHandler java.util.Collection java.util.Collection org.apache.cassandra.db.ConsistencyLevel org.apache.cassandra.db.Keyspace java.lang.Runnable org.apache.cassandra.db.WriteType long org.apache.cassandra.locator.NetworkTopologyStrategy top java.util.Iterator
StackMap stack:
6: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 10
start local 10 7: aload 9
aload 10
invokevirtual org.apache.cassandra.locator.NetworkTopologyStrategy.getReplicationFactor:(Ljava/lang/String;)I
istore 12
start local 12 8: aload 0
getfield org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.responses:Ljava/util/Map;
aload 10
new java.util.concurrent.atomic.AtomicInteger
dup
iload 12
iconst_2
idiv
iconst_1
iadd
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 12 end local 10 9: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
10: aload 2
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 11
goto 13
StackMap locals:
StackMap stack:
11: aload 11
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.net.InetAddress
astore 10
start local 10 12: aload 0
getfield org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.responses:Ljava/util/Map;
getstatic org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.snitch:Lorg/apache/cassandra/locator/IEndpointSnitch;
aload 10
invokeinterface org.apache.cassandra.locator.IEndpointSnitch.getDatacenter:(Ljava/net/InetAddress;)Ljava/lang/String;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.concurrent.atomic.AtomicInteger
invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
pop
end local 10 13: StackMap locals:
StackMap stack:
aload 11
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
14: return
end local 9 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 15 0 this Lorg/apache/cassandra/service/DatacenterSyncWriteResponseHandler<TT;>;
0 15 1 naturalEndpoints Ljava/util/Collection<Ljava/net/InetAddress;>;
0 15 2 pendingEndpoints Ljava/util/Collection<Ljava/net/InetAddress;>;
0 15 3 consistencyLevel Lorg/apache/cassandra/db/ConsistencyLevel;
0 15 4 keyspace Lorg/apache/cassandra/db/Keyspace;
0 15 5 callback Ljava/lang/Runnable;
0 15 6 writeType Lorg/apache/cassandra/db/WriteType;
0 15 7 queryStartNanoTime J
5 15 9 strategy Lorg/apache/cassandra/locator/NetworkTopologyStrategy;
7 9 10 dc Ljava/lang/String;
8 9 12 rf I
12 13 10 pending Ljava/net/InetAddress;
Signature: (Ljava/util/Collection<Ljava/net/InetAddress;>;Ljava/util/Collection<Ljava/net/InetAddress;>;Lorg/apache/cassandra/db/ConsistencyLevel;Lorg/apache/cassandra/db/Keyspace;Ljava/lang/Runnable;Lorg/apache/cassandra/db/WriteType;J)V
MethodParameters:
Name Flags
naturalEndpoints
pendingEndpoints
consistencyLevel
keyspace
callback
writeType
queryStartNanoTime
public void response(org.apache.cassandra.net.MessageIn<T>);
descriptor: (Lorg/apache/cassandra/net/MessageIn;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 2
1: invokestatic org.apache.cassandra.config.DatabaseDescriptor.getLocalDataCenter:()Ljava/lang/String;
goto 3
2: StackMap locals:
StackMap stack:
getstatic org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.snitch:Lorg/apache/cassandra/locator/IEndpointSnitch;
aload 1
getfield org.apache.cassandra.net.MessageIn.from:Ljava/net/InetAddress;
invokeinterface org.apache.cassandra.locator.IEndpointSnitch.getDatacenter:(Ljava/net/InetAddress;)Ljava/lang/String;
3: StackMap locals:
StackMap stack: java.lang.String
astore 2
start local 2 4: aload 0
getfield org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.responses:Ljava/util/Map;
aload 2
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.util.concurrent.atomic.AtomicInteger
invokevirtual java.util.concurrent.atomic.AtomicInteger.getAndDecrement:()I
pop
5: aload 0
getfield org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.acks:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.incrementAndGet:()I
pop
6: aload 0
getfield org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.responses:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 10
StackMap locals: org.apache.cassandra.service.DatacenterSyncWriteResponseHandler org.apache.cassandra.net.MessageIn java.lang.String top java.util.Iterator
StackMap stack:
7: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.concurrent.atomic.AtomicInteger
astore 3
start local 3 8: aload 3
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
ifle 10
9: return
end local 3 10: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
11: aload 0
invokevirtual org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.signal:()V
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/cassandra/service/DatacenterSyncWriteResponseHandler<TT;>;
0 13 1 message Lorg/apache/cassandra/net/MessageIn<TT;>;
4 13 2 dataCenter Ljava/lang/String;
8 10 3 i Ljava/util/concurrent/atomic/AtomicInteger;
Signature: (Lorg/apache/cassandra/net/MessageIn<TT;>;)V
MethodParameters:
Name Flags
message
protected int ackCount();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.service.DatacenterSyncWriteResponseHandler.acks:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/service/DatacenterSyncWriteResponseHandler<TT;>;
public boolean isLatencyForSnitch();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/service/DatacenterSyncWriteResponseHandler<TT;>;
}
Signature: <T:Ljava/lang/Object;>Lorg/apache/cassandra/service/AbstractWriteResponseHandler<TT;>;
SourceFile: "DatacenterSyncWriteResponseHandler.java"