クラス TransportHandlingSockJsService

java.lang.ObjectSE
org.springframework.web.socket.sockjs.support.AbstractSockJsService
org.springframework.web.socket.sockjs.transport.TransportHandlingSockJsService
実装されたすべてのインターフェース:
LifecycleCorsConfigurationSourceSockJsServiceSockJsServiceConfig
既知の直属サブクラス
DefaultSockJsService

public class TransportHandlingSockJsService extends AbstractSockJsService implements SockJsServiceConfig, Lifecycle
SPI ベースのトランスポート処理とセッション管理をサポートする SockJsService の基本的な実装。

TransportHandler SPI に基づいています。TransportHandlers は、SockJsSessionFactory および HandshakeHandler インターフェースをさらに実装できます。

リクエストマッピングの重要な詳細については、AbstractSockJsService 基本クラスを参照してください。

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

    • TransportHandlingSockJsService

      public TransportHandlingSockJsService(TaskScheduler scheduler, TransportHandler... handlers)
      指定された handler 型で TransportHandlingSockJsService を作成します。
      パラメーター:
      scheduler - ハートビートメッセージのタスクスケジューラとタイムアウトしたセッションの削除。提供された TaskScheduler は、Spring Bean として宣言して、起動時に初期化され、アプリケーションが停止するとシャットダウンするようにする必要があります。
      handlers - 使用する 1 つ以上の TransportHandler 実装
    • TransportHandlingSockJsService

      public TransportHandlingSockJsService(TaskScheduler scheduler, CollectionSE<TransportHandler> handlers)
      指定された handler 型で TransportHandlingSockJsService を作成します。
      パラメーター:
      scheduler - ハートビートメッセージのタスクスケジューラとタイムアウトしたセッションの削除。提供された TaskScheduler は、Spring Bean として宣言して、起動時に初期化され、アプリケーションが停止するとシャットダウンするようにする必要があります。
      handlers - 使用する 1 つ以上の TransportHandler 実装
  • メソッドの詳細

    • getTransportHandlers

      public MapSE<TransportType,TransportHandler> getTransportHandlers()
      トランスポート型ごとに登録済みハンドラーを返します。
    • setMessageCodec

      public void setMessageCodec(SockJsMessageCodec messageCodec)
      SockJS メッセージのエンコードとデコードに使用するコーデック。
    • getMessageCodec

      public SockJsMessageCodec getMessageCodec()
      インターフェースからコピーされた説明: SockJsServiceConfig
      SockJS メッセージのエンコードとデコードに使用するコーデック。
      次で指定:
      インターフェース SockJsServiceConfiggetMessageCodec 
    • setHandshakeInterceptors

      public void setHandshakeInterceptors(@Nullable ListSE<HandshakeInterceptor> interceptors)
      1 つ以上の WebSocket ハンドシェイクリクエストインターセプターを構成します。
    • getHandshakeInterceptors

      public ListSE<HandshakeInterceptor> getHandshakeInterceptors()
      構成された WebSocket ハンドシェイクリクエストインターセプターを返します。
    • 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 
      戻り値:
      コンポーネントが現在実行中かどうか
    • handleRawWebSocketRequest

      protected void handleRawWebSocketRequest(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler handler) throws IOExceptionSE
      クラスからコピーされた説明: AbstractSockJsService
      生の WebSocket 通信のリクエストを処理します。つまり、SockJS メッセージフレーミングを使用しません。
      次で指定:
      クラス AbstractSockJsServicehandleRawWebSocketRequest 
      例外:
      IOExceptionSE
    • handleTransportRequest

      protected void handleTransportRequest(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler handler, StringSE sessionId, StringSE transport) throws SockJsException
      クラスからコピーされた説明: AbstractSockJsService
      SockJS セッション URL(つまり、トランスポート固有のリクエスト)を処理します。
      次で指定:
      クラス AbstractSockJsServicehandleTransportRequest 
      例外:
      SockJsException
    • validateRequest

      protected boolean validateRequest(StringSE serverId, StringSE sessionId, StringSE transport)
      オーバーライド:
      クラス AbstractSockJsServicevalidateRequest