クラス JettyWebSocketClient

java.lang.ObjectSE
org.springframework.web.socket.client.AbstractWebSocketClient
org.springframework.web.socket.client.jetty.JettyWebSocketClient
実装されたすべてのインターフェース:
LifecycleWebSocketClient

public class JettyWebSocketClient extends AbstractWebSocketClient implements Lifecycle
Jetty WebSocket API を介して、WebSocket サーバーへの WebSocket リクエストをプログラムで開始します。

4.1 現在、このクラスは SmartLifecycle ではなく Lifecycle を実装しています。WebSocket 接続を自動開始するには、代わりに WebSocketConnectionManager を使用してください。

導入:
4.0
作成者:
Rossen Stoyanchev, Juergen Hoeller
  • コンストラクターの詳細

    • JettyWebSocketClient

      public JettyWebSocketClient()
      WebSocketClient のインスタンスを作成するデフォルトのコンストラクター。
    • JettyWebSocketClient

      public JettyWebSocketClient(org.eclipse.jetty.websocket.client.WebSocketClient client)
      既存の WebSocketClient インスタンスを受け入れるコンストラクター。
  • メソッドの詳細

    • setTaskExecutor

      public void setTaskExecutor(@Nullable AsyncTaskExecutor taskExecutor)
      接続を開くときに使用する AsyncTaskExecutor を設定します。

      このプロパティが null に設定されている場合、doHandshake メソッドの呼び出しは、接続が確立されるまでブロックされます。

      デフォルトでは、SimpleAsyncTaskExecutor のインスタンスが使用されます。

    • getTaskExecutor

      @Nullable public AsyncTaskExecutor getTaskExecutor()
      設定された AsyncTaskExecutor を返します。
    • start

      public void start()
      インターフェースからコピーされた説明: Lifecycle
      このコンポーネントを起動します。

      コンポーネントがすでに実行されている場合は、例外をスローしないでください。

      コンテナーの場合、これは適用されるすべてのコンポーネントに開始シグナルを伝播します。

      次で指定:
      インターフェース Lifecyclestart 
      関連事項:
    • stop

      public void stop()
      インターフェースからコピーされた説明: Lifecycle
      このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。非同期停止動作が必要な場合は、SmartLifecycle とその stop(Runnable) バリアントの実装を検討してください。

      この停止通知は破棄前に送信されるとは限らないことに注意してください。通常のシャットダウンでは、一般的な破棄コールバックが伝播される前に、Lifecycle Bean は最初に停止通知を受信します。ただし、コンテキストの存続期間中のホットリフレッシュまたは中断されたリフレッシュ試行では、特定の Bean の destroy メソッドが、停止シグナルを事前に考慮することなく呼び出されます。

      コンポーネントが実行されていない(まだ開始されていない)場合は、例外をスローしないでください。

      コンテナーの場合、これは停止シグナルを適用するすべてのコンポーネントに伝播します。

      次で指定:
      インターフェース Lifecyclestop 
      関連事項:
    • isRunning

      public boolean isRunning()
      インターフェースからコピーされた説明: Lifecycle
      このコンポーネントが現在実行されているかどうかを確認します。

      コンテナーの場合、これは、適用されるすべてのコンポーネントが現在実行されている場合にのみ、true を返します。

      次で指定:
      インターフェース LifecycleisRunning 
      戻り値:
      コンポーネントが現在実行中かどうか
    • executeInternal

      public CompletableFutureSE<WebSocketSession> executeInternal(WebSocketHandler wsHandler, HttpHeaders headers, URISE uri, ListSE<StringSE> protocols, ListSE<WebSocketExtension> extensions, MapSE<StringSE,ObjectSE> attributes)
      クラスからコピーされた説明: AbstractWebSocketClient
      実際のハンドシェイクを実行して、サーバーへの接続を確立します。
      次で指定:
      クラス AbstractWebSocketClientexecuteInternal 
      パラメーター:
      wsHandler - WebSocket メッセージのクライアント側ハンドラー
      headers - ハンドシェイクに使用する HTTP ヘッダー。不要な(禁止されている)ヘッダーはフィルターで除外されます (非 null)
      uri - ハンドシェイクのターゲット URI (非 null)
      protocols - リクエストされたサブプロトコル、または空のリスト
      extensions - リクエストされた WebSocket 拡張、または空のリスト
      attributes - WebSocketSession に関連付ける属性 (つまり、WebSocketSession.getAttributes() 経由)。現在、常に空のマップ
      戻り値:
      CompletableFuture でラップされた、確立された WebSocket セッション。
    • getUser

      @Nullable protected PrincipalSE getUser()
      WebSocketSession.getPrincipal() を介して利用可能にするユーザーを返します。デフォルトでは、このメソッドは null を返します