public class io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl implements io.vertx.core.spi.VertxMetricsFactory
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl
super_class: java.lang.Object
{
static final java.lang.String BASE_NAME;
descriptor: Ljava/lang/String;
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: "vertx"
private io.vertx.core.impl.logging.Logger logger;
descriptor: Lio/vertx/core/impl/logging/Logger;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
ldc Lio/vertx/ext/dropwizard/impl/VertxMetricsFactoryImpl;
invokestatic io.vertx.core.impl.logging.LoggerFactory.getLogger:(Ljava/lang/Class;)Lio/vertx/core/impl/logging/Logger;
putfield io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl.logger:Lio/vertx/core/impl/logging/Logger;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/ext/dropwizard/impl/VertxMetricsFactoryImpl;
public io.vertx.core.spi.metrics.VertxMetrics metrics(io.vertx.core.VertxOptions);
descriptor: (Lio/vertx/core/VertxOptions;)Lio/vertx/core/spi/metrics/VertxMetrics;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=10, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual io.vertx.core.VertxOptions.getMetricsOptions:()Lio/vertx/core/metrics/MetricsOptions;
astore 2
start local 2 1: aload 2
instanceof io.vertx.ext.dropwizard.DropwizardMetricsOptions
ifeq 4
2: aload 2
checkcast io.vertx.ext.dropwizard.DropwizardMetricsOptions
astore 3
start local 3 3: goto 5
end local 3 4: StackMap locals: io.vertx.core.metrics.MetricsOptions
StackMap stack:
new io.vertx.ext.dropwizard.DropwizardMetricsOptions
dup
aload 2
invokevirtual io.vertx.core.metrics.MetricsOptions.toJson:()Lio/vertx/core/json/JsonObject;
invokespecial io.vertx.ext.dropwizard.DropwizardMetricsOptions.<init>:(Lio/vertx/core/json/JsonObject;)V
astore 3
start local 3 5: StackMap locals: io.vertx.ext.dropwizard.DropwizardMetricsOptions
StackMap stack:
aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getMetricRegistry:()Lcom/codahale/metrics/MetricRegistry;
ifnull 6
aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getMetricRegistry:()Lcom/codahale/metrics/MetricRegistry;
goto 7
StackMap locals:
StackMap stack:
6: new com.codahale.metrics.MetricRegistry
dup
invokespecial com.codahale.metrics.MetricRegistry.<init>:()V
StackMap locals:
StackMap stack: com.codahale.metrics.MetricRegistry
7: astore 4
start local 4 8: iconst_1
istore 5
start local 5 9: aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getRegistryName:()Ljava/lang/String;
ifnull 14
10: aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getRegistryName:()Ljava/lang/String;
aload 4
invokestatic com.codahale.metrics.SharedMetricRegistries.add:(Ljava/lang/String;Lcom/codahale/metrics/MetricRegistry;)Lcom/codahale/metrics/MetricRegistry;
astore 6
start local 6 11: aload 6
ifnull 14
12: aload 6
astore 4
13: iconst_0
istore 5
end local 6 14: StackMap locals: com.codahale.metrics.MetricRegistry int
StackMap stack:
aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getConfigPath:()Ljava/lang/String;
ifnull 28
aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getConfigPath:()Ljava/lang/String;
invokevirtual java.lang.String.isEmpty:()Z
ifne 28
15: new io.vertx.core.file.impl.FileResolver
dup
invokespecial io.vertx.core.file.impl.FileResolver.<init>:()V
astore 6
start local 6 16: aload 0
aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getConfigPath:()Ljava/lang/String;
aload 6
invokevirtual io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl.loadOptionsFile:(Ljava/lang/String;Lio/vertx/core/file/impl/FileResolver;)Lio/vertx/core/json/JsonObject;
astore 7
start local 7 17: goto 23
end local 7 StackMap locals: io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl io.vertx.core.VertxOptions io.vertx.core.metrics.MetricsOptions io.vertx.ext.dropwizard.DropwizardMetricsOptions com.codahale.metrics.MetricRegistry int io.vertx.core.file.impl.FileResolver
StackMap stack: java.lang.Throwable
18: astore 8
19: aload 6
invokevirtual io.vertx.core.file.impl.FileResolver.close:()V
20: goto 22
StackMap locals: io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl io.vertx.core.VertxOptions io.vertx.core.metrics.MetricsOptions io.vertx.ext.dropwizard.DropwizardMetricsOptions com.codahale.metrics.MetricRegistry int io.vertx.core.file.impl.FileResolver top java.lang.Throwable
StackMap stack: java.io.IOException
21: pop
22: StackMap locals:
StackMap stack:
aload 8
athrow
start local 7 23: StackMap locals: io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl io.vertx.core.VertxOptions io.vertx.core.metrics.MetricsOptions io.vertx.ext.dropwizard.DropwizardMetricsOptions com.codahale.metrics.MetricRegistry int io.vertx.core.file.impl.FileResolver io.vertx.core.json.JsonObject
StackMap stack:
aload 6
invokevirtual io.vertx.core.file.impl.FileResolver.close:()V
24: goto 26
StackMap locals:
StackMap stack: java.io.IOException
25: pop
26: StackMap locals:
StackMap stack:
aload 7
invokevirtual io.vertx.core.json.JsonObject.isEmpty:()Z
ifne 28
27: new io.vertx.ext.dropwizard.DropwizardMetricsOptions
dup
aload 7
invokespecial io.vertx.ext.dropwizard.DropwizardMetricsOptions.<init>:(Lio/vertx/core/json/JsonObject;)V
astore 3
end local 7 end local 6 28: StackMap locals:
StackMap stack:
aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getBaseName:()Ljava/lang/String;
ifnonnull 29
ldc "vertx"
goto 30
StackMap locals:
StackMap stack:
29: aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getBaseName:()Ljava/lang/String;
StackMap locals:
StackMap stack: java.lang.String
30: astore 6
start local 6 31: new io.vertx.ext.dropwizard.impl.VertxMetricsImpl
dup
aload 4
iload 5
aload 1
aload 3
aload 6
invokespecial io.vertx.ext.dropwizard.impl.VertxMetricsImpl.<init>:(Lcom/codahale/metrics/MetricRegistry;ZLio/vertx/core/VertxOptions;Lio/vertx/ext/dropwizard/DropwizardMetricsOptions;Ljava/lang/String;)V
astore 7
start local 7 32: aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.isJmxEnabled:()Z
ifeq 39
33: aload 3
invokevirtual io.vertx.ext.dropwizard.DropwizardMetricsOptions.getJmxDomain:()Ljava/lang/String;
astore 8
start local 8 34: aload 8
ifnonnull 36
35: new java.lang.StringBuilder
dup
ldc "vertx@"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.Object.hashCode:()I
invokestatic java.lang.Integer.toHexString:(I)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 8
36: StackMap locals: java.lang.String io.vertx.ext.dropwizard.impl.VertxMetricsImpl java.lang.String
StackMap stack:
aload 7
invokevirtual io.vertx.ext.dropwizard.impl.VertxMetricsImpl.registry:()Lcom/codahale/metrics/MetricRegistry;
invokestatic io.vertx.ext.dropwizard.reporters.JmxReporter.forRegistry:(Lcom/codahale/metrics/MetricRegistry;)Lio/vertx/ext/dropwizard/reporters/JmxReporter$Builder;
aload 8
invokevirtual io.vertx.ext.dropwizard.reporters.JmxReporter$Builder.inDomain:(Ljava/lang/String;)Lio/vertx/ext/dropwizard/reporters/JmxReporter$Builder;
invokevirtual io.vertx.ext.dropwizard.reporters.JmxReporter$Builder.build:()Lio/vertx/ext/dropwizard/reporters/JmxReporter;
astore 9
start local 9 37: aload 7
aload 9
invokedynamic handle(Lio/vertx/ext/dropwizard/reporters/JmxReporter;)Lio/vertx/core/Handler;
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;)V
io/vertx/ext/dropwizard/impl/VertxMetricsFactoryImpl.lambda$0(Lio/vertx/ext/dropwizard/reporters/JmxReporter;Ljava/lang/Void;)V (6)
(Ljava/lang/Void;)V
invokevirtual io.vertx.ext.dropwizard.impl.VertxMetricsImpl.setDoneHandler:(Lio/vertx/core/Handler;)V
38: aload 9
invokevirtual io.vertx.ext.dropwizard.reporters.JmxReporter.start:()V
end local 9 end local 8 39: StackMap locals:
StackMap stack:
aload 7
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lio/vertx/ext/dropwizard/impl/VertxMetricsFactoryImpl;
0 40 1 options Lio/vertx/core/VertxOptions;
1 40 2 baseOptions Lio/vertx/core/metrics/MetricsOptions;
3 4 3 metricsOptions Lio/vertx/ext/dropwizard/DropwizardMetricsOptions;
5 40 3 metricsOptions Lio/vertx/ext/dropwizard/DropwizardMetricsOptions;
8 40 4 registry Lcom/codahale/metrics/MetricRegistry;
9 40 5 shutdown Z
11 14 6 other Lcom/codahale/metrics/MetricRegistry;
16 28 6 resolver Lio/vertx/core/file/impl/FileResolver;
17 18 7 loadedFromFile Lio/vertx/core/json/JsonObject;
23 28 7 loadedFromFile Lio/vertx/core/json/JsonObject;
31 40 6 baseName Ljava/lang/String;
32 40 7 metrics Lio/vertx/ext/dropwizard/impl/VertxMetricsImpl;
34 39 8 jmxDomain Ljava/lang/String;
37 39 9 reporter Lio/vertx/ext/dropwizard/reporters/JmxReporter;
Exception table:
from to target type
16 18 18 any
19 20 21 Class java.io.IOException
23 24 25 Class java.io.IOException
MethodParameters:
Name Flags
options
private io.vertx.core.json.JsonObject loadOptionsFile(java.lang.String, io.vertx.core.file.impl.FileResolver);
descriptor: (Ljava/lang/String;Lio/vertx/core/file/impl/FileResolver;)Lio/vertx/core/json/JsonObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 1
invokevirtual io.vertx.core.file.impl.FileResolver.resolveFile:(Ljava/lang/String;)Ljava/io/File;
astore 3
start local 3 1: aconst_null
astore 4
aconst_null
astore 5
2: new java.util.Scanner
dup
aload 3
invokespecial java.util.Scanner.<init>:(Ljava/io/File;)V
astore 6
start local 6 3: aload 6
ldc "\\A"
invokevirtual java.util.Scanner.useDelimiter:(Ljava/lang/String;)Ljava/util/Scanner;
pop
4: aload 6
invokevirtual java.util.Scanner.next:()Ljava/lang/String;
astore 7
start local 7 5: new io.vertx.core.json.JsonObject
dup
aload 7
invokespecial io.vertx.core.json.JsonObject.<init>:(Ljava/lang/String;)V
6: aload 6
ifnull 7
aload 6
invokevirtual java.util.Scanner.close:()V
7: StackMap locals: io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl java.lang.String io.vertx.core.file.impl.FileResolver java.io.File java.lang.Throwable java.lang.Throwable java.util.Scanner java.lang.String
StackMap stack: io.vertx.core.json.JsonObject
areturn
end local 7 StackMap locals: io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl java.lang.String io.vertx.core.file.impl.FileResolver java.io.File java.lang.Throwable java.lang.Throwable java.util.Scanner
StackMap stack: java.lang.Throwable
8: astore 4
9: aload 6
ifnull 10
aload 6
invokevirtual java.util.Scanner.close:()V
end local 6 StackMap locals:
StackMap stack:
10: aload 4
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
11: astore 5
aload 4
ifnonnull 12
aload 5
astore 4
goto 13
StackMap locals:
StackMap stack:
12: aload 4
aload 5
if_acmpeq 13
aload 4
aload 5
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
13: aload 4
athrow
StackMap locals: io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl java.lang.String io.vertx.core.file.impl.FileResolver java.io.File
StackMap stack: java.io.IOException
14: astore 4
start local 4 15: aload 0
getfield io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl.logger:Lio/vertx/core/impl/logging/Logger;
ldc "Error while reading metrics config file"
aload 4
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 4 16: goto 19
17: StackMap locals:
StackMap stack: io.vertx.core.json.DecodeException
astore 4
start local 4 18: aload 0
getfield io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl.logger:Lio/vertx/core/impl/logging/Logger;
ldc "Error while decoding metrics config file into JSON"
aload 4
invokeinterface io.vertx.core.impl.logging.Logger.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 4 19: StackMap locals:
StackMap stack:
new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lio/vertx/ext/dropwizard/impl/VertxMetricsFactoryImpl;
0 20 1 configPath Ljava/lang/String;
0 20 2 fileResolver Lio/vertx/core/file/impl/FileResolver;
1 20 3 file Ljava/io/File;
3 10 6 scanner Ljava/util/Scanner;
5 8 7 metricsConfigString Ljava/lang/String;
15 16 4 ioe Ljava/io/IOException;
18 19 4 de Lio/vertx/core/json/DecodeException;
Exception table:
from to target type
3 6 8 any
2 7 11 any
8 11 11 any
1 7 14 Class java.io.IOException
8 14 14 Class java.io.IOException
1 7 17 Class io.vertx.core.json.DecodeException
8 14 17 Class io.vertx.core.json.DecodeException
MethodParameters:
Name Flags
configPath
fileResolver
public io.vertx.core.metrics.MetricsOptions newOptions();
descriptor: ()Lio/vertx/core/metrics/MetricsOptions;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
invokevirtual io.vertx.ext.dropwizard.impl.VertxMetricsFactoryImpl.newOptions:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/metrics/MetricsOptions;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/ext/dropwizard/impl/VertxMetricsFactoryImpl;
public io.vertx.core.metrics.MetricsOptions newOptions(io.vertx.core.json.JsonObject);
descriptor: (Lio/vertx/core/json/JsonObject;)Lio/vertx/core/metrics/MetricsOptions;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 1
new io.vertx.ext.dropwizard.DropwizardMetricsOptions
dup
invokespecial io.vertx.ext.dropwizard.DropwizardMetricsOptions.<init>:()V
goto 2
StackMap locals:
StackMap stack:
1: new io.vertx.ext.dropwizard.DropwizardMetricsOptions
dup
aload 1
invokespecial io.vertx.ext.dropwizard.DropwizardMetricsOptions.<init>:(Lio/vertx/core/json/JsonObject;)V
StackMap locals:
StackMap stack: io.vertx.ext.dropwizard.DropwizardMetricsOptions
2: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/vertx/ext/dropwizard/impl/VertxMetricsFactoryImpl;
0 3 1 jsonObject Lio/vertx/core/json/JsonObject;
MethodParameters:
Name Flags
jsonObject
private static void lambda$0(io.vertx.ext.dropwizard.reporters.JmxReporter, java.lang.Void);
descriptor: (Lio/vertx/ext/dropwizard/reporters/JmxReporter;Ljava/lang/Void;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 1 0: aload 0
invokevirtual io.vertx.ext.dropwizard.reporters.JmxReporter.stop:()V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 v Ljava/lang/Void;
}
SourceFile: "VertxMetricsFactoryImpl.java"
InnerClasses:
public Builder = io.vertx.ext.dropwizard.reporters.JmxReporter$Builder of io.vertx.ext.dropwizard.reporters.JmxReporter
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles