Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes

JobRunner Class Reference

Runs all jobs defined by JobDescProv. More...

Inheritance diagram for JobRunner:
Executor SequentialTask Task NamedObject CallBacker

List of all members.

Public Member Functions

 JobRunner (JobDescProv *, const char *cmd)
 JobDescProv becomes mine. Never pass null.
 ~JobRunner ()
const JobDescProvdescProv () const
const ObjectSet< HostNFailInfo > & hostInfo () const
bool addHost (const HostData &)
void removeHost (int)
void pauseHost (int, bool)
bool stopAll ()
bool hostFailed (int) const
bool isPaused (int) const
bool isAssigned (const JobInfo &ji) const
int nrJobs (bool failed=false) const
const JobInfojobInfo (int idx, bool failed=false) const
int jobsDone () const
int jobsInProgress () const
int jobsLeft () const
int totalJobs () const
JobInfocurrentJob (const HostNFailInfo *) const
int nextStep ()
od_int64 nrDone () const
od_int64 totalNr () const
const char * message () const
const char * nrDoneMessage () const
void setFirstPort (int n)
void setRshComm (const char *s)
void setProg (const char *s)
void setNiceNess (int n)
void showMachStatus (BufferStringSet &) const
const FilePathgetBaseFilePath (JobInfo &, const HostData &)
const JobInfocurJobInfo () const
IOParcurJobIOPar ()
const FilePathcurJobFilePath ()
const char * procDir () const

Public Attributes

Notifier< JobRunnerpreJobStart
Notifier< JobRunnerpostJobStart
Notifier< JobRunnerjobFailed
Notifier< JobRunnermsgAvail

Protected Types

enum  StartRes { Started, NotStarted, JobBad, HostBad }
enum  AssignStat { NotReady, BadHost, JobStarted, NoJobs }
enum  HostStat { OK = 0, SomeFailed = 1, HostFailed = 2 }

Protected Member Functions

JobIOMgriomgr ()
int doCycle ()
HostNFailInfohostNFailInfoFor (const HostData *) const
void updateJobInfo ()
void handleStatusInfo (StatusInfo &)
JobInfogtJob (int descnr)
void failedJob (JobInfo &, JobInfo::State)
StartRes startJob (JobInfo &ji, HostNFailInfo &jhi)
bool runJob (JobInfo &, const HostData &)
AssignStat assignJob (HostNFailInfo &)
bool haveIncomplete () const
HostStat hostStatus (const HostNFailInfo *) const

Protected Attributes

JobDescProvdescprov_
ObjectSet< JobInfojobinfos_
ObjectSet< HostNFailInfohostinfo_
ObjectSet< JobInfofailedjobs_
BufferString prog_
BufferString procdir_
FilePathcurjobfp_
IOParcurjobiop_
JobInfocurjobinfo_
JobIOMgriomgr__
int niceval_
int firstport_
BufferString rshcomm_
int maxhostfailures_
 host failrs B4 host bad
int maxjobfailures_
 job related job failrs
int maxjobhstfails_
 host related job failrs
int starttimeout_
int failtimeout_
int wrapuptimeout_
int hosttimeout_
int startwaittime_
 wait B4 next client start

Detailed Description

Runs all jobs defined by JobDescProv.


Member Enumeration Documentation

enum JobRunner::AssignStat [protected]
Enumerator:
NotReady 
BadHost 
JobStarted 
NoJobs 
enum JobRunner::HostStat [protected]
Enumerator:
OK 
SomeFailed 
HostFailed 
enum JobRunner::StartRes [protected]
Enumerator:
Started 
NotStarted 
JobBad 
HostBad 

Constructor & Destructor Documentation

JobRunner::JobRunner ( JobDescProv ,
const char *  cmd 
)

JobDescProv becomes mine. Never pass null.

JobRunner::~JobRunner (  ) 

Member Function Documentation

bool JobRunner::addHost ( const HostData  ) 
AssignStat JobRunner::assignJob ( HostNFailInfo  )  [protected]
const FilePath& JobRunner::curJobFilePath (  )  [inline]
const JobInfo& JobRunner::curJobInfo (  )  const [inline]
IOPar& JobRunner::curJobIOPar (  )  [inline]
JobInfo* JobRunner::currentJob ( const HostNFailInfo  )  const
const JobDescProv* JobRunner::descProv (  )  const [inline]
int JobRunner::doCycle (  )  [protected]
void JobRunner::failedJob ( JobInfo ,
JobInfo::State   
) [protected]
const FilePath& JobRunner::getBaseFilePath ( JobInfo ,
const HostData  
)
JobInfo* JobRunner::gtJob ( int  descnr  )  [protected]
void JobRunner::handleStatusInfo ( StatusInfo  )  [protected]
bool JobRunner::haveIncomplete (  )  const [protected]
bool JobRunner::hostFailed ( int   )  const
const ObjectSet<HostNFailInfo>& JobRunner::hostInfo (  )  const [inline]
HostNFailInfo* JobRunner::hostNFailInfoFor ( const HostData  )  const [protected]
HostStat JobRunner::hostStatus ( const HostNFailInfo  )  const [protected]
JobIOMgr& JobRunner::iomgr (  )  [protected]
bool JobRunner::isAssigned ( const JobInfo ji  )  const
bool JobRunner::isPaused ( int   )  const
const JobInfo& JobRunner::jobInfo ( int  idx,
bool  failed = false 
) const [inline]
int JobRunner::jobsDone (  )  const
int JobRunner::jobsInProgress (  )  const
int JobRunner::jobsLeft (  )  const [inline]
const char* JobRunner::message (  )  const [virtual]

Reimplemented from Task.

int JobRunner::nextStep (  )  [inline, virtual]

Implements SequentialTask.

od_int64 JobRunner::nrDone (  )  const [inline, virtual]

Reimplemented from Task.

const char* JobRunner::nrDoneMessage (  )  const
int JobRunner::nrJobs ( bool  failed = false  )  const [inline]
void JobRunner::pauseHost ( int  ,
bool   
)
const char* JobRunner::procDir (  )  const [inline]
void JobRunner::removeHost ( int   ) 
bool JobRunner::runJob ( JobInfo ,
const HostData  
) [protected]
void JobRunner::setFirstPort ( int  n  )  [inline]
void JobRunner::setNiceNess ( int  n  ) 
void JobRunner::setProg ( const char *  s  )  [inline]
void JobRunner::setRshComm ( const char *  s  )  [inline]
void JobRunner::showMachStatus ( BufferStringSet  )  const
StartRes JobRunner::startJob ( JobInfo ji,
HostNFailInfo jhi 
) [protected]
bool JobRunner::stopAll (  ) 
int JobRunner::totalJobs (  )  const [inline]
od_int64 JobRunner::totalNr (  )  const [inline, virtual]

Reimplemented from Task.

void JobRunner::updateJobInfo (  )  [protected]

Member Data Documentation

int JobRunner::failtimeout_ [protected]
int JobRunner::firstport_ [protected]
int JobRunner::hosttimeout_ [protected]
int JobRunner::maxhostfailures_ [protected]

host failrs B4 host bad

int JobRunner::maxjobfailures_ [protected]

job related job failrs

int JobRunner::maxjobhstfails_ [protected]

host related job failrs

int JobRunner::niceval_ [protected]
int JobRunner::starttimeout_ [protected]
int JobRunner::startwaittime_ [protected]

wait B4 next client start

int JobRunner::wrapuptimeout_ [protected]