パッケージ jakarta.ws.rs.ext
クラス RuntimeDelegate
java.lang.ObjectSE
jakarta.ws.rs.ext.RuntimeDelegate
JAX-RS の実装は、RuntimeDelegate の具象サブクラスを提供し、さまざまな JAX-RS API メソッドは、その機能について RuntimeDelegate のメソッドに従います。JAX-RS の通常のユーザーは、このクラスを直接使用することは期待されておらず、ユーザーが指定したサブクラスでこのクラスの実装をオーバーライドすると、予期しない動作が発生する可能性があります。
- 導入:
- 1.0
- 作成者:
- Paul Sandoz, Marc Hadley
ネストされたクラスのサマリー
ネストされたクラス修飾子と型クラス説明static interface
HTTP ヘッダーの文字列形式と対応する JAX-RS 型T
の間の変換を担当するデリゲートの契約を定義します。フィールドのサマリー
フィールドコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明abstract CompletionStageSE<SeBootstrap.Instance>
bootstrap
(Application application, SeBootstrap.Configuration configuration) Java SE 環境でアプリケーションの起動を行います。abstract CompletionStageSE<SeBootstrap.Instance>
bootstrap
(ClassSE<? extends Application> clazz, SeBootstrap.Configuration configuration) Java SE 環境でアプリケーションの起動を行います。abstract SeBootstrap.Configuration.Builder
SeBootstrap.Configuration.Builder
の新しいインスタンスを作成します。abstract <T> T
createEndpoint
(Application application, ClassSE<T> endpointType) 指定されたエンドポイント型の構成済みインスタンスを作成します。abstract EntityPart.Builder
createEntityPartBuilder
(StringSE partName) EntityPart.Builder
の新しいインスタンスを作成します。abstract <T> RuntimeDelegate.HeaderDelegate<T>
createHeaderDelegate
(ClassSE<T> type) 指定されたクラスのRuntimeDelegate.HeaderDelegate
のインスタンスを取得します。abstract Link.Builder
Link.Builder
の新しいインスタンスを作成します。abstract Response.ResponseBuilder
Response.ResponseBuilder
の新しいインスタンスを作成します。abstract UriBuilder
UriBuilder
の新しいインスタンスを作成します。abstract Variant.VariantListBuilder
Variant.VariantListBuilder
の新しいインスタンスを作成します。static RuntimeDelegate
RuntimeDelegate
インスタンスを取得します。static void
JAX-RS クラスで使用されるランタイムデリゲートを設定します。
フィールドの詳細
JAXRS_RUNTIME_DELEGATE_PROPERTY
getInstance()
から返されるRuntimeDelegate
実装を識別するプロパティの名前。- 関連事項:
コンストラクターの詳細
RuntimeDelegate
protected RuntimeDelegate()カスタム実装がRuntimeDelegate
クラスを継承できるようにします。
メソッドの詳細
getInstance
RuntimeDelegate
インスタンスを取得します。インスタンスがまだ作成されておらず、setInstance(RuntimeDelegate)
を介して設定されていない場合、最初の呼び出しでインスタンスが作成され、将来の使用のためにキャッシュされます。使用する RuntimeDelegate サブクラスを見つけるために使用されるアルゴリズムは、次の手順で構成されています。
META-INF/services/jakarta.ws.rs.ext.RuntimeDelegate
という名前のリソースが存在する場合、その最初の行が存在する場合は、実装クラスの UTF-8 エンコード名として使用されます。- $java.home/lib/jaxrs.properties ファイルが存在し、
java.util.Properties.load(InputStream)
メソッドで読み取り可能であり、キーがjakarta.ws.rs.ext.RuntimeDelegate
であるエントリが含まれている場合、そのエントリの値が実装クラスの名前として使用されます。 jakarta.ws.rs.ext.RuntimeDelegate
という名前のシステムプロパティが定義されている場合、その値が実装クラスの名前として使用されます。- 最後に、デフォルトの実装クラス名が使用されます。
- 戻り値:
RuntimeDelegate
のインスタンス。
setInstance
JAX-RS クラスで使用されるランタイムデリゲートを設定します。このメソッドがgetInstance()
の前に呼び出されない場合は、getInstance()
に従って実装が求められます。- パラメーター:
rd
- ランタイムデリゲートインスタンス- 例外:
SecurityExceptionSE
- セキュリティマネージャーが存在し、権限 ReflectPermission("suppressAccessChecks" ) が付与されていない場合。
createUriBuilder
UriBuilder
の新しいインスタンスを作成します。- 戻り値:
- 新しい
UriBuilder
インスタンス。 - 関連事項:
createResponseBuilder
Response.ResponseBuilder
の新しいインスタンスを作成します。- 戻り値:
- 新しい
ResponseBuilder
インスタンス。 - 関連事項:
createVariantListBuilder
Variant.VariantListBuilder
の新しいインスタンスを作成します。- 戻り値:
- 新しい
VariantListBuilder
インスタンス。 - 関連事項:
createEndpoint
public abstract <T> T createEndpoint(Application application, ClassSE<T> endpointType) throws IllegalArgumentExceptionSE, UnsupportedOperationExceptionSE 指定されたエンドポイント型の構成済みインスタンスを作成します。返されるエンドポイントインスタンスがどのように公開されるかは、エンドポイントの型によって異なります。- 型パラメーター:
T
- エンドポイント型。- パラメーター:
application
- アプリケーション構成。endpointType
- 作成するエンドポイントインスタンスの型。- 戻り値:
- リクエストされた型の構成済みインスタンス。
- 例外:
IllegalArgumentExceptionSE
- アプリケーションが null の場合、またはリクエストされたエンドポイント型がサポートされていない場合。UnsupportedOperationExceptionSE
- 実装がエンドポイント型をサポートしていない場合。
createHeaderDelegate
public abstract <T> RuntimeDelegate.HeaderDelegate<T> createHeaderDelegate(ClassSE<T> type) throws IllegalArgumentExceptionSE 指定されたクラスのRuntimeDelegate.HeaderDelegate
のインスタンスを取得します。型の次の値をサポートするには、実装が必要です:CacheControl
、Cookie
、EntityTag
、Link
、NewCookie
、MediaType
、java.util.Date
。- 型パラメーター:
T
- ヘッダー型。- パラメーター:
type
- ヘッダーのクラス。- 戻り値:
- 指定された型の
HeaderDelegate
のインスタンス。 - 例外:
IllegalArgumentExceptionSE
- 型がnull
の場合。- 関連事項:
createLinkBuilder
Link.Builder
の新しいインスタンスを作成します。- 戻り値:
- 新しい
Link.Builder
インスタンス。 - 関連事項:
createConfigurationBuilder
SeBootstrap.Configuration.Builder
の新しいインスタンスを作成します。このメソッドは、アプリケーションによって呼び出されることを意図していません。代わりに
SeBootstrap.Configuration.builder()
を呼び出してください。- 戻り値:
- 新しい
SeBootstrap.Configuration.Builder
インスタンス。 - 関連事項:
bootstrap
public abstract CompletionStageSE<SeBootstrap.Instance> bootstrap(Application application, SeBootstrap.Configuration configuration) Java SE 環境でアプリケーションの起動を行います。このメソッドは、アプリケーションによって呼び出されることを意図していません。代わりに
SeBootstrap.start(Application, SeBootstrap.Configuration)
を呼び出してください。- パラメーター:
application
- 起動するアプリケーション。configuration
- ブートストラップ構成。- 戻り値:
- 実行中のアプリケーション
instance
のハンドルを非同期的に生成するCompletionStage
。
bootstrap
public abstract CompletionStageSE<SeBootstrap.Instance> bootstrap(ClassSE<? extends Application> clazz, SeBootstrap.Configuration configuration) Java SE 環境でアプリケーションの起動を行います。このメソッドは、アプリケーションによって呼び出されることを意図していません。代わりに
SeBootstrap.start(Class, SeBootstrap.Configuration)
を呼び出してください。- パラメーター:
clazz
- インスタンス化して開始するアプリケーションクラス。configuration
- ブートストラップ構成。- 戻り値:
- 実行中のアプリケーション
instance
のハンドルを非同期的に生成するCompletionStage
。
createEntityPartBuilder
public abstract EntityPart.Builder createEntityPartBuilder(StringSE partName) throws IllegalArgumentExceptionSE EntityPart.Builder
の新しいインスタンスを作成します。このメソッドは、アプリケーションによって呼び出されることを意図していません。代わりに
EntityPart.withName(String)
を呼び出してください。- パラメーター:
partName
- マルチパートボディ内のこのパートの名前。- 戻り値:
- 指定された部品名を持つ新しい
EntityPart.Builder
インスタンス - 例外:
IllegalArgumentExceptionSE
-partName
がnull
の場合。- 導入:
- 3.1