|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||
java.lang.Objectorg.opencms.scheduler.CmsScheduleManager
public class CmsScheduleManager
Manages the OpenCms scheduled jobs.
Please see the documentation of the class CmsScheduledJobInfo
for a full description of the OpenCms scheduling capabilities.
The OpenCms scheduler implementation internally uses the Quartz scheduler from the OpenSymphony project.
This manager class implements the org.quartz.Job interface
and wraps all calls to the I_CmsScheduledJob implementing
classes.
CmsScheduledJobInfo| Field Summary | |
|---|---|
static java.lang.String |
SCHEDULER_JOB_INFO
Key for the scheduled job description in the job data map. |
| Constructor Summary | |
|---|---|
CmsScheduleManager()
Default constructor for the scheduler manager, used only when a new job is scheduled. |
|
CmsScheduleManager(java.util.List configuredJobs)
Used by the configuration to create a new Scheduler during system startup. |
|
| Method Summary | |
|---|---|
void |
execute(org.quartz.JobExecutionContext context)
Implementation of the Quartz job interface. |
CmsScheduledJobInfo |
getJob(java.lang.String id)
Returns the currently scheduled job description identified by the given id. |
java.util.List |
getJobs()
Returns the currently scheduled job descriptions in an unmodifiable list. |
void |
initialize(CmsObject adminCms)
Initializes the OpenCms scheduler. |
void |
scheduleJob(CmsObject cms,
CmsScheduledJobInfo jobInfo)
Adds a new job to the scheduler. |
void |
shutDown()
Shuts down this instance of the OpenCms scheduler manager. |
CmsScheduledJobInfo |
unscheduleJob(CmsObject cms,
java.lang.String jobId)
Removes a currently scheduled job from the scheduler. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String SCHEDULER_JOB_INFO
| Constructor Detail |
|---|
public CmsScheduleManager()
public CmsScheduleManager(java.util.List configuredJobs)
configuredJobs - the jobs from the configuration| Method Detail |
|---|
public void execute(org.quartz.JobExecutionContext context)
The architecture is that this scheduler manager generates
a new (empty) instance of itself for every OpenCms job scheduled with Quartz.
When the Quartz job is executed, the configured
implementation of I_CmsScheduledJob will be called from this method.
execute in interface org.quartz.JobJob.execute(org.quartz.JobExecutionContext)public CmsScheduledJobInfo getJob(java.lang.String id)
id - the job id
null if not foundpublic java.util.List getJobs()
The objects in the List are of type .CmsScheduledJobInfo
public void initialize(CmsObject adminCms)
throws CmsRoleViolationException
adminCms - an OpenCms context object that must have been initialized with "Admin" permissions
CmsRoleViolationException - if the user has insufficient role permissions
public void scheduleJob(CmsObject cms,
CmsScheduledJobInfo jobInfo)
throws CmsRoleViolationException,
CmsSchedulerException
cms - an OpenCms context object that must have been initialized with "Admin" permissionsjobInfo - the job info describing the job to schedule
CmsRoleViolationException - if the user has insufficient role permissions
CmsSchedulerException - if the job could not be scheduled for any reasonpublic void shutDown()
public CmsScheduledJobInfo unscheduleJob(CmsObject cms,
java.lang.String jobId)
throws CmsRoleViolationException
cms - an OpenCms context object that must have been initialized with "Admin" permissionsjobId - the id of the job to unschedule, obtained with CmsScheduledJobInfo.getId()
CmsScheduledJobInfo of the sucessfully unscheduled job,
or null if the job could not be unscheduled
CmsRoleViolationException - if the user has insufficient role permissions
|
||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||