If/ElseIf/Else
Les actions If/ElseIf/Else exécutent des actions si une condition est satisfaite.
Les actions If/ElseIf/Else exécutent des actions imbriquées basées sur une ou plusieurs conditions mutuellement exclusives :
- Les conditions "If" sont toujours vérifiées.
- Les conditions "ElseIf" ne sont vérifiées que si toutes les conditions "If" et "ElseIf" précédentes ne sont pas satisfaites.
- Les actions "Else" n'ont pas de condition ; si aucune des conditions "If" ou "ElseIf" précédentes n'a été satisfaite, les actions "Else" sont automatiquement exécutées.
Le tableau suivant montre les paramètres de l'action If.
| Nom | Type de données | Obligatoire | Remarques |
|---|---|---|---|
| état | JPath | Oui | La condition à évaluer. Ne peut pas être vide. |
| actions | Actions[] | Oui | Séquence d'actions à exécuter si la condition a la valeur true. Ne peut pas être vide. |
Le tableau suivant montre les paramètres de l'action ElseIf.
| Nom | Type de données | Obligatoire | Remarques |
|---|---|---|---|
| état | JPath | Oui | La condition à évaluer. Ne peut pas être vide. |
| actions | Actions[] | Oui | Séquence d'actions à exécuter si la condition a la valeur true. Ne peut pas être vide. |
Le tableau suivant montre les paramètres de l'action Else.
| Nom | Type de données | Obligatoire | Remarques |
|---|---|---|---|
| actions | Actions[] | Oui | Séquence d'actions à exécuter si aucune des conditions "If" ou "ElseIf" précédentes n'a la valeur true. Ne peut pas être vide. |
Exemple XML
Dans cet exemple, les actions suivantes sont effectuées :
- Si la valeur d'Etat à l'emplacement /status est 200, seule l'action SetStatus qui définit le statut sur un message INFO "Success" est exécutée.
- Si la valeur /status est 401, seule l'action SetStatus qui définit le statut sur un message ERROR "Authentication Failure" est exécutée.
- Si la valeur /status est 404, seule l'action SetStatus qui définit le statut sur un message ERROR "No Route Exists" est exécutée.
- Si la valeur /status est autre, seule l'action SetStatus finale est exécutée.
<If condition="/status = 200">
<SetStatus type="INFO" message="Success." />
</If>
<ElseIf condition="/status = 401">
<SetStatus type="ERROR" message="Authentication Failure." />
</ElseIf>
<ElseIf condition="/status = 404">
<SetStatus type="ERROR" message="No Route Exists." />
</ElseIf>
<Else>
<SetStatus type="ERROR" message="An unknown error (${/status}) has occurred." />
</Else>