public class io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl implements io.vertx.ext.auth.jwt.authorization.MicroProfileAuthorization
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl
  super_class: java.lang.Object
{
  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl this
         0: .line 34
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/auth/jwt/authorization/impl/MicroProfileAuthorizationImpl;

  public java.lang.String getId();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl this
         0: .line 38
            ldc "mp-jwt"
            areturn
        end local 0 // io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lio/vertx/ext/auth/jwt/authorization/impl/MicroProfileAuthorizationImpl;

  public void getAuthorizations(io.vertx.ext.auth.User, io.vertx.core.Handler<io.vertx.core.AsyncResult<java.lang.Void>>);
    descriptor: (Lio/vertx/ext/auth/User;Lio/vertx/core/Handler;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=3
        start local 0 // io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl this
        start local 1 // io.vertx.ext.auth.User user
        start local 2 // io.vertx.core.Handler handler
         0: .line 43
            aload 1 /* user */
            invokeinterface io.vertx.ext.auth.User.attributes:()Lio/vertx/core/json/JsonObject;
            ldc "accessToken"
            invokevirtual io.vertx.core.json.JsonObject.getJsonObject:(Ljava/lang/String;)Lio/vertx/core/json/JsonObject;
            astore 3 /* accessToken */
        start local 3 // io.vertx.core.json.JsonObject accessToken
         1: .line 45
            aload 3 /* accessToken */
            ifnonnull 4
         2: .line 46
            aload 2 /* handler */
            ldc "User doesn't contain a decoded Token"
            invokestatic io.vertx.core.Future.failedFuture:(Ljava/lang/String;)Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
         3: .line 47
            return
         4: .line 50
      StackMap locals: io.vertx.core.json.JsonObject
      StackMap stack:
            new java.util.HashSet
            dup
            invokespecial java.util.HashSet.<init>:()V
            astore 4 /* authorizations */
        start local 4 // java.util.Set authorizations
         5: .line 53
            aload 3 /* accessToken */
            ldc "groups"
            invokevirtual io.vertx.core.json.JsonObject.getJsonArray:(Ljava/lang/String;)Lio/vertx/core/json/JsonArray;
            astore 5 /* groups */
        start local 5 // io.vertx.core.json.JsonArray groups
         6: .line 59
            aload 5 /* groups */
            ifnull 15
            aload 5 /* groups */
            invokevirtual io.vertx.core.json.JsonArray.size:()I
            iflt 15
         7: .line 60
            aload 5 /* groups */
            invokevirtual io.vertx.core.json.JsonArray.iterator:()Ljava/util/Iterator;
            astore 7
            goto 14
      StackMap locals: io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl io.vertx.ext.auth.User io.vertx.core.Handler io.vertx.core.json.JsonObject java.util.Set io.vertx.core.json.JsonArray top java.util.Iterator
      StackMap stack:
         8: aload 7
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            astore 6 /* el */
        start local 6 // java.lang.Object el
         9: .line 62
            aload 6 /* el */
            instanceof java.lang.String
            ifeq 12
        10: .line 63
            aload 4 /* authorizations */
            aload 6 /* el */
            checkcast java.lang.String
            invokestatic io.vertx.ext.auth.authorization.RoleBasedAuthorization.create:(Ljava/lang/String;)Lio/vertx/ext/auth/authorization/RoleBasedAuthorization;
            invokeinterface java.util.Set.add:(Ljava/lang/Object;)Z
            pop
        11: .line 64
            goto 14
        12: .line 66
      StackMap locals: io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl io.vertx.ext.auth.User io.vertx.core.Handler io.vertx.core.json.JsonObject java.util.Set io.vertx.core.json.JsonArray java.lang.Object java.util.Iterator
      StackMap stack:
            aload 2 /* handler */
            new java.lang.StringBuilder
            dup
            ldc "Cannot parse role: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 6 /* el */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)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
        13: .line 67
            return
        end local 6 // java.lang.Object el
        14: .line 60
      StackMap locals: io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl io.vertx.ext.auth.User io.vertx.core.Handler io.vertx.core.json.JsonObject java.util.Set io.vertx.core.json.JsonArray top java.util.Iterator
      StackMap stack:
            aload 7
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        15: .line 72
      StackMap locals: io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl io.vertx.ext.auth.User io.vertx.core.Handler io.vertx.core.json.JsonObject java.util.Set io.vertx.core.json.JsonArray
      StackMap stack:
            aload 1 /* user */
            invokeinterface io.vertx.ext.auth.User.authorizations:()Lio/vertx/ext/auth/authorization/Authorizations;
            aload 0 /* this */
            invokevirtual io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl.getId:()Ljava/lang/String;
            aload 4 /* authorizations */
            invokeinterface io.vertx.ext.auth.authorization.Authorizations.add:(Ljava/lang/String;Ljava/util/Set;)Lio/vertx/ext/auth/authorization/Authorizations;
            pop
        16: .line 74
            aload 2 /* handler */
            invokestatic io.vertx.core.Future.succeededFuture:()Lio/vertx/core/Future;
            invokeinterface io.vertx.core.Handler.handle:(Ljava/lang/Object;)V
        17: .line 75
            return
        end local 5 // io.vertx.core.json.JsonArray groups
        end local 4 // java.util.Set authorizations
        end local 3 // io.vertx.core.json.JsonObject accessToken
        end local 2 // io.vertx.core.Handler handler
        end local 1 // io.vertx.ext.auth.User user
        end local 0 // io.vertx.ext.auth.jwt.authorization.impl.MicroProfileAuthorizationImpl this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   18     0            this  Lio/vertx/ext/auth/jwt/authorization/impl/MicroProfileAuthorizationImpl;
            0   18     1            user  Lio/vertx/ext/auth/User;
            0   18     2         handler  Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;
            1   18     3     accessToken  Lio/vertx/core/json/JsonObject;
            5   18     4  authorizations  Ljava/util/Set<Lio/vertx/ext/auth/authorization/Authorization;>;
            6   18     5          groups  Lio/vertx/core/json/JsonArray;
            9   14     6              el  Ljava/lang/Object;
    Signature: (Lio/vertx/ext/auth/User;Lio/vertx/core/Handler<Lio/vertx/core/AsyncResult<Ljava/lang/Void;>;>;)V
    MethodParameters:
         Name  Flags
      user     
      handler  
}
SourceFile: "MicroProfileAuthorizationImpl.java"