クラス TransportHandlingSockJsService
java.lang.ObjectSE
org.springframework.web.socket.sockjs.support.AbstractSockJsService
org.springframework.web.socket.sockjs.transport.TransportHandlingSockJsService
- 実装されているすべてのインターフェース:
Lifecycle, CorsConfigurationSource, SockJsService, SockJsServiceConfig
- 既知の直属サブクラス
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
フィールドのサマリー
クラス AbstractSockJsService から継承されたフィールド
corsConfiguration, loggerコンストラクターの概要
コンストラクターコンストラクター説明TransportHandlingSockJsService(TaskScheduler scheduler, CollectionSE<TransportHandler> handlers) 指定されたhandler型で TransportHandlingSockJsService を作成します。TransportHandlingSockJsService(TaskScheduler scheduler, TransportHandler... handlers) 指定されたhandler型で TransportHandlingSockJsService を作成します。方法の概要
修飾子と型メソッド説明構成された WebSocket ハンドシェイクリクエストインターセプターを返します。SockJS メッセージのエンコードとデコードに使用するコーデック。トランスポート型ごとに登録済みハンドラーを返します。protected voidhandleRawWebSocketRequest(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler handler) 生の WebSocket 通信のリクエストを処理します。protected voidhandleTransportRequest(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler handler, StringSE sessionId, StringSE transport) SockJS セッション URL を処理します(つまりbooleanこのコンポーネントが現在実行されているかどうかを確認します。voidsetHandshakeInterceptors(@Nullable ListSE<HandshakeInterceptor> interceptors) 1 つ以上の WebSocket ハンドシェイクリクエストインターセプターを構成します。voidsetMessageCodec(SockJsMessageCodec messageCodec) SockJS メッセージのエンコードとデコードに使用するコーデック。voidstart()このコンポーネントを起動します。voidstop()このメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。protected booleanvalidateRequest(StringSE serverId, StringSE sessionId, StringSE transport) クラス AbstractSockJsService から継承されたメソッド
addCacheHeaders, addNoCacheHeaders, checkOrigin, getAllowedOriginPatterns, getAllowedOrigins, getCorsConfiguration, getDisconnectDelay, getHeartbeatTime, getHttpMessageCacheSize, getName, getSockJsClientLibraryUrl, getStreamBytesLimit, getTaskScheduler, handleRequest, isSessionCookieNeeded, isWebSocketEnabled, sendMethodNotAllowed, setAllowedOriginPatterns, setAllowedOrigins, setDisconnectDelay, setHeartbeatTime, setHttpMessageCacheSize, setName, setSessionCookieNeeded, setSockJsClientLibraryUrl, setStreamBytesLimit, setSuppressCors, setWebSocketEnabled, shouldSuppressCorsクラス ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSEインターフェース SockJsServiceConfig から継承されたメソッド
getHeartbeatTime, getHttpMessageCacheSize, getStreamBytesLimit, getTaskScheduler
コンストラクターの詳細
TransportHandlingSockJsService
指定された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
トランスポート型ごとに登録済みハンドラーを返します。setMessageCodec
SockJS メッセージのエンコードとデコードに使用するコーデック。getMessageCodec
インターフェースからコピーされた説明:SockJsServiceConfigSockJS メッセージのエンコードとデコードに使用するコーデック。- 次で指定:
- インターフェース
SockJsServiceConfigのgetMessageCodec
setHandshakeInterceptors
1 つ以上の WebSocket ハンドシェイクリクエストインターセプターを構成します。getHandshakeInterceptors
構成された WebSocket ハンドシェイクリクエストインターセプターを返します。start
stop
public void stop()インターフェースからコピーされた説明:Lifecycleこのメソッドを返すとコンポーネントが完全に停止するように、通常は同期的にこのコンポーネントを停止します。非同期停止動作が必要な場合は、SmartLifecycleとそのstop(Runnable)バリアントの実装を検討してください。この停止通知は破棄前に送信されるとは限らないことに注意してください。通常のシャットダウンでは、一般的な破棄コールバックが伝播される前に、
LifecycleBean は最初に停止通知を受信します。ただし、コンテキストの存続期間中のホットリフレッシュまたは中断されたリフレッシュ試行では、特定の Bean の destroy メソッドが、停止シグナルを事前に考慮することなく呼び出されます。コンポーネントが実行されていない(まだ開始されていない)場合は、例外をスローしないでください。
コンテナーの場合、これは停止シグナルを適用するすべてのコンポーネントに伝播します。
isRunning
handleRawWebSocketRequest
protected void handleRawWebSocketRequest(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler handler) throws IOExceptionSE クラスからコピーされた説明:AbstractSockJsService生の WebSocket 通信のリクエストを処理します。つまり、SockJS メッセージフレーミングを使用しません。- 次で指定:
- クラス
AbstractSockJsServiceのhandleRawWebSocketRequest - 例外:
IOExceptionSE
handleTransportRequest
protected void handleTransportRequest(ServerHttpRequest request, ServerHttpResponse response, WebSocketHandler handler, StringSE sessionId, StringSE transport) throws SockJsException クラスからコピーされた説明:AbstractSockJsServiceSockJS セッション URL(つまり、トランスポート固有のリクエスト)を処理します。- 次で指定:
- クラス
AbstractSockJsServiceのhandleTransportRequest - 例外:
SockJsException
validateRequest
- オーバーライド:
- クラス
AbstractSockJsServiceのvalidateRequest