public class org.h2.engine.Role extends org.h2.engine.RightOwner
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.h2.engine.Role
super_class: org.h2.engine.RightOwner
{
private final boolean system;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.h2.engine.Database, int, java.lang.String, boolean);
descriptor: (Lorg/h2/engine/Database;ILjava/lang/String;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, 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
iload 2
aload 3
bipush 13
invokespecial org.h2.engine.RightOwner.<init>:(Lorg/h2/engine/Database;ILjava/lang/String;I)V
1: aload 0
iload 4
putfield org.h2.engine.Role.system:Z
2: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/h2/engine/Role;
0 3 1 database Lorg/h2/engine/Database;
0 3 2 id I
0 3 3 roleName Ljava/lang/String;
0 3 4 system Z
MethodParameters:
Name Flags
database
id
roleName
system
public java.lang.String getCreateSQLForCopy(org.h2.table.Table, java.lang.String);
descriptor: (Lorg/h2/table/Table;Ljava/lang/String;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.h2.engine.Role.toString:()Ljava/lang/String;
invokestatic org.h2.message.DbException.throwInternalError:(Ljava/lang/String;)Ljava/lang/RuntimeException;
athrow
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Role;
0 1 1 table Lorg/h2/table/Table;
0 1 2 quotedName Ljava/lang/String;
MethodParameters:
Name Flags
table
quotedName
public java.lang.String getDropSQL();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Role;
public java.lang.String getCreateSQL(boolean);
descriptor: (Z)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 org.h2.engine.Role.system:Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
ldc "CREATE ROLE "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 2
start local 2 3: iload 1
ifeq 5
4: aload 2
ldc "IF NOT EXISTS "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
5: StackMap locals: java.lang.StringBuilder
StackMap stack:
aload 0
aload 2
iconst_1
invokevirtual org.h2.engine.Role.getSQL:(Ljava/lang/StringBuilder;Z)Ljava/lang/StringBuilder;
pop
6: aload 2
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 7 0 this Lorg/h2/engine/Role;
0 7 1 ifNotExists Z
3 7 2 buff Ljava/lang/StringBuilder;
MethodParameters:
Name Flags
ifNotExists
public java.lang.String getCreateSQL();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_0
invokevirtual org.h2.engine.Role.getCreateSQL:(Z)Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Role;
public int getType();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: bipush 7
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Role;
public void removeChildrenAndResources(org.h2.engine.Session);
descriptor: (Lorg/h2/engine/Session;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.h2.engine.Role.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getAllUsers:()Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 5
StackMap locals: org.h2.engine.Role org.h2.engine.Session top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.engine.User
astore 2
start local 2 2: aload 2
aload 0
invokevirtual org.h2.engine.User.getRightForRole:(Lorg/h2/engine/Role;)Lorg/h2/engine/Right;
astore 4
start local 4 3: aload 4
ifnull 5
4: aload 0
getfield org.h2.engine.Role.database:Lorg/h2/engine/Database;
aload 1
aload 4
invokevirtual org.h2.engine.Database.removeDatabaseObject:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
end local 4 end local 2 5: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
6: aload 0
getfield org.h2.engine.Role.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getAllRoles:()Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 11
StackMap locals:
StackMap stack:
7: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.engine.Role
astore 2
start local 2 8: aload 2
aload 0
invokevirtual org.h2.engine.Role.getRightForRole:(Lorg/h2/engine/Role;)Lorg/h2/engine/Right;
astore 4
start local 4 9: aload 4
ifnull 11
10: aload 0
getfield org.h2.engine.Role.database:Lorg/h2/engine/Database;
aload 1
aload 4
invokevirtual org.h2.engine.Database.removeDatabaseObject:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
end local 4 end local 2 11: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
12: aload 0
getfield org.h2.engine.Role.database:Lorg/h2/engine/Database;
invokevirtual org.h2.engine.Database.getAllRights:()Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.iterator:()Ljava/util/Iterator;
astore 3
goto 16
StackMap locals:
StackMap stack:
13: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast org.h2.engine.Right
astore 2
start local 2 14: aload 2
invokevirtual org.h2.engine.Right.getGrantee:()Lorg/h2/engine/DbObject;
aload 0
if_acmpne 16
15: aload 0
getfield org.h2.engine.Role.database:Lorg/h2/engine/Database;
aload 1
aload 2
invokevirtual org.h2.engine.Database.removeDatabaseObject:(Lorg/h2/engine/Session;Lorg/h2/engine/DbObject;)V
end local 2 16: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 13
17: aload 0
getfield org.h2.engine.Role.database:Lorg/h2/engine/Database;
aload 1
aload 0
invokevirtual org.h2.engine.Role.getId:()I
invokevirtual org.h2.engine.Database.removeMeta:(Lorg/h2/engine/Session;I)V
18: aload 0
invokevirtual org.h2.engine.Role.invalidate:()V
19: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/h2/engine/Role;
0 20 1 session Lorg/h2/engine/Session;
2 5 2 user Lorg/h2/engine/User;
3 5 4 right Lorg/h2/engine/Right;
8 11 2 r2 Lorg/h2/engine/Role;
9 11 4 right Lorg/h2/engine/Right;
14 16 2 right Lorg/h2/engine/Right;
MethodParameters:
Name Flags
session
public void checkRename();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=1, args_size=1
start local 0 0: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/h2/engine/Role;
}
SourceFile: "Role.java"