public class PayloadMethodArgumentResolver extends ObjectSE implements HandlerMethodArgumentResolver
Decoder
を使用してメッセージのペイロードを抽出およびデコードするリゾルバー。ペイロードは DataBuffer
の Publisher
であると想定されています。 メソッド引数に @javax.validation.Valid
または Validated
アノテーションが付けられている場合、検証が適用されます。検証に失敗すると、MethodArgumentNotValidException
が発生します。
useDefaultResolution
が true
に設定されている場合、このリゾルバーはすべての型をサポートし、Payload
の存在を必要としないため、最後に並べ替える必要があります。
コンストラクターと説明 |
---|
PayloadMethodArgumentResolver(ListSE<? extends Decoder<?>> decoders, Validator validator, ReactiveAdapterRegistry registry, boolean useDefaultResolution) |
修飾子と型 | メソッドと説明 |
---|---|
ReactiveAdapterRegistry | getAdapterRegistry() 設定された ReactiveAdapterRegistry を返します。 |
ListSE<Decoder<?>> | getDecoders() 設定されたデコーダの読み取り専用リストを返します。 |
protected MimeType | getMimeType(Message<?> message) コンテンツの MIME 型を返します。 |
Validator | getValidator() 設定されたバリデーターがある場合はそれを返します。 |
boolean | isUseDefaultResolution() このリゾルバーがデフォルトの解決を使用するように構成されているかどうか。 |
reactor.core.publisher.Mono<ObjectSE> | resolveArgument(MethodParameter parameter, Message<?> message) 互換性のある Decoder を介して、指定されたメッセージペイロードの内容をデコードします。 |
boolean | supportsParameter(MethodParameter parameter) 指定されたメソッドパラメーターがこのリゾルバーによってサポートされているかどうか。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
protected final Log logger
public ReactiveAdapterRegistry getAdapterRegistry()
ReactiveAdapterRegistry
を返します。public boolean isUseDefaultResolution()
@Payload
が存在するかどうかに関係なく、任意の引数型で機能するかどうか。public boolean supportsParameter(MethodParameter parameter)
HandlerMethodArgumentResolver
HandlerMethodArgumentResolver
の supportsParameter
parameter
- チェックするメソッドパラメーター true
。それ以外の場合は false
public final reactor.core.publisher.Mono<ObjectSE> resolveArgument(MethodParameter parameter, Message<?> message)
Decoder
を介して、指定されたメッセージペイロードの内容をデコードします。 メソッド引数に @javax.validation.Valid
または Validated
アノテーションが付けられている場合、検証が適用されます。検証に失敗すると、MethodArgumentNotValidException
が発生します。
HandlerMethodArgumentResolver
の resolveArgument
parameter
- デコード先のターゲットメソッド引数 message
- コンテンツが抽出されたメッセージ extractContent(MethodParameter, Message)
, getMimeType(Message)