abstract class org.apache.cassandra.transport.Message$Dispatcher$Flusher implements java.lang.Runnable
minor version: 0
major version: 59
flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
this_class: org.apache.cassandra.transport.Message$Dispatcher$Flusher
super_class: java.lang.Object
{
final io.netty.channel.EventLoop eventLoop;
descriptor: Lio/netty/channel/EventLoop;
flags: (0x0010) ACC_FINAL
final java.util.concurrent.ConcurrentLinkedQueue<org.apache.cassandra.transport.Message$Dispatcher$FlushItem> queued;
descriptor: Ljava/util/concurrent/ConcurrentLinkedQueue;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/concurrent/ConcurrentLinkedQueue<Lorg/apache/cassandra/transport/Message$Dispatcher$FlushItem;>;
final java.util.concurrent.atomic.AtomicBoolean scheduled;
descriptor: Ljava/util/concurrent/atomic/AtomicBoolean;
flags: (0x0010) ACC_FINAL
final java.util.HashSet<io.netty.channel.ChannelHandlerContext> channels;
descriptor: Ljava/util/HashSet;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/HashSet<Lio/netty/channel/ChannelHandlerContext;>;
final java.util.List<org.apache.cassandra.transport.Message$Dispatcher$FlushItem> flushed;
descriptor: Ljava/util/List;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/List<Lorg/apache/cassandra/transport/Message$Dispatcher$FlushItem;>;
void start();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 // org.apache.cassandra.transport.Message$Dispatcher$Flusher this
0: .line 474
aload 0 /* this */
getfield org.apache.cassandra.transport.Message$Dispatcher$Flusher.scheduled:Ljava/util/concurrent/atomic/AtomicBoolean;
invokevirtual java.util.concurrent.atomic.AtomicBoolean.get:()Z
ifne 2
aload 0 /* this */
getfield org.apache.cassandra.transport.Message$Dispatcher$Flusher.scheduled:Ljava/util/concurrent/atomic/AtomicBoolean;
iconst_0
iconst_1
invokevirtual java.util.concurrent.atomic.AtomicBoolean.compareAndSet:(ZZ)Z
ifeq 2
1: .line 476
aload 0 /* this */
getfield org.apache.cassandra.transport.Message$Dispatcher$Flusher.eventLoop:Lio/netty/channel/EventLoop;
aload 0 /* this */
invokeinterface io.netty.channel.EventLoop.execute:(Ljava/lang/Runnable;)V
2: .line 478
StackMap locals:
StackMap stack:
return
end local 0 // org.apache.cassandra.transport.Message$Dispatcher$Flusher this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/transport/Message$Dispatcher$Flusher;
public void <init>(io.netty.channel.EventLoop);
descriptor: (Lio/netty/channel/EventLoop;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 // org.apache.cassandra.transport.Message$Dispatcher$Flusher this
start local 1 // io.netty.channel.EventLoop eventLoop
0: .line 480
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 467
aload 0 /* this */
new java.util.concurrent.ConcurrentLinkedQueue
dup
invokespecial java.util.concurrent.ConcurrentLinkedQueue.<init>:()V
putfield org.apache.cassandra.transport.Message$Dispatcher$Flusher.queued:Ljava/util/concurrent/ConcurrentLinkedQueue;
2: .line 468
aload 0 /* this */
new java.util.concurrent.atomic.AtomicBoolean
dup
iconst_0
invokespecial java.util.concurrent.atomic.AtomicBoolean.<init>:(Z)V
putfield org.apache.cassandra.transport.Message$Dispatcher$Flusher.scheduled:Ljava/util/concurrent/atomic/AtomicBoolean;
3: .line 469
aload 0 /* this */
new java.util.HashSet
dup
invokespecial java.util.HashSet.<init>:()V
putfield org.apache.cassandra.transport.Message$Dispatcher$Flusher.channels:Ljava/util/HashSet;
4: .line 470
aload 0 /* this */
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
putfield org.apache.cassandra.transport.Message$Dispatcher$Flusher.flushed:Ljava/util/List;
5: .line 482
aload 0 /* this */
aload 1 /* eventLoop */
putfield org.apache.cassandra.transport.Message$Dispatcher$Flusher.eventLoop:Lio/netty/channel/EventLoop;
6: .line 483
return
end local 1 // io.netty.channel.EventLoop eventLoop
end local 0 // org.apache.cassandra.transport.Message$Dispatcher$Flusher this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/cassandra/transport/Message$Dispatcher$Flusher;
0 7 1 eventLoop Lio/netty/channel/EventLoop;
MethodParameters:
Name Flags
eventLoop
}
SourceFile: "Message.java"
NestHost: org.apache.cassandra.transport.Message
InnerClasses:
public Dispatcher = org.apache.cassandra.transport.Message$Dispatcher of org.apache.cassandra.transport.Message
private FlushItem = org.apache.cassandra.transport.Message$Dispatcher$FlushItem of org.apache.cassandra.transport.Message$Dispatcher
private abstract Flusher = org.apache.cassandra.transport.Message$Dispatcher$Flusher of org.apache.cassandra.transport.Message$Dispatcher