クラス ReactorClientHttpConnector
- 実装されたすべてのインターフェース:
Lifecycle
、Phased
、SmartLifecycle
、ClientHttpConnector
ClientHttpConnector
の Reactor-Netty 実装。 このクラスは SmartLifecycle
を実装しており、オプションで Spring 管理の Bean として宣言できます。
- 導入:
- 5.0
- 作成者:
- Brian Clozel, Rossen Stoyanchev, Sebastien Deleuze, Juergen Hoeller
- 関連事項:
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
getPhase()
このライフサイクルオブジェクトが実行されるはずのフェーズを返します。boolean
このコンポーネントが現在実行されているかどうかを確認します。void
start()
このコンポーネントを起動します。void
stop()
このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。クラス 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
を適用します。- 次で指定:
- インターフェース
ClientHttpConnector
のconnect
- パラメーター:
method
- HTTP リクエストメソッドuri
- HTTP リクエスト URIrequestCallback
- リクエストの準備と書き込みを行い、書き込みが完了したことを通知するパブリッシャーを返す関数。実装は、ReactiveHttpOutputMessage.writeWith(org.reactivestreams.Publisher<? extends org.springframework.core.io.buffer.DataBuffer>)
またはReactiveHttpOutputMessage.setComplete()
を呼び出すことによってMono<Void>
を返すことができます。- 戻り値:
ClientHttpResponse
のパブリッシャー
start
public void start()インターフェースからコピーされた説明:Lifecycle
このコンポーネントを起動します。コンポーネントがすでに実行されている場合は、例外をスローしないでください。
コンテナーの場合、これは適用されるすべてのコンポーネントに開始シグナルを伝播します。
stop
public void stop()インターフェースからコピーされた説明:Lifecycle
このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。非同期停止動作が必要な場合は、SmartLifecycle
とそのstop(Runnable)
バリアントの実装を検討してください。この停止通知は破棄前に送信されるとは限らないことに注意してください。通常のシャットダウンでは、一般的な破棄コールバックが伝播される前に、
Lifecycle
Bean は最初に停止通知を受信します。ただし、コンテキストの存続期間中のホットリフレッシュまたは中断されたリフレッシュ試行では、特定の Bean の destroy メソッドが、停止シグナルを事前に考慮することなく呼び出されます。コンポーネントが実行されていない(まだ開始されていない)場合は、例外をスローしないでください。
コンテナーの場合、これは停止シグナルを適用するすべてのコンポーネントに伝播します。
isRunning
public boolean isRunning()インターフェースからコピーされた説明:Lifecycle
このコンポーネントが現在実行されているかどうかを確認します。コンテナーの場合、これは、適用されるすべてのコンポーネントが現在実行されている場合にのみ、
true
を返します。getPhase
public int getPhase()インターフェースからコピーされた説明:SmartLifecycle
このライフサイクルオブジェクトが実行されるはずのフェーズを返します。デフォルトの実装は、通常の
Lifecycle
実装の前にstop()
コールバックを実行できるようにするためにSmartLifecycle.DEFAULT_PHASE
を返します。- 次で指定:
- インターフェース
Phased
のgetPhase
- 次で指定:
- インターフェース
SmartLifecycle
のgetPhase
- 関連事項: