クラス InvocableHandlerMethod


public class InvocableHandlerMethod extends HandlerMethod
HandlerMethodArgumentResolver のリストを介して現在の HTTP リクエストから解決された引数値を使用して、基になるメソッドを呼び出す HandlerMethod の拡張。

デフォルトでは、メソッドの呼び出しは、Mono がサブスクライブされたスレッドで行われますが、場合によっては、解決された引数の 1 つを発行したスレッドで行われることもあります (たとえば、リクエスト本体をデコードする必要がある場合)。基になるメソッドの呼び出しに対して予測可能なスレッドを確保するために、オプションで setInvocationScheduler(Scheduler) を介して Scheduler を提供することもできます。

導入:
5.0
作成者:
Rossen Stoyanchev, Juergen Hoeller, Sebastien Deleuze
  • コンストラクターの詳細

    • InvocableHandlerMethod

      public InvocableHandlerMethod(HandlerMethod handlerMethod)
      HandlerMethod からインスタンスを作成します。
    • InvocableHandlerMethod

      public InvocableHandlerMethod(ObjectSE bean, MethodSE method)
      Bean インスタンスとメソッドからインスタンスを作成します。
  • メソッドの詳細

    • setArgumentResolvers

      public void setArgumentResolvers(ListSE<? extends HandlerMethodArgumentResolver> resolvers)
      ServerWebExchange に対してメソッド引数値を解決するために使用する引数リゾルバーを構成します。
    • getResolvers

      public ListSE<HandlerMethodArgumentResolver> getResolvers()
      構成された引数リゾルバーを返します。
    • setParameterNameDiscoverer

      public void setParameterNameDiscoverer(ParameterNameDiscoverer nameDiscoverer)
      必要に応じてパラメーター名を解決するために ParameterNameDiscoverer を設定します (たとえば、デフォルトのリクエスト属性名)。

      デフォルトは DefaultParameterNameDiscoverer です。

    • getParameterNameDiscoverer

      public ParameterNameDiscoverer getParameterNameDiscoverer()
      設定されたパラメーター名の discoverer を返します。
    • setReactiveAdapterRegistry

      public void setReactiveAdapterRegistry(ReactiveAdapterRegistry registry)
      リアクティブアダプターレジストリを構成します。これは、非同期の戻り値と組み合わせてコントローラー内でレスポンスが完全に処理される場合に必要です。

      デフォルトでは、これはデフォルト設定の ReactiveAdapterRegistry です。

    • setMethodValidator

      public void setMethodValidator(@Nullable MethodValidator methodValidator)
      コントローラーメソッド HandlerMethod.shouldValidateArguments() または HandlerMethod.shouldValidateReturnValue() の場合にメソッド検証を実行するように MethodValidator を設定します。
      導入:
      6.1
    • setInvocationScheduler

      public void setInvocationScheduler(@Nullable reactor.core.scheduler.Scheduler invocationScheduler)
      メソッド呼び出しを実行する Scheduler を設定します。
      導入:
      6.1.6
    • invoke

      public reactor.core.publisher.Mono<HandlerResult> invoke(ServerWebExchange exchange, BindingContext bindingContext, ObjectSE... providedArgs)
      指定された交換のメソッドを呼び出します。
      パラメーター:
      exchange - 現在の交換
      bindingContext - 使用するバインディングコンテキスト
      providedArgs - 型で照合する引数値のオプションのリスト
      戻り値:
      Mono と HandlerResult