public abstract class ConnectionManagerSupport extends ObjectSE implements SmartLifecycle
autoStartup
プロパティが true
に設定されている場合、または false
に設定されている場合、start()
および #stop メソッドを手動で呼び出すことができます。修飾子と型 | フィールドと説明 |
---|---|
protected Log | logger |
DEFAULT_PHASE
コンストラクターと説明 |
---|
ConnectionManagerSupport(StringSE uriTemplate, ObjectSE... uriVariables) |
修飾子と型 | メソッドと説明 |
---|---|
protected abstract void | closeConnection() |
int | getPhase() このエンドポイント接続ファクトリが自動接続されて停止するフェーズを返します。 |
protected URISE | getUri() |
boolean | isAutoStartup() 'autoStartup' プロパティの値を返します。 |
protected abstract boolean | isConnected() |
boolean | isRunning() この ConnectionManager が起動しているかどうかを返します。 |
protected abstract void | openConnection() |
void | setAutoStartup(boolean autoStartup) この接続マネージャーが初期化され、Spring コンテキストがリフレッシュされた後、リモートエンドポイントに自動接続するかどうかを設定します。 |
void | setPhase(int phase) リモートエンドポイントへの接続を確立し、その後閉じる必要があるフェーズを指定します。 |
void | start() WebSocket 接続を開始します。 |
protected void | startInternal() |
void | stop() このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。 |
void | stop(RunnableSE callback) Lifecycle コンポーネントが現在実行中の場合、停止する必要があることを示します。 |
protected void | stopInternal() |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
protected final Log logger
protected URISE getUri()
public void setAutoStartup(boolean autoStartup)
デフォルトは「false」。
public boolean isAutoStartup()
public void setPhase(int phase)
public int getPhase()
Phased
の getPhase
SmartLifecycle
の getPhase
SmartLifecycle.isAutoStartup()
, Lifecycle.start()
, SmartLifecycle.stop(Runnable)
, DefaultLifecycleProcessor.getPhase(Lifecycle)
public final void start()
Lifecycle
の start
SmartLifecycle.isAutoStartup()
protected void startInternal()
public final void stop()
Lifecycle
SmartLifecycle
とその stop(Runnable)
バリアントの実装を検討してください。 この停止通知は破棄前に送信されるとは限らないことに注意してください。通常のシャットダウンでは、一般的な破棄コールバックが伝播される前に、Lifecycle
Bean は最初に停止通知を受信します。ただし、コンテキストの存続期間中のホットリフレッシュまたは中断されたリフレッシュ試行では、特定の Bean の destroy メソッドが、停止シグナルを事前に考慮することなく呼び出されます。
コンポーネントが実行されていない(まだ開始されていない)場合は、例外をスローしないでください。
コンテナーの場合、これは停止シグナルを適用するすべてのコンポーネントに伝播します。
Lifecycle
の stop
SmartLifecycle.stop(Runnable)
, DisposableBean.destroy()
public final void stop(RunnableSE callback)
SmartLifecycle
提供されたコールバックは、LifecycleProcessor
によって使用され、共通のシャットダウン順序値を持つすべてのコンポーネントの順序付けられた、潜在的に同時のシャットダウンをサポートします。コールバック は、SmartLifecycle
コンポーネントが実際に停止した後に実行する必要があります。
LifecycleProcessor
は、stop
メソッドのこのバリアントのみを呼び出します。つまり、SmartLifecycle
実装では、このメソッドの実装内に明示的に委譲されない限り、Lifecycle.stop()
は呼び出されません。
デフォルトの実装は Lifecycle.stop()
に委譲し、呼び出しスレッドで指定されたコールバックをすぐにトリガーします。2 つの間に同期がないことに注意してください。カスタム実装では、少なくとも共通のライフサイクルモニター(存在する場合)内に同じ手順を入れたい場合があります。
SmartLifecycle
の stop
Lifecycle.stop()
, SmartLifecycle.getPhase()
protected void stopInternal() throws ExceptionSE
ExceptionSE
public boolean isRunning()
protected abstract void openConnection()
protected abstract void closeConnection() throws ExceptionSE
ExceptionSE
protected abstract boolean isConnected()