globus_gram_job_manager_script_interface - The GRAM Job Manager interfaces with the job filesystems and scheduler through scheduler-specific Perl modules.
GRAM provides several Perl modules which can be used to implement scheduler-specific interfaces to the GRAM Job Manager. These are:
This module implements the GRAM error results as objects. Methods in this module will construct a GRAM error with the value matching the values in the GRAM Protocol library. A scheduler-specific JobManager module may return one of these objects from its methods to indicate errors to the Job Manager program.
This module defines the GRAM job state constants. A scheduler-specific JobManager module returns one of these values from its methods to indicate the managed job's current state.
This module defines the GRAM job signal constant values. The Job Manager uses these values to communicate which signal is being invoked in the manager's signal method.
This module defines the actual implementatoin of the Job Manager scheduler interface. One writing a scheduler-specific GRAM interface will create a subclass of this object which overrides the default implementation's methods.
This module mimics the RSL job description using perl syntax. The job manager passes an object of this type to the JobManager modules's constructor. The job manager stores RSL and some configuration values in that JobDescription object. The manager accesses values stored in the JobDescription by invoking methods containing the RSL attribute's name (example: $description->gram_my_job()). Method names are handled as if they were based on the canonical RSL representation of the attribute name. For example, the gram_my_job may be equivalently referred to as GramMyJob, grammyjob, or GRAM_My_Job.