class org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener implements org.glassfish.jersey.server.monitoring.RequestEventListener
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener
super_class: java.lang.Object
{
private final long requestTimeStart;
descriptor: J
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private volatile long methodTimeStart;
descriptor: J
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private volatile org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$MethodStats methodStats;
descriptor: Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener$MethodStats;
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
final org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener this$0;
descriptor: Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener;
flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC
private static volatile int[] $SWITCH_TABLE$org$glassfish$jersey$server$monitoring$RequestEvent$Type;
descriptor: [I
flags: (0x104a) ACC_PRIVATE, ACC_STATIC, ACC_VOLATILE, ACC_SYNTHETIC
public void <init>(org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener);
descriptor: (Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 0: aload 0
aload 1
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.this$0:Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener;
aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
invokestatic java.lang.System.currentTimeMillis:()J
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.requestTimeStart:J
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener$ReqEventListener;
MethodParameters:
Name Flags
this$0 final
public void onEvent(org.glassfish.jersey.server.monitoring.RequestEvent);
descriptor: (Lorg/glassfish/jersey/server/monitoring/RequestEvent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=9, args_size=2
start local 0 start local 1 0: invokestatic java.lang.System.currentTimeMillis:()J
lstore 2
start local 2 1: invokestatic org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.$SWITCH_TABLE$org$glassfish$jersey$server$monitoring$RequestEvent$Type:()[I
aload 1
invokeinterface org.glassfish.jersey.server.monitoring.RequestEvent.getType:()Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
iaload
tableswitch { // 7 - 14
7: 2
8: 4
9: 30
10: 30
11: 30
12: 30
13: 7
14: 10
default: 30
}
2: StackMap locals: long
StackMap stack:
aload 0
lload 2
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.methodTimeStart:J
3: goto 30
4: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.glassfish.jersey.server.monitoring.RequestEvent.getUriInfo:()Lorg/glassfish/jersey/server/ExtendedUriInfo;
invokeinterface org.glassfish.jersey.server.ExtendedUriInfo.getMatchedResourceMethod:()Lorg/glassfish/jersey/server/model/ResourceMethod;
astore 4
start local 4 5: aload 0
new org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$MethodStats
dup
aload 4
aload 0
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.methodTimeStart:J
lload 2
aload 0
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.methodTimeStart:J
lsub
invokespecial org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$MethodStats.<init>:(Lorg/glassfish/jersey/server/model/ResourceMethod;JJ)V
putfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.methodStats:Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener$MethodStats;
6: goto 30
end local 4 7: StackMap locals:
StackMap stack:
aload 0
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.this$0:Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener;
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener.exceptionMapperEvents:Ljava/util/Queue;
aload 1
invokeinterface java.util.Queue.offer:(Ljava/lang/Object;)Z
ifne 30
8: getstatic org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener.LOGGER:Ljava/util/logging/Logger;
invokestatic org.glassfish.jersey.server.internal.LocalizationMessages.ERROR_MONITORING_QUEUE_MAPPER:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.warning:(Ljava/lang/String;)V
9: goto 30
10: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.glassfish.jersey.server.monitoring.RequestEvent.isResponseWritten:()Z
ifeq 13
11: aload 0
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.this$0:Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener;
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener.responseStatuses:Ljava/util/Queue;
aload 1
invokeinterface org.glassfish.jersey.server.monitoring.RequestEvent.getContainerResponse:()Lorg/glassfish/jersey/server/ContainerResponse;
invokevirtual org.glassfish.jersey.server.ContainerResponse.getStatus:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
invokeinterface java.util.Queue.offer:(Ljava/lang/Object;)Z
ifne 13
12: getstatic org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener.LOGGER:Ljava/util/logging/Logger;
invokestatic org.glassfish.jersey.server.internal.LocalizationMessages.ERROR_MONITORING_QUEUE_RESPONSE:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.warning:(Ljava/lang/String;)V
13: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
astore 5
start local 5 14: aload 1
invokeinterface org.glassfish.jersey.server.monitoring.RequestEvent.getUriInfo:()Lorg/glassfish/jersey/server/ExtendedUriInfo;
invokeinterface org.glassfish.jersey.server.ExtendedUriInfo.getMatchedTemplates:()Ljava/util/List;
15: invokeinterface java.util.List.stream:()Ljava/util/stream/Stream;
16: invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/glassfish/jersey/server/internal/monitoring/MonitoringEventListener$ReqEventListener.lambda$0(Ljava/util/List;)Ljava/util/List; (6)
(Ljava/util/List;)Ljava/util/List;
invokestatic java.util.stream.Collectors.collectingAndThen:(Ljava/util/stream/Collector;Ljava/util/function/Function;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
checkcast java.util.List
17: astore 6
start local 6 18: aload 6
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 8
goto 24
StackMap locals: org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener org.glassfish.jersey.server.monitoring.RequestEvent long top java.lang.StringBuilder java.util.List top java.util.Iterator
StackMap stack:
19: aload 8
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.glassfish.jersey.uri.UriTemplate
astore 7
start local 7 20: aload 5
aload 7
invokevirtual org.glassfish.jersey.uri.UriTemplate.getTemplate:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
21: aload 7
invokevirtual org.glassfish.jersey.uri.UriTemplate.endsWithSlash:()Z
ifne 23
22: aload 5
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
23: StackMap locals: org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener org.glassfish.jersey.server.monitoring.RequestEvent long top java.lang.StringBuilder java.util.List org.glassfish.jersey.uri.UriTemplate java.util.Iterator
StackMap stack:
aload 5
aload 5
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.StringBuilder.setLength:(I)V
end local 7 24: StackMap locals: org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener org.glassfish.jersey.server.monitoring.RequestEvent long top java.lang.StringBuilder java.util.List top java.util.Iterator
StackMap stack:
aload 8
invokeinterface java.util.Iterator.hasNext:()Z
ifne 19
25: aload 0
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.this$0:Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener;
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener.requestQueuedItems:Ljava/util/Queue;
new org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$RequestStats
dup
new org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$TimeStats
dup
aload 0
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.requestTimeStart:J
lload 2
aload 0
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.requestTimeStart:J
lsub
invokespecial org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$TimeStats.<init>:(JJ)V
26: aload 0
getfield org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.methodStats:Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener$MethodStats;
aload 5
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$RequestStats.<init>:(Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener$TimeStats;Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener$MethodStats;Ljava/lang/String;)V
27: invokeinterface java.util.Queue.offer:(Ljava/lang/Object;)Z
28: ifne 30
29: getstatic org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener.LOGGER:Ljava/util/logging/Logger;
invokestatic org.glassfish.jersey.server.internal.LocalizationMessages.ERROR_MONITORING_QUEUE_REQUEST:()Ljava/lang/String;
invokevirtual java.util.logging.Logger.warning:(Ljava/lang/String;)V
end local 6 end local 5 30: StackMap locals: org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener org.glassfish.jersey.server.monitoring.RequestEvent long
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/glassfish/jersey/server/internal/monitoring/MonitoringEventListener$ReqEventListener;
0 31 1 event Lorg/glassfish/jersey/server/monitoring/RequestEvent;
1 31 2 now J
5 7 4 method Lorg/glassfish/jersey/server/model/ResourceMethod;
14 30 5 sb Ljava/lang/StringBuilder;
18 30 6 orderedTemplates Ljava/util/List<Lorg/glassfish/jersey/uri/UriTemplate;>;
20 24 7 uriTemplate Lorg/glassfish/jersey/uri/UriTemplate;
MethodParameters:
Name Flags
event final
static int[] $SWITCH_TABLE$org$glassfish$jersey$server$monitoring$RequestEvent$Type();
descriptor: ()[I
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=1, args_size=0
0: getstatic org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.$SWITCH_TABLE$org$glassfish$jersey$server$monitoring$RequestEvent$Type:[I
dup
ifnull 1
areturn
StackMap locals:
StackMap stack: int[]
1: pop
invokestatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.values:()[Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
arraylength
newarray 10
astore 0
2: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.EXCEPTION_MAPPER_FOUND:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
bipush 12
iastore
3: goto 5
StackMap locals: int[]
StackMap stack: java.lang.NoSuchFieldError
4: pop
StackMap locals:
StackMap stack:
5: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.EXCEPTION_MAPPING_FINISHED:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
bipush 13
iastore
6: goto 8
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
7: pop
StackMap locals:
StackMap stack:
8: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.FINISHED:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
bipush 14
iastore
9: goto 11
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
10: pop
StackMap locals:
StackMap stack:
11: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.LOCATOR_MATCHED:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
iconst_3
iastore
12: goto 14
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
13: pop
StackMap locals:
StackMap stack:
14: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.MATCHING_START:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
iconst_2
iastore
15: goto 17
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
16: pop
StackMap locals:
StackMap stack:
17: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.ON_EXCEPTION:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
bipush 11
iastore
18: goto 20
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
19: pop
StackMap locals:
StackMap stack:
20: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.REQUEST_FILTERED:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
bipush 6
iastore
21: goto 23
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
22: pop
StackMap locals:
StackMap stack:
23: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.REQUEST_MATCHED:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
iconst_5
iastore
24: goto 26
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
25: pop
StackMap locals:
StackMap stack:
26: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.RESOURCE_METHOD_FINISHED:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
bipush 8
iastore
27: goto 29
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
28: pop
StackMap locals:
StackMap stack:
29: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.RESOURCE_METHOD_START:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
bipush 7
iastore
30: goto 32
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
31: pop
StackMap locals:
StackMap stack:
32: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.RESP_FILTERS_FINISHED:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
bipush 10
iastore
33: goto 35
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
34: pop
StackMap locals:
StackMap stack:
35: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.RESP_FILTERS_START:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
bipush 9
iastore
36: goto 38
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
37: pop
StackMap locals:
StackMap stack:
38: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.START:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
iconst_1
iastore
39: goto 41
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
40: pop
StackMap locals:
StackMap stack:
41: aload 0
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.SUBRESOURCE_LOCATED:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
invokevirtual org.glassfish.jersey.server.monitoring.RequestEvent$Type.ordinal:()I
iconst_4
iastore
42: goto 44
StackMap locals:
StackMap stack: java.lang.NoSuchFieldError
43: pop
StackMap locals:
StackMap stack:
44: aload 0
dup
putstatic org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener.$SWITCH_TABLE$org$glassfish$jersey$server$monitoring$RequestEvent$Type:[I
areturn
LocalVariableTable:
Start End Slot Name Signature
Exception table:
from to target type
2 3 4 Class java.lang.NoSuchFieldError
5 6 7 Class java.lang.NoSuchFieldError
8 9 10 Class java.lang.NoSuchFieldError
11 12 13 Class java.lang.NoSuchFieldError
14 15 16 Class java.lang.NoSuchFieldError
17 18 19 Class java.lang.NoSuchFieldError
20 21 22 Class java.lang.NoSuchFieldError
23 24 25 Class java.lang.NoSuchFieldError
26 27 28 Class java.lang.NoSuchFieldError
29 30 31 Class java.lang.NoSuchFieldError
32 33 34 Class java.lang.NoSuchFieldError
35 36 37 Class java.lang.NoSuchFieldError
38 39 40 Class java.lang.NoSuchFieldError
41 42 43 Class java.lang.NoSuchFieldError
private static java.util.List lambda$0(java.util.List);
descriptor: (Ljava/util/List;)Ljava/util/List;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokestatic java.util.Collections.reverse:(Ljava/util/List;)V
1: aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 uriTemplates Ljava/util/List<Lorg/glassfish/jersey/uri/UriTemplate;>;
}
SourceFile: "MonitoringEventListener.java"
NestHost: org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
MethodStats = org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$MethodStats of org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener
private ReqEventListener = org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$ReqEventListener of org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener
RequestStats = org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$RequestStats of org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener
TimeStats = org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener$TimeStats of org.glassfish.jersey.server.internal.monitoring.MonitoringEventListener
public final Type = org.glassfish.jersey.server.monitoring.RequestEvent$Type of org.glassfish.jersey.server.monitoring.RequestEvent