パッケージ jakarta.ws.rs.core

インターフェース Request


  • public interface Request
    リクエスト処理の注入可能なヘルパー。リクエストのスコープ外で(プロバイダーコンストラクターなどから)呼び出された場合、すべてのメソッドは IllegalStateExceptionSE をスローします。前提条件処理(evaluatePreconditions メソッドを参照)は、前提条件が満たされ、リクエストが続行されることを示す null 戻り値、または前提条件が満たされていないことを示す非 null 戻り値のいずれかになります。前提条件が満たされていない場合、返される ResponseBuilder インスタンスは適切なステータスになり、evaluatePreconditions を呼び出す前に selectVariant(List) メソッドが呼び出された場合は Vary ヘッダーも含まれます。ステータスを確認し、必要に応じてメタデータを追加するのは、呼び出し元の責任です。たとえば、304 Not Modified レスポンスに伴うことが予想されるヘッダーの詳細については、HTTP/1.1、セクション 10.3.5 を参照してください。
    導入:
    1.0
    作成者:
    Paul Sandoz, Marc Hadley, Marek Potociar
    • メソッドの詳細

      • getMethod

        StringSE getMethod()
        リクエストメソッドを取得します。GET、POST など
        戻り値:
        リクエストメソッド。
        関連事項:
        HttpMethod
      • selectVariant

        Variant selectVariant​(ListSE<Variant> variants)
        リクエストに最も一致する表現バリアントを選択します。リストに一致するバリアントがない場合、null を返します。

        より明示的なバリアントは、それほど明示的でないバリアントより先に選択されます。可変ヘッダーは、提供されたリストから計算され、自動的にレスポンスに追加されます。

        パラメーター:
        variants - 利用可能なすべての表現バリアントを説明するバリアントのリスト。
        戻り値:
        リクエストに最も一致するバリアント、または一致しない場合は null
        例外:
        IllegalArgumentExceptionSE - バリアントが空または null の場合。
        IllegalStateExceptionSE - リクエストの範囲外で呼び出された場合。
        関連事項:
        Variant.VariantListBuilder
      • evaluatePreconditions

        Response.ResponseBuilder evaluatePreconditions​(EntityTag eTag)
        渡された値に基づいてリクエストの前提条件を評価します。
        パラメーター:
        eTag - リソースの現在の状態の ETag
        戻り値:
        前提条件が満たされている場合は null、前提条件が満たされていない場合は適切なステータスが設定された ResponseBuilder。返される ResponseBuilder には、前提条件の評価がどれも失敗していない限り、eTag の値が設定された ETag ヘッダーが含まれます。その場合、ETag ヘッダーは含まれず、返される ResponseBuilder のステータスコードは Response.Status.PRECONDITION_FAILED に設定されます。
        例外:
        IllegalArgumentExceptionSE - eTag が null の場合。
        IllegalStateExceptionSE - リクエストの範囲外で呼び出された場合。
      • evaluatePreconditions

        Response.ResponseBuilder evaluatePreconditions​(DateSE lastModified)
        渡された値に基づいてリクエストの前提条件を評価します。
        パラメーター:
        lastModified - リソースの変更日を指定する日付
        戻り値:
        前提条件が満たされている場合は null、前提条件が満たされていない場合は適切なステータスが設定された ResponseBuilder
        例外:
        IllegalArgumentExceptionSE - lastModified が null の場合。
        IllegalStateExceptionSE - リクエストの範囲外で呼び出された場合。
      • evaluatePreconditions

        Response.ResponseBuilder evaluatePreconditions​(DateSE lastModified,
                                                       EntityTag eTag)
        渡された値に基づいてリクエストの前提条件を評価します。
        パラメーター:
        lastModified - リソースの変更日を指定する日付
        eTag - リソースの現在の状態の ETag
        戻り値:
        前提条件が満たされている場合は null、前提条件が満たされていない場合は適切なステータスが設定された ResponseBuilder。返される ResponseBuilder には、前提条件の評価がどれも失敗していない限り、eTag の値が設定された ETag ヘッダーが含まれます。その場合、ETag ヘッダーは含まれず、返される ResponseBuilder のステータスコードは Response.Status.PRECONDITION_FAILED に設定されます。
        例外:
        IllegalArgumentExceptionSE - lastModified または eTag が null の場合。
        IllegalStateExceptionSE - リクエストの範囲外で呼び出された場合。
      • evaluatePreconditions

        Response.ResponseBuilder evaluatePreconditions()
        現在存在しないリソースのリクエスト前提条件を評価します。このメソッドの主な用途は、If-Match: * および If-None-Match: * 前提条件をサポートすることです。

        前提条件 If-None-Match: something が満たされたとは見なされないことに注意してください。追加のメソッド固有のセマンティクスを強制するのはアプリケーションの責任です。例: 存在しないリソースに対する PUT は成功する可能性がありますが、存在しないリソースに対する GET は 404 レスポンスになる可能性があります。404 レスポンスを生成するのは、アプリケーションの責任です。

        戻り値:
        前提条件が満たされている場合は null、前提条件が満たされていない場合は適切なステータスが設定された ResponseBuilder
        例外:
        IllegalStateExceptionSE - リクエストの範囲外で呼び出された場合。
        導入:
        1.1