“Job?”
Submission Service
Objects:
All non-Java objects are in a package like net.ppdg.cjhs
// This
passes a request to service. The request contains
// a CompositeJob
and extra information. This call
// returns an int
ID to later refer to request.
int create (CJRequest request) throws CJHException
// Check to see if composite job
can run, but doesn’t
// communicate with any other
service.
// Maybe should return more
complex type
// FeaturesNotSupportedList
checkSupportedFeatures
boolean isRequestValid(int requestID) throws CJHException
// Actually
runs or executes composite job is true and if false
// it asks service to analyze the time
that composite job
// will take and maybe other
information and returns
// a complex info object. Actually executes resource
// broker algorthm.
CJInfo submit(int requestID, boolean simulate) throws CJHException
// Gets overall global run
information. Contains
list of sub job IDs.
CJRunInfo getStatus(int requestID) throws CJHException
// Gets info on particular sub
job, so that overall run info doesn’t have
// to go through each sub job and
get info.
CJSubJobInfo getSubJobStatus(int subJobID) throws CJHExceptin
// Need control methods???
stop
pause
restart / resume
cancel
requeue
suspend
kill
// Removes all reference of
composite job request on service
void destroy (int requestID) throws CJHException
EXAMPLES
1) create, submit, destroy
2) create, checkSupport, destroy
3) create, checkSupport, submit, destroy
4) create, checkSupport, estimate, destroy
5) create, estimate, destroy
6) create, checkSupport, estimate, submit, destroy