public interface io.vertx.ext.shell.impl.ShellAuth
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: io.vertx.ext.shell.impl.ShellAuth
  super_class: java.lang.Object
{
  public abstract java.lang.String provider();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract io.vertx.ext.auth.AuthProvider create(io.vertx.core.Vertx, io.vertx.core.json.JsonObject);
    descriptor: (Lio/vertx/core/Vertx;Lio/vertx/core/json/JsonObject;)Lio/vertx/ext/auth/AuthProvider;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
        Name  Flags
      vertx   
      config  

  public static io.vertx.ext.auth.AuthProvider load(io.vertx.core.Vertx, io.vertx.core.json.JsonObject);
    descriptor: (Lio/vertx/core/Vertx;Lio/vertx/core/json/JsonObject;)Lio/vertx/ext/auth/AuthProvider;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // io.vertx.core.json.JsonObject config
         0: .line 52
            ldc Lio/vertx/ext/shell/impl/ShellAuth;
            invokestatic java.util.ServiceLoader.load:(Ljava/lang/Class;)Ljava/util/ServiceLoader;
            astore 2 /* loader */
        start local 2 // java.util.ServiceLoader loader
         1: .line 54
            aload 2 /* loader */
            invokevirtual java.util.ServiceLoader.iterator:()Ljava/util/Iterator;
            astore 3 /* factories */
        start local 3 // java.util.Iterator factories
         2: .line 56
            goto 9
         3: .line 59
      StackMap locals: java.util.ServiceLoader java.util.Iterator
      StackMap stack:
            aload 3 /* factories */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast io.vertx.ext.shell.impl.ShellAuth
            astore 4 /* auth */
        start local 4 // io.vertx.ext.shell.impl.ShellAuth auth
         4: .line 60
            aload 4 /* auth */
            ifnull 9
         5: .line 61
            aload 4 /* auth */
            invokeinterface io.vertx.ext.shell.impl.ShellAuth.provider:()Ljava/lang/String;
            aload 1 /* config */
            ldc "provider"
            ldc ""
            invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 9
         6: .line 62
            aload 4 /* auth */
            aload 0 /* vertx */
            aload 1 /* config */
            invokeinterface io.vertx.ext.shell.impl.ShellAuth.create:(Lio/vertx/core/Vertx;Lio/vertx/core/json/JsonObject;)Lio/vertx/ext/auth/AuthProvider;
         7: areturn
        end local 4 // io.vertx.ext.shell.impl.ShellAuth auth
         8: .line 65
      StackMap locals:
      StackMap stack: java.lang.RuntimeException
            pop
         9: .line 56
      StackMap locals:
      StackMap stack:
            aload 3 /* factories */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 3
        10: .line 69
            new io.vertx.core.VertxException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Provider not found ["
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* config */
            ldc "provider"
            ldc ""
            invokevirtual io.vertx.core.json.JsonObject.getString:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            ldc "] / check your classpath"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial io.vertx.core.VertxException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.util.Iterator factories
        end local 2 // java.util.ServiceLoader loader
        end local 1 // io.vertx.core.json.JsonObject config
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   11     0      vertx  Lio/vertx/core/Vertx;
            0   11     1     config  Lio/vertx/core/json/JsonObject;
            1   11     2     loader  Ljava/util/ServiceLoader<Lio/vertx/ext/shell/impl/ShellAuth;>;
            2   11     3  factories  Ljava/util/Iterator<Lio/vertx/ext/shell/impl/ShellAuth;>;
            4    8     4       auth  Lio/vertx/ext/shell/impl/ShellAuth;
      Exception table:
        from    to  target  type
           3     7       8  Class java.lang.RuntimeException
    MethodParameters:
        Name  Flags
      vertx   
      config  
}
SourceFile: "ShellAuth.java"