Exception ?
Résumé
- Nom interne :
AndromateException - Catégorie : Workflow Runtime
- Objectif : Vérifier si la dernière tâche exécutée a levé une exception, et capturer optionnellement ses détails d'erreur dans des variables.
- Type de tâche : Conditionnelle
Compatibilité
-
Version minimale AndroMate :
1.1.0 -
Version maximale AndroMate :
1.1.0 -
Android minimum :
Android 13 (API 33) -
Android maximum testé :
Android 16 (API 36) -
Constructeurs supportés :
- ✅ Tous les constructeurs
-
Permissions requises :
- Aucune
Description détaillée
La tâche Exception ? inspecte le contexte d'exécution pour déterminer si la dernière tâche exécutée a produit une exception. C'est une tâche conditionnelle : elle s'évalue à true ou false et dirige le workflow vers l'une de deux branches en conséquence.
Elle est utilisée pour :
- Détecter les échecs de la tâche précédente sans arrêter le workflow
- Bifurquer vers un chemin de gestion d'erreur ou un chemin de succès
- Capturer le code d'erreur, la description et l'ID de la tâche en échec pour les rapports
- Construire des workflows résilients qui se remettent des erreurs
La tâche gère :
- la lecture du dernier état d'exception depuis l'
AndroMateContextpartagé, - l'évaluation du résultat booléen (
true= erreur,false= pas d'erreur), - l'écriture optionnelle des détails de l'exception dans des variables de workflow déclarées.
Paramètres d'entrée
Cette tâche n'a pas de paramètres d'entrée. Elle lit l'état d'exception directement depuis le contexte d'exécution.
Paramètres de sortie
Les variables de sortie sont optionnelles. Si un nom de variable est fourni et que la variable a été déclarée dans le nœud Start, sa valeur est mise à jour après l'exécution.
| Champ | Type | Condition | Compatibilité Android | Compatibilité AndroMate | Défaut |
|---|---|---|---|---|---|
code_output |
String | Lorsque la tâche précédente a échoué | Android 13 (API 33) → Android 16 (API 36) | 1.1.0 → 1.1.0 | <ANDROMATE_NULL_VALUE> |
description_output |
String | Lorsque la tâche précédente a échoué | Android 13 (API 33) → Android 16 (API 36) | 1.1.0 → 1.1.0 | <ANDROMATE_NULL_VALUE> |
task_id_output |
String | Lorsque la tâche précédente a échoué | Android 13 (API 33) → Android 16 (API 36) | 1.1.0 → 1.1.0 | <ANDROMATE_NULL_VALUE> |
Exceptions
La tâche Exception ? ne lève aucune exception.
Diagramme d'exécution
flowchart TD
Start([Démarrer CheckExceptionTask]) --> ReadCtx[📋 Lire AndroMateContext\ngetLastExceptionDto]
ReadCtx --> Evaluate{lastTaskHasError ?}
Evaluate -->|true| SetTrue[conditionResult = true\nException détectée]
Evaluate -->|false| SetFalse[conditionResult = false\nAucune exception]
SetTrue --> UpdateVars[💾 Mise à jour des variables de sortie\nsi déclarées dans le contexte :\ncode_output\ndescription_output\ntask_id_output]
SetFalse --> ReturnFalse([↪ Branche FALSE\nLe workflow continue normalement])
UpdateVars --> ReturnTrue([↪ Branche TRUE\nLe workflow va vers le gestionnaire d'erreur])
style Start fill:#e3f2fd
style ReturnTrue fill:#ffcdd2
style ReturnFalse fill:#c8e6c9
style Evaluate fill:#fff9c4
style UpdateVars fill:#fff9c4
Comment ça fonctionne :
- Lire le contexte : Récupère le dernier DTO d'exception depuis l'
AndroMateContext - Évaluer : Appelle
lastTaskHasError()— retournetruesi la tâche précédente a échoué,falsesinon - Mettre à jour les variables (uniquement si true) : Si des noms de variables de sortie sont fournis et déclarés dans Start, écrit le code d'erreur, la description et l'ID de la tâche en échec
- Router : Le moteur de graphe lit le résultat booléen et suit le lien
"true"ou"false"
Détails des paramètres de sortie
1. Variable de sortie : code_output
Stocke le code d'erreur de l'exception levée par la tâche précédente.
Exemple
Détails
- Renseignée uniquement quand le résultat de la condition est
true(la tâche précédente a échoué). - La variable doit avoir été déclarée dans le nœud Start.
2. Variable de sortie : description_output
Stocke la description lisible de l'exception.
Exemple
3. Variable de sortie : task_id_output
Stocke l'ID de la tâche qui a levé l'exception.
Exemple
Détails
- Utile pour identifier quelle tâche a échoué lorsque plusieurs tâches précèdent cette vérification.