Rapid SDK for Java の例外処理
Rapid SDK for Java の例外処理に関するガイドです。
Rapid SDK for Java では、ランタイム (チェックされない) 例外を使用してエラーを中継します。例外階層のルートは ExpediaGroupException
で、そこから他のすべての例外が拡張されます。ExpediaGroupException
が直接スローされることはありません。
ExpediaGroupException
には次の 2 つのカテゴリがあります。
ExpediaGroupServiceException
: ダウンストリームサービスがエラー応答を返したときにスローされます。つまり、サービスはリクエストを正常に受信しましたが、処理できませんでした。HTTP ステータスコードや詳細なメッセージなど、エラーに関するいくつかの情報が例外オブジェクトから呼び出し元に提供されます。ExpediaGroupAuthException
はこの例外のサブタイプであり、認証に失敗したときにスローされます。ExpediaGroupClientException
: リクエストの送信時またはレスポンスの解析時に、クライアントエラーが発生するとスローされます。たとえば、ログイン情報が構成されていない場合はExpediaGroupConfigurationException
がスローされます。
例外はチェックされないため、どの例外を処理するかは呼び出し元が決定します。原則として、ExpediaGroupClientException
は再試行できないと見なされ、通常は開発中に修正する必要があります。一方、ExpediaGroupServiceException
は、サービスが一時的に利用できないために発生するエラーなど、回復可能な場合があります。そのため、エラー処理は後者に焦点を当てる必要があります。