Un objet de classe JobInfo represente l'ensemble des informations disponibles sur un travail actif, c'est-a-dire soumis au gestionnaire de batch, a un instant donne.
Cet objet reprend des informations issues du job tel qu'il a ete soumis, See Classe Job, mais aussi des informations produites par le gestionnaire de batch a partir de la soumission et du transit du job en son sein : nom de la queue dans laquelle le job est inscrit, duree d'execution, date de soumission, etc.
Ces informations sont disponibles aupres de l'utilisateur de la classe a travers les objets Parametre et Environnement que l'objet JobInfo peut fournir.
class JobInfo { public: // Constructeur standard et destructeur JobInfo(); virtual ~JobInfo(); // Constructeur par recopie JobInfo(const JobInfo & jinfo); // Operateur pour l'affichage sur un stream friend ostream & operator <<(ostream & os, const JobInfo & ji); // Accesseurs virtual Parametre getParametre() const; virtual Environnement getEnvironnement() const; // Methodes pour l'interfacage avec Python (SWIG) string __str__() const; // SWIG : affichage en Python string __repr__() const; // SWIG : affichage en Python protected: Parametre _param; // parametres du job Environnement _env; // variables d'environnement du job private: };
... (ici on cree un BatchManager bm et un Job job) // On soumet le job et on recupere un identifiant JobId jobid = bm.submitJob(job); // Ce qui permet d'interroger l'etat du job en cours JobInfo jinfo = jobid.queryJob(); // On recupere l'objet Parametre interne modifie // par le gestionnaire de batch Parametre param = jinfo.getParametre(); // On recupere l'objet Environnement interne modifie // par le gestionnaire de batch Environnement env = jinfo.getEnvironnement(); ...
Ce constructeur cree un objet JobInfo vide.
Le destructeur libere l'espace memoire alloue par l'objet.
Le constructeur par recopie produit un objet identique a celui passe en argument. Les deux objets sont totalement independants l'un de l'autre.
Cet operateur permet de voir le contenu de l'objet sur un flot de sortie.
Cet accesseur retourne l'objet interne Parametre modifie par le gestionnaire de batch. En particulier on y retrouve toutes les clefs et les valeurs correspondant aux informations produites dynamiquement par le gestionnaire (duree d'execution, machine d'execution, etc.). Il n'est pas garanti que les valeurs passees au moment de la soumission soient inchangees car des modifications ont pu etre apportees a ces valeurs pendant le traitement du job par le gestionnaire.
Cet accesseur retourne l'objet interne Environnement modifie par le gestionnaire de batch. En particulier on y retrouve toutes les clefs et les valeurs correspondant aux informations produites dynamiquement par le gestionnaire (chemin d'acces, variables d'environnement specifiques a la machine d'execution, etc.). Il n'est pas garanti que les valeurs passees au moment de la soumission soient inchangees car des modifications ont pu etre apportees a ces valeurs pendant le traitement du job par le gestionnaire.
Cette methode n'est utile que pour l'interfacage avec Python. Elle permet d'afficher l'etat de l'objet JobInfo.
Cette methode n'est utile que pour l'interfacage avec Python. Elle permet d'afficher l'etat de l'objet JobInfo.