public interface io.vertx.ext.auth.jdbc.JDBCAuth extends io.vertx.ext.auth.AuthProvider
  minor version: 0
  major version: 59
  flags: flags: (0x0601) ACC_PUBLIC, ACC_INTERFACE, ACC_ABSTRACT
  this_class: io.vertx.ext.auth.jdbc.JDBCAuth
  super_class: java.lang.Object
{
  public static final java.lang.String DEFAULT_AUTHENTICATE_QUERY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "SELECT PASSWORD, PASSWORD_SALT FROM USER WHERE USERNAME = ?"

  public static final java.lang.String DEFAULT_ROLES_QUERY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "SELECT ROLE FROM USER_ROLES WHERE USERNAME = ?"

  public static final java.lang.String DEFAULT_PERMISSIONS_QUERY;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "SELECT PERM FROM ROLES_PERMS RP, USER_ROLES UR WHERE UR.USERNAME = ? AND UR.ROLE = RP.ROLE"

  public static final java.lang.String DEFAULT_ROLE_PREFIX;
    descriptor: Ljava/lang/String;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: "role:"

  public static io.vertx.ext.auth.jdbc.JDBCAuth create(io.vertx.core.Vertx, io.vertx.ext.jdbc.JDBCClient);
    descriptor: (Lio/vertx/core/Vertx;Lio/vertx/ext/jdbc/JDBCClient;)Lio/vertx/ext/auth/jdbc/JDBCAuth;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // io.vertx.core.Vertx vertx
        start local 1 // io.vertx.ext.jdbc.JDBCClient client
         0: .line 67
            new io.vertx.ext.auth.jdbc.impl.JDBCAuthImpl
            dup
            aload 0 /* vertx */
            aload 1 /* client */
            invokespecial io.vertx.ext.auth.jdbc.impl.JDBCAuthImpl.<init>:(Lio/vertx/core/Vertx;Lio/vertx/ext/jdbc/JDBCClient;)V
            areturn
        end local 1 // io.vertx.ext.jdbc.JDBCClient client
        end local 0 // io.vertx.core.Vertx vertx
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    1     0   vertx  Lio/vertx/core/Vertx;
            0    1     1  client  Lio/vertx/ext/jdbc/JDBCClient;
    MethodParameters:
        Name  Flags
      vertx   
      client  

  public abstract io.vertx.ext.auth.jdbc.JDBCAuth setAuthenticationQuery(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/ext/auth/jdbc/JDBCAuth;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
                     Name  Flags
      authenticationQuery  

  public abstract io.vertx.ext.auth.jdbc.JDBCAuth setRolesQuery(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/ext/auth/jdbc/JDBCAuth;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
            Name  Flags
      rolesQuery  

  public abstract io.vertx.ext.auth.jdbc.JDBCAuth setPermissionsQuery(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/ext/auth/jdbc/JDBCAuth;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
                  Name  Flags
      permissionsQuery  

  public abstract io.vertx.ext.auth.jdbc.JDBCAuth setRolePrefix(java.lang.String);
    descriptor: (Ljava/lang/String;)Lio/vertx/ext/auth/jdbc/JDBCAuth;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
            Name  Flags
      rolePrefix  

  public abstract io.vertx.ext.auth.jdbc.JDBCAuth setHashStrategy(io.vertx.ext.auth.jdbc.JDBCHashStrategy);
    descriptor: (Lio/vertx/ext/auth/jdbc/JDBCHashStrategy;)Lio/vertx/ext/auth/jdbc/JDBCAuth;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.GenIgnore()
    RuntimeVisibleTypeAnnotations: 
      METHOD_RETURN
        io.vertx.codegen.annotations.GenIgnore()
    MethodParameters:
          Name  Flags
      strategy  

  public java.lang.String computeHash(java.lang.String, java.lang.String);
    descriptor: (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // io.vertx.ext.auth.jdbc.JDBCAuth this
        start local 1 // java.lang.String password
        start local 2 // java.lang.String salt
         0: .line 120
            aload 0 /* this */
            aload 1 /* password */
            aload 2 /* salt */
            iconst_m1
            invokeinterface io.vertx.ext.auth.jdbc.JDBCAuth.computeHash:(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
            areturn
        end local 2 // java.lang.String salt
        end local 1 // java.lang.String password
        end local 0 // io.vertx.ext.auth.jdbc.JDBCAuth this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lio/vertx/ext/auth/jdbc/JDBCAuth;
            0    1     1  password  Ljava/lang/String;
            0    1     2      salt  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      password  
      salt      

  public abstract java.lang.String computeHash(java.lang.String, java.lang.String, int);
    descriptor: (Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
          Name  Flags
      password  
      salt      
      version   

  public abstract java.lang.String generateSalt();
    descriptor: ()Ljava/lang/String;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract io.vertx.ext.auth.jdbc.JDBCAuth setNonces(io.vertx.core.json.JsonArray);
    descriptor: (Lio/vertx/core/json/JsonArray;)Lio/vertx/ext/auth/jdbc/JDBCAuth;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.Fluent()
    MethodParameters:
        Name  Flags
      nonces  
}
SourceFile: "JDBCAuth.java"
    RuntimeVisibleAnnotations: 
      io.vertx.codegen.annotations.VertxGen()