クラス ReactorClientHttpConnector

java.lang.ObjectSE
org.springframework.http.client.reactive.ReactorClientHttpConnector
実装されたすべてのインターフェース:
LifecyclePhasedSmartLifecycleClientHttpConnector

public class ReactorClientHttpConnector extends ObjectSE implements ClientHttpConnector, SmartLifecycle
ClientHttpConnector の Reactor-Netty 実装。

このクラスは SmartLifecycle を実装しており、オプションで Spring 管理の Bean として宣言できます。

導入:
5.0
作成者:
Brian Clozel, Rossen Stoyanchev, Sebastien Deleuze
関連事項:
  • HttpClient
  • フィールドサマリー

    インターフェース org.springframework.context.SmartLifecycle から継承されたフィールド

    DEFAULT_PHASE
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
    デフォルトコンストラクター。
    ReactorClientHttpConnector(ReactorResourceFactory resourceFactory, FunctionSE<reactor.netty.http.client.HttpClient,reactor.netty.http.client.HttpClient> mapper)
    イベントループスレッド用の LoopResources や接続プール用の ConnectionProvider を含む、外部で管理される Reactor Netty リソースを持つコンストラクター。
    ReactorClientHttpConnector(reactor.netty.http.client.HttpClient httpClient)
    事前構成された HttpClient インスタンスを持つコンストラクター。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    reactor.core.publisher.Mono<ClientHttpResponse>
    connect(HttpMethod method, URISE uri, FunctionSE<? super ClientHttpRequest,reactor.core.publisher.Mono<VoidSE>> requestCallback)
    指定された HttpMethod と URI を使用してオリジンサーバーに接続し、基になる API の HTTP リクエストを初期化して書き込むことができるときに指定された requestCallback を適用します。
    int
    このライフサイクルオブジェクトが実行されるはずのフェーズを返します。
    boolean
    このコンポーネントが現在実行されているかどうかを確認します。
    void
    このコンポーネントを起動します。
    void
    このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE

    インターフェース org.springframework.context.SmartLifecycle から継承されたメソッド

    isAutoStartup, stop
  • コンストラクターの詳細

    • ReactorClientHttpConnector

      public ReactorClientHttpConnector()
      デフォルトのコンストラクター。HttpClient を初期化します。
      HttpClient.create().compress(true)
    • ReactorClientHttpConnector

      public ReactorClientHttpConnector(reactor.netty.http.client.HttpClient httpClient)
      事前構成された HttpClient インスタンスを持つコンストラクター。
      パラメーター:
      httpClient - 使用するクライアント
      導入:
      5.1
    • ReactorClientHttpConnector

      public ReactorClientHttpConnector(ReactorResourceFactory resourceFactory, FunctionSE<reactor.netty.http.client.HttpClient,reactor.netty.http.client.HttpClient> mapper)
      イベントループスレッド用の LoopResources や接続プール用の ConnectionProvider を含む、外部で管理される Reactor Netty リソースを持つコンストラクター。

      このコンストラクターは、クライアントを Reactor Netty グローバルリソースに参加させたくない場合にのみ使用してください。デフォルトでは、クライアントは HttpResources に保持されている Reactor Netty グローバルリソースに参加します。イベントループの同時実行には固定の共有リソースが優先されるため、これをお勧めします。ただし、Spring ApplicationContext が停止または閉じられたときに Reactor Netty グローバルリソースがシャットダウンされ、Spring ApplicationContext が停止したときに (たとえば JVM チェックポイントリストアを使用して) 適切に再起動されるようにするために、globalResources=true を使用して ReactorResourceFactory Bean を宣言することを検討してください。

      パラメーター:
      resourceFactory - リソースを取得するリソースファクトリ
      mapper - 作成されたクライアントをさらに初期化するためのマッパー
      導入:
      5.1
  • メソッドの詳細

    • connect

      public reactor.core.publisher.Mono<ClientHttpResponse> connect(HttpMethod method, URISE uri, FunctionSE<? super ClientHttpRequest,reactor.core.publisher.Mono<VoidSE>> requestCallback)
      インターフェースからコピーされた説明: ClientHttpConnector
      指定された HttpMethod と URI を使用してオリジンサーバーに接続し、基になる API の HTTP リクエストを初期化して書き込むことができるときに指定された requestCallback を適用します。
      次で指定:
      インターフェース ClientHttpConnectorconnect 
      パラメーター:
      method - HTTP リクエストメソッド
      uri - HTTP リクエスト URI
      requestCallback - リクエストの準備と書き込みを行い、書き込みが完了したことを通知するパブリッシャーを返す関数。実装は、ReactiveHttpOutputMessage.writeWith(org.reactivestreams.Publisher<? extends org.springframework.core.io.buffer.DataBuffer>) または ReactiveHttpOutputMessage.setComplete() を呼び出すことによって Mono<Void> を返すことができます。
      戻り値:
      ClientHttpResponse のパブリッシャー
    • start

      public void start()
      インターフェースからコピーされた説明: Lifecycle
      このコンポーネントを起動します。

      コンポーネントがすでに実行されている場合は、例外をスローしないでください。

      コンテナーの場合、これは適用されるすべてのコンポーネントに開始信号を伝播します。

      次で指定:
      インターフェース Lifecyclestart 
      関連事項:
    • stop

      public void stop()
      インターフェースからコピーされた説明: Lifecycle
      このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。非同期停止動作が必要な場合は、SmartLifecycle とその stop(Runnable) バリアントの実装を検討してください。

      この停止通知は破棄前に送信されるとは限らないことに注意してください。通常のシャットダウンでは、一般的な破棄コールバックが伝播される前に、Lifecycle Bean は最初に停止通知を受信します。ただし、コンテキストの存続期間中のホットリフレッシュまたは中断されたリフレッシュ試行では、特定の Bean の destroy メソッドが、停止信号を事前に考慮することなく呼び出されます。

      コンポーネントが実行されていない(まだ開始されていない)場合は、例外をスローしないでください。

      コンテナーの場合、これは停止信号を適用するすべてのコンポーネントに伝播します。

      次で指定:
      インターフェース Lifecyclestop 
      関連事項:
    • isRunning

      public boolean isRunning()
      インターフェースからコピーされた説明: Lifecycle
      このコンポーネントが現在実行されているかどうかを確認します。

      コンテナーの場合、これは、適用されるすべてのコンポーネントが現在実行されている場合にのみ、true を返します。

      次で指定:
      インターフェース LifecycleisRunning 
      戻り値:
      コンポーネントが現在実行中かどうか
    • getPhase

      public int getPhase()
      インターフェースからコピーされた説明: SmartLifecycle
      このライフサイクルオブジェクトが実行されるはずのフェーズを返します。

      デフォルトの実装は、通常の Lifecycle 実装の前に stop() コールバックを実行できるようにするために SmartLifecycle.DEFAULT_PHASE を返します。

      次で指定:
      インターフェース PhasedgetPhase 
      次で指定:
      インターフェース SmartLifecyclegetPhase 
      関連事項: