xJCL - XML Job Controller Language

Jobs are expressed using an Extensible Markup Language XML dialect called XML xJCL Job Control Language. This dialect has constructs for expressing all of the information needed for both compute-intensive and batch jobs, although some elements of xJCL are only applicable to compute-intensive or batch jobs. See the xJCL provided with the Sample applications, the xJCL table and xJCL XSD schema document for more information about xJCL. The xJCL definition of a job is not part of the long-running application, but is constructed separately and submitted to the long-running scheduler for to run. The long-running scheduler uses information in the xJCL to determine where and when the job should be run.


The following table summarizes the xJCL elements:

Table 1. xJCL elements
Element Compute- intensive Batch Sub-element Attributes Description
job Y Y not-applicable not-applicable Scopes the description of a batch job.
not-applicable Y Y not-applicable name Name of the job. This name must match the name of the long-running application.
not-applicable Y Y jndi-name not-applicable JNDI name that is given to the job controller stateless session bean when the long-running application is deployed on WebSphere Application Server.
not-applicable Y Y step-scheduling-criteria See step-scheduling-criteria element not-applicable
not-applicable N Y checkpoint-algorithm See checkpoint-algorithm element not-applicable
not-applicable Y Y job-step See job-step element not-applicable
job-step not-applicable not-applicable not-applicable not-applicable not-applicable
not-applicable Y++ Y not-applicable name Name of the step. This information is returned on operational commands.
not-applicable N Y step-scheduling See step-scheduling element Allows for conditional logic based on return codes of steps that determine if the batch step should be invoked or not
not-applicable N Y checkpoint-algorithm-ref See checkpoint-algorithm-ref element Specifies the checkpoint algorithm to use for the batch job step.
not-applicable Y N classname not-applicable Fully-qualified name of class that implements the compute intensive job.
not-applicable N Y JNDI-name not-applicable Logical JNDI name of the home for the entity bean batch step bean that the batch runtime environment uses to load the batch job step with.
not-applicable not-applicable not-applicable props See props element Name-value properties to pass to the step
not-applicable N Y batch-data-streams See batch-data-streams element A sequence of bds elements. Each bds is the configuration information necessary to create a batch data stream.
prop Y Y not-applicable not-applicable Single instance of a name value pair, that serves as a property.
not-applicable not-applicable not-applicable not-applicable name Name of the property.
not-applicable not-applicable not-applicable not-applicable value Value of the property.
props Y Y not-applicable not-applicable Series of prop elements that are used to pass name value pair properties to steps, bds, checkpoint algorithms and results algorithms.
not-applicable not-applicable not-applicable prop See prop element not-applicable
bds N Y not-applicable not-applicable Single instance of a batch data stream implementation that is made available to the batch job to use.
not-applicable not-applicable not-applicable logical-name not-applicable A string that is embedded in batch step that the batch step uses to ask the batch runtime environment for a specific batch data stream instance.
not-applicable not-applicable not-applicable impl-class not-applicable Fully qualified class name of the batch data stream implementation class.
not-applicable not-applicable not-applicable props See Props elements List of properties that are passed to the batch data stream implementation class.
batch-data-streams N Y not-applicable not-applicable Series of bds elements
not-applicable not-applicable not-applicable bds see bds element not-applicable
step-scheduling N Y not-applicable not-applicable Can be applied to job steps to create return code-based conditional flows for a batch job. Can compare values of return codes defined for this batch job to decide whether a step is invoked or not while processing a batch job. The values of return codes are compared using the return code-expression element.
not-applicable not-applicable not-applicable returncode- expression see returncode-expression Returncode- expression for evaluation.
not-applicable not-applicable not-applicable not-applicable condition If there is more than one returncode-expression element in the step-scheduling element, then conditional operators can be applied to them. Conditional operators supported are: AND, OR.
returncode-expression N Y not-applicable not-applicable Used for step scheduling tags to decide if a batch job step is run based on return codes of other job steps.
not-applicable not-applicable not-applicable not-applicable step Name of step whose return code is to be compared in this expression.
not-applicable not-applicable not-applicable not-applicable operator Operator to use for the return code expression; the supported operators are: eq equals, lt less than, gt greater than, le less than or equal to, ge greater than or equal to.
not-applicable not-applicable not-applicable not-applicable value The value with which to compare the return code.
step-scheduling-criteria N Y not-applicable not-applicable Describes the sequence in which the job steps are processed. Currently sequential scheduling is supported, and steps get invoked in the order in which they are displayed in xJCL.
not-applicable not-applicable not-applicable scheduling-mode not-applicable Sequence in which to invoke steps: only possible value is sequential
checkpoint-algorithm N Y not-applicable not-applicable Declares a checkpoint algorithm that can be used for a batch job step.
not-applicable not-applicable not-applicable not-applicable name Name of algorithm.
not-applicable not-applicable not-applicable classname not-applicable Class that implements this algorithm.
not-applicable not-applicable not-applicable props see props element Sequence of props elements for the checkpoint algorithm.
checkpoint-algorithm-ref N Y not-applicable not-applicable Reference to a checkpoint algorithm element.
not-applicable not-applicable not-applicable not-applicable name Name of checkpoint algorithm to which you are referring.
not-applicable not-applicable not-applicable props see props element Sequence of prop elements for the checkpoint algorithm.

+ Only single-step compute intensive jobs are supported.





0 comments: