class io.vertx.ext.mail.impl.sasl.AuthCram extends io.vertx.ext.mail.impl.sasl.AuthBaseClass
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.vertx.ext.mail.impl.sasl.AuthCram
super_class: io.vertx.ext.mail.impl.sasl.AuthBaseClass
{
private boolean firstStep;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean finished;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private final java.lang.String hmac;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private static final java.util.Map<java.lang.String, java.lang.String> NAME_MAC_MAP;
descriptor: Ljava/util/Map;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/String;>;
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new io.vertx.ext.mail.impl.sasl.AuthCram$1
dup
invokespecial io.vertx.ext.mail.impl.sasl.AuthCram$1.<init>:()V
putstatic io.vertx.ext.mail.impl.sasl.AuthCram.NAME_MAC_MAP:Ljava/util/Map;
1: return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
aload 2
aload 3
invokespecial io.vertx.ext.mail.impl.sasl.AuthBaseClass.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
1: aload 0
iconst_1
putfield io.vertx.ext.mail.impl.sasl.AuthCram.firstStep:Z
2: aload 0
iconst_0
putfield io.vertx.ext.mail.impl.sasl.AuthCram.finished:Z
3: aload 0
getstatic io.vertx.ext.mail.impl.sasl.AuthCram.NAME_MAC_MAP:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
putfield io.vertx.ext.mail.impl.sasl.AuthCram.hmac:Ljava/lang/String;
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/vertx/ext/mail/impl/sasl/AuthCram;
0 5 1 name Ljava/lang/String;
0 5 2 username Ljava/lang/String;
0 5 3 password Ljava/lang/String;
MethodParameters:
Name Flags
name
username
password
public java.lang.String nextStep(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.vertx.ext.mail.impl.sasl.AuthCram.finished:Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield io.vertx.ext.mail.impl.sasl.AuthCram.firstStep:Z
ifeq 5
3: aload 0
iconst_0
putfield io.vertx.ext.mail.impl.sasl.AuthCram.firstStep:Z
4: ldc ""
areturn
5: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield io.vertx.ext.mail.impl.sasl.AuthCram.finished:Z
6: aload 0
getfield io.vertx.ext.mail.impl.sasl.AuthCram.password:Ljava/lang/String;
aload 1
aload 0
getfield io.vertx.ext.mail.impl.sasl.AuthCram.hmac:Ljava/lang/String;
invokestatic io.vertx.ext.mail.impl.sasl.CryptUtils.hmacHex:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 2
start local 2 7: new java.lang.StringBuilder
dup
aload 0
getfield io.vertx.ext.mail.impl.sasl.AuthCram.username: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 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lio/vertx/ext/mail/impl/sasl/AuthCram;
0 8 1 data Ljava/lang/String;
7 8 2 reply Ljava/lang/String;
MethodParameters:
Name Flags
data
}
SourceFile: "AuthCram.java"
NestMembers:
io.vertx.ext.mail.impl.sasl.AuthCram$1
InnerClasses:
io.vertx.ext.mail.impl.sasl.AuthCram$1