ReCodEx - Task Broker
ReCodEx is complex programmer testing solution, primary targeted to technical universities. It's highly customizable and based on modern technologies.
status_notifier_interface Class Referenceabstract

#include <status_notifier.h>

+ Inheritance diagram for status_notifier_interface:

Public Member Functions

virtual void error (const std::string &desc)=0
 
virtual void rejected_job (const std::string &job_id, const std::string &desc="")=0
 
virtual void rejected_jobs (std::vector< std::string > job_ids, const std::string &desc="")=0
 
virtual void job_done (const std::string &job_id)=0
 
virtual void job_failed (const std::string &job_id, const std::string &desc="")=0
 

Detailed Description

Status notifier defines interface which can be used to report errors or some other states of broker.

Note
All methods has to be exceptionless and logging mechanism is advised to used on errors.

Definition at line 13 of file status_notifier.h.

Member Function Documentation

§ error()

virtual void status_notifier_interface::error ( const std::string &  desc)
pure virtual

Basically tells frontend that there was some serious problem which has to be solved by administrator. Should be used only for generic errors which does not need any special treatment.

Parameters
descdescription of error which was caused in broker
Note
Implementation has to be exceptionless.

Implemented in http_status_notifier, reactor_status_notifier, and empty_status_notifier.

§ job_done()

virtual void status_notifier_interface::job_done ( const std::string &  job_id)
pure virtual

Notify that job with given id was successfully executed.

Parameters
job_ididentification of job
Note
Implementation has to be exceptionless.

Implemented in http_status_notifier, reactor_status_notifier, and empty_status_notifier.

§ job_failed()

virtual void status_notifier_interface::job_failed ( const std::string &  job_id,
const std::string &  desc = "" 
)
pure virtual

Is called when worker return job results with status not equal to OK.

Parameters
job_ididentification of failed job
descdescription which come with results from worker
Note
Implementation has to be exceptionless.

Implemented in http_status_notifier, reactor_status_notifier, and empty_status_notifier.

§ rejected_job()

virtual void status_notifier_interface::rejected_job ( const std::string &  job_id,
const std::string &  desc = "" 
)
pure virtual

Nofity frontend that broker cannot assign one particular job.

Parameters
job_ididentification of job
descdescription why job was rejected
Note
Implementation has to be exceptionless.

Implemented in http_status_notifier, reactor_status_notifier, and empty_status_notifier.

§ rejected_jobs()

virtual void status_notifier_interface::rejected_jobs ( std::vector< std::string >  job_ids,
const std::string &  desc = "" 
)
pure virtual

Notify frontend that broker had to throw away some jobs and they have to be execute again. This might happen for instance if worker dies and there is none with the same headers.

Parameters
job_idslist of job ids which was not executed
descdescription why jobs were rejected
Note
Implementation has to be exceptionless.

Implemented in http_status_notifier, reactor_status_notifier, and empty_status_notifier.


The documentation for this class was generated from the following file: