public class com.codahale.metrics.Timer implements com.codahale.metrics.Metered, com.codahale.metrics.Sampling
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.codahale.metrics.Timer
super_class: java.lang.Object
{
private final com.codahale.metrics.Meter meter;
descriptor: Lcom/codahale/metrics/Meter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.codahale.metrics.Histogram histogram;
descriptor: Lcom/codahale/metrics/Histogram;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final com.codahale.metrics.Clock clock;
descriptor: Lcom/codahale/metrics/Clock;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
new com.codahale.metrics.ExponentiallyDecayingReservoir
dup
invokespecial com.codahale.metrics.ExponentiallyDecayingReservoir.<init>:()V
invokespecial com.codahale.metrics.Timer.<init>:(Lcom/codahale/metrics/Reservoir;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/codahale/metrics/Timer;
public void <init>(com.codahale.metrics.Reservoir);
descriptor: (Lcom/codahale/metrics/Reservoir;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic com.codahale.metrics.Clock.defaultClock:()Lcom/codahale/metrics/Clock;
invokespecial com.codahale.metrics.Timer.<init>:(Lcom/codahale/metrics/Reservoir;Lcom/codahale/metrics/Clock;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/codahale/metrics/Timer;
0 2 1 reservoir Lcom/codahale/metrics/Reservoir;
MethodParameters:
Name Flags
reservoir
public void <init>(com.codahale.metrics.Reservoir, com.codahale.metrics.Clock);
descriptor: (Lcom/codahale/metrics/Reservoir;Lcom/codahale/metrics/Clock;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new com.codahale.metrics.Meter
dup
aload 2
invokespecial com.codahale.metrics.Meter.<init>:(Lcom/codahale/metrics/Clock;)V
putfield com.codahale.metrics.Timer.meter:Lcom/codahale/metrics/Meter;
2: aload 0
aload 2
putfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
3: aload 0
new com.codahale.metrics.Histogram
dup
aload 1
invokespecial com.codahale.metrics.Histogram.<init>:(Lcom/codahale/metrics/Reservoir;)V
putfield com.codahale.metrics.Timer.histogram:Lcom/codahale/metrics/Histogram;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/codahale/metrics/Timer;
0 5 1 reservoir Lcom/codahale/metrics/Reservoir;
0 5 2 clock Lcom/codahale/metrics/Clock;
MethodParameters:
Name Flags
reservoir
clock
public void update(long, java.util.concurrent.TimeUnit);
descriptor: (JLjava/util/concurrent/TimeUnit;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
aload 3
lload 1
invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
invokevirtual com.codahale.metrics.Timer.update:(J)V
1: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/codahale/metrics/Timer;
0 2 1 duration J
0 2 3 unit Ljava/util/concurrent/TimeUnit;
MethodParameters:
Name Flags
duration
unit
public void update(java.time.Duration);
descriptor: (Ljava/time/Duration;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.time.Duration.toNanos:()J
invokevirtual com.codahale.metrics.Timer.update:(J)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/codahale/metrics/Timer;
0 2 1 duration Ljava/time/Duration;
MethodParameters:
Name Flags
duration
public <T> T time(java.util.concurrent.Callable<T>);
descriptor: (Ljava/util/concurrent/Callable;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokevirtual com.codahale.metrics.Clock.getTick:()J
lstore 2
start local 2 1: aload 1
invokeinterface java.util.concurrent.Callable.call:()Ljava/lang/Object;
astore 5
2: aload 0
aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokevirtual com.codahale.metrics.Clock.getTick:()J
lload 2
lsub
invokevirtual com.codahale.metrics.Timer.update:(J)V
3: aload 5
areturn
4: StackMap locals: com.codahale.metrics.Timer java.util.concurrent.Callable long
StackMap stack: java.lang.Throwable
astore 4
5: aload 0
aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokevirtual com.codahale.metrics.Clock.getTick:()J
lload 2
lsub
invokevirtual com.codahale.metrics.Timer.update:(J)V
6: aload 4
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/codahale/metrics/Timer;
0 7 1 event Ljava/util/concurrent/Callable<TT;>;
1 7 2 startTime J
Exception table:
from to target type
1 2 4 any
Exceptions:
throws java.lang.Exception
Signature: <T:Ljava/lang/Object;>(Ljava/util/concurrent/Callable<TT;>;)TT;
MethodParameters:
Name Flags
event
public <T> T timeSupplier(java.util.function.Supplier<T>);
descriptor: (Ljava/util/function/Supplier;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokevirtual com.codahale.metrics.Clock.getTick:()J
lstore 2
start local 2 1: aload 1
invokeinterface java.util.function.Supplier.get:()Ljava/lang/Object;
astore 5
2: aload 0
aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokevirtual com.codahale.metrics.Clock.getTick:()J
lload 2
lsub
invokevirtual com.codahale.metrics.Timer.update:(J)V
3: aload 5
areturn
4: StackMap locals: com.codahale.metrics.Timer java.util.function.Supplier long
StackMap stack: java.lang.Throwable
astore 4
5: aload 0
aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokevirtual com.codahale.metrics.Clock.getTick:()J
lload 2
lsub
invokevirtual com.codahale.metrics.Timer.update:(J)V
6: aload 4
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/codahale/metrics/Timer;
0 7 1 event Ljava/util/function/Supplier<TT;>;
1 7 2 startTime J
Exception table:
from to target type
1 2 4 any
Signature: <T:Ljava/lang/Object;>(Ljava/util/function/Supplier<TT;>;)TT;
MethodParameters:
Name Flags
event
public void time(java.lang.Runnable);
descriptor: (Ljava/lang/Runnable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokevirtual com.codahale.metrics.Clock.getTick:()J
lstore 2
start local 2 1: aload 1
invokeinterface java.lang.Runnable.run:()V
2: goto 6
StackMap locals: com.codahale.metrics.Timer java.lang.Runnable long
StackMap stack: java.lang.Throwable
3: astore 4
4: aload 0
aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokevirtual com.codahale.metrics.Clock.getTick:()J
lload 2
lsub
invokevirtual com.codahale.metrics.Timer.update:(J)V
5: aload 4
athrow
6: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokevirtual com.codahale.metrics.Clock.getTick:()J
lload 2
lsub
invokevirtual com.codahale.metrics.Timer.update:(J)V
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/codahale/metrics/Timer;
0 8 1 event Ljava/lang/Runnable;
1 8 2 startTime J
Exception table:
from to target type
1 3 3 any
MethodParameters:
Name Flags
event
public com.codahale.metrics.Timer$Context time();
descriptor: ()Lcom/codahale/metrics/Timer$Context;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: new com.codahale.metrics.Timer$Context
dup
aload 0
aload 0
getfield com.codahale.metrics.Timer.clock:Lcom/codahale/metrics/Clock;
invokespecial com.codahale.metrics.Timer$Context.<init>:(Lcom/codahale/metrics/Timer;Lcom/codahale/metrics/Clock;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/codahale/metrics/Timer;
public long getCount();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.codahale.metrics.Timer.histogram:Lcom/codahale/metrics/Histogram;
invokevirtual com.codahale.metrics.Histogram.getCount:()J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/codahale/metrics/Timer;
public double getFifteenMinuteRate();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.codahale.metrics.Timer.meter:Lcom/codahale/metrics/Meter;
invokevirtual com.codahale.metrics.Meter.getFifteenMinuteRate:()D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/codahale/metrics/Timer;
public double getFiveMinuteRate();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.codahale.metrics.Timer.meter:Lcom/codahale/metrics/Meter;
invokevirtual com.codahale.metrics.Meter.getFiveMinuteRate:()D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/codahale/metrics/Timer;
public double getMeanRate();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.codahale.metrics.Timer.meter:Lcom/codahale/metrics/Meter;
invokevirtual com.codahale.metrics.Meter.getMeanRate:()D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/codahale/metrics/Timer;
public double getOneMinuteRate();
descriptor: ()D
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.codahale.metrics.Timer.meter:Lcom/codahale/metrics/Meter;
invokevirtual com.codahale.metrics.Meter.getOneMinuteRate:()D
dreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/codahale/metrics/Timer;
public com.codahale.metrics.Snapshot getSnapshot();
descriptor: ()Lcom/codahale/metrics/Snapshot;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.codahale.metrics.Timer.histogram:Lcom/codahale/metrics/Histogram;
invokevirtual com.codahale.metrics.Histogram.getSnapshot:()Lcom/codahale/metrics/Snapshot;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/codahale/metrics/Timer;
private void update(long);
descriptor: (J)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: lload 1
lconst_0
lcmp
iflt 3
1: aload 0
getfield com.codahale.metrics.Timer.histogram:Lcom/codahale/metrics/Histogram;
lload 1
invokevirtual com.codahale.metrics.Histogram.update:(J)V
2: aload 0
getfield com.codahale.metrics.Timer.meter:Lcom/codahale/metrics/Meter;
invokevirtual com.codahale.metrics.Meter.mark:()V
3: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/codahale/metrics/Timer;
0 4 1 duration J
MethodParameters:
Name Flags
duration
}
SourceFile: "Timer.java"
NestMembers:
com.codahale.metrics.Timer$Context
InnerClasses:
public Context = com.codahale.metrics.Timer$Context of com.codahale.metrics.Timer