クラス WebSocketSessionDecorator

java.lang.ObjectSE
org.springframework.web.socket.handler.WebSocketSessionDecorator
実装されたすべてのインターフェース:
CloseableSEAutoCloseableSEWebSocketSession
既知の直属サブクラス
ConcurrentWebSocketSessionDecorator

public class WebSocketSessionDecorator extends ObjectSE implements WebSocketSession
別の WebSocketSession インスタンスをラップし、それに委譲します。

また、装飾されたセッションを返す getDelegate() メソッドと、すべてのネストされたデリゲートを通過して「最後の」セッションを返す getLastSession() メソッドも提供します。

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

    • WebSocketSessionDecorator

      public WebSocketSessionDecorator(WebSocketSession session)
  • メソッドの詳細

    • getDelegate

      public WebSocketSession getDelegate()
    • getLastSession

      public WebSocketSession getLastSession()
    • unwrap

      public static WebSocketSession unwrap(WebSocketSession session)
    • getId

      public StringSE getId()
      インターフェースからコピーされた説明: WebSocketSession
      一意のセッション識別子を返します。
      次で指定:
      インターフェース WebSocketSessiongetId 
    • getUri

      @Nullable public URISE getUri()
      インターフェースからコピーされた説明: WebSocketSession
      WebSocket 接続を開くために使用される URI を返します。
      次で指定:
      インターフェース WebSocketSessiongetUri 
    • getHandshakeHeaders

      public HttpHeaders getHandshakeHeaders()
      インターフェースからコピーされた説明: WebSocketSession
      ハンドシェイクリクエストで使用されるヘッダーを返します(非 null)。
      次で指定:
      インターフェース WebSocketSessiongetHandshakeHeaders 
    • getAttributes

      public MapSE<StringSE,ObjectSE> getAttributes()
      インターフェースからコピーされた説明: WebSocketSession
      WebSocket セッションに関連付けられた属性を持つマップを返します。

      サーバー側では、最初に HandshakeInterceptor を介してマップにデータを入力できます。クライアント側では、WebSocketClient ハンドシェイクメソッドを介してマップにデータを入力できます。

      次で指定:
      インターフェース WebSocketSessiongetAttributes 
      戻り値:
      セッション属性を持つマップ (非 null)
    • getPrincipal

      public PrincipalSE getPrincipal()
      インターフェースからコピーされた説明: WebSocketSession
      認証されたユーザーの名前を含む PrincipalSE インスタンスを返します。

      ユーザーが認証されていない場合、メソッドは null を返します。

      次で指定:
      インターフェース WebSocketSessiongetPrincipal 
    • getLocalAddress

      public InetSocketAddressSE getLocalAddress()
      インターフェースからコピーされた説明: WebSocketSession
      リクエストが受信されたアドレスを返します。
      次で指定:
      インターフェース WebSocketSessiongetLocalAddress 
    • getRemoteAddress

      public InetSocketAddressSE getRemoteAddress()
      インターフェースからコピーされた説明: WebSocketSession
      リモートクライアントのアドレスを返します。
      次で指定:
      インターフェース WebSocketSessiongetRemoteAddress 
    • getAcceptedProtocol

      public StringSE getAcceptedProtocol()
      インターフェースからコピーされた説明: WebSocketSession
      ネゴシエートされたサブプロトコルを返します。
      次で指定:
      インターフェース WebSocketSessiongetAcceptedProtocol 
      戻り値:
      プロトコル識別子、またはプロトコルが指定されていないか正常にネゴシエートされた場合は null 
    • getExtensions

      public ListSE<WebSocketExtension> getExtensions()
      インターフェースからコピーされた説明: WebSocketSession
      ネゴシエートされた拡張機能を決定します。
      次で指定:
      インターフェース WebSocketSessiongetExtensions 
      戻り値:
      拡張機能のリスト、または拡張機能が指定されていないか正常にネゴシエートされていない場合は空のリスト
    • setTextMessageSizeLimit

      public void setTextMessageSizeLimit(int messageSizeLimit)
      インターフェースからコピーされた説明: WebSocketSession
      受信テキストメッセージの最大サイズを構成します。
      次で指定:
      インターフェース WebSocketSessionsetTextMessageSizeLimit 
    • getTextMessageSizeLimit

      public int getTextMessageSizeLimit()
      インターフェースからコピーされた説明: WebSocketSession
      受信テキストメッセージの構成済みの最大サイズを取得します。
      次で指定:
      インターフェース WebSocketSessiongetTextMessageSizeLimit 
    • setBinaryMessageSizeLimit

      public void setBinaryMessageSizeLimit(int messageSizeLimit)
      インターフェースからコピーされた説明: WebSocketSession
      受信バイナリメッセージの最大サイズを構成します。
      次で指定:
      インターフェース WebSocketSessionsetBinaryMessageSizeLimit 
    • getBinaryMessageSizeLimit

      public int getBinaryMessageSizeLimit()
      インターフェースからコピーされた説明: WebSocketSession
      受信バイナリメッセージの構成済みの最大サイズを取得します。
      次で指定:
      インターフェース WebSocketSessiongetBinaryMessageSizeLimit 
    • isOpen

      public boolean isOpen()
      インターフェースからコピーされた説明: WebSocketSession
      基になる接続が開いているかどうか。
      次で指定:
      インターフェース WebSocketSessionisOpen 
    • sendMessage

      public void sendMessage(WebSocketMessage<?> message) throws IOExceptionSE
      インターフェースからコピーされた説明: WebSocketSession
      WebSocket メッセージを送信する: TextMessage または BinaryMessage のいずれか。

      注意 : 基盤となる標準の WebSocket セッション(JSR-356)では、同時送信は許可されていません。送信を同期する必要があります。これを確実にするための 1 つのオプションは、WebSocketSession を ConcurrentWebSocketSessionDecorator でラップすることです。

      次で指定:
      インターフェース WebSocketSessionsendMessage 
      例外:
      IOExceptionSE
      関連事項:
    • close

      public void close() throws IOExceptionSE
      インターフェースからコピーされた説明: WebSocketSession
      WebSocket 接続をステータス 1000 で閉じます。
       session.close(CloseStatus.NORMAL);
       
      次で指定:
      インターフェース AutoCloseableSEclose 
      次で指定:
      インターフェース CloseableSEclose 
      次で指定:
      インターフェース WebSocketSessionclose 
      例外:
      IOExceptionSE
    • close

      public void close(CloseStatus status) throws IOExceptionSE
      インターフェースからコピーされた説明: WebSocketSession
      指定されたクローズ状態で WebSocket 接続を閉じます。
      次で指定:
      インターフェース WebSocketSessionclose 
      例外:
      IOExceptionSE
    • toString

      public StringSE toString()
      オーバーライド:
      クラス ObjectSEtoString