La classe Job represente la notion de travail, ou job, dans la bibliotheque de classes Batch. Elle se comporte essentiellement comme une collection de parametres et de variables necessaires a la description des actions qui doivent etre realisees dans des conditions precisees.
Elle se repose sur deux autres classes qui distinguent la notion de parametre d'execution et celle de variable d'environnement : les classes Parametre et Environnement. See Classe Parametre. See Classe Environnement.
Son role est de preparer la soumission qui aura lieu et qui concretisera l'incarnation du job dans le gestionnaire de batch. Tant que le job n'a pas ete soumis, on ne peut pas vraiment considerer son existence et de fait les interactions qu'on peut avoir avec l'objet sont tres limitees.
class Job { public: // Constructeurs et destructeur Job(); Job(Parametre param); Job(Environnement env); Job(Parametre param, Environnement env); virtual ~Job(); // Operateur pour l'affichage sur un stream friend ostream & operator <<(ostream & os, const Job & job); // Accesseurs Parametre getParametre() const; void setParametre(const Parametre &); // Accesseurs Environnement getEnvironnement() const; void setEnvironnement(const Environnement &); // Methodes pour l'interfacage avec Python (SWIG) string __repr__() const; protected: Parametre _param; // table des parametres batch du job Environnement _env; // table des variables d'environnement private: };
... ... (ici on cree un BatchManager bm) Parametre param; Environnement env; ... (ici on cree les parametres du job) Job job(param, env); JobId jobid = bm.sumbitJob(job); ...
Le constructeur, en plus de creer l'objet, peut faire des verifications sur la coherence des objets passes en argument s'il y en a.
Le destructeur libere simplement les espaces alloues.
Cette methode permet a l'utilisateur d'afficher sur un stream le contenu d'un objet de classe Job.
Un accesseur pour recuperer l'objet Parametre passe en argument du constructeur.
Cette methode permet de positionner a posteriori l'objet Parametre. Des tests complementaires peuvent etre faits pour verifier la coherence de l'objet.
Un accesseur pour recuperer l'objet Environnement passe en argument du constructeur.
Cette methode permet de positionner a posteriori l'objet Environnement. Des tests complementaires peuvent etre faits pour verifier la coherence de l'objet.
Cette methode sert dans l'interfacage Python de l'objet et permet d'en realiser l'affichage a travers l'interpreteur Python.