public class org.springframework.scheduling.quartz.SchedulerFactoryBean extends org.springframework.scheduling.quartz.SchedulerAccessor implements org.springframework.beans.factory.FactoryBean<org.quartz.Scheduler>, org.springframework.beans.factory.BeanNameAware, org.springframework.context.ApplicationContextAware, org.springframework.beans.factory.InitializingBean, org.springframework.beans.factory.DisposableBean, org.springframework.context.SmartLifecycle
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.scheduling.quartz.SchedulerFactoryBean
super_class: org.springframework.scheduling.quartz.SchedulerAccessor
{
public static final java.lang.String PROP_THREAD_COUNT;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.quartz.threadPool.threadCount"
public static final int DEFAULT_THREAD_COUNT;
descriptor: I
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: 10
private static final java.lang.ThreadLocal<org.springframework.core.io.ResourceLoader> configTimeResourceLoaderHolder;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Lorg/springframework/core/io/ResourceLoader;>;
private static final java.lang.ThreadLocal<java.util.concurrent.Executor> configTimeTaskExecutorHolder;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Ljava/util/concurrent/Executor;>;
private static final java.lang.ThreadLocal<javax.sql.DataSource> configTimeDataSourceHolder;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Ljavax/sql/DataSource;>;
private static final java.lang.ThreadLocal<javax.sql.DataSource> configTimeNonTransactionalDataSourceHolder;
descriptor: Ljava/lang/ThreadLocal;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/lang/ThreadLocal<Ljavax/sql/DataSource;>;
private org.quartz.SchedulerFactory schedulerFactory;
descriptor: Lorg/quartz/SchedulerFactory;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.lang.Class<? extends org.quartz.SchedulerFactory> schedulerFactoryClass;
descriptor: Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/lang/Class<+Lorg/quartz/SchedulerFactory;>;
private java.lang.String schedulerName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private org.springframework.core.io.Resource configLocation;
descriptor: Lorg/springframework/core/io/Resource;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.util.Properties quartzProperties;
descriptor: Ljava/util/Properties;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.util.concurrent.Executor taskExecutor;
descriptor: Ljava/util/concurrent/Executor;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private javax.sql.DataSource dataSource;
descriptor: Ljavax/sql/DataSource;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private javax.sql.DataSource nonTransactionalDataSource;
descriptor: Ljavax/sql/DataSource;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.util.Map<java.lang.String, ?> schedulerContextMap;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/String;*>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private java.lang.String applicationContextSchedulerContextKey;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private org.quartz.spi.JobFactory jobFactory;
descriptor: Lorg/quartz/spi/JobFactory;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private boolean jobFactorySet;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean autoStartup;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int startupDelay;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int phase;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean exposeSchedulerInRepository;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean waitForJobsToCompleteOnShutdown;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private java.lang.String beanName;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private org.springframework.context.ApplicationContext applicationContext;
descriptor: Lorg/springframework/context/ApplicationContext;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
private org.quartz.Scheduler scheduler;
descriptor: Lorg/quartz/Scheduler;
flags: (0x0002) ACC_PRIVATE
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
putstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeResourceLoaderHolder:Ljava/lang/ThreadLocal;
1: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
putstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeTaskExecutorHolder:Ljava/lang/ThreadLocal;
2: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
putstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeDataSourceHolder:Ljava/lang/ThreadLocal;
3: new java.lang.ThreadLocal
dup
invokespecial java.lang.ThreadLocal.<init>:()V
putstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeNonTransactionalDataSourceHolder:Ljava/lang/ThreadLocal;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.springframework.scheduling.quartz.SchedulerAccessor.<init>:()V
1: aload 0
ldc Lorg/quartz/impl/StdSchedulerFactory;
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerFactoryClass:Ljava/lang/Class;
2: aload 0
iconst_0
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactorySet:Z
3: aload 0
iconst_1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.autoStartup:Z
4: aload 0
iconst_0
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.startupDelay:I
5: aload 0
ldc 2147483647
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.phase:I
6: aload 0
iconst_0
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.exposeSchedulerInRepository:Z
7: aload 0
iconst_0
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.waitForJobsToCompleteOnShutdown:Z
8: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
public static org.springframework.core.io.ResourceLoader getConfigTimeResourceLoader();
descriptor: ()Lorg/springframework/core/io/ResourceLoader;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeResourceLoaderHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast org.springframework.core.io.ResourceLoader
areturn
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public static java.util.concurrent.Executor getConfigTimeTaskExecutor();
descriptor: ()Ljava/util/concurrent/Executor;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeTaskExecutorHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast java.util.concurrent.Executor
areturn
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public static javax.sql.DataSource getConfigTimeDataSource();
descriptor: ()Ljavax/sql/DataSource;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeDataSourceHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast javax.sql.DataSource
areturn
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public static javax.sql.DataSource getConfigTimeNonTransactionalDataSource();
descriptor: ()Ljavax/sql/DataSource;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeNonTransactionalDataSourceHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.get:()Ljava/lang/Object;
checkcast javax.sql.DataSource
areturn
LocalVariableTable:
Start End Slot Name Signature
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public void setSchedulerFactory(org.quartz.SchedulerFactory);
descriptor: (Lorg/quartz/SchedulerFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerFactory:Lorg/quartz/SchedulerFactory;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 schedulerFactory Lorg/quartz/SchedulerFactory;
MethodParameters:
Name Flags
schedulerFactory
public void setSchedulerFactoryClass(java.lang.Class<? extends org.quartz.SchedulerFactory>);
descriptor: (Ljava/lang/Class;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerFactoryClass:Ljava/lang/Class;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 schedulerFactoryClass Ljava/lang/Class<+Lorg/quartz/SchedulerFactory;>;
Signature: (Ljava/lang/Class<+Lorg/quartz/SchedulerFactory;>;)V
MethodParameters:
Name Flags
schedulerFactoryClass
public void setSchedulerName(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerName:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 schedulerName Ljava/lang/String;
MethodParameters:
Name Flags
schedulerName
public void setConfigLocation(org.springframework.core.io.Resource);
descriptor: (Lorg/springframework/core/io/Resource;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.configLocation:Lorg/springframework/core/io/Resource;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 configLocation Lorg/springframework/core/io/Resource;
MethodParameters:
Name Flags
configLocation
public void setQuartzProperties(java.util.Properties);
descriptor: (Ljava/util/Properties;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.quartzProperties:Ljava/util/Properties;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 quartzProperties Ljava/util/Properties;
MethodParameters:
Name Flags
quartzProperties
public void setTaskExecutor(java.util.concurrent.Executor);
descriptor: (Ljava/util/concurrent/Executor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.taskExecutor:Ljava/util/concurrent/Executor;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 taskExecutor Ljava/util/concurrent/Executor;
MethodParameters:
Name Flags
taskExecutor
public void setDataSource(javax.sql.DataSource);
descriptor: (Ljavax/sql/DataSource;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.dataSource:Ljavax/sql/DataSource;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 dataSource Ljavax/sql/DataSource;
MethodParameters:
Name Flags
dataSource
public void setNonTransactionalDataSource(javax.sql.DataSource);
descriptor: (Ljavax/sql/DataSource;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.nonTransactionalDataSource:Ljavax/sql/DataSource;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 nonTransactionalDataSource Ljavax/sql/DataSource;
MethodParameters:
Name Flags
nonTransactionalDataSource
public void setSchedulerContextAsMap(java.util.Map<java.lang.String, ?>);
descriptor: (Ljava/util/Map;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerContextMap:Ljava/util/Map;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 schedulerContextAsMap Ljava/util/Map<Ljava/lang/String;*>;
Signature: (Ljava/util/Map<Ljava/lang/String;*>;)V
MethodParameters:
Name Flags
schedulerContextAsMap
public void setApplicationContextSchedulerContextKey(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContextSchedulerContextKey:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 applicationContextSchedulerContextKey Ljava/lang/String;
MethodParameters:
Name Flags
applicationContextSchedulerContextKey
public void setJobFactory(org.quartz.spi.JobFactory);
descriptor: (Lorg/quartz/spi/JobFactory;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactory:Lorg/quartz/spi/JobFactory;
1: aload 0
iconst_1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactorySet:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 3 1 jobFactory Lorg/quartz/spi/JobFactory;
MethodParameters:
Name Flags
jobFactory
public void setAutoStartup(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.autoStartup:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 autoStartup Z
MethodParameters:
Name Flags
autoStartup
public boolean isAutoStartup();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.autoStartup:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
public void setPhase(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.phase:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 phase I
MethodParameters:
Name Flags
phase
public int getPhase();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.phase:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
public void setStartupDelay(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.startupDelay:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 startupDelay I
MethodParameters:
Name Flags
startupDelay
public void setExposeSchedulerInRepository(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.exposeSchedulerInRepository:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 exposeSchedulerInRepository Z
MethodParameters:
Name Flags
exposeSchedulerInRepository
public void setWaitForJobsToCompleteOnShutdown(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.waitForJobsToCompleteOnShutdown:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 waitForJobsToCompleteOnShutdown Z
MethodParameters:
Name Flags
waitForJobsToCompleteOnShutdown
public void setBeanName(java.lang.String);
descriptor: (Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.beanName:Ljava/lang/String;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 name Ljava/lang/String;
MethodParameters:
Name Flags
name
public void setApplicationContext(org.springframework.context.ApplicationContext);
descriptor: (Lorg/springframework/context/ApplicationContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContext:Lorg/springframework/context/ApplicationContext;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 2 1 applicationContext Lorg/springframework/context/ApplicationContext;
MethodParameters:
Name Flags
applicationContext
public void afterPropertiesSet();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.dataSource:Ljavax/sql/DataSource;
ifnonnull 2
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.nonTransactionalDataSource:Ljavax/sql/DataSource;
ifnull 2
1: aload 0
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.nonTransactionalDataSource:Ljavax/sql/DataSource;
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.dataSource:Ljavax/sql/DataSource;
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContext:Lorg/springframework/context/ApplicationContext;
ifnull 4
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
ifnonnull 4
3: aload 0
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContext:Lorg/springframework/context/ApplicationContext;
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
4: StackMap locals:
StackMap stack:
aload 0
aload 0
aload 0
invokevirtual org.springframework.scheduling.quartz.SchedulerFactoryBean.prepareSchedulerFactory:()Lorg/quartz/SchedulerFactory;
invokevirtual org.springframework.scheduling.quartz.SchedulerFactoryBean.prepareScheduler:(Lorg/quartz/SchedulerFactory;)Lorg/quartz/Scheduler;
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
5: aload 0
invokevirtual org.springframework.scheduling.quartz.SchedulerFactoryBean.registerListeners:()V
6: aload 0
invokevirtual org.springframework.scheduling.quartz.SchedulerFactoryBean.registerJobsAndTriggers:()V
7: goto 14
8: StackMap locals:
StackMap stack: java.lang.Exception
astore 1
start local 1 9: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
iconst_1
invokeinterface org.quartz.Scheduler.shutdown:(Z)V
10: goto 13
11: StackMap locals: org.springframework.scheduling.quartz.SchedulerFactoryBean java.lang.Exception
StackMap stack: java.lang.Exception
astore 2
start local 2 12: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.logger:Lorg/apache/commons/logging/Log;
ldc "Scheduler shutdown exception after registration failure"
aload 2
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;Ljava/lang/Throwable;)V
end local 2 13: StackMap locals:
StackMap stack:
aload 1
athrow
end local 1 14: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
9 14 1 ex Ljava/lang/Exception;
12 13 2 ex2 Ljava/lang/Exception;
Exception table:
from to target type
5 7 8 Class java.lang.Exception
9 10 11 Class java.lang.Exception
Exceptions:
throws java.lang.Exception
private org.quartz.SchedulerFactory prepareSchedulerFactory();
descriptor: ()Lorg/quartz/SchedulerFactory;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerFactory:Lorg/quartz/SchedulerFactory;
astore 1
start local 1 1: aload 1
ifnonnull 11
2: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerFactoryClass:Ljava/lang/Class;
invokestatic org.springframework.beans.BeanUtils.instantiateClass:(Ljava/lang/Class;)Ljava/lang/Object;
checkcast org.quartz.SchedulerFactory
astore 1
3: aload 1
instanceof org.quartz.impl.StdSchedulerFactory
ifeq 6
4: aload 0
aload 1
checkcast org.quartz.impl.StdSchedulerFactory
invokevirtual org.springframework.scheduling.quartz.SchedulerFactoryBean.initSchedulerFactory:(Lorg/quartz/impl/StdSchedulerFactory;)V
5: goto 11
6: StackMap locals: org.quartz.SchedulerFactory
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.configLocation:Lorg/springframework/core/io/Resource;
ifnonnull 8
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.quartzProperties:Ljava/util/Properties;
ifnonnull 8
7: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.taskExecutor:Ljava/util/concurrent/Executor;
ifnonnull 8
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.dataSource:Ljavax/sql/DataSource;
ifnull 11
8: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
9: new java.lang.StringBuilder
dup
ldc "StdSchedulerFactory required for applying Quartz properties: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
1 12 1 schedulerFactory Lorg/quartz/SchedulerFactory;
Exceptions:
throws org.quartz.SchedulerException, java.io.IOException
private void initSchedulerFactory(org.quartz.impl.StdSchedulerFactory);
descriptor: (Lorg/quartz/impl/StdSchedulerFactory;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: new java.util.Properties
dup
invokespecial java.util.Properties.<init>:()V
astore 2
start local 2 1: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
ifnull 5
2: aload 2
ldc "org.quartz.scheduler.classLoadHelper.class"
3: ldc Lorg/springframework/scheduling/quartz/ResourceLoaderClassLoadHelper;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
4: invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
5: StackMap locals: java.util.Properties
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.taskExecutor:Ljava/util/concurrent/Executor;
ifnull 10
6: aload 2
ldc "org.quartz.threadPool.class"
7: ldc Lorg/springframework/scheduling/quartz/LocalTaskExecutorThreadPool;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
8: invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
9: goto 12
10: StackMap locals:
StackMap stack:
aload 2
ldc "org.quartz.threadPool.class"
ldc Lorg/quartz/simpl/SimpleThreadPool;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
11: aload 2
ldc "org.quartz.threadPool.threadCount"
bipush 10
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
12: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.configLocation:Lorg/springframework/core/io/Resource;
ifnull 16
13: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isDebugEnabled:()Z
ifeq 15
14: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Loading Quartz config from ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.configLocation:Lorg/springframework/core/io/Resource;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokeinterface org.apache.commons.logging.Log.debug:(Ljava/lang/Object;)V
15: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.configLocation:Lorg/springframework/core/io/Resource;
invokestatic org.springframework.core.io.support.PropertiesLoaderUtils.fillProperties:(Ljava/util/Properties;Lorg/springframework/core/io/Resource;)V
16: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.quartzProperties:Ljava/util/Properties;
aload 2
invokestatic org.springframework.util.CollectionUtils.mergePropertiesIntoMap:(Ljava/util/Properties;Ljava/util/Map;)V
17: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.dataSource:Ljavax/sql/DataSource;
ifnull 19
18: aload 2
ldc "org.quartz.jobStore.class"
ldc Lorg/springframework/scheduling/quartz/LocalDataSourceJobStore;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
19: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerName:Ljava/lang/String;
ifnull 22
20: aload 2
ldc "org.quartz.scheduler.instanceName"
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerName:Ljava/lang/String;
invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
21: goto 29
22: StackMap locals:
StackMap stack:
aload 2
ldc "org.quartz.scheduler.instanceName"
invokevirtual java.util.Properties.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 3
start local 3 23: aload 3
ifnull 26
24: aload 0
aload 3
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerName:Ljava/lang/String;
25: goto 29
26: StackMap locals: java.lang.String
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.beanName:Ljava/lang/String;
ifnull 29
27: aload 2
ldc "org.quartz.scheduler.instanceName"
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.beanName:Ljava/lang/String;
invokevirtual java.util.Properties.setProperty:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/Object;
pop
28: aload 0
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.beanName:Ljava/lang/String;
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerName:Ljava/lang/String;
end local 3 29: StackMap locals:
StackMap stack:
aload 1
aload 2
invokevirtual org.quartz.impl.StdSchedulerFactory.initialize:(Ljava/util/Properties;)V
30: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 31 1 schedulerFactory Lorg/quartz/impl/StdSchedulerFactory;
1 31 2 mergedProps Ljava/util/Properties;
23 29 3 nameProp Ljava/lang/String;
Exceptions:
throws org.quartz.SchedulerException, java.io.IOException
MethodParameters:
Name Flags
schedulerFactory
private org.quartz.Scheduler prepareScheduler(org.quartz.SchedulerFactory);
descriptor: (Lorg/quartz/SchedulerFactory;)Lorg/quartz/Scheduler;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
ifnull 2
1: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeResourceLoaderHolder:Ljava/lang/ThreadLocal;
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.taskExecutor:Ljava/util/concurrent/Executor;
ifnull 4
3: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeTaskExecutorHolder:Ljava/lang/ThreadLocal;
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.taskExecutor:Ljava/util/concurrent/Executor;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
4: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.dataSource:Ljavax/sql/DataSource;
ifnull 6
5: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeDataSourceHolder:Ljava/lang/ThreadLocal;
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.dataSource:Ljavax/sql/DataSource;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
6: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.nonTransactionalDataSource:Ljavax/sql/DataSource;
ifnull 8
7: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeNonTransactionalDataSourceHolder:Ljava/lang/ThreadLocal;
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.nonTransactionalDataSource:Ljavax/sql/DataSource;
invokevirtual java.lang.ThreadLocal.set:(Ljava/lang/Object;)V
8: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerName:Ljava/lang/String;
invokevirtual org.springframework.scheduling.quartz.SchedulerFactoryBean.createScheduler:(Lorg/quartz/SchedulerFactory;Ljava/lang/String;)Lorg/quartz/Scheduler;
astore 2
start local 2 9: aload 0
aload 2
invokevirtual org.springframework.scheduling.quartz.SchedulerFactoryBean.populateSchedulerContext:(Lorg/quartz/Scheduler;)V
10: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactorySet:Z
ifne 12
aload 2
instanceof org.quartz.impl.RemoteScheduler
ifne 12
11: aload 0
new org.springframework.scheduling.quartz.AdaptableJobFactory
dup
invokespecial org.springframework.scheduling.quartz.AdaptableJobFactory.<init>:()V
putfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactory:Lorg/quartz/spi/JobFactory;
12: StackMap locals: org.quartz.Scheduler
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactory:Lorg/quartz/spi/JobFactory;
ifnull 18
13: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContext:Lorg/springframework/context/ApplicationContext;
ifnull 15
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactory:Lorg/quartz/spi/JobFactory;
instanceof org.springframework.context.ApplicationContextAware
ifeq 15
14: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactory:Lorg/quartz/spi/JobFactory;
checkcast org.springframework.context.ApplicationContextAware
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContext:Lorg/springframework/context/ApplicationContext;
invokeinterface org.springframework.context.ApplicationContextAware.setApplicationContext:(Lorg/springframework/context/ApplicationContext;)V
15: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactory:Lorg/quartz/spi/JobFactory;
instanceof org.springframework.scheduling.quartz.SchedulerContextAware
ifeq 17
16: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactory:Lorg/quartz/spi/JobFactory;
checkcast org.springframework.scheduling.quartz.SchedulerContextAware
aload 2
invokeinterface org.quartz.Scheduler.getContext:()Lorg/quartz/SchedulerContext;
invokeinterface org.springframework.scheduling.quartz.SchedulerContextAware.setSchedulerContext:(Lorg/quartz/SchedulerContext;)V
17: StackMap locals:
StackMap stack:
aload 2
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.jobFactory:Lorg/quartz/spi/JobFactory;
invokeinterface org.quartz.Scheduler.setJobFactory:(Lorg/quartz/spi/JobFactory;)V
18: StackMap locals:
StackMap stack:
aload 2
astore 4
19: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
ifnull 21
20: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeResourceLoaderHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
21: StackMap locals: org.springframework.scheduling.quartz.SchedulerFactoryBean org.quartz.SchedulerFactory org.quartz.Scheduler top org.quartz.Scheduler
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.taskExecutor:Ljava/util/concurrent/Executor;
ifnull 23
22: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeTaskExecutorHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
23: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.dataSource:Ljavax/sql/DataSource;
ifnull 25
24: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeDataSourceHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
25: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.nonTransactionalDataSource:Ljavax/sql/DataSource;
ifnull 27
26: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeNonTransactionalDataSourceHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
27: StackMap locals:
StackMap stack:
aload 4
areturn
end local 2 28: StackMap locals: org.springframework.scheduling.quartz.SchedulerFactoryBean org.quartz.SchedulerFactory
StackMap stack: java.lang.Throwable
astore 3
29: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
ifnull 31
30: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeResourceLoaderHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
31: StackMap locals: org.springframework.scheduling.quartz.SchedulerFactoryBean org.quartz.SchedulerFactory top java.lang.Throwable
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.taskExecutor:Ljava/util/concurrent/Executor;
ifnull 33
32: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeTaskExecutorHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
33: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.dataSource:Ljavax/sql/DataSource;
ifnull 35
34: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeDataSourceHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
35: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.nonTransactionalDataSource:Ljavax/sql/DataSource;
ifnull 37
36: getstatic org.springframework.scheduling.quartz.SchedulerFactoryBean.configTimeNonTransactionalDataSourceHolder:Ljava/lang/ThreadLocal;
invokevirtual java.lang.ThreadLocal.remove:()V
37: StackMap locals:
StackMap stack:
aload 3
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 38 1 schedulerFactory Lorg/quartz/SchedulerFactory;
9 28 2 scheduler Lorg/quartz/Scheduler;
Exception table:
from to target type
8 19 28 any
Exceptions:
throws org.quartz.SchedulerException
MethodParameters:
Name Flags
schedulerFactory
protected org.quartz.Scheduler createScheduler(org.quartz.SchedulerFactory, java.lang.String);
descriptor: (Lorg/quartz/SchedulerFactory;Ljava/lang/String;)Lorg/quartz/Scheduler;
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=12, args_size=3
start local 0 start local 1 start local 2 0: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
astore 3
start local 3 1: aload 3
invokevirtual java.lang.Thread.getContextClassLoader:()Ljava/lang/ClassLoader;
astore 4
start local 4 2: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
ifnull 5
3: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
invokeinterface org.springframework.core.io.ResourceLoader.getClassLoader:()Ljava/lang/ClassLoader;
aload 4
if_acmpeq 5
4: iconst_1
goto 6
StackMap locals: java.lang.Thread java.lang.ClassLoader
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 5
start local 5 7: iload 5
ifeq 9
8: aload 3
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.resourceLoader:Lorg/springframework/core/io/ResourceLoader;
invokeinterface org.springframework.core.io.ResourceLoader.getClassLoader:()Ljava/lang/ClassLoader;
invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
9: StackMap locals: int
StackMap stack:
invokestatic org.quartz.impl.SchedulerRepository.getInstance:()Lorg/quartz/impl/SchedulerRepository;
astore 6
start local 6 10: aload 6
dup
astore 7
monitorenter
11: aload 2
ifnull 12
aload 6
aload 2
invokevirtual org.quartz.impl.SchedulerRepository.lookup:(Ljava/lang/String;)Lorg/quartz/Scheduler;
goto 13
StackMap locals: org.quartz.impl.SchedulerRepository org.quartz.impl.SchedulerRepository
StackMap stack:
12: aconst_null
StackMap locals:
StackMap stack: org.quartz.Scheduler
13: astore 8
start local 8 14: aload 1
invokeinterface org.quartz.SchedulerFactory.getScheduler:()Lorg/quartz/Scheduler;
astore 9
start local 9 15: aload 9
aload 8
if_acmpne 19
16: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Active Scheduler of name '"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "' already registered "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
17: ldc "in Quartz SchedulerRepository. Cannot create a new Spring-managed Scheduler of the same name!"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
18: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
19: StackMap locals: org.quartz.Scheduler org.quartz.Scheduler
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.exposeSchedulerInRepository:Z
ifne 21
20: invokestatic org.quartz.impl.SchedulerRepository.getInstance:()Lorg/quartz/impl/SchedulerRepository;
aload 9
invokeinterface org.quartz.Scheduler.getSchedulerName:()Ljava/lang/String;
invokevirtual org.quartz.impl.SchedulerRepository.remove:(Ljava/lang/String;)Z
pop
21: StackMap locals:
StackMap stack:
aload 9
astore 11
aload 7
monitorexit
22: iload 5
ifeq 24
23: aload 3
aload 4
invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
24: StackMap locals: org.springframework.scheduling.quartz.SchedulerFactoryBean org.quartz.SchedulerFactory java.lang.String java.lang.Thread java.lang.ClassLoader int org.quartz.impl.SchedulerRepository org.quartz.impl.SchedulerRepository org.quartz.Scheduler org.quartz.Scheduler top org.quartz.Scheduler
StackMap stack:
aload 11
areturn
end local 9 end local 8 25: StackMap locals: org.springframework.scheduling.quartz.SchedulerFactoryBean org.quartz.SchedulerFactory java.lang.String java.lang.Thread java.lang.ClassLoader int org.quartz.impl.SchedulerRepository org.quartz.impl.SchedulerRepository
StackMap stack: java.lang.Throwable
aload 7
monitorexit
26: athrow
end local 6 27: StackMap locals: org.springframework.scheduling.quartz.SchedulerFactoryBean org.quartz.SchedulerFactory java.lang.String java.lang.Thread java.lang.ClassLoader int
StackMap stack: java.lang.Throwable
astore 10
28: iload 5
ifeq 30
29: aload 3
aload 4
invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
30: StackMap locals: org.springframework.scheduling.quartz.SchedulerFactoryBean org.quartz.SchedulerFactory java.lang.String java.lang.Thread java.lang.ClassLoader int top top top top java.lang.Throwable
StackMap stack:
aload 10
athrow
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 31 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 31 1 schedulerFactory Lorg/quartz/SchedulerFactory;
0 31 2 schedulerName Ljava/lang/String;
1 31 3 currentThread Ljava/lang/Thread;
2 31 4 threadContextClassLoader Ljava/lang/ClassLoader;
7 31 5 overrideClassLoader Z
10 27 6 repository Lorg/quartz/impl/SchedulerRepository;
14 25 8 existingScheduler Lorg/quartz/Scheduler;
15 25 9 newScheduler Lorg/quartz/Scheduler;
Exception table:
from to target type
11 22 25 any
25 26 25 any
9 22 27 any
25 27 27 any
Exceptions:
throws org.quartz.SchedulerException
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
schedulerFactory
schedulerName
private void populateSchedulerContext(org.quartz.Scheduler);
descriptor: (Lorg/quartz/Scheduler;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerContextMap:Ljava/util/Map;
ifnull 2
1: aload 1
invokeinterface org.quartz.Scheduler.getContext:()Lorg/quartz/SchedulerContext;
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.schedulerContextMap:Ljava/util/Map;
invokevirtual org.quartz.SchedulerContext.putAll:(Ljava/util/Map;)V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContextSchedulerContextKey:Ljava/lang/String;
ifnull 8
3: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContext:Lorg/springframework/context/ApplicationContext;
ifnonnull 7
4: new java.lang.IllegalStateException
dup
5: ldc "SchedulerFactoryBean needs to be set up in an ApplicationContext to be able to handle an 'applicationContextSchedulerContextKey'"
6: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 1
invokeinterface org.quartz.Scheduler.getContext:()Lorg/quartz/SchedulerContext;
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContextSchedulerContextKey:Ljava/lang/String;
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.applicationContext:Lorg/springframework/context/ApplicationContext;
invokevirtual org.quartz.SchedulerContext.put:(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 9 1 scheduler Lorg/quartz/Scheduler;
Exceptions:
throws org.quartz.SchedulerException
MethodParameters:
Name Flags
scheduler
protected void startScheduler(org.quartz.Scheduler, int);
descriptor: (Lorg/quartz/Scheduler;I)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=4, args_size=3
start local 0 start local 1 start local 2 0: iload 2
ifgt 4
1: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.logger:Lorg/apache/commons/logging/Log;
ldc "Starting Quartz Scheduler now"
invokeinterface org.apache.commons.logging.Log.info:(Ljava/lang/Object;)V
2: aload 1
invokeinterface org.quartz.Scheduler.start:()V
3: goto 12
4: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.logger:Lorg/apache/commons/logging/Log;
invokeinterface org.apache.commons.logging.Log.isInfoEnabled:()Z
ifeq 8
5: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.logger:Lorg/apache/commons/logging/Log;
new java.lang.StringBuilder
dup
ldc "Will start Quartz Scheduler ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface org.quartz.Scheduler.getSchedulerName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: ldc "] in "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " seconds"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: invokeinterface org.apache.commons.logging.Log.info:(Ljava/lang/Object;)V
8: StackMap locals:
StackMap stack:
new org.springframework.scheduling.quartz.SchedulerFactoryBean$1
dup
aload 0
iload 2
aload 1
invokespecial org.springframework.scheduling.quartz.SchedulerFactoryBean$1.<init>:(Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;ILorg/quartz/Scheduler;)V
astore 3
start local 3 9: aload 3
new java.lang.StringBuilder
dup
ldc "Quartz Scheduler ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokeinterface org.quartz.Scheduler.getSchedulerName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.lang.Thread.setName:(Ljava/lang/String;)V
10: aload 3
iconst_1
invokevirtual java.lang.Thread.setDaemon:(Z)V
11: aload 3
invokevirtual java.lang.Thread.start:()V
end local 3 12: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
0 13 1 scheduler Lorg/quartz/Scheduler;
0 13 2 startupDelay I
9 12 3 schedulerThread Ljava/lang/Thread;
Exceptions:
throws org.quartz.SchedulerException
MethodParameters:
Name Flags
scheduler final
startupDelay final
public org.quartz.Scheduler getScheduler();
descriptor: ()Lorg/quartz/Scheduler;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: ldc "No Scheduler set"
invokestatic org.springframework.util.Assert.state:(ZLjava/lang/String;)V
3: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
public org.quartz.Scheduler getObject();
descriptor: ()Lorg/quartz/Scheduler;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public java.lang.Class<? extends org.quartz.Scheduler> getObjectType();
descriptor: ()Ljava/lang/Class;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
ifnull 1
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
goto 2
StackMap locals:
StackMap stack:
1: ldc Lorg/quartz/Scheduler;
StackMap locals:
StackMap stack: java.lang.Class
2: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
Signature: ()Ljava/lang/Class<+Lorg/quartz/Scheduler;>;
public boolean isSingleton();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
public void start();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
ifnull 5
1: aload 0
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.startupDelay:I
invokevirtual org.springframework.scheduling.quartz.SchedulerFactoryBean.startScheduler:(Lorg/quartz/Scheduler;I)V
2: goto 5
3: StackMap locals:
StackMap stack: org.quartz.SchedulerException
astore 1
start local 1 4: new org.springframework.scheduling.SchedulingException
dup
ldc "Could not start Quartz Scheduler"
aload 1
invokespecial org.springframework.scheduling.SchedulingException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
4 5 1 ex Lorg/quartz/SchedulerException;
Exception table:
from to target type
1 2 3 Class org.quartz.SchedulerException
Exceptions:
throws org.springframework.scheduling.SchedulingException
public void stop();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
ifnull 5
1: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
invokeinterface org.quartz.Scheduler.standby:()V
2: goto 5
3: StackMap locals:
StackMap stack: org.quartz.SchedulerException
astore 1
start local 1 4: new org.springframework.scheduling.SchedulingException
dup
ldc "Could not stop Quartz Scheduler"
aload 1
invokespecial org.springframework.scheduling.SchedulingException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 1 5: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
4 5 1 ex Lorg/quartz/SchedulerException;
Exception table:
from to target type
1 2 3 Class org.quartz.SchedulerException
Exceptions:
throws org.springframework.scheduling.SchedulingException
public boolean isRunning();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
ifnull 6
1: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
invokeinterface org.quartz.Scheduler.isInStandbyMode:()Z
ifeq 2
iconst_0
goto 3
StackMap locals:
StackMap stack:
2: iconst_1
StackMap locals:
StackMap stack: int
3: ireturn
4: StackMap locals:
StackMap stack: org.quartz.SchedulerException
pop
5: iconst_0
ireturn
6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
Exception table:
from to target type
1 3 4 Class org.quartz.SchedulerException
Exceptions:
throws org.springframework.scheduling.SchedulingException
public void destroy();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
ifnull 3
1: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.logger:Lorg/apache/commons/logging/Log;
ldc "Shutting down Quartz Scheduler"
invokeinterface org.apache.commons.logging.Log.info:(Ljava/lang/Object;)V
2: aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.scheduler:Lorg/quartz/Scheduler;
aload 0
getfield org.springframework.scheduling.quartz.SchedulerFactoryBean.waitForJobsToCompleteOnShutdown:Z
invokeinterface org.quartz.Scheduler.shutdown:(Z)V
3: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/scheduling/quartz/SchedulerFactoryBean;
Exceptions:
throws org.quartz.SchedulerException
public java.lang.Object getObject();
descriptor: ()Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokevirtual org.springframework.scheduling.quartz.SchedulerFactoryBean.getObject:()Lorg/quartz/Scheduler;
areturn
LocalVariableTable:
Start End Slot Name Signature
Exceptions:
throws java.lang.Exception
}
Signature: Lorg/springframework/scheduling/quartz/SchedulerAccessor;Lorg/springframework/beans/factory/FactoryBean<Lorg/quartz/Scheduler;>;Lorg/springframework/beans/factory/BeanNameAware;Lorg/springframework/context/ApplicationContextAware;Lorg/springframework/beans/factory/InitializingBean;Lorg/springframework/beans/factory/DisposableBean;Lorg/springframework/context/SmartLifecycle;
SourceFile: "SchedulerFactoryBean.java"
NestMembers:
org.springframework.scheduling.quartz.SchedulerFactoryBean$1
InnerClasses:
org.springframework.scheduling.quartz.SchedulerFactoryBean$1