Package org.jbpm.process.core.timer.impl
Class ThreadPoolSchedulerService
- java.lang.Object
-
- org.jbpm.process.core.timer.impl.ThreadPoolSchedulerService
-
- All Implemented Interfaces:
org.drools.core.time.InternalSchedulerService,org.drools.core.time.SchedulerService,GlobalSchedulerService
public class ThreadPoolSchedulerService extends Object implements GlobalSchedulerService
ThreadPool based scheduler service backed byThreadPoolSchedulerService
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classThreadPoolSchedulerService.GlobalJDKJobHandle
-
Constructor Summary
Constructors Constructor Description ThreadPoolSchedulerService(int poolSize)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.drools.core.time.JobHandlebuildJobHandleForContext(NamedJobContext ctx)Builds JobHandle based on NamedJobContextvoidinitScheduler(org.drools.core.time.TimerService globalTimerService)Provides handle to inject timerService that owns this scheduler service and initialize itvoidinternalSchedule(org.drools.core.time.impl.TimerJobInstance timerJobInstance)booleanisTransactional()Indicates if given implementation of scheduler service supports transactional timer store.booleanisValid(GlobalTimerService.GlobalJobHandle jobHandle)Verifies if given job is still valid or it was already executed/vetoed.booleanremoveJob(org.drools.core.time.JobHandle jobHandle)booleanretryEnabled()Indicates if given implementation of scheduler service supports retries of failed timer jobsorg.drools.core.time.JobHandlescheduleJob(org.drools.core.time.Job job, org.drools.core.time.JobContext ctx, org.drools.core.time.Trigger trigger)voidsetInterceptor(SchedulerServiceInterceptor interceptor)Allows to set interceptor that will be used to schedule timer instancesvoidshutdown()Allows to shutdown the scheduler service-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jbpm.process.core.timer.GlobalSchedulerService
invalidate
-
-
-
-
Method Detail
-
initScheduler
public void initScheduler(org.drools.core.time.TimerService globalTimerService)
Description copied from interface:GlobalSchedulerServiceProvides handle to inject timerService that owns this scheduler service and initialize it- Specified by:
initSchedulerin interfaceGlobalSchedulerService- Parameters:
globalTimerService- owner of this scheduler service
-
shutdown
public void shutdown()
Description copied from interface:GlobalSchedulerServiceAllows to shutdown the scheduler service- Specified by:
shutdownin interfaceGlobalSchedulerService
-
scheduleJob
public org.drools.core.time.JobHandle scheduleJob(org.drools.core.time.Job job, org.drools.core.time.JobContext ctx, org.drools.core.time.Trigger trigger)- Specified by:
scheduleJobin interfaceorg.drools.core.time.SchedulerService
-
removeJob
public boolean removeJob(org.drools.core.time.JobHandle jobHandle)
- Specified by:
removeJobin interfaceorg.drools.core.time.SchedulerService
-
internalSchedule
public void internalSchedule(org.drools.core.time.impl.TimerJobInstance timerJobInstance)
- Specified by:
internalSchedulein interfaceorg.drools.core.time.InternalSchedulerService
-
buildJobHandleForContext
public org.drools.core.time.JobHandle buildJobHandleForContext(NamedJobContext ctx)
Description copied from interface:GlobalSchedulerServiceBuilds JobHandle based on NamedJobContext- Specified by:
buildJobHandleForContextin interfaceGlobalSchedulerService- Returns:
-
isTransactional
public boolean isTransactional()
Description copied from interface:GlobalSchedulerServiceIndicates if given implementation of scheduler service supports transactional timer store.- Specified by:
isTransactionalin interfaceGlobalSchedulerService- Returns:
-
setInterceptor
public void setInterceptor(SchedulerServiceInterceptor interceptor)
Description copied from interface:GlobalSchedulerServiceAllows to set interceptor that will be used to schedule timer instances- Specified by:
setInterceptorin interfaceGlobalSchedulerService
-
retryEnabled
public boolean retryEnabled()
Description copied from interface:GlobalSchedulerServiceIndicates if given implementation of scheduler service supports retries of failed timer jobs- Specified by:
retryEnabledin interfaceGlobalSchedulerService- Returns:
-
isValid
public boolean isValid(GlobalTimerService.GlobalJobHandle jobHandle)
Description copied from interface:GlobalSchedulerServiceVerifies if given job is still valid or it was already executed/vetoed. Especially important in multi node environments - cluster.- Specified by:
isValidin interfaceGlobalSchedulerService- Returns:
-
-