class io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory
super_class: java.lang.Object
{
private final boolean postConstructPresent;
descriptor: Z
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
void <init>(io.ebean.config.ServerConfig);
descriptor: (Lio/ebean/config/ServerConfig;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 // io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory this
start local 1 // io.ebean.config.ServerConfig serverConfig
0: .line 37
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 38
aload 0 /* this */
aload 1 /* serverConfig */
invokevirtual io.ebean.config.ServerConfig.getClassLoadConfig:()Lio/ebean/config/ClassLoadConfig;
invokevirtual io.ebean.config.ClassLoadConfig.isJavaxPostConstructPresent:()Z
putfield io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory.postConstructPresent:Z
2: .line 39
return
end local 1 // io.ebean.config.ServerConfig serverConfig
end local 0 // io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lio/ebeaninternal/server/deploy/BeanLifecycleAdapterFactory;
0 3 1 serverConfig Lio/ebean/config/ServerConfig;
MethodParameters:
Name Flags
serverConfig
void addLifecycleMethods(io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor<?>);
descriptor: (Lio/ebeaninternal/server/deploy/meta/DeployBeanDescriptor;)V
flags: (0x0000)
Code:
stack=6, locals=8, args_size=2
start local 0 // io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory this
start local 1 // io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor deployDesc
0: .line 46
aload 1 /* deployDesc */
invokevirtual io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor.getBeanType:()Ljava/lang/Class;
invokevirtual java.lang.Class.getMethods:()[Ljava/lang/reflect/Method;
astore 2 /* methods */
start local 2 // java.lang.reflect.Method[] methods
1: .line 49
new io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder
dup
invokespecial io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder.<init>:()V
astore 3 /* methodHolder */
start local 3 // io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder methodHolder
2: .line 50
aload 2 /* methods */
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 6
StackMap locals: io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor java.lang.reflect.Method[] io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder top int int java.lang.reflect.Method[]
StackMap stack:
3: aload 7
iload 5
aaload
astore 4 /* m */
start local 4 // java.lang.reflect.Method m
4: .line 51
aload 3 /* methodHolder */
aload 4 /* m */
aload 0 /* this */
getfield io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory.postConstructPresent:Z
invokevirtual io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder.checkMethod:(Ljava/lang/reflect/Method;Z)V
end local 4 // java.lang.reflect.Method m
5: .line 50
iinc 5 1
StackMap locals:
StackMap stack:
6: iload 5
iload 6
if_icmplt 3
7: .line 54
aload 3 /* methodHolder */
invokevirtual io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder.hasPersistMethods:()Z
ifeq 9
8: .line 56
aload 1 /* deployDesc */
new io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PersistAdapter
dup
new io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PersistMethodsHolder
dup
aload 3 /* methodHolder */
invokespecial io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PersistMethodsHolder.<init>:(Lio/ebeaninternal/server/deploy/BeanLifecycleAdapterFactory$MethodsHolder;)V
invokespecial io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PersistAdapter.<init>:(Lio/ebeaninternal/server/deploy/BeanLifecycleAdapterFactory$PersistMethodsHolder;)V
invokevirtual io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor.addPersistController:(Lio/ebean/event/BeanPersistController;)V
9: .line 59
StackMap locals: io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor java.lang.reflect.Method[] io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder
StackMap stack:
aload 3 /* methodHolder */
getfield io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder.postLoads:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifne 11
10: .line 61
aload 1 /* deployDesc */
new io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PostLoadAdapter
dup
aload 3 /* methodHolder */
getfield io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder.postLoads:Ljava/util/List;
invokespecial io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PostLoadAdapter.<init>:(Ljava/util/List;)V
invokevirtual io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor.addPostLoad:(Lio/ebean/event/BeanPostLoad;)V
11: .line 63
StackMap locals:
StackMap stack:
aload 3 /* methodHolder */
getfield io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder.postConstructs:Ljava/util/List;
invokeinterface java.util.List.isEmpty:()Z
ifne 13
12: .line 65
aload 1 /* deployDesc */
new io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PostConstructAdapter
dup
aload 3 /* methodHolder */
getfield io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder.postConstructs:Ljava/util/List;
invokespecial io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PostConstructAdapter.<init>:(Ljava/util/List;)V
invokevirtual io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor.addPostConstructListener:(Lio/ebean/event/BeanPostConstructListener;)V
13: .line 67
StackMap locals:
StackMap stack:
return
end local 3 // io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder methodHolder
end local 2 // java.lang.reflect.Method[] methods
end local 1 // io.ebeaninternal.server.deploy.meta.DeployBeanDescriptor deployDesc
end local 0 // io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lio/ebeaninternal/server/deploy/BeanLifecycleAdapterFactory;
0 14 1 deployDesc Lio/ebeaninternal/server/deploy/meta/DeployBeanDescriptor<*>;
1 14 2 methods [Ljava/lang/reflect/Method;
2 14 3 methodHolder Lio/ebeaninternal/server/deploy/BeanLifecycleAdapterFactory$MethodsHolder;
4 5 4 m Ljava/lang/reflect/Method;
Signature: (Lio/ebeaninternal/server/deploy/meta/DeployBeanDescriptor<*>;)V
MethodParameters:
Name Flags
deployDesc
static java.lang.reflect.Method[] toArray(java.util.List<java.lang.reflect.Method>);
descriptor: (Ljava/util/List;)[Ljava/lang/reflect/Method;
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 // java.util.List methodList
0: .line 145
aload 0 /* methodList */
aload 0 /* methodList */
invokeinterface java.util.List.size:()I
anewarray java.lang.reflect.Method
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.lang.reflect.Method[]
areturn
end local 0 // java.util.List methodList
LocalVariableTable:
Start End Slot Name Signature
0 1 0 methodList Ljava/util/List<Ljava/lang/reflect/Method;>;
Signature: (Ljava/util/List<Ljava/lang/reflect/Method;>;)[Ljava/lang/reflect/Method;
MethodParameters:
Name Flags
methodList
}
SourceFile: "BeanLifecycleAdapterFactory.java"
NestMembers:
io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PersistAdapter io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PersistMethodsHolder io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PostConstructAdapter io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PostLoadAdapter
InnerClasses:
private MethodsHolder = io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$MethodsHolder of io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory
private PersistAdapter = io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PersistAdapter of io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory
private PersistMethodsHolder = io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PersistMethodsHolder of io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory
private PostConstructAdapter = io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PostConstructAdapter of io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory
private PostLoadAdapter = io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory$PostLoadAdapter of io.ebeaninternal.server.deploy.BeanLifecycleAdapterFactory