public class io.ebeaninternal.server.deploy.parse.DeployInherit
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: io.ebeaninternal.server.deploy.parse.DeployInherit
super_class: java.lang.Object
{
private final java.util.Map<java.lang.Class<?>, io.ebeaninternal.server.deploy.parse.DeployInheritInfo> deployMap;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Class<*>;Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;>;
private final java.util.Map<java.lang.Class<?>, io.ebeaninternal.server.deploy.InheritInfo> finalMap;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/Class<*>;Lio/ebeaninternal/server/deploy/InheritInfo;>;
private final io.ebeaninternal.server.core.bootup.BootupClasses bootupClasses;
descriptor: Lio/ebeaninternal/server/core/bootup/BootupClasses;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(io.ebeaninternal.server.core.bootup.BootupClasses);
descriptor: (Lio/ebeaninternal/server/core/bootup/BootupClasses;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield io.ebeaninternal.server.deploy.parse.DeployInherit.deployMap:Ljava/util/Map;
2: aload 0
new java.util.LinkedHashMap
dup
invokespecial java.util.LinkedHashMap.<init>:()V
putfield io.ebeaninternal.server.deploy.parse.DeployInherit.finalMap:Ljava/util/Map;
3: aload 0
aload 1
putfield io.ebeaninternal.server.deploy.parse.DeployInherit.bootupClasses:Lio/ebeaninternal/server/core/bootup/BootupClasses;
4: aload 0
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.initialise:()V
5: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
0 6 1 bootupClasses Lio/ebeaninternal/server/core/bootup/BootupClasses;
MethodParameters:
Name Flags
bootupClasses
public void process(io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor<?>);
descriptor: (Lio/ebeaninternal/server/deploy/meta/DeployBeanDescriptor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.deploy.parse.DeployInherit.finalMap:Ljava/util/Map;
aload 1
invokevirtual io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor.getBeanType:()Ljava/lang/Class;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.ebeaninternal.server.deploy.InheritInfo
astore 2
start local 2 1: aload 1
aload 2
invokevirtual io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor.setInheritInfo:(Lio/ebeaninternal/server/deploy/InheritInfo;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
0 3 1 desc Lio/ebeaninternal/server/deploy/meta/DeployBeanDescriptor<*>;
1 3 2 inheritInfo Lio/ebeaninternal/server/deploy/InheritInfo;
Signature: (Lio/ebeaninternal/server/deploy/meta/DeployBeanDescriptor<*>;)V
MethodParameters:
Name Flags
desc
private void initialise();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.deploy.parse.DeployInherit.bootupClasses:Lio/ebeaninternal/server/core/bootup/BootupClasses;
invokevirtual io.ebeaninternal.server.core.bootup.BootupClasses.getEntities:()Ljava/util/List;
astore 1
start local 1 1: aload 0
aload 1
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.findInheritClasses:(Ljava/util/List;)V
2: aload 0
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.buildDeployTree:()V
3: aload 0
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.buildFinalTree:()V
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
1 5 1 entityList Ljava/util/List<Ljava/lang/Class<*>;>;
private void findInheritClasses(java.util.List<java.lang.Class<?>>);
descriptor: (Ljava/util/List;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
goto 5
StackMap locals: io.ebeaninternal.server.deploy.parse.DeployInherit java.util.List top java.util.Iterator
StackMap stack:
1: aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.Class
astore 2
start local 2 2: aload 0
aload 2
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.isInheritanceClass:(Ljava/lang/Class;)Z
ifeq 5
3: aload 0
aload 2
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.createInfo:(Ljava/lang/Class;)Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
astore 4
start local 4 4: aload 0
getfield io.ebeaninternal.server.deploy.parse.DeployInherit.deployMap:Ljava/util/Map;
aload 2
aload 4
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 4 end local 2 5: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
6: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
0 7 1 entityList Ljava/util/List<Ljava/lang/Class<*>;>;
2 5 2 cls Ljava/lang/Class<*>;
4 5 4 info Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
Signature: (Ljava/util/List<Ljava/lang/Class<*>;>;)V
MethodParameters:
Name Flags
entityList
private void buildDeployTree();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.deploy.parse.DeployInherit.deployMap:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
goto 5
StackMap locals: io.ebeaninternal.server.deploy.parse.DeployInherit top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.ebeaninternal.server.deploy.parse.DeployInheritInfo
astore 1
start local 1 2: aload 1
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.isRoot:()Z
ifne 5
3: aload 0
aload 1
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.getParent:()Ljava/lang/Class;
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.getInfo:(Ljava/lang/Class;)Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
astore 3
start local 3 4: aload 3
aload 1
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.addChild:(Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;)V
end local 3 end local 1 5: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
2 5 1 info Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
4 5 3 parent Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
private void buildFinalTree();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield io.ebeaninternal.server.deploy.parse.DeployInherit.deployMap:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 2
goto 4
StackMap locals: io.ebeaninternal.server.deploy.parse.DeployInherit top java.util.Iterator
StackMap stack:
1: aload 2
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.ebeaninternal.server.deploy.parse.DeployInheritInfo
astore 1
start local 1 2: aload 1
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.isRoot:()Z
ifeq 4
3: aload 0
aconst_null
aconst_null
aload 1
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.createFinalInfo:(Lio/ebeaninternal/server/deploy/InheritInfo;Lio/ebeaninternal/server/deploy/InheritInfo;Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;)V
end local 1 4: StackMap locals:
StackMap stack:
aload 2
invokeinterface java.util.Iterator.hasNext:()Z
ifne 1
5: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
2 4 1 deploy Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
private void createFinalInfo(io.ebeaninternal.server.deploy.InheritInfo, io.ebeaninternal.server.deploy.InheritInfo, io.ebeaninternal.server.deploy.parse.DeployInheritInfo);
descriptor: (Lio/ebeaninternal/server/deploy/InheritInfo;Lio/ebeaninternal/server/deploy/InheritInfo;Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new io.ebeaninternal.server.deploy.InheritInfo
dup
aload 1
aload 2
aload 3
invokespecial io.ebeaninternal.server.deploy.InheritInfo.<init>:(Lio/ebeaninternal/server/deploy/InheritInfo;Lio/ebeaninternal/server/deploy/InheritInfo;Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;)V
astore 4
start local 4 1: aload 2
ifnull 3
2: aload 2
aload 4
invokevirtual io.ebeaninternal.server.deploy.InheritInfo.addChild:(Lio/ebeaninternal/server/deploy/InheritInfo;)V
3: StackMap locals: io.ebeaninternal.server.deploy.InheritInfo
StackMap stack:
aload 0
getfield io.ebeaninternal.server.deploy.parse.DeployInherit.finalMap:Ljava/util/Map;
aload 4
invokevirtual io.ebeaninternal.server.deploy.InheritInfo.getType:()Ljava/lang/Class;
aload 4
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: aload 1
ifnonnull 6
5: aload 4
astore 1
6: StackMap locals:
StackMap stack:
aload 3
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.children:()Ljava/util/List;
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 6
goto 9
StackMap locals: io.ebeaninternal.server.deploy.parse.DeployInherit io.ebeaninternal.server.deploy.InheritInfo io.ebeaninternal.server.deploy.InheritInfo io.ebeaninternal.server.deploy.parse.DeployInheritInfo io.ebeaninternal.server.deploy.InheritInfo top java.util.Iterator
StackMap stack:
7: aload 6
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast io.ebeaninternal.server.deploy.parse.DeployInheritInfo
astore 5
start local 5 8: aload 0
aload 1
aload 4
aload 5
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.createFinalInfo:(Lio/ebeaninternal/server/deploy/InheritInfo;Lio/ebeaninternal/server/deploy/InheritInfo;Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;)V
end local 5 9: StackMap locals:
StackMap stack:
aload 6
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
10: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
0 11 1 root Lio/ebeaninternal/server/deploy/InheritInfo;
0 11 2 parent Lio/ebeaninternal/server/deploy/InheritInfo;
0 11 3 deploy Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
1 11 4 node Lio/ebeaninternal/server/deploy/InheritInfo;
8 9 5 childDeploy Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
MethodParameters:
Name Flags
root
parent
deploy
private io.ebeaninternal.server.deploy.parse.DeployInheritInfo getInfo(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield io.ebeaninternal.server.deploy.parse.DeployInherit.deployMap:Ljava/util/Map;
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast io.ebeaninternal.server.deploy.parse.DeployInheritInfo
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
0 1 1 cls Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
MethodParameters:
Name Flags
cls
private io.ebeaninternal.server.deploy.parse.DeployInheritInfo createInfo(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=7, args_size=2
start local 0 start local 1 0: new io.ebeaninternal.server.deploy.parse.DeployInheritInfo
dup
aload 1
invokespecial io.ebeaninternal.server.deploy.parse.DeployInheritInfo.<init>:(Ljava/lang/Class;)V
astore 2
start local 2 1: aload 0
aload 1
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.findParent:(Ljava/lang/Class;)Ljava/lang/Class;
astore 3
start local 3 2: aload 3
ifnull 4
3: aload 2
aload 3
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.setParent:(Ljava/lang/Class;)V
4: StackMap locals: io.ebeaninternal.server.deploy.parse.DeployInheritInfo java.lang.Class
StackMap stack:
aload 1
ldc Ljavax/persistence/Inheritance;
invokestatic io.ebean.util.AnnotationUtil.findAnnotationRecursive:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast javax.persistence.Inheritance
astore 4
start local 4 5: aload 4
ifnull 7
6: aload 4
invokeinterface javax.persistence.Inheritance.strategy:()Ljavax/persistence/InheritanceType;
pop
7: StackMap locals: javax.persistence.Inheritance
StackMap stack:
aload 1
ldc Ljavax/persistence/DiscriminatorColumn;
invokestatic io.ebean.util.AnnotationUtil.findAnnotationRecursive:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast javax.persistence.DiscriminatorColumn
astore 5
start local 5 8: aload 5
ifnull 13
9: aload 2
aload 5
invokeinterface javax.persistence.DiscriminatorColumn.name:()Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.setColumnName:(Ljava/lang/String;)V
10: aload 2
aload 5
invokeinterface javax.persistence.DiscriminatorColumn.discriminatorType:()Ljavax/persistence/DiscriminatorType;
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.setColumnType:(Ljavax/persistence/DiscriminatorType;)V
11: aload 2
aload 5
invokeinterface javax.persistence.DiscriminatorColumn.length:()I
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.setColumnLength:(I)V
12: aload 2
aload 5
invokeinterface javax.persistence.DiscriminatorColumn.columnDefinition:()Ljava/lang/String;
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.setColumnDefn:(Ljava/lang/String;)V
13: StackMap locals: javax.persistence.DiscriminatorColumn
StackMap stack:
aload 2
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.isAbstract:()Z
ifne 19
14: aload 1
ldc Ljavax/persistence/DiscriminatorValue;
invokestatic io.ebean.util.AnnotationUtil.findAnnotation:(Ljava/lang/reflect/AnnotatedElement;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
checkcast javax.persistence.DiscriminatorValue
astore 6
start local 6 15: aload 6
ifnull 18
16: aload 2
aload 6
invokeinterface javax.persistence.DiscriminatorValue.value:()Ljava/lang/String;
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.setDiscriminatorValue:(Ljava/lang/String;)V
17: goto 19
18: StackMap locals: javax.persistence.DiscriminatorValue
StackMap stack:
aload 2
aload 1
invokevirtual java.lang.Class.getSimpleName:()Ljava/lang/String;
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInheritInfo.setDiscriminatorValue:(Ljava/lang/String;)V
end local 6 19: StackMap locals:
StackMap stack:
aload 2
areturn
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 20 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
0 20 1 cls Ljava/lang/Class<*>;
1 20 2 info Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
2 20 3 parent Ljava/lang/Class<*>;
5 20 4 ia Ljavax/persistence/Inheritance;
8 20 5 da Ljavax/persistence/DiscriminatorColumn;
15 19 6 dv Ljavax/persistence/DiscriminatorValue;
Signature: (Ljava/lang/Class<*>;)Lio/ebeaninternal/server/deploy/parse/DeployInheritInfo;
MethodParameters:
Name Flags
cls
private java.lang.Class<?> findParent(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 2
start local 2 1: aload 0
aload 2
invokevirtual io.ebeaninternal.server.deploy.parse.DeployInherit.isInheritanceClass:(Ljava/lang/Class;)Z
ifeq 3
2: aload 2
areturn
3: StackMap locals: java.lang.Class
StackMap stack:
aconst_null
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
0 4 1 cls Ljava/lang/Class<*>;
1 4 2 superCls Ljava/lang/Class<*>;
Signature: (Ljava/lang/Class<*>;)Ljava/lang/Class<*>;
MethodParameters:
Name Flags
cls
private boolean isInheritanceClass(java.lang.Class<?>);
descriptor: (Ljava/lang/Class;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: StackMap locals:
StackMap stack:
aload 1
ldc Ljava/lang/Object;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 2
1: iconst_0
ireturn
2: StackMap locals:
StackMap stack:
aload 1
ldc Ljavax/persistence/Inheritance;
invokestatic io.ebean.util.AnnotationUtil.findAnnotationRecursive:(Ljava/lang/Class;Ljava/lang/Class;)Ljava/lang/annotation/Annotation;
astore 2
start local 2 3: aload 2
ifnull 5
4: iconst_1
ireturn
5: StackMap locals: java.lang.annotation.Annotation
StackMap stack:
aload 1
invokevirtual java.lang.Class.getSuperclass:()Ljava/lang/Class;
astore 1
end local 2 6: goto 0
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lio/ebeaninternal/server/deploy/parse/DeployInherit;
0 7 1 cls Ljava/lang/Class<*>;
3 6 2 a Ljava/lang/annotation/Annotation;
Signature: (Ljava/lang/Class<*>;)Z
MethodParameters:
Name Flags
cls
}
SourceFile: "DeployInherit.java"