パッケージ jakarta.ws.rs.ext
クラス RuntimeDelegate
- java.lang.ObjectSE
-
- jakarta.ws.rs.ext.RuntimeDelegate
public abstract class RuntimeDelegate extends ObjectSE
JAX-RS の実装は、RuntimeDelegate の具象サブクラスを提供し、さまざまな JAX-RS API メソッドは、その機能について RuntimeDelegate のメソッドに従います。JAX-RS の通常のユーザーは、このクラスを直接使用することは期待されておらず、ユーザーが指定したサブクラスでこのクラスの実装をオーバーライドすると、予期しない動作が発生する可能性があります。- 導入:
- 1.0
- 作成者:
- Paul Sandoz, Marc Hadley
ネストされたクラスのサマリー
ネストされたクラス 修飾子と型 クラス 説明 static interface
RuntimeDelegate.HeaderDelegate<T>
HTTP ヘッダーの文字列形式と対応する JAX-RS 型T
の間の変換を担当するデリゲートの契約を定義します。
フィールドサマリー
フィールド 修飾子と型 フィールド 説明 static StringSE
JAXRS_RUNTIME_DELEGATE_PROPERTY
getInstance()
から返されるRuntimeDelegate
実装を識別するプロパティの名前。
コンストラクターのサマリー
コンストラクター 修飾子 コンストラクター 説明 protected
RuntimeDelegate()
カスタム実装がRuntimeDelegate
クラスを継承できるようにします。
メソッドのサマリー
フィールドの詳細
JAXRS_RUNTIME_DELEGATE_PROPERTY
public static final StringSE JAXRS_RUNTIME_DELEGATE_PROPERTY
getInstance()
から返されるRuntimeDelegate
実装を識別するプロパティの名前。- 関連事項:
- 定数フィールド値
メソッドの詳細
getInstance
public static 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
public static void setInstance(RuntimeDelegate rd)
JAX-RS クラスで使用されるランタイムデリゲートを設定します。このメソッドがgetInstance()
の前に呼び出されない場合は、getInstance()
に従って実装が求められます。- パラメーター:
rd
- ランタイムデリゲートインスタンス- 例外:
SecurityExceptionSE
- セキュリティマネージャーが存在し、権限 ReflectPermission("suppressAccessChecks" ) が付与されていない場合。
createUriBuilder
public abstract UriBuilder createUriBuilder()
UriBuilder
の新しいインスタンスを作成します。- 戻り値:
- 新しい
UriBuilder
インスタンス。 - 関連事項:
UriBuilder
createResponseBuilder
public abstract Response.ResponseBuilder createResponseBuilder()
Response.ResponseBuilder
の新しいインスタンスを作成します。- 戻り値:
- 新しい
ResponseBuilder
インスタンス。 - 関連事項:
Response.ResponseBuilder
createVariantListBuilder
public abstract Variant.VariantListBuilder createVariantListBuilder()
Variant.VariantListBuilder
の新しいインスタンスを作成します。- 戻り値:
- 新しい
VariantListBuilder
インスタンス。 - 関連事項:
Variant.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
の場合。- 関連事項:
RuntimeDelegate.HeaderDelegate
createLinkBuilder
public abstract Link.Builder createLinkBuilder()
Link.Builder
の新しいインスタンスを作成します。- 戻り値:
- 新しい
Link.Builder
インスタンス。 - 関連事項:
Link.Builder
createConfigurationBuilder
public abstract SeBootstrap.Configuration.Builder createConfigurationBuilder()
SeBootstrap.Configuration.Builder
の新しいインスタンスを作成します。このメソッドは、アプリケーションによって呼び出されることを意図していません。代わりに
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