Algorithmes de résultats
Les algorithmes de résultats sont une fonction facultative du modèle de programmation des applications par lots.
Un algorithme de résultats permet l'exécution de deux types d'action à l'issue de l'étape du travail par lots :
- Pour influencer le code retour du travail par lots en fonction de l'étape qui vient de se terminer. Il existe deux types de code retour : le code retour d'une étape du travail par lots spécifique et le code retour du travail par lots auquel l'étape appartient.
- Pour définir une marque de réservation destinée aux déclencheurs et aux actions à lancer en fonction de différents codes retour de l'étape.
Les algorithmes de résultats sont appliqués à un travail par lots via la définition xJCL (XML Job Control Language). Ils sont déclarés dans la définition xJCL, puis appliqués aux étapes du travail par lots.
A la fin d'une étape, les noeuds finaux de grille consultent la définition xJCL du travail par lots pour déterminer les algorithmes de résultats à appeler. Les noeuds finaux de grille transmettent à chaque algorithme spécifié le code retour de l'étape, qui est l'entier renvoyé par la méthode destroyJobStep de l'étape et le code retour actuel du travail, tel qu'il est enregistré dans la base de données des noeuds finaux de grille. Chaque algorithme de résultats peut alors exécuter une action en fonction des codes retour qui lui sont communiqués. Il passe ensuite un code retour pour le travail par lots aux noeuds finaux de grille, qui l'enregistrent dans la base de données des noeuds finaux de grille en tant que code retour actuel du travail par lots. Ce code retour peut être identique à celui initialement transmis par les noeuds finaux de grille à l'algorithme de résultats ou être différent en fonction de la logique codée dans l'algorithme de résultats. Si aucun algorithme de résultats n'est spécifié dans une étape, le code retour du travail est celui de l'algorithme de résultats de l'étape précédente. Si aucun algorithme de résultats n'est spécifié, le code retour du travail est zéro (0).
Une interface de programmation de système (SPI) d'algorithme de résultats est également fournie pour vous permettre d'écrire vos propres algorithmes et de les appliquer aux travaux par lots.
Algorithme de résultats jobsum
- step1 a renvoyé 5
- step2 a renvoyé 8
- step3 a renvoyé 2. L'algorithme jobsum fait en sorte que le code 8 soit passé aux noeuds finaux de grille comme code retour final du travail.
- Exemple d'application d'un algorithme de résultats personnalisé jobsum aux étapes d'un travail
<job name="PostingSampleEar"> <results-algorithms> <results-algorithm name="jobsum"> <classname>com.ibm.wsspi.resultsalgorithms.jobsum</classname> </results-algorithm> <results-algorithm name="custom_algorithm"> <classname>my_custom_algorithm</classname> </results-algorithm> </results-algorithms> <job-step name="Step1"> <results-ref name="jobsum"> </job-step> <job-step name="Step2"> <results-ref name="custom_algorithm"> </job-step> </job>