public class com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener implements org.glassfish.jersey.server.monitoring.ApplicationEventListener, org.glassfish.jersey.server.model.ModelProcessor
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener
  super_class: java.lang.Object
{
  private static final java.lang.String[] REQUEST_FILTERING;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String[] RESPONSE_FILTERING;
    descriptor: [Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final java.lang.String TOTAL;
    descriptor: Ljava/lang/String;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: "total"

  private final com.codahale.metrics.MetricRegistry metrics;
    descriptor: Lcom/codahale/metrics/MetricRegistry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private java.util.concurrent.ConcurrentMap<com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$EventTypeAndMethod, com.codahale.metrics.Timer> timers;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentMap<Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener$EventTypeAndMethod;Lcom/codahale/metrics/Timer;>;

  private java.util.concurrent.ConcurrentMap<java.lang.reflect.Method, com.codahale.metrics.Meter> meters;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/reflect/Method;Lcom/codahale/metrics/Meter;>;

  private java.util.concurrent.ConcurrentMap<java.lang.reflect.Method, com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterMetric> exceptionMeters;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/reflect/Method;Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener$ExceptionMeterMetric;>;

  private java.util.concurrent.ConcurrentMap<java.lang.reflect.Method, com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterMetric> responseMeters;
    descriptor: Ljava/util/concurrent/ConcurrentMap;
    flags: (0x0002) ACC_PRIVATE
    Signature: Ljava/util/concurrent/ConcurrentMap<Ljava/lang/reflect/Method;Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener$ResponseMeterMetric;>;

  private final com.codahale.metrics.Clock clock;
    descriptor: Lcom/codahale/metrics/Clock;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean trackFilters;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=4, locals=0, args_size=0
         0: .line 47
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "request"
            aastore
            dup
            iconst_1
            ldc "filtering"
            aastore
            putstatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.REQUEST_FILTERING:[Ljava/lang/String;
         1: .line 48
            iconst_2
            anewarray java.lang.String
            dup
            iconst_0
            ldc "response"
            aastore
            dup
            iconst_1
            ldc "filtering"
            aastore
            putstatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.RESPONSE_FILTERING:[Ljava/lang/String;
         2: .line 49
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(com.codahale.metrics.MetricRegistry);
    descriptor: (Lcom/codahale/metrics/MetricRegistry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // com.codahale.metrics.MetricRegistry metrics
         0: .line 69
            aload 0 /* this */
            aload 1 /* metrics */
            invokestatic com.codahale.metrics.Clock.defaultClock:()Lcom/codahale/metrics/Clock;
            iconst_0
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.<init>:(Lcom/codahale/metrics/MetricRegistry;Lcom/codahale/metrics/Clock;Z)V
         1: .line 70
            return
        end local 1 // com.codahale.metrics.MetricRegistry metrics
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    2     1  metrics  Lcom/codahale/metrics/MetricRegistry;
    MethodParameters:
         Name  Flags
      metrics  final

  public void <init>(com.codahale.metrics.MetricRegistry, com.codahale.metrics.Clock, boolean);
    descriptor: (Lcom/codahale/metrics/MetricRegistry;Lcom/codahale/metrics/Clock;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // com.codahale.metrics.MetricRegistry metrics
        start local 2 // com.codahale.metrics.Clock clock
        start local 3 // boolean trackFilters
         0: .line 79
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 52
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timers:Ljava/util/concurrent/ConcurrentMap;
         2: .line 53
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.meters:Ljava/util/concurrent/ConcurrentMap;
         3: .line 54
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.exceptionMeters:Ljava/util/concurrent/ConcurrentMap;
         4: .line 55
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.responseMeters:Ljava/util/concurrent/ConcurrentMap;
         5: .line 81
            aload 0 /* this */
            aload 1 /* metrics */
            putfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
         6: .line 82
            aload 0 /* this */
            aload 2 /* clock */
            putfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.clock:Lcom/codahale/metrics/Clock;
         7: .line 83
            aload 0 /* this */
            iload 3 /* trackFilters */
            putfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.trackFilters:Z
         8: .line 84
            return
        end local 3 // boolean trackFilters
        end local 2 // com.codahale.metrics.Clock clock
        end local 1 // com.codahale.metrics.MetricRegistry metrics
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    9     0          this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    9     1       metrics  Lcom/codahale/metrics/MetricRegistry;
            0    9     2         clock  Lcom/codahale/metrics/Clock;
            0    9     3  trackFilters  Z
    MethodParameters:
              Name  Flags
      metrics       final
      clock         final
      trackFilters  final

  public void onEvent(org.glassfish.jersey.server.monitoring.ApplicationEvent);
    descriptor: (Lorg/glassfish/jersey/server/monitoring/ApplicationEvent;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.monitoring.ApplicationEvent event
         0: .line 287
            aload 1 /* event */
            invokeinterface org.glassfish.jersey.server.monitoring.ApplicationEvent.getType:()Lorg/glassfish/jersey/server/monitoring/ApplicationEvent$Type;
            getstatic org.glassfish.jersey.server.monitoring.ApplicationEvent$Type.INITIALIZATION_APP_FINISHED:Lorg/glassfish/jersey/server/monitoring/ApplicationEvent$Type;
            if_acmpne 2
         1: .line 288
            aload 0 /* this */
            aload 1 /* event */
            invokeinterface org.glassfish.jersey.server.monitoring.ApplicationEvent.getResourceModel:()Lorg/glassfish/jersey/server/model/ResourceModel;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerMetricsForModel:(Lorg/glassfish/jersey/server/model/ResourceModel;)V
         2: .line 290
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.glassfish.jersey.server.monitoring.ApplicationEvent event
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    3     1  event  Lorg/glassfish/jersey/server/monitoring/ApplicationEvent;
    MethodParameters:
       Name  Flags
      event  

  public org.glassfish.jersey.server.model.ResourceModel processResourceModel(org.glassfish.jersey.server.model.ResourceModel, javax.ws.rs.core.Configuration);
    descriptor: (Lorg/glassfish/jersey/server/model/ResourceModel;Ljavax/ws/rs/core/Configuration;)Lorg/glassfish/jersey/server/model/ResourceModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.model.ResourceModel resourceModel
        start local 2 // javax.ws.rs.core.Configuration configuration
         0: .line 294
            aload 1 /* resourceModel */
            areturn
        end local 2 // javax.ws.rs.core.Configuration configuration
        end local 1 // org.glassfish.jersey.server.model.ResourceModel resourceModel
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    1     1  resourceModel  Lorg/glassfish/jersey/server/model/ResourceModel;
            0    1     2  configuration  Ljavax/ws/rs/core/Configuration;
    MethodParameters:
               Name  Flags
      resourceModel  
      configuration  

  public org.glassfish.jersey.server.model.ResourceModel processSubResource(org.glassfish.jersey.server.model.ResourceModel, javax.ws.rs.core.Configuration);
    descriptor: (Lorg/glassfish/jersey/server/model/ResourceModel;Ljavax/ws/rs/core/Configuration;)Lorg/glassfish/jersey/server/model/ResourceModel;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.model.ResourceModel subResourceModel
        start local 2 // javax.ws.rs.core.Configuration configuration
         0: .line 299
            aload 0 /* this */
            aload 1 /* subResourceModel */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerMetricsForModel:(Lorg/glassfish/jersey/server/model/ResourceModel;)V
         1: .line 300
            aload 1 /* subResourceModel */
            areturn
        end local 2 // javax.ws.rs.core.Configuration configuration
        end local 1 // org.glassfish.jersey.server.model.ResourceModel subResourceModel
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    2     0              this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    2     1  subResourceModel  Lorg/glassfish/jersey/server/model/ResourceModel;
            0    2     2     configuration  Ljavax/ws/rs/core/Configuration;
    MethodParameters:
                  Name  Flags
      subResourceModel  
      configuration     

  private void registerMetricsForModel(org.glassfish.jersey.server.model.ResourceModel);
    descriptor: (Lorg/glassfish/jersey/server/model/ResourceModel;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=16, args_size=2
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.model.ResourceModel resourceModel
         0: .line 304
            aload 1 /* resourceModel */
            invokevirtual org.glassfish.jersey.server.model.ResourceModel.getResources:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 3
            goto 27
      StackMap locals: com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener org.glassfish.jersey.server.model.ResourceModel top java.util.Iterator
      StackMap stack:
         1: aload 3
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.glassfish.jersey.server.model.Resource
            astore 2 /* resource */
        start local 2 // org.glassfish.jersey.server.model.Resource resource
         2: .line 306
            aload 0 /* this */
            aload 2 /* resource */
            ldc Lcom/codahale/metrics/annotation/Timed;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.getClassLevelAnnotation:(Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.Timed
            astore 4 /* classLevelTimed */
        start local 4 // com.codahale.metrics.annotation.Timed classLevelTimed
         3: .line 307
            aload 0 /* this */
            aload 2 /* resource */
            ldc Lcom/codahale/metrics/annotation/Metered;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.getClassLevelAnnotation:(Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.Metered
            astore 5 /* classLevelMetered */
        start local 5 // com.codahale.metrics.annotation.Metered classLevelMetered
         4: .line 308
            aload 0 /* this */
            aload 2 /* resource */
            ldc Lcom/codahale/metrics/annotation/ExceptionMetered;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.getClassLevelAnnotation:(Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.ExceptionMetered
            astore 6 /* classLevelExceptionMetered */
        start local 6 // com.codahale.metrics.annotation.ExceptionMetered classLevelExceptionMetered
         5: .line 309
            aload 0 /* this */
            aload 2 /* resource */
            ldc Lcom/codahale/metrics/annotation/ResponseMetered;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.getClassLevelAnnotation:(Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.ResponseMetered
            astore 7 /* classLevelResponseMetered */
        start local 7 // com.codahale.metrics.annotation.ResponseMetered classLevelResponseMetered
         6: .line 311
            aload 2 /* resource */
            invokevirtual org.glassfish.jersey.server.model.Resource.getAllMethods:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 12
      StackMap locals: com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener org.glassfish.jersey.server.model.ResourceModel org.glassfish.jersey.server.model.Resource java.util.Iterator com.codahale.metrics.annotation.Timed com.codahale.metrics.annotation.Metered com.codahale.metrics.annotation.ExceptionMetered com.codahale.metrics.annotation.ResponseMetered top java.util.Iterator
      StackMap stack:
         7: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.glassfish.jersey.server.model.ResourceMethod
            astore 8 /* method */
        start local 8 // org.glassfish.jersey.server.model.ResourceMethod method
         8: .line 312
            aload 0 /* this */
            aload 8 /* method */
            aload 4 /* classLevelTimed */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerTimedAnnotations:(Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Timed;)V
         9: .line 313
            aload 0 /* this */
            aload 8 /* method */
            aload 5 /* classLevelMetered */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerMeteredAnnotations:(Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Metered;)V
        10: .line 314
            aload 0 /* this */
            aload 8 /* method */
            aload 6 /* classLevelExceptionMetered */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerExceptionMeteredAnnotations:(Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ExceptionMetered;)V
        11: .line 315
            aload 0 /* this */
            aload 8 /* method */
            aload 7 /* classLevelResponseMetered */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerResponseMeteredAnnotations:(Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ResponseMetered;)V
        end local 8 // org.glassfish.jersey.server.model.ResourceMethod method
        12: .line 311
      StackMap locals:
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 7
        13: .line 318
            aload 2 /* resource */
            invokevirtual org.glassfish.jersey.server.model.Resource.getChildResources:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 9
            goto 26
      StackMap locals:
      StackMap stack:
        14: aload 9
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.glassfish.jersey.server.model.Resource
            astore 8 /* childResource */
        start local 8 // org.glassfish.jersey.server.model.Resource childResource
        15: .line 320
            aload 0 /* this */
            aload 8 /* childResource */
            ldc Lcom/codahale/metrics/annotation/Timed;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.getClassLevelAnnotation:(Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.Timed
            astore 10 /* classLevelTimedChild */
        start local 10 // com.codahale.metrics.annotation.Timed classLevelTimedChild
        16: .line 321
            aload 0 /* this */
            aload 8 /* childResource */
            ldc Lcom/codahale/metrics/annotation/Metered;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.getClassLevelAnnotation:(Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.Metered
            astore 11 /* classLevelMeteredChild */
        start local 11 // com.codahale.metrics.annotation.Metered classLevelMeteredChild
        17: .line 322
            aload 0 /* this */
            aload 8 /* childResource */
            ldc Lcom/codahale/metrics/annotation/ExceptionMetered;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.getClassLevelAnnotation:(Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.ExceptionMetered
            astore 12 /* classLevelExceptionMeteredChild */
        start local 12 // com.codahale.metrics.annotation.ExceptionMetered classLevelExceptionMeteredChild
        18: .line 323
            aload 0 /* this */
            aload 8 /* childResource */
            ldc Lcom/codahale/metrics/annotation/ResponseMetered;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.getClassLevelAnnotation:(Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.ResponseMetered
            astore 13 /* classLevelResponseMeteredChild */
        start local 13 // com.codahale.metrics.annotation.ResponseMetered classLevelResponseMeteredChild
        19: .line 325
            aload 8 /* childResource */
            invokevirtual org.glassfish.jersey.server.model.Resource.getAllMethods:()Ljava/util/List;
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 15
            goto 25
      StackMap locals: com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener org.glassfish.jersey.server.model.ResourceModel org.glassfish.jersey.server.model.Resource java.util.Iterator com.codahale.metrics.annotation.Timed com.codahale.metrics.annotation.Metered com.codahale.metrics.annotation.ExceptionMetered com.codahale.metrics.annotation.ResponseMetered org.glassfish.jersey.server.model.Resource java.util.Iterator com.codahale.metrics.annotation.Timed com.codahale.metrics.annotation.Metered com.codahale.metrics.annotation.ExceptionMetered com.codahale.metrics.annotation.ResponseMetered top java.util.Iterator
      StackMap stack:
        20: aload 15
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast org.glassfish.jersey.server.model.ResourceMethod
            astore 14 /* method */
        start local 14 // org.glassfish.jersey.server.model.ResourceMethod method
        21: .line 326
            aload 0 /* this */
            aload 14 /* method */
            aload 10 /* classLevelTimedChild */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerTimedAnnotations:(Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Timed;)V
        22: .line 327
            aload 0 /* this */
            aload 14 /* method */
            aload 11 /* classLevelMeteredChild */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerMeteredAnnotations:(Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Metered;)V
        23: .line 328
            aload 0 /* this */
            aload 14 /* method */
            aload 12 /* classLevelExceptionMeteredChild */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerExceptionMeteredAnnotations:(Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ExceptionMetered;)V
        24: .line 329
            aload 0 /* this */
            aload 14 /* method */
            aload 13 /* classLevelResponseMeteredChild */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerResponseMeteredAnnotations:(Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ResponseMetered;)V
        end local 14 // org.glassfish.jersey.server.model.ResourceMethod method
        25: .line 325
      StackMap locals:
      StackMap stack:
            aload 15
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 20
        end local 13 // com.codahale.metrics.annotation.ResponseMetered classLevelResponseMeteredChild
        end local 12 // com.codahale.metrics.annotation.ExceptionMetered classLevelExceptionMeteredChild
        end local 11 // com.codahale.metrics.annotation.Metered classLevelMeteredChild
        end local 10 // com.codahale.metrics.annotation.Timed classLevelTimedChild
        end local 8 // org.glassfish.jersey.server.model.Resource childResource
        26: .line 318
      StackMap locals: com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener org.glassfish.jersey.server.model.ResourceModel org.glassfish.jersey.server.model.Resource java.util.Iterator com.codahale.metrics.annotation.Timed com.codahale.metrics.annotation.Metered com.codahale.metrics.annotation.ExceptionMetered com.codahale.metrics.annotation.ResponseMetered top java.util.Iterator
      StackMap stack:
            aload 9
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        end local 7 // com.codahale.metrics.annotation.ResponseMetered classLevelResponseMetered
        end local 6 // com.codahale.metrics.annotation.ExceptionMetered classLevelExceptionMetered
        end local 5 // com.codahale.metrics.annotation.Metered classLevelMetered
        end local 4 // com.codahale.metrics.annotation.Timed classLevelTimed
        end local 2 // org.glassfish.jersey.server.model.Resource resource
        27: .line 304
      StackMap locals: com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener org.glassfish.jersey.server.model.ResourceModel top java.util.Iterator
      StackMap stack:
            aload 3
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 1
        28: .line 333
            return
        end local 1 // org.glassfish.jersey.server.model.ResourceModel resourceModel
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot                             Name  Signature
            0   29     0                             this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0   29     1                    resourceModel  Lorg/glassfish/jersey/server/model/ResourceModel;
            2   27     2                         resource  Lorg/glassfish/jersey/server/model/Resource;
            3   27     4                  classLevelTimed  Lcom/codahale/metrics/annotation/Timed;
            4   27     5                classLevelMetered  Lcom/codahale/metrics/annotation/Metered;
            5   27     6       classLevelExceptionMetered  Lcom/codahale/metrics/annotation/ExceptionMetered;
            6   27     7        classLevelResponseMetered  Lcom/codahale/metrics/annotation/ResponseMetered;
            8   12     8                           method  Lorg/glassfish/jersey/server/model/ResourceMethod;
           15   26     8                    childResource  Lorg/glassfish/jersey/server/model/Resource;
           16   26    10             classLevelTimedChild  Lcom/codahale/metrics/annotation/Timed;
           17   26    11           classLevelMeteredChild  Lcom/codahale/metrics/annotation/Metered;
           18   26    12  classLevelExceptionMeteredChild  Lcom/codahale/metrics/annotation/ExceptionMetered;
           19   26    13   classLevelResponseMeteredChild  Lcom/codahale/metrics/annotation/ResponseMetered;
           21   25    14                           method  Lorg/glassfish/jersey/server/model/ResourceMethod;
    MethodParameters:
               Name  Flags
      resourceModel  

  public org.glassfish.jersey.server.monitoring.RequestEventListener onRequest(org.glassfish.jersey.server.monitoring.RequestEvent);
    descriptor: (Lorg/glassfish/jersey/server/monitoring/RequestEvent;)Lorg/glassfish/jersey/server/monitoring/RequestEventListener;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=3, args_size=2
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.monitoring.RequestEvent event
         0: .line 337
            new com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ChainedRequestEventListener
            dup
            iconst_4
            anewarray org.glassfish.jersey.server.monitoring.RequestEventListener
            dup
            iconst_0
         1: .line 338
            new com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$TimerRequestEventListener
            dup
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timers:Ljava/util/concurrent/ConcurrentMap;
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.clock:Lcom/codahale/metrics/Clock;
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$TimerRequestEventListener.<init>:(Ljava/util/concurrent/ConcurrentMap;Lcom/codahale/metrics/Clock;)V
            aastore
            dup
            iconst_1
         2: .line 339
            new com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$MeterRequestEventListener
            dup
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.meters:Ljava/util/concurrent/ConcurrentMap;
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$MeterRequestEventListener.<init>:(Ljava/util/concurrent/ConcurrentMap;)V
            aastore
            dup
            iconst_2
         3: .line 340
            new com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterRequestEventListener
            dup
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.exceptionMeters:Ljava/util/concurrent/ConcurrentMap;
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterRequestEventListener.<init>:(Ljava/util/concurrent/ConcurrentMap;)V
            aastore
            dup
            iconst_3
         4: .line 341
            new com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterRequestEventListener
            dup
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.responseMeters:Ljava/util/concurrent/ConcurrentMap;
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterRequestEventListener.<init>:(Ljava/util/concurrent/ConcurrentMap;)V
         5: .line 337
            aastore
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ChainedRequestEventListener.<init>:([Lorg/glassfish/jersey/server/monitoring/RequestEventListener;)V
            astore 2 /* listener */
        start local 2 // org.glassfish.jersey.server.monitoring.RequestEventListener listener
         6: .line 343
            aload 2 /* listener */
            areturn
        end local 2 // org.glassfish.jersey.server.monitoring.RequestEventListener listener
        end local 1 // org.glassfish.jersey.server.monitoring.RequestEvent event
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    7     0      this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    7     1     event  Lorg/glassfish/jersey/server/monitoring/RequestEvent;
            6    7     2  listener  Lorg/glassfish/jersey/server/monitoring/RequestEventListener;
    MethodParameters:
       Name  Flags
      event  final

  private <T extends java.lang.annotation.Annotation> T getClassLevelAnnotation(org.glassfish.jersey.server.model.Resource, java.lang.Class<T>);
    descriptor: (Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=6, args_size=3
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.model.Resource resource
        start local 2 // java.lang.Class annotationClazz
         0: .line 347
            aconst_null
            astore 3 /* annotation */
        start local 3 // java.lang.annotation.Annotation annotation
         1: .line 349
            aload 1 /* resource */
            invokevirtual org.glassfish.jersey.server.model.Resource.getHandlerClasses:()Ljava/util/Set;
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 5
            goto 6
      StackMap locals: com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener org.glassfish.jersey.server.model.Resource java.lang.Class java.lang.annotation.Annotation top java.util.Iterator
      StackMap stack:
         2: aload 5
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Class
            astore 4 /* clazz */
        start local 4 // java.lang.Class clazz
         3: .line 350
            aload 4 /* clazz */
            aload 2 /* annotationClazz */
            invokevirtual java.lang.Class.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            astore 3 /* annotation */
         4: .line 352
            aload 3 /* annotation */
            ifnull 6
         5: .line 353
            goto 7
        end local 4 // java.lang.Class clazz
         6: .line 349
      StackMap locals:
      StackMap stack:
            aload 5
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 2
         7: .line 356
      StackMap locals: com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener org.glassfish.jersey.server.model.Resource java.lang.Class java.lang.annotation.Annotation
      StackMap stack:
            aload 3 /* annotation */
            areturn
        end local 3 // java.lang.annotation.Annotation annotation
        end local 2 // java.lang.Class annotationClazz
        end local 1 // org.glassfish.jersey.server.model.Resource resource
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0    8     0             this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    8     1         resource  Lorg/glassfish/jersey/server/model/Resource;
            0    8     2  annotationClazz  Ljava/lang/Class<TT;>;
            1    8     3       annotation  TT;
            3    6     4            clazz  Ljava/lang/Class<*>;
    Signature: <T::Ljava/lang/annotation/Annotation;>(Lorg/glassfish/jersey/server/model/Resource;Ljava/lang/Class<TT;>;)TT;
    MethodParameters:
                 Name  Flags
      resource         final
      annotationClazz  final

  private void registerTimedAnnotations(org.glassfish.jersey.server.model.ResourceMethod, com.codahale.metrics.annotation.Timed);
    descriptor: (Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Timed;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=3
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        start local 2 // com.codahale.metrics.annotation.Timed classLevelTimed
         0: .line 360
            aload 1 /* method */
            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;
            astore 3 /* definitionMethod */
        start local 3 // java.lang.reflect.Method definitionMethod
         1: .line 361
            aload 2 /* classLevelTimed */
            ifnull 4
         2: .line 362
            aload 0 /* this */
            aload 1 /* method */
            aload 3 /* definitionMethod */
            aload 2 /* classLevelTimed */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerTimers:(Lorg/glassfish/jersey/server/model/ResourceMethod;Ljava/lang/reflect/Method;Lcom/codahale/metrics/annotation/Timed;)V
         3: .line 363
            return
         4: .line 366
      StackMap locals: java.lang.reflect.Method
      StackMap stack:
            aload 3 /* definitionMethod */
            ldc Lcom/codahale/metrics/annotation/Timed;
            invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.Timed
            astore 4 /* annotation */
        start local 4 // com.codahale.metrics.annotation.Timed annotation
         5: .line 367
            aload 4 /* annotation */
            ifnull 7
         6: .line 368
            aload 0 /* this */
            aload 1 /* method */
            aload 3 /* definitionMethod */
            aload 4 /* annotation */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.registerTimers:(Lorg/glassfish/jersey/server/model/ResourceMethod;Ljava/lang/reflect/Method;Lcom/codahale/metrics/annotation/Timed;)V
         7: .line 370
      StackMap locals: com.codahale.metrics.annotation.Timed
      StackMap stack:
            return
        end local 4 // com.codahale.metrics.annotation.Timed annotation
        end local 3 // java.lang.reflect.Method definitionMethod
        end local 2 // com.codahale.metrics.annotation.Timed classLevelTimed
        end local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0              this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    8     1            method  Lorg/glassfish/jersey/server/model/ResourceMethod;
            0    8     2   classLevelTimed  Lcom/codahale/metrics/annotation/Timed;
            1    8     3  definitionMethod  Ljava/lang/reflect/Method;
            5    8     4        annotation  Lcom/codahale/metrics/annotation/Timed;
    MethodParameters:
                 Name  Flags
      method           final
      classLevelTimed  final

  private void registerTimers(org.glassfish.jersey.server.model.ResourceMethod, java.lang.reflect.Method, com.codahale.metrics.annotation.Timed);
    descriptor: (Lorg/glassfish/jersey/server/model/ResourceMethod;Ljava/lang/reflect/Method;Lcom/codahale/metrics/annotation/Timed;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=10, locals=4, args_size=4
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        start local 2 // java.lang.reflect.Method definitionMethod
        start local 3 // com.codahale.metrics.annotation.Timed annotation
         0: .line 373
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timers:Ljava/util/concurrent/ConcurrentMap;
            aload 2 /* definitionMethod */
            invokestatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$EventTypeAndMethod.requestMethodStart:(Ljava/lang/reflect/Method;)Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener$EventTypeAndMethod;
            aload 0 /* this */
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 3 /* annotation */
            iconst_0
            anewarray java.lang.String
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timerMetric:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Timed;[Ljava/lang/String;)Lcom/codahale/metrics/Timer;
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         1: .line 374
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.trackFilters:Z
            ifeq 5
         2: .line 375
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timers:Ljava/util/concurrent/ConcurrentMap;
            aload 2 /* definitionMethod */
            invokestatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$EventTypeAndMethod.requestMatched:(Ljava/lang/reflect/Method;)Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener$EventTypeAndMethod;
            aload 0 /* this */
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 3 /* annotation */
            getstatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.REQUEST_FILTERING:[Ljava/lang/String;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timerMetric:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Timed;[Ljava/lang/String;)Lcom/codahale/metrics/Timer;
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 376
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timers:Ljava/util/concurrent/ConcurrentMap;
            aload 2 /* definitionMethod */
            invokestatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$EventTypeAndMethod.respFiltersStart:(Ljava/lang/reflect/Method;)Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener$EventTypeAndMethod;
            aload 0 /* this */
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 3 /* annotation */
            getstatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.RESPONSE_FILTERING:[Ljava/lang/String;
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timerMetric:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Timed;[Ljava/lang/String;)Lcom/codahale/metrics/Timer;
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         4: .line 377
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timers:Ljava/util/concurrent/ConcurrentMap;
            aload 2 /* definitionMethod */
            invokestatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$EventTypeAndMethod.finished:(Ljava/lang/reflect/Method;)Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener$EventTypeAndMethod;
            aload 0 /* this */
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 3 /* annotation */
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            ldc "total"
            aastore
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.timerMetric:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Timed;[Ljava/lang/String;)Lcom/codahale/metrics/Timer;
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         5: .line 379
      StackMap locals:
      StackMap stack:
            return
        end local 3 // com.codahale.metrics.annotation.Timed annotation
        end local 2 // java.lang.reflect.Method definitionMethod
        end local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    6     0              this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    6     1            method  Lorg/glassfish/jersey/server/model/ResourceMethod;
            0    6     2  definitionMethod  Ljava/lang/reflect/Method;
            0    6     3        annotation  Lcom/codahale/metrics/annotation/Timed;
    MethodParameters:
                  Name  Flags
      method            
      definitionMethod  
      annotation        

  private void registerMeteredAnnotations(org.glassfish.jersey.server.model.ResourceMethod, com.codahale.metrics.annotation.Metered);
    descriptor: (Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Metered;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        start local 2 // com.codahale.metrics.annotation.Metered classLevelMetered
         0: .line 382
            aload 1 /* method */
            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;
            astore 3 /* definitionMethod */
        start local 3 // java.lang.reflect.Method definitionMethod
         1: .line 384
            aload 2 /* classLevelMetered */
            ifnull 4
         2: .line 385
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.meters:Ljava/util/concurrent/ConcurrentMap;
            aload 3 /* definitionMethod */
            aload 0 /* this */
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 2 /* classLevelMetered */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.meterMetric:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Metered;)Lcom/codahale/metrics/Meter;
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 386
            return
         4: .line 388
      StackMap locals: java.lang.reflect.Method
      StackMap stack:
            aload 3 /* definitionMethod */
            ldc Lcom/codahale/metrics/annotation/Metered;
            invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.Metered
            astore 4 /* annotation */
        start local 4 // com.codahale.metrics.annotation.Metered annotation
         5: .line 390
            aload 4 /* annotation */
            ifnull 7
         6: .line 391
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.meters:Ljava/util/concurrent/ConcurrentMap;
            aload 3 /* definitionMethod */
            aload 0 /* this */
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 4 /* annotation */
            invokevirtual com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.meterMetric:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Metered;)Lcom/codahale/metrics/Meter;
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 393
      StackMap locals: com.codahale.metrics.annotation.Metered
      StackMap stack:
            return
        end local 4 // com.codahale.metrics.annotation.Metered annotation
        end local 3 // java.lang.reflect.Method definitionMethod
        end local 2 // com.codahale.metrics.annotation.Metered classLevelMetered
        end local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    8     0               this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    8     1             method  Lorg/glassfish/jersey/server/model/ResourceMethod;
            0    8     2  classLevelMetered  Lcom/codahale/metrics/annotation/Metered;
            1    8     3   definitionMethod  Ljava/lang/reflect/Method;
            5    8     4         annotation  Lcom/codahale/metrics/annotation/Metered;
    MethodParameters:
                   Name  Flags
      method             final
      classLevelMetered  final

  private void registerExceptionMeteredAnnotations(org.glassfish.jersey.server.model.ResourceMethod, com.codahale.metrics.annotation.ExceptionMetered);
    descriptor: (Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ExceptionMetered;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        start local 2 // com.codahale.metrics.annotation.ExceptionMetered classLevelExceptionMetered
         0: .line 396
            aload 1 /* method */
            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;
            astore 3 /* definitionMethod */
        start local 3 // java.lang.reflect.Method definitionMethod
         1: .line 398
            aload 2 /* classLevelExceptionMetered */
            ifnull 4
         2: .line 399
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.exceptionMeters:Ljava/util/concurrent/ConcurrentMap;
            aload 3 /* definitionMethod */
            new com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterMetric
            dup
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 2 /* classLevelExceptionMetered */
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterMetric.<init>:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ExceptionMetered;)V
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 400
            return
         4: .line 402
      StackMap locals: java.lang.reflect.Method
      StackMap stack:
            aload 3 /* definitionMethod */
            ldc Lcom/codahale/metrics/annotation/ExceptionMetered;
            invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.ExceptionMetered
            astore 4 /* annotation */
        start local 4 // com.codahale.metrics.annotation.ExceptionMetered annotation
         5: .line 404
            aload 4 /* annotation */
            ifnull 7
         6: .line 405
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.exceptionMeters:Ljava/util/concurrent/ConcurrentMap;
            aload 3 /* definitionMethod */
            new com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterMetric
            dup
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 4 /* annotation */
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterMetric.<init>:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ExceptionMetered;)V
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 407
      StackMap locals: com.codahale.metrics.annotation.ExceptionMetered
      StackMap stack:
            return
        end local 4 // com.codahale.metrics.annotation.ExceptionMetered annotation
        end local 3 // java.lang.reflect.Method definitionMethod
        end local 2 // com.codahale.metrics.annotation.ExceptionMetered classLevelExceptionMetered
        end local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot                        Name  Signature
            0    8     0                        this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    8     1                      method  Lorg/glassfish/jersey/server/model/ResourceMethod;
            0    8     2  classLevelExceptionMetered  Lcom/codahale/metrics/annotation/ExceptionMetered;
            1    8     3            definitionMethod  Ljava/lang/reflect/Method;
            5    8     4                  annotation  Lcom/codahale/metrics/annotation/ExceptionMetered;
    MethodParameters:
                            Name  Flags
      method                      final
      classLevelExceptionMetered  final

  private void registerResponseMeteredAnnotations(org.glassfish.jersey.server.model.ResourceMethod, com.codahale.metrics.annotation.ResponseMetered);
    descriptor: (Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ResponseMetered;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=5, args_size=3
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        start local 2 // com.codahale.metrics.annotation.ResponseMetered classLevelResponseMetered
         0: .line 410
            aload 1 /* method */
            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;
            astore 3 /* definitionMethod */
        start local 3 // java.lang.reflect.Method definitionMethod
         1: .line 412
            aload 2 /* classLevelResponseMetered */
            ifnull 4
         2: .line 413
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.responseMeters:Ljava/util/concurrent/ConcurrentMap;
            aload 3 /* definitionMethod */
            new com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterMetric
            dup
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 2 /* classLevelResponseMetered */
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterMetric.<init>:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ResponseMetered;)V
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         3: .line 414
            return
         4: .line 416
      StackMap locals: java.lang.reflect.Method
      StackMap stack:
            aload 3 /* definitionMethod */
            ldc Lcom/codahale/metrics/annotation/ResponseMetered;
            invokevirtual java.lang.reflect.Method.getAnnotation:(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
            checkcast com.codahale.metrics.annotation.ResponseMetered
            astore 4 /* annotation */
        start local 4 // com.codahale.metrics.annotation.ResponseMetered annotation
         5: .line 418
            aload 4 /* annotation */
            ifnull 7
         6: .line 419
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.responseMeters:Ljava/util/concurrent/ConcurrentMap;
            aload 3 /* definitionMethod */
            new com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterMetric
            dup
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.metrics:Lcom/codahale/metrics/MetricRegistry;
            aload 1 /* method */
            aload 4 /* annotation */
            invokespecial com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterMetric.<init>:(Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/ResponseMetered;)V
            invokeinterface java.util.concurrent.ConcurrentMap.putIfAbsent:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
         7: .line 421
      StackMap locals: com.codahale.metrics.annotation.ResponseMetered
      StackMap stack:
            return
        end local 4 // com.codahale.metrics.annotation.ResponseMetered annotation
        end local 3 // java.lang.reflect.Method definitionMethod
        end local 2 // com.codahale.metrics.annotation.ResponseMetered classLevelResponseMetered
        end local 1 // org.glassfish.jersey.server.model.ResourceMethod method
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot                       Name  Signature
            0    8     0                       this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    8     1                     method  Lorg/glassfish/jersey/server/model/ResourceMethod;
            0    8     2  classLevelResponseMetered  Lcom/codahale/metrics/annotation/ResponseMetered;
            1    8     3           definitionMethod  Ljava/lang/reflect/Method;
            5    8     4                 annotation  Lcom/codahale/metrics/annotation/ResponseMetered;
    MethodParameters:
                           Name  Flags
      method                     final
      classLevelResponseMetered  final

  private com.codahale.metrics.Timer timerMetric(com.codahale.metrics.MetricRegistry, org.glassfish.jersey.server.model.ResourceMethod, com.codahale.metrics.annotation.Timed, java.lang.String[]);
    descriptor: (Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Timed;[Ljava/lang/String;)Lcom/codahale/metrics/Timer;
    flags: (0x0082) ACC_PRIVATE, ACC_VARARGS
    Code:
      stack=4, locals=6, args_size=5
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // com.codahale.metrics.MetricRegistry registry
        start local 2 // org.glassfish.jersey.server.model.ResourceMethod method
        start local 3 // com.codahale.metrics.annotation.Timed timed
        start local 4 // java.lang.String[] suffixes
         0: .line 427
            aload 3 /* timed */
            invokeinterface com.codahale.metrics.annotation.Timed.name:()Ljava/lang/String;
            aload 3 /* timed */
            invokeinterface com.codahale.metrics.annotation.Timed.absolute:()Z
            aload 2 /* method */
            aload 4 /* suffixes */
            invokestatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.chooseName:(Ljava/lang/String;ZLorg/glassfish/jersey/server/model/ResourceMethod;[Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* name */
        start local 5 // java.lang.String name
         1: .line 428
            aload 1 /* registry */
            aload 5 /* name */
            aload 0 /* this */
            invokedynamic newMetric(Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;)Lcom/codahale/metrics/MetricRegistry$MetricSupplier;
              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:
                  ()Lcom/codahale/metrics/Metric;
                  com/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener.lambda$0()Lcom/codahale/metrics/Timer; (7)
                  ()Lcom/codahale/metrics/Timer;
            invokevirtual com.codahale.metrics.MetricRegistry.timer:(Ljava/lang/String;Lcom/codahale/metrics/MetricRegistry$MetricSupplier;)Lcom/codahale/metrics/Timer;
            areturn
        end local 5 // java.lang.String name
        end local 4 // java.lang.String[] suffixes
        end local 3 // com.codahale.metrics.annotation.Timed timed
        end local 2 // org.glassfish.jersey.server.model.ResourceMethod method
        end local 1 // com.codahale.metrics.MetricRegistry registry
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    2     1  registry  Lcom/codahale/metrics/MetricRegistry;
            0    2     2    method  Lorg/glassfish/jersey/server/model/ResourceMethod;
            0    2     3     timed  Lcom/codahale/metrics/annotation/Timed;
            0    2     4  suffixes  [Ljava/lang/String;
            1    2     5      name  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      registry  final
      method    final
      timed     final
      suffixes  final

  private com.codahale.metrics.Meter meterMetric(com.codahale.metrics.MetricRegistry, org.glassfish.jersey.server.model.ResourceMethod, com.codahale.metrics.annotation.Metered);
    descriptor: (Lcom/codahale/metrics/MetricRegistry;Lorg/glassfish/jersey/server/model/ResourceMethod;Lcom/codahale/metrics/annotation/Metered;)Lcom/codahale/metrics/Meter;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
        start local 1 // com.codahale.metrics.MetricRegistry registry
        start local 2 // org.glassfish.jersey.server.model.ResourceMethod method
        start local 3 // com.codahale.metrics.annotation.Metered metered
         0: .line 434
            aload 3 /* metered */
            invokeinterface com.codahale.metrics.annotation.Metered.name:()Ljava/lang/String;
            aload 3 /* metered */
            invokeinterface com.codahale.metrics.annotation.Metered.absolute:()Z
            aload 2 /* method */
            iconst_0
            anewarray java.lang.String
            invokestatic com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.chooseName:(Ljava/lang/String;ZLorg/glassfish/jersey/server/model/ResourceMethod;[Ljava/lang/String;)Ljava/lang/String;
            astore 4 /* name */
        start local 4 // java.lang.String name
         1: .line 435
            aload 1 /* registry */
            aload 4 /* name */
            aload 0 /* this */
            invokedynamic newMetric(Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;)Lcom/codahale/metrics/MetricRegistry$MetricSupplier;
              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:
                  ()Lcom/codahale/metrics/Metric;
                  com/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener.lambda$1()Lcom/codahale/metrics/Meter; (7)
                  ()Lcom/codahale/metrics/Meter;
            invokevirtual com.codahale.metrics.MetricRegistry.meter:(Ljava/lang/String;Lcom/codahale/metrics/MetricRegistry$MetricSupplier;)Lcom/codahale/metrics/Meter;
            areturn
        end local 4 // java.lang.String name
        end local 3 // com.codahale.metrics.annotation.Metered metered
        end local 2 // org.glassfish.jersey.server.model.ResourceMethod method
        end local 1 // com.codahale.metrics.MetricRegistry registry
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
            0    2     1  registry  Lcom/codahale/metrics/MetricRegistry;
            0    2     2    method  Lorg/glassfish/jersey/server/model/ResourceMethod;
            0    2     3   metered  Lcom/codahale/metrics/annotation/Metered;
            1    2     4      name  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      registry  final
      method    final
      metered   final

  protected static java.lang.String chooseName(java.lang.String, boolean, org.glassfish.jersey.server.model.ResourceMethod, java.lang.String[]);
    descriptor: (Ljava/lang/String;ZLorg/glassfish/jersey/server/model/ResourceMethod;[Ljava/lang/String;)Ljava/lang/String;
    flags: (0x008c) ACC_PROTECTED, ACC_STATIC, ACC_VARARGS
    Code:
      stack=5, locals=6, args_size=4
        start local 0 // java.lang.String explicitName
        start local 1 // boolean absolute
        start local 2 // org.glassfish.jersey.server.model.ResourceMethod method
        start local 3 // java.lang.String[] suffixes
         0: .line 440
            aload 2 /* method */
            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;
            astore 4 /* definitionMethod */
        start local 4 // java.lang.reflect.Method definitionMethod
         1: .line 442
            aload 0 /* explicitName */
            ifnull 6
            aload 0 /* explicitName */
            invokevirtual java.lang.String.isEmpty:()Z
            ifne 6
         2: .line 443
            iload 1 /* absolute */
            ifeq 3
            aload 0 /* explicitName */
            goto 4
      StackMap locals: java.lang.reflect.Method
      StackMap stack:
         3: aload 4 /* definitionMethod */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 0 /* explicitName */
            aastore
            invokestatic com.codahale.metrics.MetricRegistry.name:(Ljava/lang/Class;[Ljava/lang/String;)Ljava/lang/String;
      StackMap locals:
      StackMap stack: java.lang.String
         4: astore 5 /* metricName */
        start local 5 // java.lang.String metricName
         5: .line 444
            goto 7
        end local 5 // java.lang.String metricName
         6: .line 445
      StackMap locals:
      StackMap stack:
            aload 4 /* definitionMethod */
            invokevirtual java.lang.reflect.Method.getDeclaringClass:()Ljava/lang/Class;
            iconst_1
            anewarray java.lang.String
            dup
            iconst_0
            aload 4 /* definitionMethod */
            invokevirtual java.lang.reflect.Method.getName:()Ljava/lang/String;
            aastore
            invokestatic com.codahale.metrics.MetricRegistry.name:(Ljava/lang/Class;[Ljava/lang/String;)Ljava/lang/String;
            astore 5 /* metricName */
        start local 5 // java.lang.String metricName
         7: .line 447
      StackMap locals: java.lang.String
      StackMap stack:
            aload 5 /* metricName */
            aload 3 /* suffixes */
            invokestatic com.codahale.metrics.MetricRegistry.name:(Ljava/lang/String;[Ljava/lang/String;)Ljava/lang/String;
            areturn
        end local 5 // java.lang.String metricName
        end local 4 // java.lang.reflect.Method definitionMethod
        end local 3 // java.lang.String[] suffixes
        end local 2 // org.glassfish.jersey.server.model.ResourceMethod method
        end local 1 // boolean absolute
        end local 0 // java.lang.String explicitName
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    8     0      explicitName  Ljava/lang/String;
            0    8     1          absolute  Z
            0    8     2            method  Lorg/glassfish/jersey/server/model/ResourceMethod;
            0    8     3          suffixes  [Ljava/lang/String;
            1    8     4  definitionMethod  Ljava/lang/reflect/Method;
            5    6     5        metricName  Ljava/lang/String;
            7    8     5        metricName  Ljava/lang/String;
    MethodParameters:
              Name  Flags
      explicitName  final
      absolute      final
      method        final
      suffixes      final

  private com.codahale.metrics.Timer lambda$0();
    descriptor: ()Lcom/codahale/metrics/Timer;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
         0: .line 428
            new com.codahale.metrics.Timer
            dup
            new com.codahale.metrics.ExponentiallyDecayingReservoir
            dup
            invokespecial com.codahale.metrics.ExponentiallyDecayingReservoir.<init>:()V
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.clock:Lcom/codahale/metrics/Clock;
            invokespecial com.codahale.metrics.Timer.<init>:(Lcom/codahale/metrics/Reservoir;Lcom/codahale/metrics/Clock;)V
            areturn
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;

  private com.codahale.metrics.Meter lambda$1();
    descriptor: ()Lcom/codahale/metrics/Meter;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
         0: .line 435
            new com.codahale.metrics.Meter
            dup
            aload 0 /* this */
            getfield com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener.clock:Lcom/codahale/metrics/Clock;
            invokespecial com.codahale.metrics.Meter.<init>:(Lcom/codahale/metrics/Clock;)V
            areturn
        end local 0 // com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/codahale/metrics/jersey2/InstrumentedResourceMethodApplicationListener;
}
SourceFile: "InstrumentedResourceMethodApplicationListener.java"
NestMembers:
  com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ChainedRequestEventListener  com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$EventTypeAndMethod  com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterMetric  com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterRequestEventListener  com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$MeterRequestEventListener  com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterMetric  com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterRequestEventListener  com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$TimerRequestEventListener
InnerClasses:
  public abstract MetricSupplier = com.codahale.metrics.MetricRegistry$MetricSupplier of com.codahale.metrics.MetricRegistry
  private ChainedRequestEventListener = com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ChainedRequestEventListener of com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener
  private EventTypeAndMethod = com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$EventTypeAndMethod of com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener
  private ExceptionMeterMetric = com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterMetric of com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener
  private ExceptionMeterRequestEventListener = com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ExceptionMeterRequestEventListener of com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener
  private MeterRequestEventListener = com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$MeterRequestEventListener of com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener
  private ResponseMeterMetric = com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterMetric of com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener
  private ResponseMeterRequestEventListener = com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$ResponseMeterRequestEventListener of com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener
  private TimerRequestEventListener = com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener$TimerRequestEventListener of com.codahale.metrics.jersey2.InstrumentedResourceMethodApplicationListener
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
  public final Type = org.glassfish.jersey.server.monitoring.ApplicationEvent$Type of org.glassfish.jersey.server.monitoring.ApplicationEvent
    RuntimeVisibleAnnotations: 
      javax.ws.rs.ext.Provider()