Author: rmannibucau
Date: Mon Nov 25 13:29:30 2013
New Revision: 1545267
URL: http://svn.apache.org/r1545267
Log:
TOMEE-1089 set driverDelegateInitString only for JobStoreSupport children
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/timer/EjbTimerServiceImpl.java
Modified:
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/timer/EjbTimerServiceImpl.java
URL:
http://svn.apache.org/viewvc/tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/timer/EjbTimerServiceImpl.java?rev=1545267&r1=1545266&r2=1545267&view=diff
==============================================================================
---
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/timer/EjbTimerServiceImpl.java
(original)
+++
tomee/tomee/trunk/container/openejb-core/src/main/java/org/apache/openejb/core/timer/EjbTimerServiceImpl.java
Mon Nov 25 13:29:30 2013
@@ -39,6 +39,7 @@ import org.quartz.SchedulerException;
import org.quartz.Trigger;
import org.quartz.TriggerKey;
import org.quartz.impl.StdSchedulerFactory;
+import org.quartz.impl.jdbcjobstore.JobStoreSupport;
import org.quartz.impl.jdbcjobstore.StdJDBCDelegate;
import org.quartz.impl.triggers.AbstractTrigger;
import org.quartz.listeners.SchedulerListenerSupport;
@@ -253,8 +254,15 @@ public class EjbTimerServiceImpl impleme
// adding our custom persister
if (properties.containsKey("org.quartz.jobStore.class") &&
!properties.containsKey("org.quartz.jobStore.driverDelegateInitString")) {
- properties.put("org.quartz.jobStore.driverDelegateInitString",
- "triggerPersistenceDelegateClasses=" +
EJBCronTriggerPersistenceDelegate.class.getName());
+ try {
+ final Class<?> clazz =
EjbTimerServiceImpl.class.getClassLoader().loadClass(properties.getProperty("org.quartz.jobStore.class"));
+ if (JobStoreSupport.class.isAssignableFrom(clazz)) {
+
properties.put("org.quartz.jobStore.driverDelegateInitString",
+ "triggerPersistenceDelegateClasses=" +
EJBCronTriggerPersistenceDelegate.class.getName());
+ }
+ } catch (final Throwable th) {
+ // no-op
+ }
}
}