class io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener implements org.glassfish.jersey.server.monitoring.RequestEventListener
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener
super_class: java.lang.Object
{
private java.util.concurrent.ConcurrentMap<org.glassfish.jersey.server.model.ResourceMethod, java.util.Optional<io.dropwizard.hibernate.UnitOfWork>> methodMap;
descriptor: Ljava/util/concurrent/ConcurrentMap;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/concurrent/ConcurrentMap<Lorg/glassfish/jersey/server/model/ResourceMethod;Ljava/util/Optional<Lio/dropwizard/hibernate/UnitOfWork;>;>;
private final io.dropwizard.hibernate.UnitOfWorkAspect unitOfWorkAspect;
descriptor: Lio/dropwizard/hibernate/UnitOfWorkAspect;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(java.util.concurrent.ConcurrentMap<org.glassfish.jersey.server.model.ResourceMethod, java.util.Optional<io.dropwizard.hibernate.UnitOfWork>>, java.util.Map<java.lang.String, org.hibernate.SessionFactory>);
descriptor: (Ljava/util/concurrent/ConcurrentMap;Ljava/util/Map;)V
flags: (0x0000)
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
aload 1
putfield io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener.methodMap:Ljava/util/concurrent/ConcurrentMap;
2: aload 0
new io.dropwizard.hibernate.UnitOfWorkAspect
dup
aload 2
invokespecial io.dropwizard.hibernate.UnitOfWorkAspect.<init>:(Ljava/util/Map;)V
putfield io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener.unitOfWorkAspect:Lio/dropwizard/hibernate/UnitOfWorkAspect;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/dropwizard/hibernate/UnitOfWorkApplicationListener$UnitOfWorkEventListener;
0 4 1 methodMap Ljava/util/concurrent/ConcurrentMap<Lorg/glassfish/jersey/server/model/ResourceMethod;Ljava/util/Optional<Lio/dropwizard/hibernate/UnitOfWork;>;>;
0 4 2 sessionFactories Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/SessionFactory;>;
Signature: (Ljava/util/concurrent/ConcurrentMap<Lorg/glassfish/jersey/server/model/ResourceMethod;Ljava/util/Optional<Lio/dropwizard/hibernate/UnitOfWork;>;>;Ljava/util/Map<Ljava/lang/String;Lorg/hibernate/SessionFactory;>;)V
MethodParameters:
Name Flags
methodMap
sessionFactories
public void onEvent(org.glassfish.jersey.server.monitoring.RequestEvent);
descriptor: (Lorg/glassfish/jersey/server/monitoring/RequestEvent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface org.glassfish.jersey.server.monitoring.RequestEvent.getType:()Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
astore 2
start local 2 1: aload 2
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.RESOURCE_METHOD_START:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
if_acmpne 7
2: aload 0
getfield io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener.methodMap:Ljava/util/concurrent/ConcurrentMap;
aload 1
invokeinterface org.glassfish.jersey.server.monitoring.RequestEvent.getUriInfo:()Lorg/glassfish/jersey/server/ExtendedUriInfo;
3: invokeinterface org.glassfish.jersey.server.ExtendedUriInfo.getMatchedResourceMethod:()Lorg/glassfish/jersey/server/model/ResourceMethod;
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;
io/dropwizard/hibernate/UnitOfWorkApplicationListener$UnitOfWorkEventListener.registerUnitOfWorkAnnotations(Lorg/glassfish/jersey/server/model/ResourceMethod;)Ljava/util/Optional; (6)
(Lorg/glassfish/jersey/server/model/ResourceMethod;)Ljava/util/Optional;
4: invokeinterface java.util.concurrent.ConcurrentMap.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
checkcast java.util.Optional
astore 3
start local 3 5: aload 0
getfield io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener.unitOfWorkAspect:Lio/dropwizard/hibernate/UnitOfWorkAspect;
aload 3
aconst_null
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.dropwizard.hibernate.UnitOfWork
invokevirtual io.dropwizard.hibernate.UnitOfWorkAspect.beforeStart:(Lio/dropwizard/hibernate/UnitOfWork;)V
end local 3 6: goto 17
StackMap locals: org.glassfish.jersey.server.monitoring.RequestEvent$Type
StackMap stack:
7: aload 2
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.RESP_FILTERS_START:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
if_acmpne 12
8: aload 0
getfield io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener.unitOfWorkAspect:Lio/dropwizard/hibernate/UnitOfWorkAspect;
invokevirtual io.dropwizard.hibernate.UnitOfWorkAspect.afterEnd:()V
9: goto 17
StackMap locals:
StackMap stack: java.lang.Exception
10: astore 3
start local 3 11: new org.glassfish.jersey.server.internal.process.MappableException
dup
aload 3
invokespecial org.glassfish.jersey.server.internal.process.MappableException.<init>:(Ljava/lang/Throwable;)V
athrow
end local 3 12: StackMap locals:
StackMap stack:
aload 2
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.ON_EXCEPTION:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
if_acmpne 15
13: aload 0
getfield io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener.unitOfWorkAspect:Lio/dropwizard/hibernate/UnitOfWorkAspect;
invokevirtual io.dropwizard.hibernate.UnitOfWorkAspect.onError:()V
14: goto 17
StackMap locals:
StackMap stack:
15: aload 2
getstatic org.glassfish.jersey.server.monitoring.RequestEvent$Type.FINISHED:Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
if_acmpne 17
16: aload 0
getfield io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener.unitOfWorkAspect:Lio/dropwizard/hibernate/UnitOfWorkAspect;
invokevirtual io.dropwizard.hibernate.UnitOfWorkAspect.onFinish:()V
17: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lio/dropwizard/hibernate/UnitOfWorkApplicationListener$UnitOfWorkEventListener;
0 18 1 event Lorg/glassfish/jersey/server/monitoring/RequestEvent;
1 18 2 eventType Lorg/glassfish/jersey/server/monitoring/RequestEvent$Type;
5 6 3 unitOfWork Ljava/util/Optional<Lio/dropwizard/hibernate/UnitOfWork;>;
11 12 3 e Ljava/lang/Exception;
Exception table:
from to target type
8 9 10 Class java.lang.Exception
MethodParameters:
Name Flags
event
private static java.util.Optional<io.dropwizard.hibernate.UnitOfWork> registerUnitOfWorkAnnotations(org.glassfish.jersey.server.model.ResourceMethod);
descriptor: (Lorg/glassfish/jersey/server/model/ResourceMethod;)Ljava/util/Optional;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual org.glassfish.jersey.server.model.ResourceMethod.getInvocable:()Lorg/glassfish/jersey/server/model/Invocable;
invokevirtual org.glassfish.jersey.server.model.Invocable.getDefinitionMethod:()Ljava/lang/reflect/Method;
ldc Lio/dropwizard/hibernate/UnitOfWork;
invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast io.dropwizard.hibernate.UnitOfWork
astore 1
start local 1 1: aload 1
ifnonnull 3
2: aload 0
invokevirtual org.glassfish.jersey.server.model.ResourceMethod.getInvocable:()Lorg/glassfish/jersey/server/model/Invocable;
invokevirtual org.glassfish.jersey.server.model.Invocable.getHandlingMethod:()Ljava/lang/reflect/Method;
ldc Lio/dropwizard/hibernate/UnitOfWork;
invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast io.dropwizard.hibernate.UnitOfWork
astore 1
3: StackMap locals: io.dropwizard.hibernate.UnitOfWork
StackMap stack:
aload 1
invokestatic java.util.Optional.ofNullable:(Ljava/lang/Object;)Ljava/util/Optional;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 method Lorg/glassfish/jersey/server/model/ResourceMethod;
1 4 1 annotation Lio/dropwizard/hibernate/UnitOfWork;
Signature: (Lorg/glassfish/jersey/server/model/ResourceMethod;)Ljava/util/Optional<Lio/dropwizard/hibernate/UnitOfWork;>;
MethodParameters:
Name Flags
method
}
SourceFile: "UnitOfWorkApplicationListener.java"
NestHost: io.dropwizard.hibernate.UnitOfWorkApplicationListener
InnerClasses:
private UnitOfWorkEventListener = io.dropwizard.hibernate.UnitOfWorkApplicationListener$UnitOfWorkEventListener of io.dropwizard.hibernate.UnitOfWorkApplicationListener
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public final Type = org.glassfish.jersey.server.monitoring.RequestEvent$Type of org.glassfish.jersey.server.monitoring.RequestEvent