クラス WebSocketHandlerMapping

実装されたすべてのインターフェース:
AwareBeanNameAwareApplicationContextAwareLifecyclePhasedSmartLifecycleOrderedServletContextAwareMatchableHandlerMappingHandlerMapping

public class WebSocketHandlerMapping extends SimpleUrlHandlerMapping implements SmartLifecycle
WebSocketHttpRequestHandler のハンドラーへの WebSocket ハンドシェイクリクエストのより正確なマッピングをサポートする SimpleUrlHandlerMapping の拡張。また、Lifecycle メソッドをそれを実装する SimpleUrlHandlerMapping.getUrlMap() のハンドラーに委譲します。
導入:
4.2
作成者:
Rossen Stoyanchev
  • コンストラクターの詳細

    • WebSocketHandlerMapping

      public WebSocketHandlerMapping()
  • メソッドの詳細

    • setWebSocketUpgradeMatch

      public void setWebSocketUpgradeMatch(boolean match)
      これが設定されている場合、一致するハンドラーが WebSocketHttpRequestHandler の場合、リクエストが WebSocket ハンドシェイクであることを確認します。つまり、ヘッダー "Upgrade:websocket" を使用した HTTP GET を使用するか、一致を抑制して null を返し、別の HandlerMapping が同じ URL パスに一致するようにします。
      パラメーター:
      match - "Upgrade: websocket" でマッチングを有効にするかどうか
      導入:
      5.3.5
    • setPhase

      public void setPhase(int phase)
      このハンドラーが実行されるフェーズを設定します。

      デフォルトでは、これは SmartLifecycle.DEFAULT_PHASE です。

      導入:
      6.1.4
    • getPhase

      public int getPhase()
      インターフェースからコピーされた説明: SmartLifecycle
      このライフサイクルオブジェクトが実行されるはずのフェーズを返します。

      デフォルトの実装は、通常の Lifecycle 実装の前に stop() コールバックを実行できるようにするために SmartLifecycle.DEFAULT_PHASE を返します。

      次で指定:
      インターフェース PhasedgetPhase 
      次で指定:
      インターフェース SmartLifecyclegetPhase 
      関連事項:
    • initServletContext

      protected void initServletContext(ServletContextEE servletContext)
      クラスからコピーされた説明: WebApplicationObjectSupport
      サブクラスは、このアプリケーションオブジェクトが実行される ServletContext に基づいて、カスタム初期化のためにこれをオーバーライドできます。

      デフォルトの実装は空です。WebApplicationObjectSupport.initApplicationContext(org.springframework.context.ApplicationContext) および WebApplicationObjectSupport.setServletContext(jakarta.servlet.ServletContext) によって呼び出されます。

      オーバーライド:
      クラス WebApplicationObjectSupportinitServletContext 
      パラメーター:
      servletContext - このアプリケーションオブジェクトが実行される ServletContext (非 null)
    • 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 
      戻り値:
      コンポーネントが現在実行中かどうか
    • getHandlerInternal

      @Nullable protected ObjectSE getHandlerInternal(HttpServletRequestEE request) throws ExceptionSE
      クラスからコピーされた説明: AbstractUrlHandlerMapping
      指定されたリクエストの URL パスのハンドラーを検索します。
      オーバーライド:
      クラス AbstractUrlHandlerMappinggetHandlerInternal 
      パラメーター:
      request - 現在の HTTP リクエスト
      戻り値:
      ハンドラーインスタンス。見つからない場合は null 
      例外:
      ExceptionSE - 内部エラーがある場合