クラス ConnectionManagerSupport
java.lang.ObjectSE
org.springframework.web.socket.client.ConnectionManagerSupport
- 実装されているすべてのインターフェース:
Lifecycle, Phased, SmartLifecycle
- 既知の直属サブクラス
AnnotatedEndpointConnectionManager, EndpointConnectionManager, WebSocketConnectionManager
Spring ApplicationContext ライフサイクルを使用して WebSocket サーバーに接続するプロセスを自動化する接続マネージャーの基本クラス。
start() で WebSocket サーバーに接続し、stop() で切断します。setAutoStartup(boolean) が true に設定されている場合、これは Spring ApplicationContext がリフレッシュされるときに自動的に行われます。- 導入:
- 4.0
- 作成者:
- Rossen Stoyanchev
フィールドのサマリー
フィールドインターフェース SmartLifecycle から継承されたフィールド
DEFAULT_PHASEコンストラクターの概要
コンストラクターコンストラクター説明ConnectionManagerSupport(StringSE uriTemplate, @Nullable ObjectSE... uriVariables) URI テンプレートと変数を持つコンストラクター。準備されたURISE を持つコンストラクター。メソッドのサマリー
修飾子と型メソッド説明protected abstract voidサブクラスはこれを実装して接続を閉じます。intgetPhase()このエンドポイント接続ファクトリが自動接続されて停止するフェーズを返します。protected URISEgetUri()boolean'autoStartup' プロパティの値を返します。abstract boolean接続が開いている /trueか閉じている /falseか。booleanこの ConnectionManager が起動しているかどうかを返します。protected abstract voidサブクラスはこれを実装して、実際に接続を確立します。voidsetAutoStartup(boolean autoStartup) この接続マネージャーが初期化され、Spring コンテキストがリフレッシュされた後、リモートエンドポイントに自動接続するかどうかを設定します。voidsetPhase(int phase) リモートエンドポイントへの接続を確立し、その後閉じる必要があるフェーズを指定します。final voidstart()WebSocket 接続を開始します。protected voidfinal voidstop()このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。final voidstop(RunnableSE callback) Lifecycle コンポーネントが現在実行中の場合、停止する必要があることを示します。protected voidクラス ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース SmartLifecycle から継承されたメソッド
isPauseable
フィールドの詳細
logger
protected final org.apache.commons.logging.Log logger
コンストラクターの詳細
ConnectionManagerSupport
ConnectionManagerSupport
メソッドの詳細
getUri
setAutoStartup
public void setAutoStartup(boolean autoStartup) この接続マネージャーが初期化され、Spring コンテキストがリフレッシュされた後、リモートエンドポイントに自動接続するかどうかを設定します。デフォルトは「false」。
isAutoStartup
public boolean isAutoStartup()'autoStartup' プロパティの値を返します。"true" の場合、このエンドポイント接続マネージャーは ContextRefreshedEvent で リモートエンドポイントに接続します。- 次で指定:
- インターフェース
SmartLifecycleのisAutoStartup - 関連事項:
setPhase
public void setPhase(int phase) リモートエンドポイントへの接続を確立し、その後閉じる必要があるフェーズを指定します。起動順序は最低から最高に進み、シャットダウン順序はその逆になります。デフォルトでは、この値は Integer.MAX_VALUE です。これは、このエンドポイント接続ファクトリができるだけ遅く接続し、できるだけ早く閉じられることを意味します。getPhase
public int getPhase()このエンドポイント接続ファクトリが自動接続されて停止するフェーズを返します。- 次で指定:
- インターフェース
PhasedのgetPhase - 次で指定:
- インターフェース
SmartLifecycleのgetPhase - 関連事項:
start
startInternal
protected void startInternal()stop
public final void stop()インターフェースからコピーされた説明:Lifecycleこのメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。非同期停止動作が必要な場合は、SmartLifecycleとそのstop(Runnable)バリアントの実装を検討してください。この停止通知は破棄前に送信されるとは限らないことに注意してください。通常のシャットダウンでは、一般的な破棄コールバックが伝播される前に、
LifecycleBean は最初に停止通知を受信します。ただし、コンテキストの存続期間中のホットリフレッシュまたは中断されたリフレッシュ試行では、特定の Bean の destroy メソッドが、停止シグナルを事前に考慮することなく呼び出されます。コンポーネントが実行されていない(まだ開始されていない)場合は、例外をスローしないでください。
コンテナーの場合、これは停止シグナルを適用するすべてのコンポーネントに伝播します。
stop
インターフェースからコピーされた説明:SmartLifecycleLifecycle コンポーネントが現在実行中の場合、停止する必要があることを示します。提供されたコールバックは、
LifecycleProcessorによって使用され、共通のシャットダウン順序値を持つすべてのコンポーネントの順序付けられた、潜在的に同時のシャットダウンをサポートします。コールバック は、SmartLifecycleコンポーネントが実際に停止した後に実行する必要があります。LifecycleProcessorは、stopメソッドのこのバリアントのみを呼び出します。つまり、SmartLifecycle実装では、このメソッドの実装内に明示的に委譲されない限り、Lifecycle.stop()は呼び出されません。デフォルトの実装は
Lifecycle.stop()に委譲し、呼び出しスレッドで指定されたコールバックをすぐにトリガーします。2 つの間に同期がないことに注意してください。カスタム実装では、少なくとも共通のライフサイクルモニター(存在する場合)内に同じ手順を入れたい場合があります。- 次で指定:
- インターフェース
SmartLifecycleのstop - 関連事項:
stopInternal
- 例外:
ExceptionSE
isRunning
isConnected
public abstract boolean isConnected()接続が開いている /trueか閉じている /falseか。openConnection
protected abstract void openConnection()サブクラスはこれを実装して、実際に接続を確立します。closeConnection