public class io.vertx.micrometer.impl.VertxMetricsImpl extends io.vertx.micrometer.impl.AbstractMetrics implements io.vertx.core.spi.metrics.VertxMetrics
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.micrometer.impl.VertxMetricsImpl
  super_class: io.vertx.micrometer.impl.AbstractMetrics
{
  private final io.vertx.micrometer.backends.BackendRegistry backendRegistry;
    descriptor: Lio/vertx/micrometer/backends/BackendRegistry;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.lang.String registryName;
    descriptor: Ljava/lang/String;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.micrometer.MetricsNaming names;
    descriptor: Lio/vertx/micrometer/MetricsNaming;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.spi.metrics.EventBusMetrics eventBusMetrics;
    descriptor: Lio/vertx/core/spi/metrics/EventBusMetrics;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.core.spi.metrics.DatagramSocketMetrics datagramSocketMetrics;
    descriptor: Lio/vertx/core/spi/metrics/DatagramSocketMetrics;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.micrometer.impl.VertxNetClientMetrics netClientMetrics;
    descriptor: Lio/vertx/micrometer/impl/VertxNetClientMetrics;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.micrometer.impl.VertxNetServerMetrics netServerMetrics;
    descriptor: Lio/vertx/micrometer/impl/VertxNetServerMetrics;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.micrometer.impl.VertxHttpClientMetrics httpClientMetrics;
    descriptor: Lio/vertx/micrometer/impl/VertxHttpClientMetrics;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.micrometer.impl.VertxHttpServerMetrics httpServerMetrics;
    descriptor: Lio/vertx/micrometer/impl/VertxHttpServerMetrics;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final io.vertx.micrometer.impl.VertxPoolMetrics poolMetrics;
    descriptor: Lio/vertx/micrometer/impl/VertxPoolMetrics;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.util.Map<java.lang.String, io.vertx.micrometer.impl.VertxClientMetrics> mapClientMetrics;
    descriptor: Ljava/util/Map;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Map<Ljava/lang/String;Lio/vertx/micrometer/impl/VertxClientMetrics;>;

  private final java.util.Set<java.lang.String> disabledCaterogies;
    descriptor: Ljava/util/Set;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Set<Ljava/lang/String;>;

  public void <init>(io.vertx.micrometer.MicrometerMetricsOptions, io.vertx.micrometer.backends.BackendRegistry);
    descriptor: (Lio/vertx/micrometer/MicrometerMetricsOptions;Lio/vertx/micrometer/backends/BackendRegistry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
        start local 1 // io.vertx.micrometer.MicrometerMetricsOptions options
        start local 2 // io.vertx.micrometer.backends.BackendRegistry backendRegistry
         0: .line 76
            aload 0 /* this */
            aload 2 /* backendRegistry */
            invokeinterface io.vertx.micrometer.backends.BackendRegistry.getMeterRegistry:()Lio/micrometer/core/instrument/MeterRegistry;
            invokespecial io.vertx.micrometer.impl.AbstractMetrics.<init>:(Lio/micrometer/core/instrument/MeterRegistry;)V
         1: .line 69
            aload 0 /* this */
            new java.util.concurrent.ConcurrentHashMap
            dup
            invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.mapClientMetrics:Ljava/util/Map;
         2: .line 70
            aload 0 /* this */
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.disabledCaterogies:Ljava/util/Set;
         3: .line 77
            aload 0 /* this */
            aload 2 /* backendRegistry */
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.backendRegistry:Lio/vertx/micrometer/backends/BackendRegistry;
         4: .line 78
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.getRegistryName:()Ljava/lang/String;
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.registryName:Ljava/lang/String;
         5: .line 79
            aload 2 /* backendRegistry */
            invokeinterface io.vertx.micrometer.backends.BackendRegistry.getMeterRegistry:()Lio/micrometer/core/instrument/MeterRegistry;
            astore 3 /* registry */
        start local 3 // io.micrometer.core.instrument.MeterRegistry registry
         6: .line 80
            aload 1 /* options */
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.getDisabledMetricsCategories:()Ljava/util/Set;
            ifnull 8
         7: .line 81
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.disabledCaterogies:Ljava/util/Set;
            aload 1 /* options */
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.getDisabledMetricsCategories:()Ljava/util/Set;
            invokeinterface java.util.Set.addAll:(Ljava/util/Collection;)Z
            pop
         8: .line 83
      StackMap locals: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.MicrometerMetricsOptions io.vertx.micrometer.backends.BackendRegistry io.micrometer.core.instrument.MeterRegistry
      StackMap stack:
            aload 0 /* this */
            aload 1 /* options */
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.getMetricsNaming:()Lio/vertx/micrometer/MetricsNaming;
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.names:Lio/vertx/micrometer/MetricsNaming;
         9: .line 85
            aload 0 /* this */
            aload 1 /* options */
            getstatic io.vertx.micrometer.MetricsDomain.EVENT_BUS:Lio/vertx/micrometer/MetricsDomain;
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.isMetricsCategoryDisabled:(Lio/vertx/micrometer/MetricsDomain;)Z
            ifeq 10
            aconst_null
            goto 11
        10: .line 86
      StackMap locals:
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl
            new io.vertx.micrometer.impl.VertxEventBusMetrics
            dup
            aload 3 /* registry */
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.names:Lio/vertx/micrometer/MetricsNaming;
            invokespecial io.vertx.micrometer.impl.VertxEventBusMetrics.<init>:(Lio/micrometer/core/instrument/MeterRegistry;Lio/vertx/micrometer/MetricsNaming;)V
        11: .line 85
      StackMap locals: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.MicrometerMetricsOptions io.vertx.micrometer.backends.BackendRegistry io.micrometer.core.instrument.MeterRegistry
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.impl.VertxEventBusMetrics
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.eventBusMetrics:Lio/vertx/core/spi/metrics/EventBusMetrics;
        12: .line 87
            aload 0 /* this */
            aload 1 /* options */
            getstatic io.vertx.micrometer.MetricsDomain.DATAGRAM_SOCKET:Lio/vertx/micrometer/MetricsDomain;
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.isMetricsCategoryDisabled:(Lio/vertx/micrometer/MetricsDomain;)Z
            ifeq 13
            aconst_null
            goto 14
        13: .line 88
      StackMap locals:
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl
            new io.vertx.micrometer.impl.VertxDatagramSocketMetrics
            dup
            aload 3 /* registry */
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.names:Lio/vertx/micrometer/MetricsNaming;
            invokespecial io.vertx.micrometer.impl.VertxDatagramSocketMetrics.<init>:(Lio/micrometer/core/instrument/MeterRegistry;Lio/vertx/micrometer/MetricsNaming;)V
        14: .line 87
      StackMap locals: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.MicrometerMetricsOptions io.vertx.micrometer.backends.BackendRegistry io.micrometer.core.instrument.MeterRegistry
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.impl.VertxDatagramSocketMetrics
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.datagramSocketMetrics:Lio/vertx/core/spi/metrics/DatagramSocketMetrics;
        15: .line 89
            aload 0 /* this */
            aload 1 /* options */
            getstatic io.vertx.micrometer.MetricsDomain.NET_CLIENT:Lio/vertx/micrometer/MetricsDomain;
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.isMetricsCategoryDisabled:(Lio/vertx/micrometer/MetricsDomain;)Z
            ifeq 16
            aconst_null
            goto 17
        16: .line 90
      StackMap locals:
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl
            new io.vertx.micrometer.impl.VertxNetClientMetrics
            dup
            aload 3 /* registry */
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.names:Lio/vertx/micrometer/MetricsNaming;
            invokespecial io.vertx.micrometer.impl.VertxNetClientMetrics.<init>:(Lio/micrometer/core/instrument/MeterRegistry;Lio/vertx/micrometer/MetricsNaming;)V
        17: .line 89
      StackMap locals: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.MicrometerMetricsOptions io.vertx.micrometer.backends.BackendRegistry io.micrometer.core.instrument.MeterRegistry
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.impl.VertxNetClientMetrics
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.netClientMetrics:Lio/vertx/micrometer/impl/VertxNetClientMetrics;
        18: .line 91
            aload 0 /* this */
            aload 1 /* options */
            getstatic io.vertx.micrometer.MetricsDomain.NET_SERVER:Lio/vertx/micrometer/MetricsDomain;
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.isMetricsCategoryDisabled:(Lio/vertx/micrometer/MetricsDomain;)Z
            ifeq 19
            aconst_null
            goto 20
        19: .line 92
      StackMap locals:
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl
            new io.vertx.micrometer.impl.VertxNetServerMetrics
            dup
            aload 3 /* registry */
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.names:Lio/vertx/micrometer/MetricsNaming;
            invokespecial io.vertx.micrometer.impl.VertxNetServerMetrics.<init>:(Lio/micrometer/core/instrument/MeterRegistry;Lio/vertx/micrometer/MetricsNaming;)V
        20: .line 91
      StackMap locals: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.MicrometerMetricsOptions io.vertx.micrometer.backends.BackendRegistry io.micrometer.core.instrument.MeterRegistry
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.impl.VertxNetServerMetrics
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.netServerMetrics:Lio/vertx/micrometer/impl/VertxNetServerMetrics;
        21: .line 93
            aload 0 /* this */
            aload 1 /* options */
            getstatic io.vertx.micrometer.MetricsDomain.HTTP_CLIENT:Lio/vertx/micrometer/MetricsDomain;
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.isMetricsCategoryDisabled:(Lio/vertx/micrometer/MetricsDomain;)Z
            ifeq 22
            aconst_null
            goto 23
        22: .line 94
      StackMap locals:
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl
            new io.vertx.micrometer.impl.VertxHttpClientMetrics
            dup
            aload 3 /* registry */
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.names:Lio/vertx/micrometer/MetricsNaming;
            invokespecial io.vertx.micrometer.impl.VertxHttpClientMetrics.<init>:(Lio/micrometer/core/instrument/MeterRegistry;Lio/vertx/micrometer/MetricsNaming;)V
        23: .line 93
      StackMap locals: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.MicrometerMetricsOptions io.vertx.micrometer.backends.BackendRegistry io.micrometer.core.instrument.MeterRegistry
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.impl.VertxHttpClientMetrics
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.httpClientMetrics:Lio/vertx/micrometer/impl/VertxHttpClientMetrics;
        24: .line 95
            aload 0 /* this */
            aload 1 /* options */
            getstatic io.vertx.micrometer.MetricsDomain.HTTP_SERVER:Lio/vertx/micrometer/MetricsDomain;
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.isMetricsCategoryDisabled:(Lio/vertx/micrometer/MetricsDomain;)Z
            ifeq 25
            aconst_null
            goto 26
        25: .line 96
      StackMap locals:
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl
            new io.vertx.micrometer.impl.VertxHttpServerMetrics
            dup
            aload 3 /* registry */
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.names:Lio/vertx/micrometer/MetricsNaming;
            invokespecial io.vertx.micrometer.impl.VertxHttpServerMetrics.<init>:(Lio/micrometer/core/instrument/MeterRegistry;Lio/vertx/micrometer/MetricsNaming;)V
        26: .line 95
      StackMap locals: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.MicrometerMetricsOptions io.vertx.micrometer.backends.BackendRegistry io.micrometer.core.instrument.MeterRegistry
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.impl.VertxHttpServerMetrics
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.httpServerMetrics:Lio/vertx/micrometer/impl/VertxHttpServerMetrics;
        27: .line 97
            aload 0 /* this */
            aload 1 /* options */
            getstatic io.vertx.micrometer.MetricsDomain.NAMED_POOLS:Lio/vertx/micrometer/MetricsDomain;
            invokevirtual io.vertx.micrometer.MicrometerMetricsOptions.isMetricsCategoryDisabled:(Lio/vertx/micrometer/MetricsDomain;)Z
            ifeq 28
            aconst_null
            goto 29
        28: .line 98
      StackMap locals:
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl
            new io.vertx.micrometer.impl.VertxPoolMetrics
            dup
            aload 3 /* registry */
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.names:Lio/vertx/micrometer/MetricsNaming;
            invokespecial io.vertx.micrometer.impl.VertxPoolMetrics.<init>:(Lio/micrometer/core/instrument/MeterRegistry;Lio/vertx/micrometer/MetricsNaming;)V
        29: .line 97
      StackMap locals: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.MicrometerMetricsOptions io.vertx.micrometer.backends.BackendRegistry io.micrometer.core.instrument.MeterRegistry
      StackMap stack: io.vertx.micrometer.impl.VertxMetricsImpl io.vertx.micrometer.impl.VertxPoolMetrics
            putfield io.vertx.micrometer.impl.VertxMetricsImpl.poolMetrics:Lio/vertx/micrometer/impl/VertxPoolMetrics;
        30: .line 99
            return
        end local 3 // io.micrometer.core.instrument.MeterRegistry registry
        end local 2 // io.vertx.micrometer.backends.BackendRegistry backendRegistry
        end local 1 // io.vertx.micrometer.MicrometerMetricsOptions options
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot             Name  Signature
            0   31     0             this  Lio/vertx/micrometer/impl/VertxMetricsImpl;
            0   31     1          options  Lio/vertx/micrometer/MicrometerMetricsOptions;
            0   31     2  backendRegistry  Lio/vertx/micrometer/backends/BackendRegistry;
            6   31     3         registry  Lio/micrometer/core/instrument/MeterRegistry;
    MethodParameters:
                 Name  Flags
      options          
      backendRegistry  

  void init();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
         0: .line 102
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.backendRegistry:Lio/vertx/micrometer/backends/BackendRegistry;
            invokeinterface io.vertx.micrometer.backends.BackendRegistry.init:()V
         1: .line 103
            return
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/micrometer/impl/VertxMetricsImpl;

  public io.vertx.core.spi.metrics.EventBusMetrics createEventBusMetrics();
    descriptor: ()Lio/vertx/core/spi/metrics/EventBusMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
         0: .line 107
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.eventBusMetrics:Lio/vertx/core/spi/metrics/EventBusMetrics;
            ifnull 2
         1: .line 108
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.eventBusMetrics:Lio/vertx/core/spi/metrics/EventBusMetrics;
            areturn
         2: .line 110
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.metrics.impl.DummyVertxMetrics$DummyEventBusMetrics.INSTANCE:Lio/vertx/core/metrics/impl/DummyVertxMetrics$DummyEventBusMetrics;
            areturn
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lio/vertx/micrometer/impl/VertxMetricsImpl;

  public io.vertx.core.spi.metrics.HttpServerMetrics<?, ?, ?> createHttpServerMetrics(io.vertx.core.http.HttpServerOptions, io.vertx.core.net.SocketAddress);
    descriptor: (Lio/vertx/core/http/HttpServerOptions;Lio/vertx/core/net/SocketAddress;)Lio/vertx/core/spi/metrics/HttpServerMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
        start local 1 // io.vertx.core.http.HttpServerOptions httpClientOptions
        start local 2 // io.vertx.core.net.SocketAddress socketAddress
         0: .line 115
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.httpServerMetrics:Lio/vertx/micrometer/impl/VertxHttpServerMetrics;
            ifnull 2
         1: .line 116
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.httpServerMetrics:Lio/vertx/micrometer/impl/VertxHttpServerMetrics;
            aload 2 /* socketAddress */
            invokevirtual io.vertx.micrometer.impl.VertxHttpServerMetrics.forAddress:(Lio/vertx/core/net/SocketAddress;)Lio/vertx/core/spi/metrics/HttpServerMetrics;
            areturn
         2: .line 118
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.metrics.impl.DummyVertxMetrics$DummyHttpServerMetrics.INSTANCE:Lio/vertx/core/metrics/impl/DummyVertxMetrics$DummyHttpServerMetrics;
            areturn
        end local 2 // io.vertx.core.net.SocketAddress socketAddress
        end local 1 // io.vertx.core.http.HttpServerOptions httpClientOptions
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lio/vertx/micrometer/impl/VertxMetricsImpl;
            0    3     1  httpClientOptions  Lio/vertx/core/http/HttpServerOptions;
            0    3     2      socketAddress  Lio/vertx/core/net/SocketAddress;
    Signature: (Lio/vertx/core/http/HttpServerOptions;Lio/vertx/core/net/SocketAddress;)Lio/vertx/core/spi/metrics/HttpServerMetrics<***>;
    MethodParameters:
                   Name  Flags
      httpClientOptions  
      socketAddress      

  public io.vertx.core.spi.metrics.HttpClientMetrics<?, ?, ?, ?> createHttpClientMetrics(io.vertx.core.http.HttpClientOptions);
    descriptor: (Lio/vertx/core/http/HttpClientOptions;)Lio/vertx/core/spi/metrics/HttpClientMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
        start local 1 // io.vertx.core.http.HttpClientOptions httpClientOptions
         0: .line 123
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.httpClientMetrics:Lio/vertx/micrometer/impl/VertxHttpClientMetrics;
            ifnull 2
         1: .line 124
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.httpClientMetrics:Lio/vertx/micrometer/impl/VertxHttpClientMetrics;
            aload 1 /* httpClientOptions */
            invokevirtual io.vertx.core.http.HttpClientOptions.getLocalAddress:()Ljava/lang/String;
            invokevirtual io.vertx.micrometer.impl.VertxHttpClientMetrics.forAddress:(Ljava/lang/String;)Lio/vertx/core/spi/metrics/HttpClientMetrics;
            areturn
         2: .line 126
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.metrics.impl.DummyVertxMetrics$DummyHttpClientMetrics.INSTANCE:Lio/vertx/core/metrics/impl/DummyVertxMetrics$DummyHttpClientMetrics;
            areturn
        end local 1 // io.vertx.core.http.HttpClientOptions httpClientOptions
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lio/vertx/micrometer/impl/VertxMetricsImpl;
            0    3     1  httpClientOptions  Lio/vertx/core/http/HttpClientOptions;
    Signature: (Lio/vertx/core/http/HttpClientOptions;)Lio/vertx/core/spi/metrics/HttpClientMetrics<****>;
    MethodParameters:
                   Name  Flags
      httpClientOptions  

  public io.vertx.core.spi.metrics.TCPMetrics<?> createNetServerMetrics(io.vertx.core.net.NetServerOptions, io.vertx.core.net.SocketAddress);
    descriptor: (Lio/vertx/core/net/NetServerOptions;Lio/vertx/core/net/SocketAddress;)Lio/vertx/core/spi/metrics/TCPMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
        start local 1 // io.vertx.core.net.NetServerOptions netServerOptions
        start local 2 // io.vertx.core.net.SocketAddress socketAddress
         0: .line 131
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.netServerMetrics:Lio/vertx/micrometer/impl/VertxNetServerMetrics;
            ifnull 2
         1: .line 132
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.netServerMetrics:Lio/vertx/micrometer/impl/VertxNetServerMetrics;
            aload 2 /* socketAddress */
            invokevirtual io.vertx.micrometer.impl.VertxNetServerMetrics.forAddress:(Lio/vertx/core/net/SocketAddress;)Lio/vertx/core/spi/metrics/TCPMetrics;
            areturn
         2: .line 134
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.metrics.impl.DummyVertxMetrics$DummyTCPMetrics.INSTANCE:Lio/vertx/core/metrics/impl/DummyVertxMetrics$DummyTCPMetrics;
            areturn
        end local 2 // io.vertx.core.net.SocketAddress socketAddress
        end local 1 // io.vertx.core.net.NetServerOptions netServerOptions
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lio/vertx/micrometer/impl/VertxMetricsImpl;
            0    3     1  netServerOptions  Lio/vertx/core/net/NetServerOptions;
            0    3     2     socketAddress  Lio/vertx/core/net/SocketAddress;
    Signature: (Lio/vertx/core/net/NetServerOptions;Lio/vertx/core/net/SocketAddress;)Lio/vertx/core/spi/metrics/TCPMetrics<*>;
    MethodParameters:
                  Name  Flags
      netServerOptions  
      socketAddress     

  public io.vertx.core.spi.metrics.TCPMetrics<?> createNetClientMetrics(io.vertx.core.net.NetClientOptions);
    descriptor: (Lio/vertx/core/net/NetClientOptions;)Lio/vertx/core/spi/metrics/TCPMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
        start local 1 // io.vertx.core.net.NetClientOptions netClientOptions
         0: .line 139
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.netClientMetrics:Lio/vertx/micrometer/impl/VertxNetClientMetrics;
            ifnull 2
         1: .line 140
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.netClientMetrics:Lio/vertx/micrometer/impl/VertxNetClientMetrics;
            aload 1 /* netClientOptions */
            invokevirtual io.vertx.core.net.NetClientOptions.getLocalAddress:()Ljava/lang/String;
            invokevirtual io.vertx.micrometer.impl.VertxNetClientMetrics.forAddress:(Ljava/lang/String;)Lio/vertx/core/spi/metrics/TCPMetrics;
            areturn
         2: .line 142
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.metrics.impl.DummyVertxMetrics$DummyTCPMetrics.INSTANCE:Lio/vertx/core/metrics/impl/DummyVertxMetrics$DummyTCPMetrics;
            areturn
        end local 1 // io.vertx.core.net.NetClientOptions netClientOptions
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0    3     0              this  Lio/vertx/micrometer/impl/VertxMetricsImpl;
            0    3     1  netClientOptions  Lio/vertx/core/net/NetClientOptions;
    Signature: (Lio/vertx/core/net/NetClientOptions;)Lio/vertx/core/spi/metrics/TCPMetrics<*>;
    MethodParameters:
                  Name  Flags
      netClientOptions  

  public io.vertx.core.spi.metrics.DatagramSocketMetrics createDatagramSocketMetrics(io.vertx.core.datagram.DatagramSocketOptions);
    descriptor: (Lio/vertx/core/datagram/DatagramSocketOptions;)Lio/vertx/core/spi/metrics/DatagramSocketMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
        start local 1 // io.vertx.core.datagram.DatagramSocketOptions options
         0: .line 147
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.datagramSocketMetrics:Lio/vertx/core/spi/metrics/DatagramSocketMetrics;
            ifnull 2
         1: .line 148
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.datagramSocketMetrics:Lio/vertx/core/spi/metrics/DatagramSocketMetrics;
            areturn
         2: .line 150
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.metrics.impl.DummyVertxMetrics$DummyDatagramMetrics.INSTANCE:Lio/vertx/core/metrics/impl/DummyVertxMetrics$DummyDatagramMetrics;
            areturn
        end local 1 // io.vertx.core.datagram.DatagramSocketOptions options
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lio/vertx/micrometer/impl/VertxMetricsImpl;
            0    3     1  options  Lio/vertx/core/datagram/DatagramSocketOptions;
    MethodParameters:
         Name  Flags
      options  

  public io.vertx.core.spi.metrics.PoolMetrics<?> createPoolMetrics(java.lang.String, java.lang.String, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;I)Lio/vertx/core/spi/metrics/PoolMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
        start local 1 // java.lang.String poolType
        start local 2 // java.lang.String poolName
        start local 3 // int maxPoolSize
         0: .line 155
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.poolMetrics:Lio/vertx/micrometer/impl/VertxPoolMetrics;
            ifnull 2
         1: .line 156
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.poolMetrics:Lio/vertx/micrometer/impl/VertxPoolMetrics;
            aload 1 /* poolType */
            aload 2 /* poolName */
            iload 3 /* maxPoolSize */
            invokevirtual io.vertx.micrometer.impl.VertxPoolMetrics.forInstance:(Ljava/lang/String;Ljava/lang/String;I)Lio/vertx/core/spi/metrics/PoolMetrics;
            areturn
         2: .line 158
      StackMap locals:
      StackMap stack:
            getstatic io.vertx.core.metrics.impl.DummyVertxMetrics$DummyWorkerPoolMetrics.INSTANCE:Lio/vertx/core/metrics/impl/DummyVertxMetrics$DummyWorkerPoolMetrics;
            areturn
        end local 3 // int maxPoolSize
        end local 2 // java.lang.String poolName
        end local 1 // java.lang.String poolType
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    3     0         this  Lio/vertx/micrometer/impl/VertxMetricsImpl;
            0    3     1     poolType  Ljava/lang/String;
            0    3     2     poolName  Ljava/lang/String;
            0    3     3  maxPoolSize  I
    Signature: (Ljava/lang/String;Ljava/lang/String;I)Lio/vertx/core/spi/metrics/PoolMetrics<*>;
    MethodParameters:
             Name  Flags
      poolType     
      poolName     
      maxPoolSize  

  public io.vertx.core.spi.metrics.ClientMetrics<?, ?, ?, ?> createClientMetrics(io.vertx.core.net.SocketAddress, java.lang.String, java.lang.String);
    descriptor: (Lio/vertx/core/net/SocketAddress;Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/spi/metrics/ClientMetrics;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
        start local 1 // io.vertx.core.net.SocketAddress remoteAddress
        start local 2 // java.lang.String type
        start local 3 // java.lang.String namespace
         0: .line 163
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.disabledCaterogies:Ljava/util/Set;
            aload 2 /* type */
            invokeinterface java.util.Set.contains:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 164
            getstatic io.vertx.core.metrics.impl.DummyVertxMetrics$DummyClientMetrics.INSTANCE:Lio/vertx/core/metrics/impl/DummyVertxMetrics$DummyClientMetrics;
            areturn
         2: .line 166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.mapClientMetrics:Ljava/util/Map;
            aload 2 /* type */
            aload 0 /* this */
            aload 2 /* type */
            invokedynamic apply(Lio/vertx/micrometer/impl/VertxMetricsImpl;Ljava/lang/String;)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/vertx/micrometer/impl/VertxMetricsImpl.lambda$0(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/micrometer/impl/VertxClientMetrics; (7)
                  (Ljava/lang/String;)Lio/vertx/micrometer/impl/VertxClientMetrics;
            invokeinterface java.util.Map.computeIfAbsent:(Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object;
            checkcast io.vertx.micrometer.impl.VertxClientMetrics
            astore 4 /* clientMetrics */
        start local 4 // io.vertx.micrometer.impl.VertxClientMetrics clientMetrics
         3: .line 167
            aload 4 /* clientMetrics */
            aload 1 /* remoteAddress */
            aload 3 /* namespace */
            invokevirtual io.vertx.micrometer.impl.VertxClientMetrics.forInstance:(Lio/vertx/core/net/SocketAddress;Ljava/lang/String;)Lio/vertx/core/spi/metrics/ClientMetrics;
            areturn
        end local 4 // io.vertx.micrometer.impl.VertxClientMetrics clientMetrics
        end local 3 // java.lang.String namespace
        end local 2 // java.lang.String type
        end local 1 // io.vertx.core.net.SocketAddress remoteAddress
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lio/vertx/micrometer/impl/VertxMetricsImpl;
            0    4     1  remoteAddress  Lio/vertx/core/net/SocketAddress;
            0    4     2           type  Ljava/lang/String;
            0    4     3      namespace  Ljava/lang/String;
            3    4     4  clientMetrics  Lio/vertx/micrometer/impl/VertxClientMetrics;
    Signature: (Lio/vertx/core/net/SocketAddress;Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/spi/metrics/ClientMetrics<****>;
    MethodParameters:
               Name  Flags
      remoteAddress  
      type           
      namespace      

  public boolean isMetricsEnabled();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
         0: .line 172
            iconst_1
            ireturn
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/micrometer/impl/VertxMetricsImpl;

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
         0: .line 177
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.registryName:Ljava/lang/String;
            invokestatic io.vertx.micrometer.backends.BackendRegistries.stop:(Ljava/lang/String;)V
         1: .line 178
            return
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lio/vertx/micrometer/impl/VertxMetricsImpl;

  private io.vertx.micrometer.impl.VertxClientMetrics lambda$0(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Lio/vertx/micrometer/impl/VertxClientMetrics;
    flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
        start local 2 // java.lang.String t
         0: .line 166
            new io.vertx.micrometer.impl.VertxClientMetrics
            dup
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.registry:Lio/micrometer/core/instrument/MeterRegistry;
            aload 1
            aload 0 /* this */
            getfield io.vertx.micrometer.impl.VertxMetricsImpl.names:Lio/vertx/micrometer/MetricsNaming;
            invokespecial io.vertx.micrometer.impl.VertxClientMetrics.<init>:(Lio/micrometer/core/instrument/MeterRegistry;Ljava/lang/String;Lio/vertx/micrometer/MetricsNaming;)V
            areturn
        end local 2 // java.lang.String t
        end local 0 // io.vertx.micrometer.impl.VertxMetricsImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/micrometer/impl/VertxMetricsImpl;
            0    1     2     t  Ljava/lang/String;
}
SourceFile: "VertxMetricsImpl.java"
InnerClasses:
  public DummyClientMetrics = io.vertx.core.metrics.impl.DummyVertxMetrics$DummyClientMetrics of io.vertx.core.metrics.impl.DummyVertxMetrics
  public DummyDatagramMetrics = io.vertx.core.metrics.impl.DummyVertxMetrics$DummyDatagramMetrics of io.vertx.core.metrics.impl.DummyVertxMetrics
  public DummyEventBusMetrics = io.vertx.core.metrics.impl.DummyVertxMetrics$DummyEventBusMetrics of io.vertx.core.metrics.impl.DummyVertxMetrics
  public DummyHttpClientMetrics = io.vertx.core.metrics.impl.DummyVertxMetrics$DummyHttpClientMetrics of io.vertx.core.metrics.impl.DummyVertxMetrics
  public DummyHttpServerMetrics = io.vertx.core.metrics.impl.DummyVertxMetrics$DummyHttpServerMetrics of io.vertx.core.metrics.impl.DummyVertxMetrics
  public DummyTCPMetrics = io.vertx.core.metrics.impl.DummyVertxMetrics$DummyTCPMetrics of io.vertx.core.metrics.impl.DummyVertxMetrics
  public DummyWorkerPoolMetrics = io.vertx.core.metrics.impl.DummyVertxMetrics$DummyWorkerPoolMetrics of io.vertx.core.metrics.impl.DummyVertxMetrics
  public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles