class io.vertx.config.impl.spi.PropertiesConfigProcessor$HierarchicalPropertiesReader implements io.vertx.config.impl.spi.PropertiesConfigProcessor$PropertiesReader
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.vertx.config.impl.spi.PropertiesConfigProcessor$HierarchicalPropertiesReader
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader;
public io.vertx.core.json.JsonObject readAsJson(io.vertx.core.json.JsonObject, java.io.InputStream);
descriptor: (Lio/vertx/core/json/JsonObject;Ljava/io/InputStream;)Lio/vertx/core/json/JsonObject;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aconst_null
astore 3
aconst_null
astore 4
1: new java.io.BufferedReader
dup
new java.io.InputStreamReader
dup
aload 2
invokespecial java.io.InputStreamReader.<init>:(Ljava/io/InputStream;)V
invokespecial java.io.BufferedReader.<init>:(Ljava/io/Reader;)V
astore 5
start local 5 2: aload 5
invokevirtual java.io.BufferedReader.lines:()Ljava/util/stream/Stream;
astore 6
start local 6 3: aload 0
aload 6
invokevirtual io.vertx.config.impl.spi.PropertiesConfigProcessor$HierarchicalPropertiesReader.toJson:(Ljava/util/stream/Stream;)Lio/vertx/core/json/JsonObject;
4: aload 6
ifnull 5
aload 6
invokeinterface java.util.stream.Stream.close:()V
StackMap locals: io.vertx.config.impl.spi.PropertiesConfigProcessor$HierarchicalPropertiesReader io.vertx.core.json.JsonObject java.io.InputStream java.lang.Throwable java.lang.Throwable java.io.BufferedReader java.util.stream.Stream
StackMap stack: io.vertx.core.json.JsonObject
5: aload 5
ifnull 6
aload 5
invokevirtual java.io.BufferedReader.close:()V
6: StackMap locals:
StackMap stack: io.vertx.core.json.JsonObject
areturn
StackMap locals:
StackMap stack: java.lang.Throwable
7: astore 3
8: aload 6
ifnull 9
aload 6
invokeinterface java.util.stream.Stream.close:()V
end local 6 StackMap locals:
StackMap stack:
9: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
10: astore 4
aload 3
ifnonnull 11
aload 4
astore 3
goto 12
StackMap locals:
StackMap stack:
11: aload 3
aload 4
if_acmpeq 12
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
12: aload 5
ifnull 13
aload 5
invokevirtual java.io.BufferedReader.close:()V
end local 5 StackMap locals:
StackMap stack:
13: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 4
aload 3
ifnonnull 15
aload 4
astore 3
goto 16
StackMap locals:
StackMap stack:
15: aload 3
aload 4
if_acmpeq 16
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 3
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lio/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader;
0 17 1 configuration Lio/vertx/core/json/JsonObject;
0 17 2 byteStream Ljava/io/InputStream;
2 13 5 bufferedReader Ljava/io/BufferedReader;
3 9 6 stream Ljava/util/stream/Stream<Ljava/lang/String;>;
Exception table:
from to target type
3 4 7 any
2 5 10 any
7 10 10 any
1 6 14 any
7 14 14 any
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
configuration
byteStream
private io.vertx.core.json.JsonObject toJson(java.util.stream.Stream<java.lang.String>);
descriptor: (Ljava/util/stream/Stream;)Lio/vertx/core/json/JsonObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
1: invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
io/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader.lambda$0(Ljava/lang/String;)[Ljava/lang/String; (6)
(Ljava/lang/String;)[Ljava/lang/String;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
2: aload 0
invokedynamic apply(Lio/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader;)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/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader.lambda$1([Ljava/lang/String;)Lio/vertx/core/json/JsonObject; (7)
([Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
3: invokedynamic apply()Ljava/util/function/BinaryOperator;
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;)Ljava/lang/Object;
io/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader.lambda$2(Lio/vertx/core/json/JsonObject;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject; (6)
(Lio/vertx/core/json/JsonObject;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
invokeinterface java.util.stream.Stream.reduce:(Ljava/util/function/BinaryOperator;)Ljava/util/Optional;
4: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
invokevirtual java.util.Optional.orElse:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.vertx.core.json.JsonObject
5: areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader;
0 6 1 stream Ljava/util/stream/Stream<Ljava/lang/String;>;
Signature: (Ljava/util/stream/Stream<Ljava/lang/String;>;)Lio/vertx/core/json/JsonObject;
MethodParameters:
Name Flags
stream
private io.vertx.core.json.JsonObject toJson(java.util.List<java.lang.String>, );
descriptor: (Ljava/util/List;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface java.util.List.size:()I
ifne 1
new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
areturn
1: StackMap locals:
StackMap stack:
aload 1
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 3
2: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
aload 1
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
aload 2
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
areturn
3: StackMap locals:
StackMap stack:
aload 1
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
astore 3
start local 3 4: aload 0
aload 1
iconst_1
aload 1
invokeinterface java.util.List.size:()I
invokeinterface java.util.List.subList:(II)Ljava/util/List;
aload 2
invokevirtual io.vertx.config.impl.spi.PropertiesConfigProcessor$HierarchicalPropertiesReader.toJson:(Ljava/util/List;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
astore 4
start local 4 5: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
aload 3
aload 4
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader;
0 6 1 paths Ljava/util/List<Ljava/lang/String;>;
0 6 2 value Ljava/lang/Object;
4 6 3 path Ljava/lang/String;
5 6 4 jsonValue Lio/vertx/core/json/JsonObject;
Signature: (Ljava/util/List<Ljava/lang/String;>;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
MethodParameters:
Name Flags
paths
value
private java.lang.Object tryParse(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ldc ","
invokevirtual java.lang.String.contains:(Ljava/lang/CharSequence;)Z
ifeq 5
1: aload 1
ldc ","
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
invokestatic java.util.stream.Stream.of:([Ljava/lang/Object;)Ljava/util/stream/Stream;
2: aload 0
invokedynamic apply(Lio/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader;)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/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader.tryParse(Ljava/lang/String;)Ljava/lang/Object; (7)
(Ljava/lang/String;)Ljava/lang/Object;
invokeinterface java.util.stream.Stream.map:(Ljava/util/function/Function;)Ljava/util/stream/Stream;
3: invokestatic java.util.stream.Collectors.toList:()Ljava/util/stream/Collector;
invokedynamic apply()Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
io/vertx/core/json/JsonArray.<init>(Ljava/util/List;)V (8)
(Ljava/util/List;)Lio/vertx/core/json/JsonArray;
invokestatic java.util.stream.Collectors.collectingAndThen:(Ljava/util/stream/Collector;Ljava/util/function/Function;)Ljava/util/stream/Collector;
invokeinterface java.util.stream.Stream.collect:(Ljava/util/stream/Collector;)Ljava/lang/Object;
4: areturn
5: StackMap locals:
StackMap stack:
ldc "true"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 7
6: iconst_1
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
7: StackMap locals:
StackMap stack:
ldc "false"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
8: iconst_0
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
areturn
9: StackMap locals:
StackMap stack:
aload 1
ldc "^\\d+\\.\\d+$"
invokevirtual java.lang.String.matches:(Ljava/lang/String;)Z
ifeq 11
10: aload 1
invokestatic java.lang.Double.parseDouble:(Ljava/lang/String;)D
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
areturn
11: StackMap locals:
StackMap stack:
aload 1
ldc "^\\d+$"
invokevirtual java.lang.String.matches:(Ljava/lang/String;)Z
ifeq 13
12: aload 1
invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
areturn
13: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lio/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader;
0 14 1 raw Ljava/lang/String;
MethodParameters:
Name Flags
raw
private static java.lang.String[] lambda$0(java.lang.String);
descriptor: (Ljava/lang/String;)[Ljava/lang/String;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ldc "="
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 line Ljava/lang/String;
private io.vertx.core.json.JsonObject lambda$1(java.lang.String[]);
descriptor: ([Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
iconst_0
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
astore 2
start local 2 1: aload 0
aload 1
iconst_1
aaload
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokevirtual io.vertx.config.impl.spi.PropertiesConfigProcessor$HierarchicalPropertiesReader.tryParse:(Ljava/lang/String;)Ljava/lang/Object;
astore 3
start local 3 2: aload 2
ldc "\\."
invokevirtual java.lang.String.split:(Ljava/lang/String;)[Ljava/lang/String;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
astore 4
start local 4 3: aload 4
invokeinterface java.util.List.size:()I
iconst_1
if_icmpne 5
4: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
aload 2
aload 3
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
areturn
5: StackMap locals: java.lang.String java.lang.Object java.util.List
StackMap stack:
aload 0
aload 4
iconst_1
aload 4
invokeinterface java.util.List.size:()I
invokeinterface java.util.List.subList:(II)Ljava/util/List;
aload 3
invokevirtual io.vertx.config.impl.spi.PropertiesConfigProcessor$HierarchicalPropertiesReader.toJson:(Ljava/util/List;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
astore 5
start local 5 6: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
aload 4
iconst_0
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
aload 5
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
areturn
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 7 0 this Lio/vertx/config/impl/spi/PropertiesConfigProcessor$HierarchicalPropertiesReader;
0 7 1 raw [Ljava/lang/String;
1 7 2 property Ljava/lang/String;
2 7 3 value Ljava/lang/Object;
3 7 4 paths Ljava/util/List<Ljava/lang/String;>;
6 7 5 json Lio/vertx/core/json/JsonObject;
private static io.vertx.core.json.JsonObject lambda$2(io.vertx.core.json.JsonObject, io.vertx.core.json.JsonObject);
descriptor: (Lio/vertx/core/json/JsonObject;Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_1
invokevirtual io.vertx.core.json.JsonObject.mergeIn:(Lio/vertx/core/json/JsonObject;Z)Lio/vertx/core/json/JsonObject;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 json Lio/vertx/core/json/JsonObject;
0 1 1 other Lio/vertx/core/json/JsonObject;
}
SourceFile: "PropertiesConfigProcessor.java"
NestHost: io.vertx.config.impl.spi.PropertiesConfigProcessor
InnerClasses:
private HierarchicalPropertiesReader = io.vertx.config.impl.spi.PropertiesConfigProcessor$HierarchicalPropertiesReader of io.vertx.config.impl.spi.PropertiesConfigProcessor
private abstract PropertiesReader = io.vertx.config.impl.spi.PropertiesConfigProcessor$PropertiesReader of io.vertx.config.impl.spi.PropertiesConfigProcessor
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles