com.opensymphony.workflow.util
Class ScheduleJob
java.lang.Object
com.opensymphony.workflow.util.ScheduleJob
- All Implemented Interfaces:
- FunctionProvider
public class ScheduleJob
- extends Object
- implements FunctionProvider
Schedules a job in the Quartz job scheduler to be executed one or more times in the future.
The following arguments are required:
- triggerId - the id of the trigger function defined in the XML workflow
- jobName - the name to be given to the job
- triggerName - the name to be given to the trigger
- groupName - the group given to both the job and the trigger
The following arguments are optional:
- username - the system account's username that will execute the function in the future.
If this is not specified value from WorkflowContext.getCaller() is used
- password - the system account's password
- local - if set to the true, a LocalWorkflowJob is used, bypassing the need for SOAP support.
Will be ignored if "workflowClass" is specified.
- jobClass - the class implementing 'Job' to run, defaults to WorkflowJob. If not specified,
defaults to either a WorkflowJob or a LocalWorkflowJob if "local" is set to true.
- schedulerName - the name of an existing scheduler to use
- schdulerStart - if "true", start the scheduler if it hasn't been started already
- txHack - set this to true if you are getting lockups while running with transactions (defaults to false)
If you are using a cron trigger, the following is required:
- cronExpression - the Cron expression
If you are using a simple trigger, the follow are all optional:
- startOffset - the offset, in milliseconds, from the current time. (default is 0)
- endOffset - the offset, in milliseconds, from the current time. (default is infinity)
- repeat - the repeat count (default is 0). Can also be REPEAT_INDEFINITELY
- repeatDelay - the time delay, in milliseconds, between repeats (default is 0)
- Author:
- Michael G. Slack, Pat Lightbody
|
Method Summary |
void |
execute(Map transientVars,
Map args,
com.opensymphony.module.propertyset.PropertySet ps)
Execute this function |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
ScheduleJob
public ScheduleJob()
execute
public void execute(Map transientVars,
Map args,
com.opensymphony.module.propertyset.PropertySet ps)
- Description copied from interface:
FunctionProvider
- Execute this function
- Specified by:
execute in interface FunctionProvider
- Parameters:
transientVars - Variables that will not be persisted. These include inputs
given in the Workflow.initialize(java.lang.String, int, java.util.Map) and Workflow.doAction(long, int, java.util.Map) method calls.
There are a number of special variable names:
entry: (object type: WorkflowEntry)
The workflow instance
context:
(object type: WorkflowContext). The workflow context.
actionId: The Integer ID of the current action that was take (if applicable).
currentSteps: A Collection of the current steps in the workflow instance.
store: The WorkflowStore.
descriptor: The WorkflowDescriptor.
Also, any variable set as a Register), will also be
available in the transient map, no matter what. These transient variables only last through
the method call that they were invoked in, such as Workflow.initialize(java.lang.String, int, java.util.Map)
and Workflow.doAction(long, int, java.util.Map).args - The properties for this function invocation. Properties are created
from arg nested elements within the xml, an arg element takes in a name attribute
which is the properties key, and the CDATA text contents of the element map to
the property value.ps - The persistent variables that are associated with the current
instance of the workflow. Any change made to the propertyset are persisted to
the propertyset implementation's persistent store.