public class io.vertx.ext.auth.oauth2.impl.OAuth2API
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.vertx.ext.auth.oauth2.impl.OAuth2API
super_class: java.lang.Object
{
private static final io.vertx.core.impl.logging.Logger LOG;
descriptor: Lio/vertx/core/impl/logging/Logger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.regex.Pattern MAX_AGE;
descriptor: Ljava/util/regex/Pattern;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final io.vertx.core.http.HttpClient client;
descriptor: Lio/vertx/core/http/HttpClient;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final io.vertx.ext.auth.oauth2.OAuth2Options config;
descriptor: Lio/vertx/ext/auth/oauth2/OAuth2Options;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
invokestatic io.vertx.core.impl.logging.LoggerFactory.getLogger:(Ljava/lang/Class;)Lio/vertx/core/impl/logging/Logger;
putstatic io.vertx.ext.auth.oauth2.impl.OAuth2API.LOG:Lio/vertx/core/impl/logging/Logger;
1: ldc "max-age=\"?(\\d+)\"?"
invokestatic java.util.regex.Pattern.compile:(Ljava/lang/String;)Ljava/util/regex/Pattern;
putstatic io.vertx.ext.auth.oauth2.impl.OAuth2API.MAX_AGE:Ljava/util/regex/Pattern;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(io.vertx.core.Vertx, io.vertx.ext.auth.oauth2.OAuth2Options);
descriptor: (Lio/vertx/core/Vertx;Lio/vertx/ext/auth/oauth2/OAuth2Options;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 2
putfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
2: aload 0
aload 1
aload 2
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getHttpClientOptions:()Lio/vertx/core/http/HttpClientOptions;
invokeinterface io.vertx.core.Vertx.createHttpClient:(Lio/vertx/core/http/HttpClientOptions;)Lio/vertx/core/http/HttpClient;
putfield io.vertx.ext.auth.oauth2.impl.OAuth2API.client:Lio/vertx/core/http/HttpClient;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 4 1 vertx Lio/vertx/core/Vertx;
0 4 2 config Lio/vertx/ext/auth/oauth2/OAuth2Options;
MethodParameters:
Name Flags
vertx
config
public void jwkSet(io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>);
descriptor: (Lio/vertx/core/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 2
start local 2 1: aload 2
ldc "Accept"
ldc "application/jwk-set+json, application/json"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
2: aload 0
3: getstatic io.vertx.core.http.HttpMethod.GET:Lio/vertx/core/http/HttpMethod;
4: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getJwkPath:()Ljava/lang/String;
5: aload 2
6: aconst_null
7: aload 0
aload 1
invokedynamic handle(Lio/vertx/ext/auth/oauth2/impl/OAuth2API;Lio/vertx/core/Handler;)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/auth/oauth2/impl/OAuth2API.lambda$0(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
(Lio/vertx/core/AsyncResult;)V
8: invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.fetch:(Lio/vertx/core/http/HttpMethod;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 10 1 handler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonObject;>;>;
1 10 2 headers Lio/vertx/core/json/JsonObject;
Signature: (Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonObject;>;>;)V
MethodParameters:
Name Flags
handler
public java.lang.String authorizeURL(io.vertx.core.json.JsonObject);
descriptor: (Lio/vertx/core/json/JsonObject;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual io.vertx.core.json.JsonObject.copy:()Lio/vertx/core/json/JsonObject;
astore 2
start local 2 1: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getFlow:()Lio/vertx/ext/auth/oauth2/OAuth2FlowType;
getstatic io.vertx.ext.auth.oauth2.OAuth2FlowType.AUTH_CODE:Lio/vertx/ext/auth/oauth2/OAuth2FlowType;
if_acmpeq 3
2: new java.lang.IllegalStateException
dup
ldc "authorization URL cannot be computed for non AUTH_CODE flow"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
aload 2
ldc "scopes"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 6
4: aload 2
ldc "scope"
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getScopeSeparator:()Ljava/lang/String;
aload 2
ldc "scopes"
invokevirtual io.vertx.core.json.JsonObject.getJsonArray:(Ljava/lang/String;)Lio/vertx/core/json/JsonArray;
invokevirtual io.vertx.core.json.JsonArray.getList:()Ljava/util/List;
invokestatic java.lang.String.join:(Ljava/lang/CharSequence;Ljava/lang/Iterable;)Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
5: aload 2
ldc "scopes"
invokevirtual io.vertx.core.json.JsonObject.remove:(Ljava/lang/String;)Ljava/lang/Object;
pop
6: StackMap locals:
StackMap stack:
aload 2
ldc "response_type"
ldc "code"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
7: aload 2
ldc "client_id"
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientID:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
8: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getAuthorizationPath:()Ljava/lang/String;
astore 3
start local 3 9: aload 3
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 47
if_icmpne 10
new java.lang.StringBuilder
dup
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getSite:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 11
StackMap locals: java.lang.String
StackMap stack:
10: aload 3
StackMap locals:
StackMap stack: java.lang.String
11: astore 4
start local 4 12: new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 63
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 2
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.jsonToQuery:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/buffer/Buffer;
invokeinterface io.vertx.core.buffer.Buffer.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 13 1 params Lio/vertx/core/json/JsonObject;
1 13 2 query Lio/vertx/core/json/JsonObject;
9 13 3 path Ljava/lang/String;
12 13 4 url Ljava/lang/String;
MethodParameters:
Name Flags
params
public void token(java.lang.String, io.vertx.core.json.JsonObject, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>);
descriptor: (Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 3
1: aload 3
ldc "Token request requires a grantType other than null"
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 4
start local 4 4: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientID:()Ljava/lang/String;
ifnull 5
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecret:()Ljava/lang/String;
ifnull 5
iconst_1
goto 6
StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 5
start local 5 7: iload 5
ifeq 10
8: new java.lang.StringBuilder
dup
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientID:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecret:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 9: aload 4
ldc "Authorization"
new java.lang.StringBuilder
dup
ldc "Basic "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
invokestatic java.util.Base64.getEncoder:()Ljava/util/Base64$Encoder;
aload 6
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
invokevirtual java.util.Base64$Encoder.encodeToString:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
end local 6 10: StackMap locals: int
StackMap stack:
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getHeaders:()Lio/vertx/core/json/JsonObject;
astore 6
start local 6 11: aload 6
ifnull 13
12: aload 4
aload 6
invokevirtual io.vertx.core.json.JsonObject.mergeIn:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
pop
13: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
aload 2
invokevirtual io.vertx.core.json.JsonObject.copy:()Lio/vertx/core/json/JsonObject;
astore 7
start local 7 14: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getExtraParameters:()Lio/vertx/core/json/JsonObject;
ifnull 16
15: aload 7
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getExtraParameters:()Lio/vertx/core/json/JsonObject;
invokevirtual io.vertx.core.json.JsonObject.mergeIn:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
pop
16: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
aload 7
ldc "grant_type"
aload 1
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
17: iload 5
ifne 19
18: aload 7
ldc "client_id"
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientID:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
19: StackMap locals:
StackMap stack:
aload 4
ldc "Content-Type"
ldc "application/x-www-form-urlencoded"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
20: aload 7
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.jsonToQuery:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/buffer/Buffer;
astore 8
start local 8 21: aload 4
ldc "Accept"
ldc "application/json,application/x-www-form-urlencoded;q=0.9"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
22: aload 0
23: getstatic io.vertx.core.http.HttpMethod.POST:Lio/vertx/core/http/HttpMethod;
24: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getTokenPath:()Ljava/lang/String;
25: aload 4
26: aload 8
27: aload 0
aload 3
invokedynamic handle(Lio/vertx/ext/auth/oauth2/impl/OAuth2API;Lio/vertx/core/Handler;)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/auth/oauth2/impl/OAuth2API.lambda$1(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
(Lio/vertx/core/AsyncResult;)V
28: invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.fetch:(Lio/vertx/core/http/HttpMethod;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
29: return
end local 8 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 30 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 30 1 grantType Ljava/lang/String;
0 30 2 params Lio/vertx/core/json/JsonObject;
0 30 3 handler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonObject;>;>;
4 30 4 headers Lio/vertx/core/json/JsonObject;
7 30 5 confidentialClient Z
9 10 6 basic Ljava/lang/String;
11 30 6 tmp Lio/vertx/core/json/JsonObject;
14 30 7 form Lio/vertx/core/json/JsonObject;
21 30 8 payload Lio/vertx/core/buffer/Buffer;
Signature: (Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonObject;>;>;)V
MethodParameters:
Name Flags
grantType
params
handler
public void tokenIntrospection(java.lang.String, java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>);
descriptor: (Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 4
start local 4 1: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientID:()Ljava/lang/String;
ifnull 2
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecret:()Ljava/lang/String;
ifnull 2
iconst_1
goto 3
StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
2: iconst_0
StackMap locals:
StackMap stack: int
3: istore 5
start local 5 4: iload 5
ifeq 7
5: new java.lang.StringBuilder
dup
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientID:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecret:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 6: aload 4
ldc "Authorization"
new java.lang.StringBuilder
dup
ldc "Basic "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
invokestatic java.util.Base64.getEncoder:()Ljava/util/Base64$Encoder;
aload 6
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
invokevirtual java.util.Base64$Encoder.encodeToString:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
end local 6 7: StackMap locals: int
StackMap stack:
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getHeaders:()Lio/vertx/core/json/JsonObject;
astore 6
start local 6 8: aload 6
ifnull 10
9: aload 4
aload 6
invokevirtual io.vertx.core.json.JsonObject.mergeIn:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
pop
10: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
11: ldc "token"
aload 2
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
12: ldc "token_type_hint"
aload 1
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
13: astore 7
start local 7 14: aload 4
ldc "Content-Type"
ldc "application/x-www-form-urlencoded"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
15: aload 7
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.jsonToQuery:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/buffer/Buffer;
astore 8
start local 8 16: aload 4
ldc "Accept"
ldc "application/json,application/x-www-form-urlencoded;q=0.9"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
17: aload 0
18: getstatic io.vertx.core.http.HttpMethod.POST:Lio/vertx/core/http/HttpMethod;
19: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getIntrospectionPath:()Ljava/lang/String;
20: aload 4
21: aload 8
22: aload 0
aload 3
invokedynamic handle(Lio/vertx/ext/auth/oauth2/impl/OAuth2API;Lio/vertx/core/Handler;)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/auth/oauth2/impl/OAuth2API.lambda$2(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (7)
(Lio/vertx/core/AsyncResult;)V
23: invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.fetch:(Lio/vertx/core/http/HttpMethod;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
24: return
end local 8 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 25 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 25 1 tokenType Ljava/lang/String;
0 25 2 token Ljava/lang/String;
0 25 3 handler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonObject;>;>;
1 25 4 headers Lio/vertx/core/json/JsonObject;
4 25 5 confidentialClient Z
6 7 6 basic Ljava/lang/String;
8 25 6 tmp Lio/vertx/core/json/JsonObject;
14 25 7 form Lio/vertx/core/json/JsonObject;
16 25 8 payload Lio/vertx/core/buffer/Buffer;
Signature: (Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonObject;>;>;)V
MethodParameters:
Name Flags
tokenType
token
handler
public void tokenRevocation(java.lang.String, java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
descriptor: (Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 2
ifnonnull 3
1: aload 3
ldc "Cannot revoke null token"
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 4
start local 4 4: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientID:()Ljava/lang/String;
ifnull 5
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecret:()Ljava/lang/String;
ifnull 5
iconst_1
goto 6
StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 5
start local 5 7: iload 5
ifeq 10
8: new java.lang.StringBuilder
dup
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientID:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ":"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecret:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
start local 6 9: aload 4
ldc "Authorization"
new java.lang.StringBuilder
dup
ldc "Basic "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
invokestatic java.util.Base64.getEncoder:()Ljava/util/Base64$Encoder;
aload 6
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
invokevirtual java.util.Base64$Encoder.encodeToString:([B)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
end local 6 10: StackMap locals: int
StackMap stack:
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getHeaders:()Lio/vertx/core/json/JsonObject;
astore 6
start local 6 11: aload 6
ifnull 13
12: aload 4
aload 6
invokevirtual io.vertx.core.json.JsonObject.mergeIn:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
pop
13: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 7
start local 7 14: aload 7
15: ldc "token"
aload 2
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
16: ldc "token_type_hint"
aload 1
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
17: aload 4
ldc "Content-Type"
ldc "application/x-www-form-urlencoded"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
18: aload 7
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.jsonToQuery:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/buffer/Buffer;
astore 8
start local 8 19: aload 4
ldc "Accept"
ldc "application/json,application/x-www-form-urlencoded;q=0.9"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
20: aload 0
21: getstatic io.vertx.core.http.HttpMethod.POST:Lio/vertx/core/http/HttpMethod;
22: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getRevocationPath:()Ljava/lang/String;
23: aload 4
24: aload 8
25: aload 3
invokedynamic handle(Lio/vertx/core/Handler;)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/auth/oauth2/impl/OAuth2API.lambda$3(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
26: invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.fetch:(Lio/vertx/core/http/HttpMethod;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
27: return
end local 8 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 28 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 28 1 tokenType Ljava/lang/String;
0 28 2 token Ljava/lang/String;
0 28 3 handler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
4 28 4 headers Lio/vertx/core/json/JsonObject;
7 28 5 confidentialClient Z
9 10 6 basic Ljava/lang/String;
11 28 6 tmp Lio/vertx/core/json/JsonObject;
14 28 7 form Lio/vertx/core/json/JsonObject;
19 28 8 payload Lio/vertx/core/buffer/Buffer;
Signature: (Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
MethodParameters:
Name Flags
tokenType
token
handler
public void userInfo(java.lang.String, io.vertx.ext.auth.impl.jose.JWT, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.core.json.JsonObject>>);
descriptor: (Ljava/lang/String;Lio/vertx/ext/auth/impl/jose/JWT;Lio/vertx/core/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 4
start local 4 1: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getUserInfoParameters:()Lio/vertx/core/json/JsonObject;
astore 5
start local 5 2: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getUserInfoPath:()Ljava/lang/String;
astore 6
start local 6 3: aload 6
ifnonnull 6
4: aload 3
ldc "userInfo path is not configured"
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
5: return
6: StackMap locals: io.vertx.core.json.JsonObject io.vertx.core.json.JsonObject java.lang.String
StackMap stack:
aload 5
ifnull 8
7: new java.lang.StringBuilder
dup
aload 6
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "?"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.jsonToQuery:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/buffer/Buffer;
invokeinterface io.vertx.core.buffer.Buffer.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 6
8: StackMap locals:
StackMap stack:
aload 4
ldc "Authorization"
new java.lang.StringBuilder
dup
ldc "Bearer "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
9: aload 4
ldc "Accept"
ldc "application/json,application/jwt,application/x-www-form-urlencoded;q=0.9"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
10: aload 0
11: getstatic io.vertx.core.http.HttpMethod.GET:Lio/vertx/core/http/HttpMethod;
12: aload 6
13: aload 4
14: aconst_null
15: aload 0
aload 3
aload 2
invokedynamic handle(Lio/vertx/ext/auth/oauth2/impl/OAuth2API;Lio/vertx/core/Handler;Lio/vertx/ext/auth/impl/jose/JWT;)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/auth/oauth2/impl/OAuth2API.lambda$4(Lio/vertx/core/Handler;Lio/vertx/ext/auth/impl/jose/JWT;Lio/vertx/core/AsyncResult;)V (7)
(Lio/vertx/core/AsyncResult;)V
16: invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.fetch:(Lio/vertx/core/http/HttpMethod;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
17: return
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 18 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 18 1 accessToken Ljava/lang/String;
0 18 2 jwt Lio/vertx/ext/auth/impl/jose/JWT;
0 18 3 handler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonObject;>;>;
1 18 4 headers Lio/vertx/core/json/JsonObject;
2 18 5 extraParams Lio/vertx/core/json/JsonObject;
3 18 6 path Ljava/lang/String;
Signature: (Ljava/lang/String;Lio/vertx/ext/auth/impl/jose/JWT;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/json/JsonObject;>;>;)V
MethodParameters:
Name Flags
accessToken
jwt
handler
public java.lang.String endSessionURL(java.lang.String, io.vertx.core.json.JsonObject);
descriptor: (Ljava/lang/String;Lio/vertx/core/json/JsonObject;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getLogoutPath:()Ljava/lang/String;
astore 3
start local 3 1: aload 3
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: java.lang.String
StackMap stack:
aload 2
invokevirtual io.vertx.core.json.JsonObject.copy:()Lio/vertx/core/json/JsonObject;
astore 4
start local 4 4: aload 1
ifnull 6
5: aload 4
ldc "id_token_hint"
aload 1
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
6: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
aload 3
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 47
if_icmpne 7
new java.lang.StringBuilder
dup
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getSite:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 8
StackMap locals:
StackMap stack:
7: aload 3
StackMap locals:
StackMap stack: java.lang.String
8: astore 5
start local 5 9: new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
bipush 63
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
aload 4
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.jsonToQuery:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/buffer/Buffer;
invokeinterface io.vertx.core.buffer.Buffer.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
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 10 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 10 1 idToken Ljava/lang/String;
0 10 2 params Lio/vertx/core/json/JsonObject;
1 10 3 path Ljava/lang/String;
4 10 4 query Lio/vertx/core/json/JsonObject;
9 10 5 url Ljava/lang/String;
MethodParameters:
Name Flags
idToken
params
public void logout(java.lang.String, java.lang.String, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
descriptor: (Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 4
start local 4 1: aload 4
ldc "Authorization"
new java.lang.StringBuilder
dup
ldc "Bearer "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
2: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getHeaders:()Lio/vertx/core/json/JsonObject;
astore 5
start local 5 3: aload 5
ifnull 5
4: aload 4
aload 5
invokevirtual io.vertx.core.json.JsonObject.mergeIn:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/json/JsonObject;
pop
5: StackMap locals: io.vertx.core.json.JsonObject io.vertx.core.json.JsonObject
StackMap stack:
new io.vertx.core.json.JsonObject
dup
invokespecial io.vertx.core.json.JsonObject.<init>:()V
astore 6
start local 6 6: aload 6
ldc "client_id"
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientID:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
7: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecretParameterName:()Ljava/lang/String;
ifnull 9
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecret:()Ljava/lang/String;
ifnull 9
8: aload 6
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecretParameterName:()Ljava/lang/String;
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getClientSecret:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
9: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
aload 2
ifnull 11
10: aload 6
ldc "refresh_token"
aload 2
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
11: StackMap locals:
StackMap stack:
aload 4
ldc "Content-Type"
ldc "application/x-www-form-urlencoded"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
12: aload 6
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.jsonToQuery:(Lio/vertx/core/json/JsonObject;)Lio/vertx/core/buffer/Buffer;
astore 7
start local 7 13: aload 4
ldc "Accept"
ldc "application/json,application/x-www-form-urlencoded;q=0.9"
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
14: aload 0
15: getstatic io.vertx.core.http.HttpMethod.POST:Lio/vertx/core/http/HttpMethod;
16: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getLogoutPath:()Ljava/lang/String;
17: aload 4
18: aload 7
19: aload 3
invokedynamic handle(Lio/vertx/core/Handler;)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/auth/oauth2/impl/OAuth2API.lambda$5(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
20: invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.fetch:(Lio/vertx/core/http/HttpMethod;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
21: return
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 22 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 22 1 accessToken Ljava/lang/String;
0 22 2 refreshToken Ljava/lang/String;
0 22 3 callback Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
1 22 4 headers Lio/vertx/core/json/JsonObject;
3 22 5 tmp Lio/vertx/core/json/JsonObject;
6 22 6 form Lio/vertx/core/json/JsonObject;
13 22 7 payload Lio/vertx/core/buffer/Buffer;
Signature: (Ljava/lang/String;Ljava/lang/String;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
MethodParameters:
Name Flags
accessToken
refreshToken
callback
private java.lang.String (io.vertx.core.json.JsonObject);
descriptor: (Lio/vertx/core/json/JsonObject;)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
ldc "error"
invokevirtual io.vertx.core.json.JsonObject.getValue:(Ljava/lang/String;)Ljava/lang/Object;
astore 3
start local 3 1: aload 3
instanceof io.vertx.core.json.JsonObject
ifeq 4
2: aload 3
checkcast io.vertx.core.json.JsonObject
ldc "message"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 3: goto 8
end local 2 4: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.json.JsonObject top java.lang.Object
StackMap stack:
aload 1
ldc "error_description"
aload 1
ldc "error"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 5: goto 8
end local 2 StackMap locals:
StackMap stack: java.lang.RuntimeException
6: pop
7: aload 3
invokevirtual java.lang.Object.toString:()Ljava/lang/String;
astore 2
start local 2 8: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.json.JsonObject java.lang.String java.lang.Object
StackMap stack:
aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 9 1 json Lio/vertx/core/json/JsonObject;
3 4 2 description Ljava/lang/String;
5 6 2 description Ljava/lang/String;
8 9 2 description Ljava/lang/String;
1 9 3 error Ljava/lang/Object;
Exception table:
from to target type
4 5 6 Class java.lang.RuntimeException
MethodParameters:
Name Flags
json
public void fetch(io.vertx.core.http.HttpMethod, java.lang.String, io.vertx.core.json.JsonObject, io.vertx.core.buffer.Buffer, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.ext.auth.oauth2.impl.OAuth2Response>>);
descriptor: (Lio/vertx/core/http/HttpMethod;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=11, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 2
ifnull 1
aload 2
invokevirtual java.lang.String.length:()I
ifne 3
1: StackMap locals:
StackMap stack:
aload 5
ldc "Invalid path"
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
aload 2
iconst_0
invokevirtual java.lang.String.charAt:(I)C
bipush 47
if_icmpne 4
new java.lang.StringBuilder
dup
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getSite:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
goto 5
StackMap locals:
StackMap stack:
4: aload 2
StackMap locals:
StackMap stack: java.lang.String
5: astore 6
start local 6 6: getstatic io.vertx.ext.auth.oauth2.impl.OAuth2API.LOG:Lio/vertx/core/impl/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Fetching URL: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.vertx.core.impl.logging.Logger.debug:(Ljava/lang/Object;)V
7: new io.vertx.core.http.RequestOptions
dup
invokespecial io.vertx.core.http.RequestOptions.<init>:()V
aload 1
invokevirtual io.vertx.core.http.RequestOptions.setMethod:(Lio/vertx/core/http/HttpMethod;)Lio/vertx/core/http/RequestOptions;
aload 6
invokevirtual io.vertx.core.http.RequestOptions.setAbsoluteURI:(Ljava/lang/String;)Lio/vertx/core/http/RequestOptions;
astore 7
start local 7 8: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getHeaders:()Lio/vertx/core/json/JsonObject;
astore 8
start local 8 9: aload 8
ifnull 14
10: aload 8
invokevirtual io.vertx.core.json.JsonObject.iterator:()Ljava/util/Iterator;
astore 10
goto 13
StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.http.HttpMethod java.lang.String io.vertx.core.json.JsonObject io.vertx.core.buffer.Buffer io.vertx.core.Handler java.lang.String io.vertx.core.http.RequestOptions io.vertx.core.json.JsonObject top java.util.Iterator
StackMap stack:
11: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 9
start local 9 12: aload 7
aload 9
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
aload 9
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual io.vertx.core.http.RequestOptions.addHeader:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/http/RequestOptions;
pop
end local 9 13: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 11
14: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.http.HttpMethod java.lang.String io.vertx.core.json.JsonObject io.vertx.core.buffer.Buffer io.vertx.core.Handler java.lang.String io.vertx.core.http.RequestOptions io.vertx.core.json.JsonObject
StackMap stack:
aload 3
ifnull 19
15: aload 3
invokevirtual io.vertx.core.json.JsonObject.iterator:()Ljava/util/Iterator;
astore 10
goto 18
StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.http.HttpMethod java.lang.String io.vertx.core.json.JsonObject io.vertx.core.buffer.Buffer io.vertx.core.Handler java.lang.String io.vertx.core.http.RequestOptions io.vertx.core.json.JsonObject top java.util.Iterator
StackMap stack:
16: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.util.Map$Entry
astore 9
start local 9 17: aload 7
aload 9
invokeinterface java.util.Map$Entry.getKey:()Ljava/lang/Object;
checkcast java.lang.String
aload 9
invokeinterface java.util.Map$Entry.getValue:()Ljava/lang/Object;
checkcast java.lang.String
invokevirtual io.vertx.core.http.RequestOptions.addHeader:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/http/RequestOptions;
pop
end local 9 18: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 16
19: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.http.HttpMethod java.lang.String io.vertx.core.json.JsonObject io.vertx.core.buffer.Buffer io.vertx.core.Handler java.lang.String io.vertx.core.http.RequestOptions io.vertx.core.json.JsonObject
StackMap stack:
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getUserAgent:()Ljava/lang/String;
ifnull 21
20: aload 7
ldc "User-Agent"
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getUserAgent:()Ljava/lang/String;
invokevirtual io.vertx.core.http.RequestOptions.addHeader:(Ljava/lang/String;Ljava/lang/String;)Lio/vertx/core/http/RequestOptions;
pop
21: StackMap locals:
StackMap stack:
aload 1
getstatic io.vertx.core.http.HttpMethod.POST:Lio/vertx/core/http/HttpMethod;
if_acmpeq 23
aload 1
getstatic io.vertx.core.http.HttpMethod.PATCH:Lio/vertx/core/http/HttpMethod;
if_acmpeq 23
aload 1
getstatic io.vertx.core.http.HttpMethod.PUT:Lio/vertx/core/http/HttpMethod;
if_acmpeq 23
22: aconst_null
astore 4
23: StackMap locals:
StackMap stack:
aload 0
aload 7
aload 4
aload 5
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.makeRequest:(Lio/vertx/core/http/RequestOptions;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
24: return
end local 8 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 25 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 25 1 method Lio/vertx/core/http/HttpMethod;
0 25 2 path Ljava/lang/String;
0 25 3 headers Lio/vertx/core/json/JsonObject;
0 25 4 payload Lio/vertx/core/buffer/Buffer;
0 25 5 callback Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;>;
6 25 6 url Ljava/lang/String;
8 25 7 options Lio/vertx/core/http/RequestOptions;
9 25 8 tmp Lio/vertx/core/json/JsonObject;
12 13 9 kv Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;
17 18 9 kv Ljava/util/Map$Entry<Ljava/lang/String;Ljava/lang/Object;>;
Signature: (Lio/vertx/core/http/HttpMethod;Ljava/lang/String;Lio/vertx/core/json/JsonObject;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;>;)V
MethodParameters:
Name Flags
method
path
headers
payload
callback
private void makeRequest(io.vertx.core.http.RequestOptions, io.vertx.core.buffer.Buffer, io.vertx.core.Handler<io.vertx.core.AsyncResult<io.vertx.ext.auth.oauth2.impl.OAuth2Response>>);
descriptor: (Lio/vertx/core/http/RequestOptions;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.client:Lio/vertx/core/http/HttpClient;
aload 1
aload 3
aload 2
invokedynamic handle(Lio/vertx/core/Handler;Lio/vertx/core/buffer/Buffer;)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/auth/oauth2/impl/OAuth2API.lambda$6(Lio/vertx/core/Handler;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
invokeinterface io.vertx.core.http.HttpClient.request:(Lio/vertx/core/http/RequestOptions;Lio/vertx/core/Handler;)V
1: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 2 1 options Lio/vertx/core/http/RequestOptions;
0 2 2 payload Lio/vertx/core/buffer/Buffer;
0 2 3 callback Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;>;
Signature: (Lio/vertx/core/http/RequestOptions;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;>;)V
MethodParameters:
Name Flags
options
payload
callback final
public static void processNonStandardHeaders(io.vertx.core.json.JsonObject, io.vertx.ext.auth.oauth2.impl.OAuth2Response, java.lang.String);
descriptor: (Lio/vertx/core/json/JsonObject;Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 1
ldc "X-OAuth-Scopes"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.getHeader:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 1: aload 1
ldc "X-Accepted-OAuth-Scopes"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.getHeader:(Ljava/lang/String;)Ljava/lang/String;
astore 4
start local 4 2: aload 3
ifnull 8
3: getstatic io.vertx.ext.auth.oauth2.impl.OAuth2API.LOG:Lio/vertx/core/impl/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Received non-standard X-OAuth-Scopes: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.vertx.core.impl.logging.Logger.trace:(Ljava/lang/Object;)V
4: aload 0
ldc "scope"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 7
5: aload 0
ldc "scope"
new java.lang.StringBuilder
dup
aload 0
ldc "scope"
invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;)Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
6: goto 8
7: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 0
ldc "scope"
aload 3
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
8: StackMap locals:
StackMap stack:
aload 4
ifnull 11
9: getstatic io.vertx.ext.auth.oauth2.impl.OAuth2API.LOG:Lio/vertx/core/impl/logging/Logger;
new java.lang.StringBuilder
dup
ldc "Received non-standard X-Accepted-OAuth-Scopes: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface io.vertx.core.impl.logging.Logger.trace:(Ljava/lang/Object;)V
10: aload 0
ldc "acceptedScopes"
aload 4
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
11: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 json Lio/vertx/core/json/JsonObject;
0 12 1 reply Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;
0 12 2 sep Ljava/lang/String;
1 12 3 xOAuthScopes Ljava/lang/String;
2 12 4 xAcceptedOAuthScopes Ljava/lang/String;
MethodParameters:
Name Flags
json
reply
sep
private void lambda$0(io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=9, args_size=3
start local 0 start local 2 0: aload 2
invokeinterface io.vertx.core.AsyncResult.failed:()Z
ifeq 3
1: aload 1
aload 2
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
aload 2
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.ext.auth.oauth2.impl.OAuth2Response
astore 3
start local 3 4: aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
ifnull 5
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokeinterface io.vertx.core.buffer.Buffer.length:()I
ifne 7
5: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2Response
StackMap stack:
aload 1
ldc "No Body"
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
6: return
7: StackMap locals:
StackMap stack:
aload 3
ldc "application/jwk-set+json"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifne 8
aload 3
ldc "application/json"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifeq 13
8: StackMap locals:
StackMap stack:
new io.vertx.core.json.JsonObject
dup
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokespecial io.vertx.core.json.JsonObject.<init>:(Lio/vertx/core/buffer/Buffer;)V
astore 4
start local 4 9: goto 15
end local 4 StackMap locals:
StackMap stack: java.lang.RuntimeException
10: astore 5
start local 5 11: aload 1
aload 5
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
12: return
end local 5 13: StackMap locals:
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
ldc "Cannot handle content type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.headers:()Lio/vertx/core/MultiMap;
ldc "Content-Type"
invokeinterface io.vertx.core.MultiMap.get:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
14: return
start local 4 15: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
aload 4
ldc "error"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 18
16: aload 1
aload 0
aload 4
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.extractErrorDescription:(Lio/vertx/core/json/JsonObject;)Ljava/lang/String;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
17: goto 33
18: StackMap locals:
StackMap stack:
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.headers:()Lio/vertx/core/MultiMap;
getstatic io.vertx.core.http.HttpHeaders.CACHE_CONTROL:Ljava/lang/CharSequence;
invokeinterface io.vertx.core.MultiMap.getAll:(Ljava/lang/CharSequence;)Ljava/util/List;
astore 5
start local 5 19: aload 5
ifnull 29
20: aload 5
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 7
goto 28
StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.Handler io.vertx.core.AsyncResult io.vertx.ext.auth.oauth2.impl.OAuth2Response io.vertx.core.json.JsonObject java.util.List top java.util.Iterator
StackMap stack:
21: aload 7
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 6
start local 6 22: aload 6
invokevirtual java.lang.String.length:()I
bipush 8
if_icmple 28
23: getstatic io.vertx.ext.auth.oauth2.impl.OAuth2API.MAX_AGE:Ljava/util/regex/Pattern;
aload 6
invokevirtual java.util.regex.Pattern.matcher:(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;
astore 8
start local 8 24: aload 8
invokevirtual java.util.regex.Matcher.find:()Z
ifeq 28
25: aload 4
ldc "maxAge"
aload 8
iconst_1
invokevirtual java.util.regex.Matcher.group:(I)Ljava/lang/String;
invokestatic java.lang.Long.valueOf:(Ljava/lang/String;)Ljava/lang/Long;
invokevirtual io.vertx.core.json.JsonObject.put:(Ljava/lang/String;Ljava/lang/Object;)Lio/vertx/core/json/JsonObject;
pop
26: goto 29
27: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.Handler io.vertx.core.AsyncResult io.vertx.ext.auth.oauth2.impl.OAuth2Response io.vertx.core.json.JsonObject java.util.List java.lang.String java.util.Iterator java.util.regex.Matcher
StackMap stack: java.lang.RuntimeException
pop
end local 8 end local 6 28: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.Handler io.vertx.core.AsyncResult io.vertx.ext.auth.oauth2.impl.OAuth2Response io.vertx.core.json.JsonObject java.util.List top java.util.Iterator
StackMap stack:
aload 7
invokeinterface java.util.Iterator.hasNext:()Z
ifne 21
29: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.Handler io.vertx.core.AsyncResult io.vertx.ext.auth.oauth2.impl.OAuth2Response io.vertx.core.json.JsonObject java.util.List
StackMap stack:
aload 1
aload 4
invokestatic io.vertx.core.Future.succeededFuture:(Ljava/lang/Object;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
end local 5 30: goto 33
StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.Handler io.vertx.core.AsyncResult io.vertx.ext.auth.oauth2.impl.OAuth2Response io.vertx.core.json.JsonObject
StackMap stack: java.lang.RuntimeException
31: astore 5
start local 5 32: aload 1
aload 5
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
end local 5 end local 4 end local 3 33: StackMap locals:
StackMap stack:
return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 34 2 res Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;
4 33 3 reply Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;
9 10 4 json Lio/vertx/core/json/JsonObject;
15 33 4 json Lio/vertx/core/json/JsonObject;
11 13 5 e Ljava/lang/RuntimeException;
19 30 5 cacheControl Ljava/util/List<Ljava/lang/String;>;
22 28 6 header Ljava/lang/String;
24 28 8 match Ljava/util/regex/Matcher;
32 33 5 e Ljava/lang/RuntimeException;
Exception table:
from to target type
8 9 10 Class java.lang.RuntimeException
25 26 27 Class java.lang.RuntimeException
15 30 31 Class java.lang.RuntimeException
private void lambda$1(io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 2 0: aload 2
invokeinterface io.vertx.core.AsyncResult.failed:()Z
ifeq 3
1: aload 1
aload 2
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
aload 2
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.ext.auth.oauth2.impl.OAuth2Response
astore 3
start local 3 4: aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
ifnull 5
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokeinterface io.vertx.core.buffer.Buffer.length:()I
ifne 7
5: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2Response
StackMap stack:
aload 1
ldc "No Body"
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
6: return
7: StackMap locals:
StackMap stack:
aload 3
ldc "application/json"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifeq 13
8: new io.vertx.core.json.JsonObject
dup
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokespecial io.vertx.core.json.JsonObject.<init>:(Lio/vertx/core/buffer/Buffer;)V
astore 4
start local 4 9: goto 21
end local 4 StackMap locals:
StackMap stack: java.lang.RuntimeException
10: astore 5
start local 5 11: aload 1
aload 5
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
12: return
end local 5 13: StackMap locals:
StackMap stack:
aload 3
ldc "application/x-www-form-urlencoded"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifne 14
aload 3
ldc "text/plain"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifeq 19
14: StackMap locals:
StackMap stack:
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.queryToJson:(Lio/vertx/core/buffer/Buffer;)Lio/vertx/core/json/JsonObject;
astore 4
start local 4 15: goto 21
end local 4 StackMap locals:
StackMap stack: java.lang.Exception
16: astore 5
start local 5 17: aload 1
aload 5
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
18: return
end local 5 19: StackMap locals:
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
ldc "Cannot handle content type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.headers:()Lio/vertx/core/MultiMap;
ldc "Content-Type"
invokeinterface io.vertx.core.MultiMap.get:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
20: return
start local 4 21: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
aload 4
ldc "error"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 24
22: aload 1
aload 0
aload 4
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.extractErrorDescription:(Lio/vertx/core/json/JsonObject;)Ljava/lang/String;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
23: goto 29
24: StackMap locals:
StackMap stack:
aload 4
aload 3
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getScopeSeparator:()Ljava/lang/String;
invokestatic io.vertx.ext.auth.oauth2.impl.OAuth2API.processNonStandardHeaders:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;Ljava/lang/String;)V
25: aload 1
aload 4
invokestatic io.vertx.core.Future.succeededFuture:(Ljava/lang/Object;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
26: goto 29
StackMap locals:
StackMap stack: java.lang.RuntimeException
27: astore 5
start local 5 28: aload 1
aload 5
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
end local 5 end local 4 end local 3 29: StackMap locals:
StackMap stack:
return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 30 2 res Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;
4 29 3 reply Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;
9 10 4 json Lio/vertx/core/json/JsonObject;
15 16 4 json Lio/vertx/core/json/JsonObject;
21 29 4 json Lio/vertx/core/json/JsonObject;
11 13 5 e Ljava/lang/RuntimeException;
17 19 5 e Ljava/lang/Exception;
28 29 5 e Ljava/lang/RuntimeException;
Exception table:
from to target type
8 9 10 Class java.lang.RuntimeException
14 15 16 Class java.io.UnsupportedEncodingException
14 15 16 Class java.lang.RuntimeException
21 26 27 Class java.lang.RuntimeException
private void lambda$2(io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 2 0: aload 2
invokeinterface io.vertx.core.AsyncResult.failed:()Z
ifeq 3
1: aload 1
aload 2
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
aload 2
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.ext.auth.oauth2.impl.OAuth2Response
astore 3
start local 3 4: aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
ifnull 5
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokeinterface io.vertx.core.buffer.Buffer.length:()I
ifne 7
5: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2Response
StackMap stack:
aload 1
ldc "No Body"
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
6: return
7: StackMap locals:
StackMap stack:
aload 3
ldc "application/json"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifeq 13
8: new io.vertx.core.json.JsonObject
dup
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokespecial io.vertx.core.json.JsonObject.<init>:(Lio/vertx/core/buffer/Buffer;)V
astore 4
start local 4 9: goto 21
end local 4 StackMap locals:
StackMap stack: java.lang.RuntimeException
10: astore 5
start local 5 11: aload 1
aload 5
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
12: return
end local 5 13: StackMap locals:
StackMap stack:
aload 3
ldc "application/x-www-form-urlencoded"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifne 14
aload 3
ldc "text/plain"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifeq 19
14: StackMap locals:
StackMap stack:
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.queryToJson:(Lio/vertx/core/buffer/Buffer;)Lio/vertx/core/json/JsonObject;
astore 4
start local 4 15: goto 21
end local 4 StackMap locals:
StackMap stack: java.lang.Exception
16: astore 5
start local 5 17: aload 1
aload 5
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
18: return
end local 5 19: StackMap locals:
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
ldc "Cannot handle accessToken type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.headers:()Lio/vertx/core/MultiMap;
ldc "Content-Type"
invokeinterface io.vertx.core.MultiMap.get:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
20: return
start local 4 21: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
aload 4
ldc "error"
invokevirtual io.vertx.core.json.JsonObject.containsKey:(Ljava/lang/String;)Z
ifeq 24
22: aload 1
aload 0
aload 4
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2API.extractErrorDescription:(Lio/vertx/core/json/JsonObject;)Ljava/lang/String;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
23: goto 29
24: StackMap locals:
StackMap stack:
aload 4
aload 3
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getScopeSeparator:()Ljava/lang/String;
invokestatic io.vertx.ext.auth.oauth2.impl.OAuth2API.processNonStandardHeaders:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;Ljava/lang/String;)V
25: aload 1
aload 4
invokestatic io.vertx.core.Future.succeededFuture:(Ljava/lang/Object;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
26: goto 29
StackMap locals:
StackMap stack: java.lang.RuntimeException
27: astore 5
start local 5 28: aload 1
aload 5
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
end local 5 end local 4 end local 3 29: StackMap locals:
StackMap stack:
return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 30 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 30 2 res Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;
4 29 3 reply Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;
9 10 4 json Lio/vertx/core/json/JsonObject;
15 16 4 json Lio/vertx/core/json/JsonObject;
21 29 4 json Lio/vertx/core/json/JsonObject;
11 13 5 e Ljava/lang/RuntimeException;
17 19 5 e Ljava/lang/Exception;
28 29 5 e Ljava/lang/RuntimeException;
Exception table:
from to target type
8 9 10 Class java.lang.RuntimeException
14 15 16 Class java.io.UnsupportedEncodingException
14 15 16 Class java.lang.RuntimeException
21 26 27 Class java.lang.RuntimeException
private static void lambda$3(io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=2
start local 1 0: aload 1
invokeinterface io.vertx.core.AsyncResult.failed:()Z
ifeq 3
1: aload 0
aload 1
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.ext.auth.oauth2.impl.OAuth2Response
astore 2
start local 2 4: aload 2
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
ifnonnull 7
5: aload 0
ldc "No Body"
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
6: return
7: StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2Response
StackMap stack:
aload 0
invokestatic io.vertx.core.Future.succeededFuture:()Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
end local 2 8: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 9 1 res Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;
4 8 2 reply Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;
private void lambda$4(io.vertx.core.Handler, io.vertx.ext.auth.impl.jose.JWT, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/ext/auth/impl/jose/JWT;Lio/vertx/core/AsyncResult;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=4, locals=7, args_size=4
start local 0 start local 3 0: aload 3
invokeinterface io.vertx.core.AsyncResult.failed:()Z
ifeq 3
1: aload 1
aload 3
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
aload 3
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.ext.auth.oauth2.impl.OAuth2Response
astore 4
start local 4 4: aload 4
ldc "application/json"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifeq 10
5: new io.vertx.core.json.JsonObject
dup
aload 4
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokespecial io.vertx.core.json.JsonObject.<init>:(Lio/vertx/core/buffer/Buffer;)V
astore 5
start local 5 6: goto 24
end local 5 StackMap locals: io.vertx.ext.auth.oauth2.impl.OAuth2API io.vertx.core.Handler io.vertx.ext.auth.impl.jose.JWT io.vertx.core.AsyncResult io.vertx.ext.auth.oauth2.impl.OAuth2Response
StackMap stack: java.lang.RuntimeException
7: astore 6
start local 6 8: aload 1
aload 6
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
9: return
end local 6 10: StackMap locals:
StackMap stack:
aload 4
ldc "application/jwt"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifeq 16
11: aload 2
aload 4
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokeinterface io.vertx.core.buffer.Buffer.toString:(Ljava/nio/charset/Charset;)Ljava/lang/String;
invokevirtual io.vertx.ext.auth.impl.jose.JWT.decode:(Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
astore 5
start local 5 12: goto 24
end local 5 StackMap locals:
StackMap stack: java.lang.RuntimeException
13: astore 6
start local 6 14: aload 1
aload 6
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
15: return
end local 6 16: StackMap locals:
StackMap stack:
aload 4
ldc "application/x-www-form-urlencoded"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifne 17
aload 4
ldc "text/plain"
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.is:(Ljava/lang/String;)Z
ifeq 22
17: StackMap locals:
StackMap stack:
aload 4
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.body:()Lio/vertx/core/buffer/Buffer;
invokestatic io.vertx.ext.auth.impl.http.SimpleHttpClient.queryToJson:(Lio/vertx/core/buffer/Buffer;)Lio/vertx/core/json/JsonObject;
astore 5
start local 5 18: goto 24
end local 5 StackMap locals:
StackMap stack: java.lang.Exception
19: astore 6
start local 6 20: aload 1
aload 6
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
21: return
end local 6 22: StackMap locals:
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
ldc "Cannot handle Content-Type: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual io.vertx.ext.auth.oauth2.impl.OAuth2Response.headers:()Lio/vertx/core/MultiMap;
ldc "Content-Type"
invokeinterface io.vertx.core.MultiMap.get:(Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
23: return
start local 5 24: StackMap locals: io.vertx.core.json.JsonObject
StackMap stack:
aload 5
aload 4
aload 0
getfield io.vertx.ext.auth.oauth2.impl.OAuth2API.config:Lio/vertx/ext/auth/oauth2/OAuth2Options;
invokevirtual io.vertx.ext.auth.oauth2.OAuth2Options.getScopeSeparator:()Ljava/lang/String;
invokestatic io.vertx.ext.auth.oauth2.impl.OAuth2API.processNonStandardHeaders:(Lio/vertx/core/json/JsonObject;Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;Ljava/lang/String;)V
25: aload 1
aload 5
invokestatic io.vertx.core.Future.succeededFuture:(Ljava/lang/Object;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
end local 5 end local 4 26: return
end local 3 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lio/vertx/ext/auth/oauth2/impl/OAuth2API;
0 27 3 fetch Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;
4 26 4 reply Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;
6 7 5 userInfo Lio/vertx/core/json/JsonObject;
12 13 5 userInfo Lio/vertx/core/json/JsonObject;
18 19 5 userInfo Lio/vertx/core/json/JsonObject;
24 26 5 userInfo Lio/vertx/core/json/JsonObject;
8 10 6 e Ljava/lang/RuntimeException;
14 16 6 e Ljava/lang/RuntimeException;
20 22 6 e Ljava/lang/Exception;
Exception table:
from to target type
5 6 7 Class java.lang.RuntimeException
11 12 13 Class java.lang.RuntimeException
17 18 19 Class java.lang.RuntimeException
17 18 19 Class java.io.UnsupportedEncodingException
private static void lambda$5(io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 1
invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
ifeq 3
1: aload 0
invokestatic io.vertx.core.Future.succeededFuture:()Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
aload 1
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
4: StackMap locals:
StackMap stack:
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 5 1 res Lio/vertx/core/AsyncResult<Lio/vertx/ext/auth/oauth2/impl/OAuth2Response;>;
private static void lambda$6(io.vertx.core.Handler, io.vertx.core.buffer.Buffer, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/buffer/Buffer;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=5, args_size=3
start local 2 0: aload 2
invokeinterface io.vertx.core.AsyncResult.failed:()Z
ifeq 3
1: aload 0
aload 2
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
aload 2
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.core.http.HttpClientRequest
astore 3
start local 3 4: aload 0
invokedynamic handle(Lio/vertx/core/Handler;)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/auth/oauth2/impl/OAuth2API.lambda$7(Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
astore 4
start local 4 5: aload 1
ifnull 8
6: aload 3
aload 1
aload 4
invokeinterface io.vertx.core.http.HttpClientRequest.send:(Lio/vertx/core/buffer/Buffer;Lio/vertx/core/Handler;)V
7: goto 9
8: StackMap locals: io.vertx.core.http.HttpClientRequest io.vertx.core.Handler
StackMap stack:
aload 3
aload 4
invokeinterface io.vertx.core.http.HttpClientRequest.send:(Lio/vertx/core/Handler;)V
end local 4 end local 3 9: StackMap locals:
StackMap stack:
return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 10 2 request Lio/vertx/core/AsyncResult<Lio/vertx/core/http/HttpClientRequest;>;
4 9 3 req Lio/vertx/core/http/HttpClientRequest;
5 9 4 resultHandler Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Lio/vertx/core/http/HttpClientResponse;>;>;
private static void lambda$7(io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=3, locals=3, args_size=2
start local 1 0: aload 1
invokeinterface io.vertx.core.AsyncResult.failed:()Z
ifeq 3
1: aload 0
aload 1
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
2: return
3: StackMap locals:
StackMap stack:
aload 1
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.core.http.HttpClientResponse
astore 2
start local 2 4: aload 2
aload 2
aload 0
invokedynamic handle(Lio/vertx/core/http/HttpClientResponse;Lio/vertx/core/Handler;)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/auth/oauth2/impl/OAuth2API.lambda$8(Lio/vertx/core/http/HttpClientResponse;Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V (6)
(Lio/vertx/core/AsyncResult;)V
invokeinterface io.vertx.core.http.HttpClientResponse.body:(Lio/vertx/core/Handler;)Lio/vertx/core/http/HttpClientResponse;
pop
end local 2 5: return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 6 1 send Lio/vertx/core/AsyncResult<Lio/vertx/core/http/HttpClientResponse;>;
4 5 2 res Lio/vertx/core/http/HttpClientResponse;
private static void lambda$8(io.vertx.core.http.HttpClientResponse, io.vertx.core.Handler, io.vertx.core.AsyncResult);
descriptor: (Lio/vertx/core/http/HttpClientResponse;Lio/vertx/core/Handler;Lio/vertx/core/AsyncResult;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=6, locals=4, args_size=3
start local 2 0: aload 2
invokeinterface io.vertx.core.AsyncResult.succeeded:()Z
ifeq 10
1: aload 2
invokeinterface io.vertx.core.AsyncResult.result:()Ljava/lang/Object;
checkcast io.vertx.core.buffer.Buffer
astore 3
start local 3 2: aload 0
invokeinterface io.vertx.core.http.HttpClientResponse.statusCode:()I
sipush 200
if_icmplt 3
aload 0
invokeinterface io.vertx.core.http.HttpClientResponse.statusCode:()I
sipush 300
if_icmplt 8
3: StackMap locals: io.vertx.core.buffer.Buffer
StackMap stack:
aload 3
ifnull 4
aload 3
invokeinterface io.vertx.core.buffer.Buffer.length:()I
ifne 6
4: StackMap locals:
StackMap stack:
aload 1
aload 0
invokeinterface io.vertx.core.http.HttpClientResponse.statusMessage:()Ljava/lang/String;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
5: goto 11
6: StackMap locals:
StackMap stack:
aload 1
new java.lang.StringBuilder
dup
aload 0
invokeinterface io.vertx.core.http.HttpClientResponse.statusMessage:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc ": "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokeinterface io.vertx.core.buffer.Buffer.toString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
7: goto 11
8: StackMap locals:
StackMap stack:
aload 1
new io.vertx.ext.auth.oauth2.impl.OAuth2Response
dup
aload 0
invokeinterface io.vertx.core.http.HttpClientResponse.statusCode:()I
aload 0
invokeinterface io.vertx.core.http.HttpClientResponse.headers:()Lio/vertx/core/MultiMap;
aload 3
invokespecial io.vertx.ext.auth.oauth2.impl.OAuth2Response.<init>:(ILio/vertx/core/MultiMap;Lio/vertx/core/buffer/Buffer;)V
invokestatic io.vertx.core.Future.succeededFuture:(Ljava/lang/Object;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
end local 3 9: goto 11
10: StackMap locals:
StackMap stack:
aload 1
aload 2
invokeinterface io.vertx.core.AsyncResult.cause:()Ljava/lang/Throwable;
invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/Throwable;)Lio/vertx/core/Future;
invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
11: StackMap locals:
StackMap stack:
return
end local 2 LocalVariableTable:
Start End Slot Name Signature
0 12 2 body Lio/vertx/core/AsyncResult<Lio/vertx/core/buffer/Buffer;>;
2 9 3 value Lio/vertx/core/buffer/Buffer;
}
SourceFile: "OAuth2API.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public Encoder = java.util.Base64$Encoder of java.util.Base64
public abstract Entry = java.util.Map$Entry of java.util.Map