* </p>
*/
public void initialize(ClassLoadHelper loadHelper,
SchedulerSignaler signaler) throws SchedulerConfigException {
if (dsName == null) { throw new SchedulerConfigException(
"DataSource name not set."); }
classLoadHelper = loadHelper;
this.signaler = signaler;
if (!getUseDBLocks() && !isClustered()) {
getLog()
.info(
"Using thread monitor-based data access locking (synchronization).");
lockHandler = new SimpleSemaphore();
} else {
getLog()
.info(
"Using db table-based data access locking (synchronization).");
lockHandler = new StdRowLockSemaphore(getTablePrefix(),
getSelectWithLockSQL());
}
if (!isClustered()) {
try {
cleanVolatileTriggerAndJobs();
} catch (SchedulerException se) {
throw new SchedulerConfigException(
"Failure occured during job recovery.", se);
}
}
}