public class SmartExecutorScheduler extends Object
| Modifier and Type | Field and Description |
|---|---|
protected Map<UUID,org.quartz.Scheduler> |
activeSchedulers
Contains running plugin instances.
|
| Modifier and Type | Method and Description |
|---|---|
protected org.quartz.TriggerBuilder<? extends org.quartz.Trigger> |
createTriggerBuilder(UUID uuid,
org.quartz.ScheduleBuilder<? extends org.quartz.Trigger> sb) |
protected void |
deleteScheduler(org.quartz.Scheduler scheduler,
UUID uuid) |
protected List<org.quartz.JobExecutionContext> |
getCurrentlyExecutingJobs(org.quartz.Scheduler scheduler) |
static SmartExecutorScheduler |
getInstance() |
org.gcube.vremanagement.executor.api.types.LaunchParameter |
getLaunchParameter(org.quartz.Scheduler scheduler,
org.quartz.JobKey jobKey) |
org.quartz.Scheduler |
getScheduler(UUID key) |
protected org.quartz.TriggerBuilder<? extends org.quartz.Trigger> |
getTriggerBuilderWithScheduling(UUID uuid,
org.gcube.vremanagement.executor.api.types.Scheduling scheduling) |
protected org.quartz.Scheduler |
reallySchedule(UUID uuid,
org.gcube.vremanagement.executor.api.types.LaunchParameter parameter)
Create the Scheduler using the strategy provided by LaunchParameter
|
protected void |
removeFromPersistence(boolean global,
UUID uuid,
boolean remove) |
UUID |
schedule(org.gcube.vremanagement.executor.api.types.LaunchParameter parameter)
Schedule a task execution
|
void |
stop(UUID uuid,
boolean stopOnly,
boolean remove)
Stop the execution of the Task identified by UUID
|
void |
stopAll() |
protected void |
stopLastcurrentExecution(org.quartz.Scheduler scheduler,
UUID uuid) |
public static SmartExecutorScheduler getInstance()
protected org.quartz.TriggerBuilder<? extends org.quartz.Trigger> createTriggerBuilder(UUID uuid, org.quartz.ScheduleBuilder<? extends org.quartz.Trigger> sb)
protected org.quartz.TriggerBuilder<? extends org.quartz.Trigger> getTriggerBuilderWithScheduling(UUID uuid, org.gcube.vremanagement.executor.api.types.Scheduling scheduling) throws org.gcube.vremanagement.executor.exception.LaunchException
org.gcube.vremanagement.executor.exception.LaunchExceptionprotected org.quartz.Scheduler reallySchedule(UUID uuid, org.gcube.vremanagement.executor.api.types.LaunchParameter parameter) throws org.gcube.vremanagement.executor.exception.LaunchException, org.quartz.SchedulerException
uuid - the UUID will be used to identify the taskparameter - LaunchParameter requested in service invocationorg.gcube.vremanagement.executor.exception.LaunchException - if the LaunchParameter does not contains a valid
scheduling strategyorg.quartz.SchedulerException - if the scheduler cannot be created by the
scheduler factorypublic UUID schedule(org.gcube.vremanagement.executor.api.types.LaunchParameter parameter) throws org.gcube.vremanagement.executor.exception.InputsNullException, org.gcube.vremanagement.executor.exception.PluginNotFoundException, org.gcube.vremanagement.executor.exception.LaunchException
parameter - LaunchParameter requested in service invocationorg.gcube.vremanagement.executor.exception.LaunchException - if the LaunchParameter does not contains a valid
scheduling strategyorg.gcube.vremanagement.executor.exception.InputsNullException - if provided input map is nullorg.gcube.vremanagement.executor.exception.PluginNotFoundException - if the request plugin is not available on
this smart executor instancepublic org.quartz.Scheduler getScheduler(UUID key)
protected void stopLastcurrentExecution(org.quartz.Scheduler scheduler,
UUID uuid)
throws org.gcube.vremanagement.executor.exception.UnableToInterruptTaskException
org.gcube.vremanagement.executor.exception.UnableToInterruptTaskExceptionprotected void deleteScheduler(org.quartz.Scheduler scheduler,
UUID uuid)
throws org.gcube.vremanagement.executor.exception.SchedulerRemoveException
org.gcube.vremanagement.executor.exception.SchedulerRemoveExceptionprotected List<org.quartz.JobExecutionContext> getCurrentlyExecutingJobs(org.quartz.Scheduler scheduler) throws org.quartz.SchedulerException
org.quartz.SchedulerExceptionpublic org.gcube.vremanagement.executor.api.types.LaunchParameter getLaunchParameter(org.quartz.Scheduler scheduler,
org.quartz.JobKey jobKey)
throws org.quartz.SchedulerException
org.quartz.SchedulerExceptionprotected void removeFromPersistence(boolean global,
UUID uuid,
boolean remove)
throws SchedulePersistenceException
SchedulePersistenceExceptionpublic void stop(UUID uuid, boolean stopOnly, boolean remove) throws org.gcube.vremanagement.executor.exception.UnableToInterruptTaskException, org.gcube.vremanagement.executor.exception.SchedulerRemoveException, SchedulePersistenceException, org.quartz.SchedulerException
uuid - which identify the TaskstopOnly - remove - : when the Task is a Scheduled one indicate if the Task
has to be released or to be removed (the argument is set to true when
an explicit request arrive to remove the scheduled task)org.gcube.vremanagement.executor.exception.UnableToInterruptTaskExceptionorg.gcube.vremanagement.executor.exception.SchedulerRemoveExceptionSchedulePersistenceExceptionSchedulerNotFoundExceptionorg.quartz.SchedulerExceptionpublic void stopAll()
Copyright © 2016. All Rights Reserved.