クラス ReactorNettyClientRequestFactory
- 実装されたすべてのインターフェース:
Lifecycle
、Phased
、SmartLifecycle
、ClientHttpRequestFactory
ClientHttpRequestFactory
の Reactor-Netty 実装。 このクラスは SmartLifecycle
を実装しており、JVM チェックポイントリストアをサポートするために、オプションで Spring 管理の Bean として宣言できます。
- 導入:
- 6.1
- 作成者:
- Arjen Poutsma, Sebastien Deleuze
フィールドサマリー
インターフェース org.springframework.context.SmartLifecycle から継承されたフィールド
DEFAULT_PHASE
コンストラクターのサマリー
コンストラクター説明圧縮が有効になっているデフォルトのHttpClient
を使用して、ReactorNettyClientRequestFactory
の新しいインスタンスを作成します。ReactorNettyClientRequestFactory
(ReactorResourceFactory resourceFactory, FunctionSE<reactor.netty.http.client.HttpClient, reactor.netty.http.client.HttpClient> mapper) イベントループスレッド用のLoopResources
や接続プール用のConnectionProvider
を含む、外部で管理される Reactor Netty リソースを持つコンストラクター。ReactorNettyClientRequestFactory
(reactor.netty.http.client.HttpClient httpClient) 指定されたHttpClient
に基づいてReactorNettyClientRequestFactory
の新しいインスタンスを作成します。メソッドのサマリー
修飾子と型メソッド説明createRequest
(URISE uri, HttpMethod httpMethod) 指定された URI および HTTP メソッドの新しいClientHttpRequest
を作成します。int
getPhase()
このライフサイクルオブジェクトが実行されるはずのフェーズを返します。boolean
このコンポーネントが現在実行されているかどうかを確認します。void
setConnectTimeout
(int connectTimeout) 基になる接続タイムアウトをミリ秒単位で設定します。void
setConnectTimeout
(DurationSE connectTimeout) 基になる接続タイムアウトをミリ秒単位で設定します。void
setExchangeTimeout
(long exchangeTimeout) HTTP 交換のタイムアウトをミリ秒単位で設定します。void
setExchangeTimeout
(DurationSE exchangeTimeout) HTTP 交換のタイムアウトを設定します。void
setReadTimeout
(long readTimeout) 基になる読み取りタイムアウトをミリ秒単位で設定します。void
setReadTimeout
(DurationSE readTimeout) 基礎となる読み取りタイムアウトをDuration
として設定します。void
start()
このコンポーネントを起動します。void
stop()
このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
インターフェース org.springframework.context.SmartLifecycle から継承されたメソッド
isAutoStartup, stop
コンストラクターの詳細
ReactorNettyClientRequestFactory
public ReactorNettyClientRequestFactory()圧縮が有効になっているデフォルトのHttpClient
を使用して、ReactorNettyClientRequestFactory
の新しいインスタンスを作成します。ReactorNettyClientRequestFactory
public ReactorNettyClientRequestFactory(reactor.netty.http.client.HttpClient httpClient) 指定されたHttpClient
に基づいてReactorNettyClientRequestFactory
の新しいインスタンスを作成します。- パラメーター:
httpClient
- ベースとなるクライアント
ReactorNettyClientRequestFactory
public ReactorNettyClientRequestFactory(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
- 作成されたクライアントをさらに初期化するためのマッパー
メソッドの詳細
setConnectTimeout
public void setConnectTimeout(int connectTimeout) 基になる接続タイムアウトをミリ秒単位で設定します。値 0 は、無限のタイムアウトを指定します。デフォルトは 30 秒です。
- 関連事項:
Transport.option(ChannelOption, Object)
ChannelOption.CONNECT_TIMEOUT_MILLIS
setConnectTimeout
基になる接続タイムアウトをミリ秒単位で設定します。値 0 は、無限のタイムアウトを指定します。デフォルトは 30 秒です。
- 関連事項:
Transport.option(ChannelOption, Object)
ChannelOption.CONNECT_TIMEOUT_MILLIS
setReadTimeout
public void setReadTimeout(long readTimeout) 基になる読み取りタイムアウトをミリ秒単位で設定します。デフォルトは 10 秒です。
setReadTimeout
基礎となる読み取りタイムアウトをDuration
として設定します。デフォルトは 10 秒です。
setExchangeTimeout
public void setExchangeTimeout(long exchangeTimeout) HTTP 交換のタイムアウトをミリ秒単位で設定します。デフォルトは 5 秒です。
setExchangeTimeout
HTTP 交換のタイムアウトを設定します。デフォルトは 5 秒です。
createRequest
インターフェースからコピーされた説明:ClientHttpRequestFactory
指定された URI および HTTP メソッドの新しいClientHttpRequest
を作成します。返されたリクエストは、
ClientHttpRequest.execute()
を呼び出して書き込み、実行できます。- 次で指定:
- インターフェース
ClientHttpRequestFactory
のcreateRequest
- パラメーター:
uri
- リクエストを作成する URIhttpMethod
- 実行する HTTP メソッド- 戻り値:
- 作成されたリクエスト
- 例外:
IOExceptionSE
- I/O エラーの場合
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
- 関連事項: