public abstract class org.apache.cassandra.tracing.TraceState implements org.apache.cassandra.utils.progress.ProgressEventNotifier
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.apache.cassandra.tracing.TraceState
super_class: java.lang.Object
{
public final java.util.UUID sessionId;
descriptor: Ljava/util/UUID;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final java.net.InetAddress coordinator;
descriptor: Ljava/net/InetAddress;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final com.google.common.base.Stopwatch watch;
descriptor: Lcom/google/common/base/Stopwatch;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final java.nio.ByteBuffer sessionIdBytes;
descriptor: Ljava/nio/ByteBuffer;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final org.apache.cassandra.tracing.Tracing$TraceType traceType;
descriptor: Lorg/apache/cassandra/tracing/Tracing$TraceType;
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
public final int ttl;
descriptor: I
flags: (0x0011) ACC_PUBLIC, ACC_FINAL
private boolean notify;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final java.util.List<org.apache.cassandra.utils.progress.ProgressListener> listeners;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Lorg/apache/cassandra/utils/progress/ProgressListener;>;
private java.lang.String tag;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private volatile org.apache.cassandra.tracing.TraceState$Status status;
descriptor: Lorg/apache/cassandra/tracing/TraceState$Status;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private final java.util.concurrent.atomic.AtomicInteger references;
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/tracing/TraceState;
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.tracing.TraceState.$assertionsDisabled:Z
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(java.net.InetAddress, java.util.UUID, org.apache.cassandra.tracing.Tracing$TraceType);
descriptor: (Ljava/net/InetAddress;Ljava/util/UUID;Lorg/apache/cassandra/tracing/Tracing$TraceType;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.CopyOnWriteArrayList
dup
invokespecial java.util.concurrent.CopyOnWriteArrayList.<init>:()V
putfield org.apache.cassandra.tracing.TraceState.listeners:Ljava/util/List;
2: aload 0
new java.util.concurrent.atomic.AtomicInteger
dup
iconst_1
invokespecial java.util.concurrent.atomic.AtomicInteger.<init>:(I)V
putfield org.apache.cassandra.tracing.TraceState.references:Ljava/util/concurrent/atomic/AtomicInteger;
3: getstatic org.apache.cassandra.tracing.TraceState.$assertionsDisabled:Z
ifne 4
aload 1
ifnonnull 4
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
4: StackMap locals: org.apache.cassandra.tracing.TraceState java.net.InetAddress java.util.UUID org.apache.cassandra.tracing.Tracing$TraceType
StackMap stack:
getstatic org.apache.cassandra.tracing.TraceState.$assertionsDisabled:Z
ifne 5
aload 2
ifnonnull 5
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield org.apache.cassandra.tracing.TraceState.coordinator:Ljava/net/InetAddress;
6: aload 0
aload 2
putfield org.apache.cassandra.tracing.TraceState.sessionId:Ljava/util/UUID;
7: aload 0
aload 2
invokestatic org.apache.cassandra.utils.ByteBufferUtil.bytes:(Ljava/util/UUID;)Ljava/nio/ByteBuffer;
putfield org.apache.cassandra.tracing.TraceState.sessionIdBytes:Ljava/nio/ByteBuffer;
8: aload 0
aload 3
putfield org.apache.cassandra.tracing.TraceState.traceType:Lorg/apache/cassandra/tracing/Tracing$TraceType;
9: aload 0
aload 3
invokevirtual org.apache.cassandra.tracing.Tracing$TraceType.getTTL:()I
putfield org.apache.cassandra.tracing.TraceState.ttl:I
10: aload 0
invokestatic com.google.common.base.Stopwatch.createStarted:()Lcom/google/common/base/Stopwatch;
putfield org.apache.cassandra.tracing.TraceState.watch:Lcom/google/common/base/Stopwatch;
11: aload 0
getstatic org.apache.cassandra.tracing.TraceState$Status.IDLE:Lorg/apache/cassandra/tracing/TraceState$Status;
putfield org.apache.cassandra.tracing.TraceState.status:Lorg/apache/cassandra/tracing/TraceState$Status;
12: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/cassandra/tracing/TraceState;
0 13 1 coordinator Ljava/net/InetAddress;
0 13 2 sessionId Ljava/util/UUID;
0 13 3 traceType Lorg/apache/cassandra/tracing/Tracing$TraceType;
MethodParameters:
Name Flags
coordinator
sessionId
traceType
public void enableActivityNotification(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.apache.cassandra.tracing.TraceState.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.apache.cassandra.tracing.TraceState.traceType:Lorg/apache/cassandra/tracing/Tracing$TraceType;
getstatic org.apache.cassandra.tracing.Tracing$TraceType.REPAIR:Lorg/apache/cassandra/tracing/Tracing$TraceType;
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield org.apache.cassandra.tracing.TraceState.notify:Z
2: aload 0
aload 1
putfield org.apache.cassandra.tracing.TraceState.tag:Ljava/lang/String;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/tracing/TraceState;
0 4 1 tag Ljava/lang/String;
MethodParameters:
Name Flags
tag
public void addProgressListener(org.apache.cassandra.utils.progress.ProgressListener);
descriptor: (Lorg/apache/cassandra/utils/progress/ProgressListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.apache.cassandra.tracing.TraceState.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.apache.cassandra.tracing.TraceState.traceType:Lorg/apache/cassandra/tracing/Tracing$TraceType;
getstatic org.apache.cassandra.tracing.Tracing$TraceType.REPAIR:Lorg/apache/cassandra/tracing/Tracing$TraceType;
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.tracing.TraceState.listeners:Ljava/util/List;
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/tracing/TraceState;
0 3 1 listener Lorg/apache/cassandra/utils/progress/ProgressListener;
MethodParameters:
Name Flags
listener
public void removeProgressListener(org.apache.cassandra.utils.progress.ProgressListener);
descriptor: (Lorg/apache/cassandra/utils/progress/ProgressListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic org.apache.cassandra.tracing.TraceState.$assertionsDisabled:Z
ifne 1
aload 0
getfield org.apache.cassandra.tracing.TraceState.traceType:Lorg/apache/cassandra/tracing/Tracing$TraceType;
getstatic org.apache.cassandra.tracing.Tracing$TraceType.REPAIR:Lorg/apache/cassandra/tracing/Tracing$TraceType;
if_acmpeq 1
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
1: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.tracing.TraceState.listeners:Ljava/util/List;
aload 1
invokeinterface java.util.List.remove:(Ljava/lang/Object;)Z
pop
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/tracing/TraceState;
0 3 1 listener Lorg/apache/cassandra/utils/progress/ProgressListener;
MethodParameters:
Name Flags
listener
public int elapsed();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.cassandra.tracing.TraceState.watch:Lcom/google/common/base/Stopwatch;
getstatic java.util.concurrent.TimeUnit.MICROSECONDS:Ljava/util/concurrent/TimeUnit;
invokevirtual com.google.common.base.Stopwatch.elapsed:(Ljava/util/concurrent/TimeUnit;)J
lstore 1
start local 1 1: lload 1
ldc 2147483647
lcmp
ifge 2
lload 1
l2i
goto 3
StackMap locals: long
StackMap stack:
2: ldc 2147483647
StackMap locals:
StackMap stack: int
3: ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/tracing/TraceState;
1 4 1 elapsed J
public synchronized void stop();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.cassandra.tracing.TraceState.waitForPendingEvents:()V
1: aload 0
getstatic org.apache.cassandra.tracing.TraceState$Status.STOPPED:Lorg/apache/cassandra/tracing/TraceState$Status;
putfield org.apache.cassandra.tracing.TraceState.status:Lorg/apache/cassandra/tracing/TraceState$Status;
2: aload 0
invokevirtual java.lang.Object.notifyAll:()V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/apache/cassandra/tracing/TraceState;
public synchronized org.apache.cassandra.tracing.TraceState$Status waitActivity(long);
descriptor: (J)Lorg/apache/cassandra/tracing/TraceState$Status;
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.tracing.TraceState.status:Lorg/apache/cassandra/tracing/TraceState$Status;
getstatic org.apache.cassandra.tracing.TraceState$Status.IDLE:Lorg/apache/cassandra/tracing/TraceState$Status;
if_acmpne 5
1: aload 0
lload 1
invokevirtual java.lang.Object.wait:(J)V
2: goto 5
3: StackMap locals:
StackMap stack: java.lang.InterruptedException
pop
4: new java.lang.RuntimeException
dup
invokespecial java.lang.RuntimeException.<init>:()V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.tracing.TraceState.status:Lorg/apache/cassandra/tracing/TraceState$Status;
getstatic org.apache.cassandra.tracing.TraceState$Status.ACTIVE:Lorg/apache/cassandra/tracing/TraceState$Status;
if_acmpne 8
6: aload 0
getstatic org.apache.cassandra.tracing.TraceState$Status.IDLE:Lorg/apache/cassandra/tracing/TraceState$Status;
putfield org.apache.cassandra.tracing.TraceState.status:Lorg/apache/cassandra/tracing/TraceState$Status;
7: getstatic org.apache.cassandra.tracing.TraceState$Status.ACTIVE:Lorg/apache/cassandra/tracing/TraceState$Status;
areturn
8: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.tracing.TraceState.status:Lorg/apache/cassandra/tracing/TraceState$Status;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/cassandra/tracing/TraceState;
0 9 1 timeout J
Exception table:
from to target type
1 2 3 Class java.lang.InterruptedException
MethodParameters:
Name Flags
timeout
protected synchronized void notifyActivity();
descriptor: ()V
flags: (0x0024) ACC_PROTECTED, ACC_SYNCHRONIZED
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getstatic org.apache.cassandra.tracing.TraceState$Status.ACTIVE:Lorg/apache/cassandra/tracing/TraceState$Status;
putfield org.apache.cassandra.tracing.TraceState.status:Lorg/apache/cassandra/tracing/TraceState$Status;
1: aload 0
invokevirtual java.lang.Object.notifyAll:()V
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/cassandra/tracing/TraceState;
public void trace(java.lang.String, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic org.slf4j.helpers.MessageFormatter.format:(Ljava/lang/String;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
invokevirtual org.slf4j.helpers.FormattingTuple.getMessage:()Ljava/lang/String;
invokevirtual org.apache.cassandra.tracing.TraceState.trace:(Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/tracing/TraceState;
0 2 1 format Ljava/lang/String;
0 2 2 arg Ljava/lang/Object;
MethodParameters:
Name Flags
format
arg
public void trace(java.lang.String, java.lang.Object, java.lang.Object);
descriptor: (Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)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
aload 1
aload 2
aload 3
invokestatic org.slf4j.helpers.MessageFormatter.format:(Ljava/lang/String;Ljava/lang/Object;Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
invokevirtual org.slf4j.helpers.FormattingTuple.getMessage:()Ljava/lang/String;
invokevirtual org.apache.cassandra.tracing.TraceState.trace:(Ljava/lang/String;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/tracing/TraceState;
0 2 1 format Ljava/lang/String;
0 2 2 arg1 Ljava/lang/Object;
0 2 3 arg2 Ljava/lang/Object;
MethodParameters:
Name Flags
format
arg1
arg2
public void trace(java.lang.String, java.lang.Object[]);
descriptor: (Ljava/lang/String;[Ljava/lang/Object;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokestatic org.slf4j.helpers.MessageFormatter.arrayFormat:(Ljava/lang/String;[Ljava/lang/Object;)Lorg/slf4j/helpers/FormattingTuple;
invokevirtual org.slf4j.helpers.FormattingTuple.getMessage:()Ljava/lang/String;
invokevirtual org.apache.cassandra.tracing.TraceState.trace:(Ljava/lang/String;)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/tracing/TraceState;
0 2 1 format Ljava/lang/String;
0 2 2 args [Ljava/lang/Object;
MethodParameters:
Name Flags
format
args
public void trace(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.cassandra.tracing.TraceState.notify:Z
ifeq 2
1: aload 0
invokevirtual org.apache.cassandra.tracing.TraceState.notifyActivity:()V
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.apache.cassandra.tracing.TraceState.traceImpl:(Ljava/lang/String;)V
3: aload 0
getfield org.apache.cassandra.tracing.TraceState.listeners:Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 6
StackMap locals: org.apache.cassandra.tracing.TraceState java.lang.String top java.util.Iterator
StackMap stack:
4: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.apache.cassandra.utils.progress.ProgressListener
astore 2
start local 2 5: aload 2
aload 0
getfield org.apache.cassandra.tracing.TraceState.tag:Ljava/lang/String;
aload 1
invokestatic org.apache.cassandra.utils.progress.ProgressEvent.createNotification:(Ljava/lang/String;)Lorg/apache/cassandra/utils/progress/ProgressEvent;
invokeinterface org.apache.cassandra.utils.progress.ProgressListener.progress:(Ljava/lang/String;Lorg/apache/cassandra/utils/progress/ProgressEvent;)V
end local 2 6: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 4
7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/cassandra/tracing/TraceState;
0 8 1 message Ljava/lang/String;
5 6 2 listener Lorg/apache/cassandra/utils/progress/ProgressListener;
MethodParameters:
Name Flags
message
protected abstract void traceImpl(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
message
protected void waitForPendingEvents();
descriptor: ()V
flags: (0x0004) ACC_PROTECTED
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/cassandra/tracing/TraceState;
public boolean acquireReference();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.cassandra.tracing.TraceState.references:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.get:()I
istore 1
start local 1 1: iload 1
ifgt 3
2: iconst_0
ireturn
3: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.cassandra.tracing.TraceState.references:Ljava/util/concurrent/atomic/AtomicInteger;
iload 1
iload 1
iconst_1
iadd
invokevirtual java.util.concurrent.atomic.AtomicInteger.compareAndSet:(II)Z
ifeq 0
4: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/cassandra/tracing/TraceState;
1 5 1 n I
public int releaseReference();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.cassandra.tracing.TraceState.waitForPendingEvents:()V
1: aload 0
getfield org.apache.cassandra.tracing.TraceState.references:Ljava/util/concurrent/atomic/AtomicInteger;
invokevirtual java.util.concurrent.atomic.AtomicInteger.decrementAndGet:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/cassandra/tracing/TraceState;
}
SourceFile: "TraceState.java"
NestMembers:
org.apache.cassandra.tracing.TraceState$Status
InnerClasses:
public final Status = org.apache.cassandra.tracing.TraceState$Status of org.apache.cassandra.tracing.TraceState
public final TraceType = org.apache.cassandra.tracing.Tracing$TraceType of org.apache.cassandra.tracing.Tracing