クラス AbstractNamedValueArgumentResolver
java.lang.ObjectSE
org.springframework.web.reactive.result.method.HandlerMethodArgumentResolverSupport
org.springframework.web.reactive.result.method.annotation.AbstractNamedValueArgumentResolver
- 実装されているすべてのインターフェース:
HandlerMethodArgumentResolver
public abstract class AbstractNamedValueArgumentResolver
extends HandlerMethodArgumentResolverSupport
名前付き値からメソッド引数を解決するための抽象基本クラス。リクエストパラメーター、リクエストヘッダー、パス変数は、名前付き値の例です。それぞれに名前、必須フラグ、デフォルト値を含めることができます。
サブクラスは、次の方法を定義します。
- メソッドパラメーターの名前付き値情報を取得する
- 名前を引数値に解決する
- 引数値が必要なときに欠落している引数値を処理する
- オプションで解決された値を処理する
デフォルト値の文字列には、${...} プレースホルダーと Spring 式言語 #{...} 式を含めることができます。これを機能させるには、ConfigurableBeanFactory をクラスコンストラクターに指定する必要があります。
- 導入:
- 5.0
- 作成者:
- Rossen Stoyanchev, Sebastien Deleuze
ネストされたクラスの要約
ネストされたクラス修飾子と型クラス説明protected static class名前、必須かどうか、デフォルト値など、名前付き値に関する情報を表します。フィールドのサマリー
クラス HandlerMethodArgumentResolverSupport から継承されたフィールド
loggerコンストラクターの概要
コンストラクターコンストラクター説明AbstractNamedValueArgumentResolver(@Nullable ConfigurableBeanFactory factory, ReactiveAdapterRegistry registry) 新しいAbstractNamedValueArgumentResolverインスタンスを作成します。メソッドのサマリー
修飾子と型メソッド説明protected abstract AbstractNamedValueArgumentResolver.NamedValueInfocreateNamedValueInfo(MethodParameter parameter) 指定されたメソッドパラメーターのAbstractNamedValueArgumentResolver.NamedValueInfoオブジェクトを作成します。protected voidhandleMissingValue(StringSE name, MethodParameter parameter) 名前付き値が必要であるが、resolveName(String, MethodParameter, ServerWebExchange)がnullを返し、デフォルト値がない場合に呼び出されます。protected voidhandleMissingValue(StringSE name, MethodParameter parameter, ServerWebExchange exchange) 名前付き値が必要であるが、resolveName(String, MethodParameter, ServerWebExchange)がnullを返し、デフォルト値がない場合に呼び出されます。protected voidhandleResolvedValue(@Nullable ObjectSE arg, StringSE name, MethodParameter parameter, Model model, ServerWebExchange exchange) 値が解決された後に呼び出されます。reactor.core.publisher.Mono<ObjectSE> resolveArgument(MethodParameter parameter, BindingContext bindingContext, ServerWebExchange exchange) メソッドパラメーターの値を解決します。protected abstract reactor.core.publisher.Mono<ObjectSE> resolveName(StringSE name, MethodParameter parameter, ServerWebExchange exchange) 指定されたパラメーターの型と値の名前を引数の値に解決します。クラス HandlerMethodArgumentResolverSupport から継承されたメソッド
checkAnnotatedParamNoReactiveWrapper, checkParameterType, checkParameterTypeNoReactiveWrapper, getAdapterRegistryクラス ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース HandlerMethodArgumentResolver から継承されたメソッド
supportsParameter
コンストラクターの詳細
AbstractNamedValueArgumentResolver
public AbstractNamedValueArgumentResolver(@Nullable ConfigurableBeanFactory factory, ReactiveAdapterRegistry registry) 新しいAbstractNamedValueArgumentResolverインスタンスを作成します。- パラメーター:
factory- デフォルト値の${...}プレースホルダーと#{...}SpEL 式を解決するために使用する Bean ファクトリ、またはデフォルト値に式が含まれることが予期されていない場合はnullregistry- リアクティブ型ラッパーのチェック用
メソッドの詳細
resolveArgument
public reactor.core.publisher.Mono<ObjectSE> resolveArgument(MethodParameter parameter, BindingContext bindingContext, ServerWebExchange exchange) インターフェースからコピーされた説明:HandlerMethodArgumentResolverメソッドパラメーターの値を解決します。- パラメーター:
parameter- メソッドパラメーターbindingContext- 使用するバインディングコンテキストexchange- 現在の交換- 戻り値:
- 引数値の
Mono、おそらく空
createNamedValueInfo
protected abstract AbstractNamedValueArgumentResolver.NamedValueInfo createNamedValueInfo(MethodParameter parameter) 指定されたメソッドパラメーターのAbstractNamedValueArgumentResolver.NamedValueInfoオブジェクトを作成します。実装は通常、MethodParameter.getParameterAnnotation(Class)を使用してメソッドアノテーションを取得します。- パラメーター:
parameter- メソッドパラメーター- 戻り値:
- 名前付き値の情報
resolveName
protected abstract reactor.core.publisher.Mono<ObjectSE> resolveName(StringSE name, MethodParameter parameter, ServerWebExchange exchange) 指定されたパラメーターの型と値の名前を引数の値に解決します。- パラメーター:
name- 解決される値の名前parameter- 引数値に解決するメソッドパラメーター (OptionalSE 宣言の場合は事前ネスト)exchange- 現在の交換- 戻り値:
- 解決された引数 (空の
Monoの可能性があります)
handleMissingValue
protected void handleMissingValue(StringSE name, MethodParameter parameter, ServerWebExchange exchange) 名前付き値が必要であるが、resolveName(String, MethodParameter, ServerWebExchange)がnullを返し、デフォルト値がない場合に呼び出されます。この場合、サブクラスは通常、例外をスローします。- パラメーター:
name- 値の名前parameter- メソッドパラメーターexchange- 現在の交換
handleMissingValue
名前付き値が必要であるが、resolveName(String, MethodParameter, ServerWebExchange)がnullを返し、デフォルト値がない場合に呼び出されます。この場合、サブクラスは通常、例外をスローします。- パラメーター:
name- 値の名前parameter- メソッドパラメーター
handleResolvedValue
protected void handleResolvedValue(@Nullable ObjectSE arg, StringSE name, MethodParameter parameter, Model model, ServerWebExchange exchange) 値が解決された後に呼び出されます。- パラメーター:
arg- 解決された引数値name- 引数名parameter- 引数パラメーターの型model- モデルexchange- 現在の交換