org.jbpm.runtime.manager.impl.tx
Class TransactionAwareSchedulerServiceInterceptor
java.lang.Object
org.jbpm.process.core.timer.impl.DelegateSchedulerServiceInterceptor
org.jbpm.runtime.manager.impl.tx.TransactionAwareSchedulerServiceInterceptor
- All Implemented Interfaces:
- SchedulerServiceInterceptor
public class TransactionAwareSchedulerServiceInterceptor
- extends DelegateSchedulerServiceInterceptor
Transaction aware scheduler service interceptor that will delay actual scheduling of the
timer job instance to the afterCompletion phase of JTA transaction. Scheduling will only
take place when transaction was successfully committed. That will make the timers
transactional to avoid any issues with having timer registered even though transaction was rolled
back.
NOTE:This interceptor should not be used for GlobalSchedulerService
that are by nature
transactional e.g. Quartz with Data Base job store.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
TransactionAwareSchedulerServiceInterceptor
public TransactionAwareSchedulerServiceInterceptor(RuntimeEnvironment environment,
RuntimeManager manager,
GlobalSchedulerService schedulerService)
internalSchedule
public final void internalSchedule(org.drools.core.time.impl.TimerJobInstance timerJobInstance)
- Specified by:
internalSchedule
in interface SchedulerServiceInterceptor
- Overrides:
internalSchedule
in class DelegateSchedulerServiceInterceptor
hasEnvironmentEntry
protected boolean hasEnvironmentEntry(String name,
Object value)
getTransactionManager
protected org.drools.persistence.TransactionManager getTransactionManager(org.drools.core.time.JobContext jobContext)
getEnvironment
protected Environment getEnvironment(org.drools.core.time.JobContext jobContext)
getProcessInstancId
protected Long getProcessInstancId(org.drools.core.time.JobContext jobContext)
Copyright © 2001-2014 JBoss by Red Hat. All Rights Reserved.