public class org.apache.catalina.realm.GenericPrincipal implements org.apache.catalina.TomcatPrincipal, java.io.Serializable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.catalina.realm.GenericPrincipal
super_class: java.lang.Object
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
protected final java.lang.String name;
descriptor: Ljava/lang/String;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.lang.String password;
descriptor: Ljava/lang/String;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.lang.String[] roles;
descriptor: [Ljava/lang/String;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final java.security.Principal userPrincipal;
descriptor: Ljava/security/Principal;
flags: (0x0014) ACC_PROTECTED, ACC_FINAL
protected final transient javax.security.auth.login.LoginContext loginContext;
descriptor: Ljavax/security/auth/login/LoginContext;
flags: (0x0094) ACC_PROTECTED, ACC_FINAL, ACC_TRANSIENT
protected transient org.ietf.jgss.GSSCredential gssCredential;
descriptor: Lorg/ietf/jgss/GSSCredential;
flags: (0x0084) ACC_PROTECTED, ACC_TRANSIENT
public void <init>(java.lang.String, java.lang.String, java.util.List<java.lang.String>);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, 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
aconst_null
invokespecial org.apache.catalina.realm.GenericPrincipal.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/security/Principal;)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 Lorg/apache/catalina/realm/GenericPrincipal;
0 2 1 name Ljava/lang/String;
0 2 2 password Ljava/lang/String;
0 2 3 roles Ljava/util/List<Ljava/lang/String;>;
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;)V
MethodParameters:
Name Flags
name
password
roles
public void <init>(java.lang.String, java.lang.String, java.util.List<java.lang.String>, java.security.Principal);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/security/Principal;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
aload 4
aconst_null
invokespecial org.apache.catalina.realm.GenericPrincipal.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/security/Principal;Ljavax/security/auth/login/LoginContext;)V
1: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/catalina/realm/GenericPrincipal;
0 2 1 name Ljava/lang/String;
0 2 2 password Ljava/lang/String;
0 2 3 roles Ljava/util/List<Ljava/lang/String;>;
0 2 4 userPrincipal Ljava/security/Principal;
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;Ljava/security/Principal;)V
MethodParameters:
Name Flags
name
password
roles
userPrincipal
public void <init>(java.lang.String, java.lang.String, java.util.List<java.lang.String>, java.security.Principal, javax.security.auth.login.LoginContext);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/security/Principal;Ljavax/security/auth/login/LoginContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=6, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
aload 2
aload 3
aload 4
aload 5
aconst_null
invokespecial org.apache.catalina.realm.GenericPrincipal.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/security/Principal;Ljavax/security/auth/login/LoginContext;Lorg/ietf/jgss/GSSCredential;)V
1: return
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 2 0 this Lorg/apache/catalina/realm/GenericPrincipal;
0 2 1 name Ljava/lang/String;
0 2 2 password Ljava/lang/String;
0 2 3 roles Ljava/util/List<Ljava/lang/String;>;
0 2 4 userPrincipal Ljava/security/Principal;
0 2 5 loginContext Ljavax/security/auth/login/LoginContext;
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;Ljava/security/Principal;Ljavax/security/auth/login/LoginContext;)V
MethodParameters:
Name Flags
name
password
roles
userPrincipal
loginContext
public void <init>(java.lang.String, java.lang.String, java.util.List<java.lang.String>, java.security.Principal, javax.security.auth.login.LoginContext, org.ietf.jgss.GSSCredential);
descriptor: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/security/Principal;Ljavax/security/auth/login/LoginContext;Lorg/ietf/jgss/GSSCredential;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=7
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 start local 6 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aconst_null
putfield org.apache.catalina.realm.GenericPrincipal.gssCredential:Lorg/ietf/jgss/GSSCredential;
2: aload 0
aload 1
putfield org.apache.catalina.realm.GenericPrincipal.name:Ljava/lang/String;
3: aload 0
aload 2
putfield org.apache.catalina.realm.GenericPrincipal.password:Ljava/lang/String;
4: aload 0
aload 4
putfield org.apache.catalina.realm.GenericPrincipal.userPrincipal:Ljava/security/Principal;
5: aload 3
ifnonnull 8
6: aload 0
iconst_0
anewarray java.lang.String
putfield org.apache.catalina.realm.GenericPrincipal.roles:[Ljava/lang/String;
7: goto 11
8: StackMap locals: org.apache.catalina.realm.GenericPrincipal java.lang.String java.lang.String java.util.List java.security.Principal javax.security.auth.login.LoginContext org.ietf.jgss.GSSCredential
StackMap stack:
aload 0
aload 3
aload 3
invokeinterface java.util.List.size:()I
anewarray java.lang.String
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.String[]
putfield org.apache.catalina.realm.GenericPrincipal.roles:[Ljava/lang/String;
9: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.roles:[Ljava/lang/String;
arraylength
iconst_1
if_icmple 11
10: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.roles:[Ljava/lang/String;
invokestatic java.util.Arrays.sort:([Ljava/lang/Object;)V
11: StackMap locals:
StackMap stack:
aload 0
aload 5
putfield org.apache.catalina.realm.GenericPrincipal.loginContext:Ljavax/security/auth/login/LoginContext;
12: aload 0
aload 6
putfield org.apache.catalina.realm.GenericPrincipal.gssCredential:Lorg/ietf/jgss/GSSCredential;
13: 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 14 0 this Lorg/apache/catalina/realm/GenericPrincipal;
0 14 1 name Ljava/lang/String;
0 14 2 password Ljava/lang/String;
0 14 3 roles Ljava/util/List<Ljava/lang/String;>;
0 14 4 userPrincipal Ljava/security/Principal;
0 14 5 loginContext Ljavax/security/auth/login/LoginContext;
0 14 6 gssCredential Lorg/ietf/jgss/GSSCredential;
Signature: (Ljava/lang/String;Ljava/lang/String;Ljava/util/List<Ljava/lang/String;>;Ljava/security/Principal;Ljavax/security/auth/login/LoginContext;Lorg/ietf/jgss/GSSCredential;)V
MethodParameters:
Name Flags
name
password
roles
userPrincipal
loginContext
gssCredential
public java.lang.String getName();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.name:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/realm/GenericPrincipal;
public java.lang.String getPassword();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.password:Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/realm/GenericPrincipal;
public java.lang.String[] getRoles();
descriptor: ()[Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.roles:[Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/realm/GenericPrincipal;
public java.security.Principal getUserPrincipal();
descriptor: ()Ljava/security/Principal;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.userPrincipal:Ljava/security/Principal;
ifnull 2
1: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.userPrincipal:Ljava/security/Principal;
areturn
2: StackMap locals:
StackMap stack:
aload 0
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/catalina/realm/GenericPrincipal;
public org.ietf.jgss.GSSCredential getGssCredential();
descriptor: ()Lorg/ietf/jgss/GSSCredential;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.gssCredential:Lorg/ietf/jgss/GSSCredential;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/realm/GenericPrincipal;
protected void setGssCredential(org.ietf.jgss.GSSCredential);
descriptor: (Lorg/ietf/jgss/GSSCredential;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.apache.catalina.realm.GenericPrincipal.gssCredential:Lorg/ietf/jgss/GSSCredential;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/catalina/realm/GenericPrincipal;
0 2 1 gssCredential Lorg/ietf/jgss/GSSCredential;
MethodParameters:
Name Flags
gssCredential
public boolean hasRole(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: ldc "*"
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ifnonnull 4
3: iconst_0
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.realm.GenericPrincipal.roles:[Ljava/lang/String;
aload 1
invokestatic java.util.Arrays.binarySearch:([Ljava/lang/Object;Ljava/lang/Object;)I
iflt 5
iconst_1
ireturn
StackMap locals:
StackMap stack:
5: iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/catalina/realm/GenericPrincipal;
0 6 1 role Ljava/lang/String;
MethodParameters:
Name Flags
role
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "GenericPrincipal["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: aload 1
aload 0
getfield org.apache.catalina.realm.GenericPrincipal.name:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
2: aload 1
ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
3: iconst_0
istore 2
start local 2 4: goto 7
5: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 1
aload 0
getfield org.apache.catalina.realm.GenericPrincipal.roles:[Ljava/lang/String;
iload 2
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ","
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
6: iinc 2 1
StackMap locals:
StackMap stack:
7: iload 2
aload 0
getfield org.apache.catalina.realm.GenericPrincipal.roles:[Ljava/lang/String;
arraylength
if_icmplt 5
end local 2 8: aload 1
ldc ")]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
9: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/catalina/realm/GenericPrincipal;
1 10 1 sb Ljava/lang/StringBuilder;
4 8 2 i I
public void logout();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.loginContext:Ljavax/security/auth/login/LoginContext;
ifnull 2
1: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.loginContext:Ljavax/security/auth/login/LoginContext;
invokevirtual javax.security.auth.login.LoginContext.logout:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.realm.GenericPrincipal.gssCredential:Lorg/ietf/jgss/GSSCredential;
ifnull 4
3: aload 0
getfield org.apache.catalina.realm.GenericPrincipal.gssCredential:Lorg/ietf/jgss/GSSCredential;
invokeinterface org.ietf.jgss.GSSCredential.dispose:()V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/catalina/realm/GenericPrincipal;
Exceptions:
throws java.lang.Exception
private java.lang.Object writeReplace();
descriptor: ()Ljava/lang/Object;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=1, args_size=1
start local 0 0: new org.apache.catalina.realm.GenericPrincipal$SerializablePrincipal
dup
aload 0
getfield org.apache.catalina.realm.GenericPrincipal.name:Ljava/lang/String;
aload 0
getfield org.apache.catalina.realm.GenericPrincipal.password:Ljava/lang/String;
aload 0
getfield org.apache.catalina.realm.GenericPrincipal.roles:[Ljava/lang/String;
aload 0
getfield org.apache.catalina.realm.GenericPrincipal.userPrincipal:Ljava/security/Principal;
invokespecial org.apache.catalina.realm.GenericPrincipal$SerializablePrincipal.<init>:(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/security/Principal;)V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/catalina/realm/GenericPrincipal;
}
SourceFile: "GenericPrincipal.java"
NestMembers:
org.apache.catalina.realm.GenericPrincipal$SerializablePrincipal
InnerClasses:
private SerializablePrincipal = org.apache.catalina.realm.GenericPrincipal$SerializablePrincipal of org.apache.catalina.realm.GenericPrincipal