public abstract class RemoteMBeanScheduler extends Object implements Scheduler
An implementation of the Scheduler
interface that remotely
proxies all method calls to the equivalent call on a given QuartzScheduler
instance, via JMX.
A user must create a subclass to implement the actual connection to the remote MBeanServer using their application specific connector.
Scheduler
,
QuartzScheduler
DEFAULT_FAIL_OVER_GROUP, DEFAULT_GROUP, DEFAULT_RECOVERY_GROUP, FAILED_JOB_ORIGINAL_TRIGGER_FIRETIME_IN_MILLISECONDS, FAILED_JOB_ORIGINAL_TRIGGER_GROUP, FAILED_JOB_ORIGINAL_TRIGGER_NAME, FAILED_JOB_ORIGINAL_TRIGGER_SCHEDULED_FIRETIME_IN_MILLISECONDS
Constructor and Description |
---|
RemoteMBeanScheduler() |
Modifier and Type | Method and Description |
---|---|
void |
addCalendar(String calName,
Calendar calendar,
boolean replace,
boolean updateTriggers)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
addJob(JobDetail jobDetail,
boolean replace)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
addJob(JobDetail jobDetail,
boolean replace,
boolean storeNonDurableWhileAwaitingScheduling)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
boolean |
checkExists(JobKey jobKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
boolean |
checkExists(TriggerKey triggerKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
void |
clear()
|
boolean |
deleteCalendar(String calName)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
boolean |
deleteJob(JobKey jobKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
boolean |
deleteJobs(List<JobKey> jobKeys)
Delete the identified
Job s from the Scheduler - and any
associated Trigger s. |
protected abstract Object |
getAttribute(String attribute)
Get the given attribute of the remote Scheduler MBean.
|
protected abstract AttributeList |
getAttributes(String[] attributes)
Get the given attributes of the remote Scheduler MBean.
|
Calendar |
getCalendar(String calName)
Calls th0e equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
List<String> |
getCalendarNames()
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
SchedulerContext |
getContext()
Returns the
SchedulerContext of the Scheduler . |
List<JobExecutionContext> |
getCurrentlyExecutingJobs()
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
JobDetail |
getJobDetail(JobKey jobKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
List<String> |
getJobGroupNames()
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
Set<JobKey> |
getJobKeys(GroupMatcher<JobKey> matcher)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
ListenerManager |
getListenerManager()
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
SchedulerMetaData |
getMetaData()
Get a
SchedulerMetaData object describing the settings
and capabilities of the scheduler instance. |
Set<String> |
getPausedTriggerGroups()
Get the names of all
groups that are paused. |
String |
getSchedulerInstanceId()
Returns the instance Id of the
Scheduler . |
String |
getSchedulerName()
Returns the name of the
Scheduler . |
protected ObjectName |
getSchedulerObjectName()
Get the name under which the Scheduler MBean is registered on the
remote MBean server.
|
Trigger |
getTrigger(TriggerKey triggerKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
List<String> |
getTriggerGroupNames()
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
Set<TriggerKey> |
getTriggerKeys(GroupMatcher<TriggerKey> matcher)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
List<Trigger> |
getTriggersOfJob(JobKey jobKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
Trigger.TriggerState |
getTriggerState(TriggerKey triggerKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
abstract void |
initialize()
Initialize this RemoteMBeanScheduler instance, connecting to the
remote MBean server.
|
boolean |
interrupt(JobKey jobKey)
Request the interruption, within this Scheduler instance, of all
currently executing instances of the identified
Job , which
must be an implementor of the InterruptableJob interface. |
boolean |
interrupt(String fireInstanceId)
Request the interruption, within this Scheduler instance, of the
identified executing
Job instance, which
must be an implementor of the InterruptableJob interface. |
protected abstract Object |
invoke(String operationName,
Object[] params,
String[] signature)
Invoke the given operation on the remote Scheduler MBean.
|
boolean |
isInStandbyMode()
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
boolean |
isShutdown()
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
boolean |
isStarted()
Whether the scheduler has been started.
|
void |
pauseAll()
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
pauseJob(JobKey jobKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
pauseJobs(GroupMatcher<JobKey> matcher)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
pauseTrigger(TriggerKey triggerKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
pauseTriggers(GroupMatcher<TriggerKey> matcher)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
Date |
rescheduleJob(TriggerKey triggerKey,
Trigger newTrigger)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
resetTriggerFromErrorState(TriggerKey triggerKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
resumeAll()
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
resumeJob(JobKey jobKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
resumeJobs(GroupMatcher<JobKey> matcher)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
resumeTrigger(TriggerKey triggerKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
resumeTriggers(GroupMatcher<TriggerKey> matcher)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
scheduleJob(JobDetail jobDetail,
Set<? extends Trigger> triggersForJob,
boolean replace)
Schedule the given job with the related set of triggers.
|
Date |
scheduleJob(JobDetail jobDetail,
Trigger trigger)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
Date |
scheduleJob(Trigger trigger)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
scheduleJobs(Map<JobDetail,Set<? extends Trigger>> triggersAndJobs,
boolean replace)
Schedule all of the given jobs with the related set of triggers.
|
void |
setJobFactory(JobFactory factory)
Set the
JobFactory that will be responsible for producing
instances of Job classes. |
void |
setSchedulerObjectName(ObjectName schedulerObjectName)
Set the name under which the Scheduler MBean is registered on the
remote MBean server.
|
void |
setSchedulerObjectName(String schedulerObjectName)
Set the name under which the Scheduler MBean is registered on the
remote MBean server.
|
void |
shutdown()
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
void |
shutdown(boolean waitForJobsToComplete)
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
void |
standby()
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
void |
start()
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
void |
startDelayed(int seconds)
Calls the equivalent method on the 'proxied'
QuartzScheduler . |
void |
triggerJob(JobKey jobKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
void |
triggerJob(JobKey jobKey,
JobDataMap data)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
boolean |
unscheduleJob(TriggerKey triggerKey)
Calls the equivalent method on the 'proxied'
QuartzScheduler ,
passing the SchedulingContext associated with this
instance. |
boolean |
unscheduleJobs(List<TriggerKey> triggerKeys)
Remove all of the indicated
s from the scheduler. |
protected ObjectName getSchedulerObjectName()
public void setSchedulerObjectName(String schedulerObjectName) throws SchedulerException
SchedulerException
public void setSchedulerObjectName(ObjectName schedulerObjectName) throws SchedulerException
SchedulerException
public abstract void initialize() throws SchedulerException
SchedulerException
protected abstract Object getAttribute(String attribute) throws SchedulerException
SchedulerException
protected abstract AttributeList getAttributes(String[] attributes) throws SchedulerException
SchedulerException
protected abstract Object invoke(String operationName, Object[] params, String[] signature) throws SchedulerException
SchedulerException
public String getSchedulerName() throws SchedulerException
Returns the name of the Scheduler
.
getSchedulerName
in interface Scheduler
SchedulerException
public String getSchedulerInstanceId() throws SchedulerException
Returns the instance Id of the Scheduler
.
getSchedulerInstanceId
in interface Scheduler
SchedulerException
public SchedulerMetaData getMetaData() throws SchedulerException
Scheduler
SchedulerMetaData
object describing the settings
and capabilities of the scheduler instance.
Note that the data returned is an 'instantaneous' snap-shot, and that as soon as it's returned, the meta data values may be different.
getMetaData
in interface Scheduler
SchedulerException
public SchedulerContext getContext() throws SchedulerException
Returns the SchedulerContext
of the Scheduler
.
getContext
in interface Scheduler
SchedulerException
public void start() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
start
in interface Scheduler
SchedulerException
- if shutdown()
has been called, or there is an
error within the Scheduler
.Scheduler.startDelayed(int)
,
Scheduler.standby()
,
Scheduler.shutdown()
public void startDelayed(int seconds) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
startDelayed
in interface Scheduler
SchedulerException
- if shutdown()
has been called, or there is an
error within the Scheduler
.Scheduler.start()
,
Scheduler.standby()
,
Scheduler.shutdown()
public void standby() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
standby
in interface Scheduler
SchedulerException
Scheduler.start()
,
Scheduler.pauseAll()
public boolean isStarted() throws SchedulerException
Note: This only reflects whether
has ever
been called on this Scheduler, so it will return start()
true
even
if the Scheduler
is currently in standby mode or has been
since shutdown.
isStarted
in interface Scheduler
SchedulerException
start()
,
isShutdown()
,
isInStandbyMode()
public boolean isInStandbyMode() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
isInStandbyMode
in interface Scheduler
SchedulerException
Scheduler.standby()
,
Scheduler.start()
public void shutdown() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
shutdown
in interface Scheduler
SchedulerException
Scheduler.shutdown(boolean)
public void shutdown(boolean waitForJobsToComplete) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
shutdown
in interface Scheduler
waitForJobsToComplete
- if true
the scheduler will not allow this method
to return until all currently executing jobs have completed.SchedulerException
Scheduler.shutdown()
public boolean isShutdown() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
isShutdown
in interface Scheduler
SchedulerException
public List<JobExecutionContext> getCurrentlyExecutingJobs() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
getCurrentlyExecutingJobs
in interface Scheduler
SchedulerException
JobExecutionContext
public Date scheduleJob(JobDetail jobDetail, Trigger trigger) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
scheduleJob
in interface Scheduler
SchedulerException
- if the Job or Trigger cannot be added to the Scheduler, or
there is an internal Scheduler error.public Date scheduleJob(Trigger trigger) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
scheduleJob
in interface Scheduler
SchedulerException
- if the indicated Job does not exist, or the Trigger cannot be
added to the Scheduler, or there is an internal Scheduler
error.public void addJob(JobDetail jobDetail, boolean replace) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
addJob
in interface Scheduler
SchedulerException
- if there is an internal Scheduler error, or if the Job is not
durable, or a Job with the same name already exists, and
replace
is false
.Scheduler.addJob(JobDetail, boolean, boolean)
public void addJob(JobDetail jobDetail, boolean replace, boolean storeNonDurableWhileAwaitingScheduling) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
addJob
in interface Scheduler
SchedulerException
- if there is an internal Scheduler error, or if the Job is not
durable, or a Job with the same name already exists, and
replace
is false
.public boolean deleteJob(JobKey jobKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
deleteJob
in interface Scheduler
SchedulerException
- if there is an internal Scheduler error.public boolean unscheduleJob(TriggerKey triggerKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
unscheduleJob
in interface Scheduler
SchedulerException
public boolean deleteJobs(List<JobKey> jobKeys) throws SchedulerException
Scheduler
Job
s from the Scheduler - and any
associated Trigger
s.
Note that while this bulk operation is likely more efficient than
invoking deleteJob(JobKey jobKey)
several
times, it may have the adverse affect of holding data locks for a
single long duration of time (rather than lots of small durations
of time).
deleteJobs
in interface Scheduler
SchedulerException
- if there is an internal Scheduler error.public void scheduleJobs(Map<JobDetail,Set<? extends Trigger>> triggersAndJobs, boolean replace) throws SchedulerException
Scheduler
If any of the given jobs or triggers already exist (or more specifically, if the keys are not unique) and the replace parameter is not set to true then an exception will be thrown.
scheduleJobs
in interface Scheduler
ObjectAlreadyExistsException
- if the job/trigger keys
are not unique and the replace flag is not set to true.SchedulerException
public void scheduleJob(JobDetail jobDetail, Set<? extends Trigger> triggersForJob, boolean replace) throws SchedulerException
Scheduler
If any of the given job or triggers already exist (or more specifically, if the keys are not unique) and the replace parameter is not set to true then an exception will be thrown.
scheduleJob
in interface Scheduler
ObjectAlreadyExistsException
- if the job/trigger keys
are not unique and the replace flag is not set to true.SchedulerException
public boolean unscheduleJobs(List<TriggerKey> triggerKeys) throws SchedulerException
Scheduler
Trigger
s from the scheduler.
If the related job does not have any other triggers, and the job is not durable, then the job will also be deleted.
Note that while this bulk operation is likely more efficient than
invoking unscheduleJob(TriggerKey triggerKey)
several
times, it may have the adverse affect of holding data locks for a
single long duration of time (rather than lots of small durations
of time).
unscheduleJobs
in interface Scheduler
SchedulerException
public Date rescheduleJob(TriggerKey triggerKey, Trigger newTrigger) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
rescheduleJob
in interface Scheduler
triggerKey
- identity of the trigger to replacenewTrigger
- The new Trigger
to be stored.null
if a Trigger
with the given
name & group was not found and removed from the store (and the
new trigger is therefore not stored), otherwise
the first fire time of the newly scheduled trigger is returned.SchedulerException
public void triggerJob(JobKey jobKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
triggerJob
in interface Scheduler
SchedulerException
public void triggerJob(JobKey jobKey, JobDataMap data) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
triggerJob
in interface Scheduler
data
- the (possibly null
) JobDataMap to be
associated with the trigger that fires the job immediately.SchedulerException
public void pauseTrigger(TriggerKey triggerKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
pauseTrigger
in interface Scheduler
SchedulerException
Scheduler.resumeTrigger(TriggerKey)
public void pauseTriggers(GroupMatcher<TriggerKey> matcher) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
pauseTriggers
in interface Scheduler
matcher
- The matcher to evaluate against know groupsSchedulerException
Scheduler.resumeTriggers(org.quartz.impl.matchers.GroupMatcher)
public void pauseJob(JobKey jobKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
pauseJob
in interface Scheduler
SchedulerException
Scheduler.resumeJob(JobKey)
public void pauseJobs(GroupMatcher<JobKey> matcher) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
pauseJobs
in interface Scheduler
matcher
- The matcher to evaluate against know groupsSchedulerException
- On errorScheduler.resumeJobs(org.quartz.impl.matchers.GroupMatcher)
public void resumeTrigger(TriggerKey triggerKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
resumeTrigger
in interface Scheduler
SchedulerException
Scheduler.pauseTrigger(TriggerKey)
public void resumeTriggers(GroupMatcher<TriggerKey> matcher) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
resumeTriggers
in interface Scheduler
matcher
- The matcher to evaluate against know paused groupsSchedulerException
- On errorScheduler.pauseTriggers(org.quartz.impl.matchers.GroupMatcher)
public void resumeJob(JobKey jobKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
resumeJob
in interface Scheduler
SchedulerException
Scheduler.pauseJob(JobKey)
public void resumeJobs(GroupMatcher<JobKey> matcher) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
resumeJobs
in interface Scheduler
matcher
- The matcher to evaluate against known paused groupsSchedulerException
- On errorScheduler.pauseJobs(GroupMatcher)
public void pauseAll() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
pauseAll
in interface Scheduler
SchedulerException
Scheduler.resumeAll()
,
Scheduler.pauseTriggers(org.quartz.impl.matchers.GroupMatcher)
,
Scheduler.standby()
public void resumeAll() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
resumeAll
in interface Scheduler
SchedulerException
Scheduler.pauseAll()
public List<String> getJobGroupNames() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
getJobGroupNames
in interface Scheduler
SchedulerException
public Set<JobKey> getJobKeys(GroupMatcher<JobKey> matcher) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
getJobKeys
in interface Scheduler
matcher
- Matcher to evaluate against known groupsSchedulerException
- On errorpublic List<Trigger> getTriggersOfJob(JobKey jobKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
getTriggersOfJob
in interface Scheduler
SchedulerException
public List<String> getTriggerGroupNames() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
getTriggerGroupNames
in interface Scheduler
SchedulerException
public Set<TriggerKey> getTriggerKeys(GroupMatcher<TriggerKey> matcher) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
getTriggerKeys
in interface Scheduler
matcher
- Matcher to evaluate against known groupsSchedulerException
- On errorpublic JobDetail getJobDetail(JobKey jobKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
getJobDetail
in interface Scheduler
SchedulerException
public Trigger getTrigger(TriggerKey triggerKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
getTrigger
in interface Scheduler
SchedulerException
public boolean checkExists(JobKey jobKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
checkExists
in interface Scheduler
jobKey
- the identifier to check forSchedulerException
public boolean checkExists(TriggerKey triggerKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
checkExists
in interface Scheduler
triggerKey
- the identifier to check forSchedulerException
public void clear() throws SchedulerException
Scheduler
clear
in interface Scheduler
SchedulerException
public Trigger.TriggerState getTriggerState(TriggerKey triggerKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
getTriggerState
in interface Scheduler
SchedulerException
Trigger.TriggerState
public void resetTriggerFromErrorState(TriggerKey triggerKey) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
resetTriggerFromErrorState
in interface Scheduler
SchedulerException
Trigger.TriggerState
public void addCalendar(String calName, Calendar calendar, boolean replace, boolean updateTriggers) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
addCalendar
in interface Scheduler
updateTriggers
- whether or not to update existing triggers that
referenced the already existing calendar so that they are 'correct'
based on the new trigger.SchedulerException
- if there is an internal Scheduler error, or a Calendar with
the same name already exists, and replace
is
false
.public boolean deleteCalendar(String calName) throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
deleteCalendar
in interface Scheduler
SchedulerException
- if there is an internal Scheduler error, or one or more
triggers reference the calendarpublic Calendar getCalendar(String calName) throws SchedulerException
Calls th0e equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
getCalendar
in interface Scheduler
SchedulerException
public List<String> getCalendarNames() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
,
passing the SchedulingContext
associated with this
instance.
getCalendarNames
in interface Scheduler
SchedulerException
public Set<String> getPausedTriggerGroups() throws SchedulerException
Scheduler
Trigger
groups that are paused.getPausedTriggerGroups
in interface Scheduler
SchedulerException
Scheduler.getPausedTriggerGroups()
public ListenerManager getListenerManager() throws SchedulerException
Calls the equivalent method on the 'proxied' QuartzScheduler
.
getListenerManager
in interface Scheduler
ListenerManager
SchedulerException
- if the scheduler is not localListenerManager
,
JobListener
,
TriggerListener
,
SchedulerListener
public boolean interrupt(JobKey jobKey) throws UnableToInterruptJobException
Scheduler
Job
, which
must be an implementor of the InterruptableJob
interface.
If more than one instance of the identified job is currently executing,
the InterruptableJob#interrupt()
method will be called on
each instance. However, there is a limitation that in the case that
interrupt()
on one instances throws an exception, all
remaining instances (that have not yet been interrupted) will not have
their interrupt()
method called.
This method is not cluster aware. That is, it will only interrupt instances of the identified InterruptableJob currently executing in this Scheduler instance, not across the entire cluster.
interrupt
in interface Scheduler
UnableToInterruptJobException
- if the job does not implement
InterruptableJob
, or there is an exception while
interrupting the job.Scheduler.interrupt(JobKey)
public boolean interrupt(String fireInstanceId) throws UnableToInterruptJobException
Scheduler
Job
instance, which
must be an implementor of the InterruptableJob
interface.
This method is not cluster aware. That is, it will only interrupt instances of the identified InterruptableJob currently executing in this Scheduler instance, not across the entire cluster.
interrupt
in interface Scheduler
fireInstanceId
- the unique identifier of the job instance to
be interrupted (see JobExecutionContext.getFireInstanceId()
UnableToInterruptJobException
- if the job does not implement
InterruptableJob
, or there is an exception while
interrupting the job.InterruptableJob.interrupt()
,
Scheduler.getCurrentlyExecutingJobs()
,
JobExecutionContext.getFireInstanceId()
,
Scheduler.interrupt(JobKey)
public void setJobFactory(JobFactory factory) throws SchedulerException
Scheduler
JobFactory
that will be responsible for producing
instances of Job
classes.
JobFactories may be of use to those wishing to have their application
produce Job
instances via some special mechanism, such as to
give the opportunity for dependency injection.
setJobFactory
in interface Scheduler
SchedulerException
Scheduler.setJobFactory(org.quartz.spi.JobFactory)
Copyright 2001-2019, Terracotta, Inc.