インターフェース WebSocketSession

すべてのスーパーインターフェース:
AutoCloseableSECloseableSE
すべての既知のサブインターフェース:
NativeWebSocketSessionSockJsSession
すべての既知の実装クラス:
AbstractClientSockJsSessionAbstractHttpSockJsSessionAbstractSockJsSessionAbstractWebSocketSessionConcurrentWebSocketSessionDecoratorJettyWebSocketSessionPollingSockJsSessionStandardWebSocketSessionStreamingSockJsSessionWebSocketClientSockJsSessionWebSocketServerSockJsSessionWebSocketSessionDecoratorXhrClientSockJsSession

public interface WebSocketSession extends CloseableSE
WebSocket セッションの抽象化。WebSocket 接続を介してメッセージを送信し、それを閉じることができます。
導入:
4.0
作成者:
Rossen Stoyanchev
  • メソッドの詳細

    • getId

      StringSE getId()
      一意のセッション識別子を返します。
    • getUri

      @Nullable URISE getUri()
      WebSocket 接続を開くために使用される URI を返します。
    • getHandshakeHeaders

      HttpHeaders getHandshakeHeaders()
      ハンドシェイクリクエストで使用されるヘッダーを返します(非 null)。
    • getAttributes

      MapSE<StringSE,ObjectSE> getAttributes()
      WebSocket セッションに関連付けられた属性を持つマップを返します。

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

      戻り値:
      セッション属性を持つマップ (非 null)
    • getPrincipal

      @Nullable PrincipalSE getPrincipal()
      認証されたユーザーの名前を含む PrincipalSE インスタンスを返します。

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

    • getLocalAddress

      @Nullable InetSocketAddressSE getLocalAddress()
      リクエストが受信されたアドレスを返します。
    • getRemoteAddress

      @Nullable InetSocketAddressSE getRemoteAddress()
      リモートクライアントのアドレスを返します。
    • getAcceptedProtocol

      @Nullable StringSE getAcceptedProtocol()
      ネゴシエートされたサブプロトコルを返します。
      戻り値:
      プロトコル識別子、またはプロトコルが指定されていないか正常にネゴシエートされた場合は null 
    • setTextMessageSizeLimit

      void setTextMessageSizeLimit(int messageSizeLimit)
      受信テキストメッセージの最大サイズを構成します。
    • getTextMessageSizeLimit

      int getTextMessageSizeLimit()
      受信テキストメッセージの構成済みの最大サイズを取得します。
    • setBinaryMessageSizeLimit

      void setBinaryMessageSizeLimit(int messageSizeLimit)
      受信バイナリメッセージの最大サイズを構成します。
    • getBinaryMessageSizeLimit

      int getBinaryMessageSizeLimit()
      受信バイナリメッセージの構成済みの最大サイズを取得します。
    • getExtensions

      ListSE<WebSocketExtension> getExtensions()
      ネゴシエートされた拡張機能を決定します。
      戻り値:
      拡張機能のリスト、または拡張機能が指定されていないか正常にネゴシエートされていない場合は空のリスト
    • sendMessage

      void sendMessage(WebSocketMessage<?> message) throws IOExceptionSE
      WebSocket メッセージを送信する: TextMessage または BinaryMessage のいずれか。

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

      例外:
      IOExceptionSE
      関連事項:
    • isOpen

      boolean isOpen()
      基になる接続が開いているかどうか。
    • close

      void close() throws IOExceptionSE
      WebSocket 接続をステータス 1000 で閉じます。
       session.close(CloseStatus.NORMAL);
       
      次で指定:
      インターフェース AutoCloseableSEclose 
      次で指定:
      インターフェース CloseableSEclose 
      例外:
      IOExceptionSE
    • close

      void close(CloseStatus status) throws IOExceptionSE
      指定されたクローズ状態で WebSocket 接続を閉じます。
      例外:
      IOExceptionSE