public class JettyWebSocketClient extends AbstractWebSocketClient implements Lifecycle
4.1 現在、このクラスは SmartLifecycle
ではなく Lifecycle
を実装しています。WebSocket 接続を自動開始するには、代わりに WebSocketConnectionManager
を使用してください。
logger
コンストラクターと説明 |
---|
JettyWebSocketClient() WebSocketClient のインスタンスを作成するデフォルトのコンストラクター。 |
JettyWebSocketClient(org.eclipse.jetty.websocket.client.WebSocketClient client) 既存の WebSocketClient インスタンスを受け入れるコンストラクター。 |
修飾子と型 | メソッドと説明 |
---|---|
ListenableFuture<WebSocketSession> | doHandshake(WebSocketHandler webSocketHandler, StringSE uriTemplate, ObjectSE... uriVars) |
ListenableFuture<WebSocketSession> | doHandshakeInternal(WebSocketHandler wsHandler, HttpHeaders headers, URISE uri, ListSE<StringSE> protocols, ListSE<WebSocketExtension> extensions, MapSE<StringSE, ObjectSE> attributes) 実際のハンドシェイクを実行して、サーバーへの接続を確立します。 |
AsyncListenableTaskExecutor | getTaskExecutor() 設定された TaskExecutor を返します。 |
protected PrincipalSE | getUser() WebSocketSession.getPrincipal() を介して使用できるようにユーザーを返します。 |
boolean | isRunning() このコンポーネントが現在実行されているかどうかを確認します。 |
void | setTaskExecutor(AsyncListenableTaskExecutor taskExecutor) 接続を開くときに使用する AsyncListenableTaskExecutor を設定します。 |
void | start() このコンポーネントを起動します。 |
void | stop() このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。 |
assertUri, doHandshake
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public JettyWebSocketClient()
WebSocketClient
のインスタンスを作成するデフォルトのコンストラクター。public JettyWebSocketClient(org.eclipse.jetty.websocket.client.WebSocketClient client)
WebSocketClient
インスタンスを受け入れるコンストラクター。public void setTaskExecutor(@Nullable AsyncListenableTaskExecutor taskExecutor)
AsyncListenableTaskExecutor
を設定します。このプロパティが null
に設定されている場合、doHandshake
メソッドの呼び出しは接続が確立されるまでブロックされます。 デフォルトでは、SimpleAsyncTaskExecutor
のインスタンスが使用されます。
@Nullable public AsyncListenableTaskExecutor getTaskExecutor()
TaskExecutor
を返します。public void start()
Lifecycle
コンポーネントがすでに実行されている場合は、例外をスローしないでください。
コンテナーの場合、これは適用されるすべてのコンポーネントに開始信号を伝播します。
Lifecycle
の start
SmartLifecycle.isAutoStartup()
public void stop()
Lifecycle
SmartLifecycle
とその stop(Runnable)
バリアントの実装を検討してください。 この停止通知は破棄前に送信されるとは限らないことに注意してください。通常のシャットダウンでは、一般的な破棄コールバックが伝播される前に、Lifecycle
Bean は最初に停止通知を受信します。ただし、コンテキストの存続期間中のホットリフレッシュまたは中断されたリフレッシュ試行では、特定の Bean の destroy メソッドが、停止信号を事前に考慮することなく呼び出されます。
コンポーネントが実行されていない(まだ開始されていない)場合は、例外をスローしないでください。
コンテナーの場合、これは停止信号を適用するすべてのコンポーネントに伝播します。
Lifecycle
の stop
SmartLifecycle.stop(Runnable)
, DisposableBean.destroy()
public boolean isRunning()
Lifecycle
コンテナーの場合、これは、適用されるすべてのコンポーネントが現在実行されている場合にのみ、true
を返します。
public ListenableFuture<WebSocketSession> doHandshake(WebSocketHandler webSocketHandler, StringSE uriTemplate, ObjectSE... uriVars)
WebSocketClient
の doHandshake
AbstractWebSocketClient
の doHandshake
public ListenableFuture<WebSocketSession> doHandshakeInternal(WebSocketHandler wsHandler, HttpHeaders headers, URISE uri, ListSE<StringSE> protocols, ListSE<WebSocketExtension> extensions, MapSE<StringSE,ObjectSE> attributes)
AbstractWebSocketClient
AbstractWebSocketClient
の doHandshakeInternal
wsHandler
- WebSocket メッセージのクライアント側ハンドラー headers
- ハンドシェイクに使用する HTTP ヘッダー。不要な(禁止されている)ヘッダーはフィルターで除外されます (非 null
)uri
- ハンドシェイクのターゲット URI (非 null
)protocols
- リクエストされたサブプロトコル、または空のリスト extensions
- リクエストされた WebSocket 拡張、または空のリスト attributes
- WebSocketSession に関連付ける属性、つまり WebSocketSession.getAttributes()
を介して。現在は常に空のマップです。@Nullable protected PrincipalSE getUser()
WebSocketSession.getPrincipal()
を介して使用できるようにユーザーを返します。デフォルトでは、このメソッドは null
を返します