クラス DefaultApiVersionStrategy
java.lang.ObjectSE
org.springframework.web.reactive.accept.DefaultApiVersionStrategy
- 実装されているすべてのインターフェース:
ApiVersionStrategy
構成されたバージョンリゾルバー、バージョンパーサー、非推奨ハンドラーに委譲する
ApiVersionStrategy のデフォルト実装。- 導入:
- 7.0
- 作成者:
- Rossen Stoyanchev
コンストラクターの概要
コンストラクターコンストラクター説明DefaultApiVersionStrategy(ListSE<ApiVersionResolver> versionResolvers, ApiVersionParser<?> versionParser, @Nullable BooleanSE versionRequired, @Nullable StringSE defaultVersion, boolean detectSupportedVersions, @Nullable PredicateSE<ComparableSE<?>> supportedVersionPredicate, @Nullable ApiVersionDeprecationHandler deprecationHandler) インスタンスの作成。メソッドのサマリー
修飾子と型メソッド説明voidaddMappedVersion(StringSE... versions) リクエストマッピングに表示される実際のバージョン値のリストに追加する内部メソッド。これにより、configuredではなくサポートされているバージョンを検出できるようになります。voidaddSupportedVersion(StringSE... versions) 不明なバージョンに対してInvalidApiVersionExceptionを発生させる前に、ApiVersionStrategy.validateVersion(Comparable, ServerWebExchange)でチェックするサポートされているバージョンのリストに追加します。booleanサポートされているバージョンを検出するように戦略が構成されているかどうか。指定されていないリクエストに対して使用するデフォルトのバージョンを返します。voidhandleDeprecations(ComparableSE<?> version, ObjectSE handler, ServerWebExchange exchange) リクエストされた API バージョンが非推奨かどうかを確認し、非推奨の場合はそれに応じて処理します。例:ComparableSE<?> parseVersion(StringSE version) リクエストのバージョンをオブジェクトに解析します。resolveVersion(ServerWebExchange exchange) リクエストからバージョン値を解決します。例:toString()voidvalidateVersion(@Nullable ComparableSE<?> requestVersion, ServerWebExchange exchange) 必要なバージョンとサポートされているバージョンのチェックを含め、リクエストバージョンを検証します。クラス ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSEインターフェース ApiVersionStrategy から継承されたメソッド
resolveParseAndValidateVersion
コンストラクターの詳細
DefaultApiVersionStrategy
public DefaultApiVersionStrategy(ListSE<ApiVersionResolver> versionResolvers, ApiVersionParser<?> versionParser, @Nullable BooleanSE versionRequired, @Nullable StringSE defaultVersion, boolean detectSupportedVersions, @Nullable PredicateSE<ComparableSE<?>> supportedVersionPredicate, @Nullable ApiVersionDeprecationHandler deprecationHandler) インスタンスの作成。- パラメーター:
versionResolvers- 試すリゾルバーは 1 つ以上あります。リゾルバーによって返される最初の非 NULL 値が、解決された値になります。versionParser- 生のバージョン値パーサーversionRequired- バージョンが必要かどうか。バージョンがないリクエストに対してMissingApiVersionExceptionになります。デフォルトでは、defaultVersion がない限り true に設定されます。defaultVersion- 指定されていないリクエストに割り当てるデフォルトのバージョンdetectSupportedVersions- サポートされているバージョンの検証にマッピングに表示される API バージョンを使用するか (true)、明示的に構成されたバージョンのみを使用するか (false)。deprecationHandler- 非推奨の API バージョンに関するヒントと情報をクライアントに送信するハンドラー
メソッドの詳細
getDefaultVersion
インターフェースからコピーされた説明:ApiVersionStrategy指定されていないリクエストに対して使用するデフォルトのバージョンを返します。- 次で指定:
- インターフェース
ApiVersionStrategyのgetDefaultVersion
detectSupportedVersions
public boolean detectSupportedVersions()サポートされているバージョンを検出するように戦略が設定されているかどうか。これがfalseに設定されている場合、addMappedVersion(String...)は無視され、サポートされているバージョンのリストはaddSupportedVersion(String...)の呼び出しを通じて明示的に構築できます。addSupportedVersion
不明なバージョンに対してInvalidApiVersionExceptionを発生させる前に、ApiVersionStrategy.validateVersion(Comparable, ServerWebExchange)でチェックするサポートされているバージョンのリストに追加します。デフォルトでは、リクエストマッピングに表示される実際のバージョン値はサポートされていると見なされ、このメソッドの使用は任意です。ただし、明示的に設定されたサポートされているバージョンのみを使用する場合は、
detectSupportedVersionsフラグをfalseに設定してください。- パラメーター:
versions- 追加するサポートされているバージョン- 関連事項:
addMappedVersion
リクエストマッピングに表示される実際のバージョン値のリストに追加する内部メソッド。これにより、configuredではなくサポートされているバージョンを検出できるようになります。明示的に構成されたサポートされているバージョンのみを使用する場合は、
detectSupportedVersionsフラグをfalseに設定します。- パラメーター:
versions- 追加するバージョン- 関連事項:
resolveVersion
インターフェースからコピーされた説明:ApiVersionStrategyリクエストヘッダーなどのリクエストからバージョン値を解決します。- 次で指定:
- インターフェース
ApiVersionStrategyのresolveVersion - パラメーター:
exchange- 現在の交換- 戻り値:
- バージョン(存在する場合)または
null - 関連事項:
parseVersion
インターフェースからコピーされた説明:ApiVersionStrategyリクエストのバージョンをオブジェクトに解析します。- 次で指定:
- インターフェース
ApiVersionStrategyのparseVersion - パラメーター:
version- 解析する値- 戻り値:
- バージョンを表すオブジェクト
- 関連事項:
validateVersion
public void validateVersion(@Nullable ComparableSE<?> requestVersion, ServerWebExchange exchange) throws MissingApiVersionException, InvalidApiVersionException インターフェースからコピーされた説明:ApiVersionStrategy必要なバージョンとサポートされているバージョンのチェックを含め、リクエストバージョンを検証します。- 次で指定:
- インターフェース
ApiVersionStrategyのvalidateVersion - パラメーター:
requestVersion- 検証するバージョンexchange- 交換- 例外:
MissingApiVersionException- バージョンは必須だが指定されていない場合InvalidApiVersionException- バージョンがサポートされていない場合
handleDeprecations
public void handleDeprecations(ComparableSE<?> version, ObjectSE handler, ServerWebExchange exchange) インターフェースからコピーされた説明:ApiVersionStrategyリクエストされた API バージョンが非推奨かどうかを確認し、非推奨の場合はそれに応じて処理します。たとえば、非推奨を通知するレスポンスヘッダーを設定したり、関連する日付を指定したり、詳細へのリンクを提供したりします。- 次で指定:
- インターフェース
ApiVersionStrategyのhandleDeprecations - パラメーター:
version- 解決され解析されたリクエストバージョンhandler- 交換のために選ばれたハンドラーexchange- 現在の交換- 関連事項:
toString