class org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger
super_class: java.lang.Object
{
private static final int FLOODING_WARNING_LOG_INTERVAL_MILLIS;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5000
private final java.util.Collection<?> collection;
descriptor: Ljava/util/Collection;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Collection<*>;
private final long startTime;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private int i;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int lastSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
public void <init>(java.util.Collection<?>);
descriptor: (Ljava/util/Collection;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger this
start local 1 // java.util.Collection collection
0: .line 215
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 205
aload 0 /* this */
invokestatic java.lang.System.nanoTime:()J
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.startTime:J
2: .line 207
aload 0 /* this */
iconst_0
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.i:I
3: .line 216
aload 0 /* this */
aload 1 /* collection */
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.collection:Ljava/util/Collection;
4: .line 217
aload 0 /* this */
aload 1 /* collection */
invokeinterface java.util.Collection.size:()I
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.lastSize:I
5: .line 218
return
end local 1 // java.util.Collection collection
end local 0 // org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/glassfish/jersey/server/internal/monitoring/MonitoringStatisticsProcessor$FloodingLogger;
0 6 1 collection Ljava/util/Collection<*>;
Signature: (Ljava/util/Collection<*>;)V
MethodParameters:
Name Flags
collection final
public void conditionallyLogFlooding();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=1, args_size=1
start local 0 // org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger this
0: .line 227
invokestatic java.lang.System.nanoTime:()J
aload 0 /* this */
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.startTime:J
lsub
getstatic java.util.concurrent.TimeUnit.NANOSECONDS:Ljava/util/concurrent/TimeUnit;
ldc 5000
1: .line 228
getstatic java.util.concurrent.TimeUnit.MILLISECONDS:Ljava/util/concurrent/TimeUnit;
2: .line 227
invokevirtual java.util.concurrent.TimeUnit.convert:(JLjava/util/concurrent/TimeUnit;)J
ldiv
3: .line 228
aload 0 /* this */
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.i:I
i2l
lcmp
ifgt 5
4: .line 229
return
5: .line 232
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.collection:Ljava/util/Collection;
invokeinterface java.util.Collection.size:()I
aload 0 /* this */
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.lastSize:I
if_icmple 7
6: .line 233
getstatic org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor.LOGGER:Ljava/util/logging/Logger;
aload 0 /* this */
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.collection:Ljava/util/Collection;
invokeinterface java.util.Collection.size:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokestatic org.glassfish.jersey.server.internal.LocalizationMessages.ERROR_MONITORING_QUEUE_FLOODED:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.util.logging.Logger.warning:(Ljava/lang/String;)V
7: .line 235
StackMap locals:
StackMap stack:
aload 0 /* this */
dup
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.i:I
iconst_1
iadd
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.i:I
8: .line 236
aload 0 /* this */
aload 0 /* this */
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.collection:Ljava/util/Collection;
invokeinterface java.util.Collection.size:()I
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger.lastSize:I
9: .line 237
return
end local 0 // org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/glassfish/jersey/server/internal/monitoring/MonitoringStatisticsProcessor$FloodingLogger;
}
SourceFile: "MonitoringStatisticsProcessor.java"
NestHost: org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor
InnerClasses:
private FloodingLogger = org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor$FloodingLogger of org.glassfish.jersey.server.internal.monitoring.MonitoringStatisticsProcessor