class org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder<V>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder
super_class: java.lang.Object
{
private final long interval;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.glassfish.jersey.server.internal.monitoring.core.TimeReservoir<V> timeReservoir;
descriptor: Lorg/glassfish/jersey/server/internal/monitoring/core/TimeReservoir;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/glassfish/jersey/server/internal/monitoring/core/TimeReservoir<TV;>;
void <init>(org.glassfish.jersey.server.internal.monitoring.core.TimeReservoir<V>);
descriptor: (Lorg/glassfish/jersey/server/internal/monitoring/core/TimeReservoir;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokeinterface org.glassfish.jersey.server.internal.monitoring.core.TimeReservoir.interval:(Ljava/util/concurrent/TimeUnit;)J
putfield org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder.interval:J
2: aload 0
aload 1
putfield org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder.timeReservoir:Lorg/glassfish/jersey/server/internal/monitoring/core/TimeReservoir;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl$Builder<TV;>;
0 4 1 timeReservoir Lorg/glassfish/jersey/server/internal/monitoring/core/TimeReservoir<TV;>;
Signature: (Lorg/glassfish/jersey/server/internal/monitoring/core/TimeReservoir<TV;>;)V
MethodParameters:
Name Flags
timeReservoir
void addRequest(long, );
descriptor: (JLjava/lang/Object;)V
flags: (0x0000)
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 3 0: aload 0
getfield org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder.timeReservoir:Lorg/glassfish/jersey/server/internal/monitoring/core/TimeReservoir;
aload 3
lload 1
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokeinterface org.glassfish.jersey.server.internal.monitoring.core.TimeReservoir.update:(Ljava/lang/Object;JLjava/util/concurrent/TimeUnit;)V
1: return
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl$Builder<TV;>;
0 2 1 requestTime J
0 2 3 duration TV;
Signature: (JTV;)V
MethodParameters:
Name Flags
requestTime final
duration final
org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl build();
descriptor: ()Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl;
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
invokestatic java.lang.System.currentTimeMillis:()J
invokevirtual org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder.build:(J)Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl$Builder<TV;>;
org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl build(long);
descriptor: (J)Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl;
flags: (0x0000)
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder.timeReservoir:Lorg/glassfish/jersey/server/internal/monitoring/core/TimeReservoir;
1: lload 1
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
invokeinterface org.glassfish.jersey.server.internal.monitoring.core.TimeReservoir.getSnapshot:(JLjava/util/concurrent/TimeUnit;)Lorg/glassfish/jersey/server/internal/monitoring/core/UniformTimeSnapshot;
2: astore 3
start local 3 3: aload 3
invokeinterface org.glassfish.jersey.server.internal.monitoring.core.UniformTimeSnapshot.size:()J
lconst_0
lcmp
ifne 5
4: aload 0
aload 0
getfield org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder.interval:J
invokevirtual org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder.getOrCreateEmptyStats:(J)Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl;
areturn
5: StackMap locals: org.glassfish.jersey.server.internal.monitoring.core.UniformTimeSnapshot
StackMap stack:
new org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl
dup
aload 0
getfield org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder.interval:J
aload 3
invokespecial org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl.<init>:(JLorg/glassfish/jersey/server/internal/monitoring/core/UniformTimeSnapshot;)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl$Builder<TV;>;
0 6 1 currentTime J
3 6 3 durationReservoirSnapshot Lorg/glassfish/jersey/server/internal/monitoring/core/UniformTimeSnapshot;
MethodParameters:
Name Flags
currentTime final
private org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl getOrCreateEmptyStats(long);
descriptor: (J)Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl;
flags: (0x0002) ACC_PRIVATE
Code:
stack=16, locals=3, args_size=2
start local 0 start local 1 0: getstatic org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl.EMPTY:Ljava/util/concurrent/ConcurrentHashMap;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.concurrent.ConcurrentHashMap.containsKey:(Ljava/lang/Object;)Z
ifne 2
1: getstatic org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl.EMPTY:Ljava/util/concurrent/ConcurrentHashMap;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
new org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl
dup
lload 1
dconst_0
ldc -1
ldc -1
ldc -1
lconst_0
invokespecial org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl.<init>:(JDJJJJ)V
invokevirtual java.util.concurrent.ConcurrentHashMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
2: StackMap locals:
StackMap stack:
getstatic org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl.EMPTY:Ljava/util/concurrent/ConcurrentHashMap;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl$Builder<TV;>;
0 3 1 interval J
MethodParameters:
Name Flags
interval final
public long getInterval();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder.interval:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/glassfish/jersey/server/internal/monitoring/TimeWindowStatisticsImpl$Builder<TV;>;
}
Signature: <V:Ljava/lang/Object;>Ljava/lang/Object;
SourceFile: "TimeWindowStatisticsImpl.java"
NestHost: org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl
InnerClasses:
Builder = org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl$Builder of org.glassfish.jersey.server.internal.monitoring.TimeWindowStatisticsImpl