クラス WebSocketHandlerAdapter

java.lang.ObjectSE
org.springframework.web.reactive.socket.server.support.WebSocketHandlerAdapter
実装されたすべてのインターフェース:
OrderedHandlerAdapter

@ImportRuntimeHints(org.springframework.web.reactive.socket.server.support.HandshakeWebSocketServiceRuntimeHints.class) public class WebSocketHandlerAdapter extends ObjectSE implements HandlerAdapter, Ordered
DispatcherHandlerWebSocketHandler 型のハンドラーをサポートできるようにする HandlerAdapter。このようなハンドラーは SimpleUrlHandlerMapping を介して URL パターンにマップされます。

リクエストは、WebSocketService(デフォルトでは HandshakeWebSocketService)に委譲することによって処理されます。HandshakeWebSocketService は、WebSocket ハンドシェイクリクエストパラメーターをチェックし、WebSocket インタラクションにアップグレードし、WebSocketHandler を使用して処理します。

5.3 の時点で、@EnableWebFlux を介してインポートされた WebFlux Java 構成には、このアダプターの宣言が含まれているため、アプリケーション構成に存在する必要はありません。

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

    • WebSocketHandlerAdapter

      public WebSocketHandlerAdapter()
      HandshakeWebSocketService を作成して使用するデフォルトのコンストラクター。
    • WebSocketHandlerAdapter

      public WebSocketHandlerAdapter(WebSocketService webSocketService)
      WebSocketService を使用する代替コンストラクター。
  • メソッドの詳細

    • setOrder

      public void setOrder(int order)
      このアダプターのオーダー値を設定します。

      デフォルトでは、これは 2 に設定されています。

      パラメーター:
      order - 設定する値
      導入:
      5.3
    • getOrder

      public int getOrder()
      このインスタンスの configured オーダーを返します。
      次で指定:
      インターフェース OrderedgetOrder 
      戻り値:
      オーダー額
      導入:
      5.3
      関連事項:
    • getWebSocketService

      public WebSocketService getWebSocketService()
      リクエストを処理するために構成済みの WebSocketService を返します。
    • supports

      public boolean supports(ObjectSE handler)
      インターフェースからコピーされた説明: HandlerAdapter
      この HandlerAdapter が指定された handler をサポートするかどうか。
      次で指定:
      インターフェース HandlerAdaptersupports 
      パラメーター:
      handler - チェックするハンドラーオブジェクト
      戻り値:
      ハンドラーがサポートされているかどうか
    • handle

      public reactor.core.publisher.Mono<HandlerResult> handle(ServerWebExchange exchange, ObjectSE handler)
      インターフェースからコピーされた説明: HandlerAdapter
      以前に HandlerAdapter.supports(Object) を介してチェックされた、指定されたハンドラーでリクエストを処理します。

      実装では、例外処理について次のことを考慮する必要があります。

      • このメソッド内で呼び出し例外を処理します。
      • 返された HandlerResult の Set an exception handler は、非同期の戻り値からの遅延例外を処理し、レスポンスレンダリングからの例外を処理します。
      • DispatchExceptionHandler を実装して、ハンドラーが選択される前に発生する例外に例外処理を継承します。
      次で指定:
      インターフェース HandlerAdapterhandle 
      パラメーター:
      exchange - 現在のサーバー交換
      handler - HandlerAdapter.supports(Object) を介して事前にチェックされている必要がある選択されたハンドラー
      戻り値:
      Mono は HandlerResult を発行するか、リクエストが完全に処理された場合は空になります。エラー信号は DispatcherHandler 内では処理されず、代わりに WebFilter チェーン の最後で登録された WebExceptionHandler の チェーン によって処理されます。