If/ElseIf/Else
If/ElseIf/Else 조치는 조건이 충족되면 조치를 실행합니다.
If/ElseIf/Else 조치는 하나 이상의 상호 배타적 조건에 따라 중첩된 조치를 실행합니다.
- "If" 조건은 항상 검사됩니다.
- "ElseIf" 조건은 모든 선행 "If" 및 "ElseIf" 조건이 충족되지 않은 경우에만 확인됩니다.
- "Else" 조치에는 조건이 없습니다. 앞의 "If" 또는 "ElseIf" 조건이 충족되지 않은 경우 "Else" 조치가 자동으로 실행됩니다.
다음 표는 If 조치의 매개변수를 표시합니다.
| 이름 | 데이터 유형 | 필수 | 노트 |
|---|---|---|---|
| 조건 | JPath | 예 | 평가할 조건입니다. 비어 있을 수 없습니다. |
| 조치 | 조치 [] | 예 | 조건이 true인 경우 실행할 조치의 시퀀스입니다. 비어 있을 수 없습니다. |
다음 표는 ElseIf 조치의 매개변수를 표시합니다.
| 이름 | 데이터 유형 | 필수 | 노트 |
|---|---|---|---|
| 조건 | JPath | 예 | 평가할 조건입니다. 비어 있을 수 없습니다. |
| 조치 | 조치 [] | 예 | 조건이 true인 경우 실행할 조치의 시퀀스입니다. 비어 있을 수 없습니다. |
다음 표는 Else 조치의 매개변수를 표시합니다.
| 이름 | 데이터 유형 | 필수 | 노트 |
|---|---|---|---|
| 조치 | 조치 [] | 예 | 앞의 "If" 또는 "ElseIf" 조건 중 어느 것도 true가 아닌 경우 실행할 조치의 시퀀스입니다. 비어 있을 수 없습니다. |
XML 예제
이 예제에서는 다음 조치가 수행됩니다.
- /status 위치의 상태 값이 200인 경우 상태를 INFO "Success" 메시지로 설정하는 SetStatus 조치만 실행됩니다.
- /status 값이 401인 경우 상태를 ERROR "인증 실패" 메시지로 설정하는 SetStatus 조치만 실행됩니다.
- /status 값이 404인 경우 상태를 ERROR "No Route Exists" 메시지로 설정하는 SetStatus 조치만 실행됩니다.
- /status 값이 다른 값인 경우 최종 SetStatus 조치만 실행됩니다.
<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>