パッケージ jakarta.ws.rs.core
インターフェース Request
public interface Request
リクエスト処理の注入可能なヘルパー。リクエストのスコープ外で(プロバイダーコンストラクターなどから)呼び出された場合、すべてのメソッドはIllegalStateException
SE をスローします。前提条件処理(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
メソッドのサマリー
すべてのメソッド インスタンスメソッド 抽象メソッド 修飾子と型 メソッド 説明 Response.ResponseBuilder
evaluatePreconditions()
現在存在しないリソースのリクエスト前提条件を評価します。Response.ResponseBuilder
evaluatePreconditions(EntityTag eTag)
渡された値に基づいてリクエストの前提条件を評価します。Response.ResponseBuilder
evaluatePreconditions(DateSE lastModified)
渡された値に基づいてリクエストの前提条件を評価します。Response.ResponseBuilder
evaluatePreconditions(DateSE lastModified, EntityTag eTag)
渡された値に基づいてリクエストの前提条件を評価します。StringSE
getMethod()
リクエストメソッドを取得します。Variant
selectVariant(ListSE<Variant> variants)
リクエストに最も一致する表現バリアントを選択します。
メソッドの詳細
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