Class UndertowSession

java.lang.Object
io.undertow.websockets.jsr.UndertowSession
All Implemented Interfaces:
Closeable, AutoCloseable, javax.websocket.Session

public final class UndertowSession extends Object implements javax.websocket.Session
Session implementation which makes use of the high-level WebSocket API of undertow under the hood.
Author:
Norman Maurer
  • Method Details

    • getContainer

      public ServerWebSocketContainer getContainer()
      Specified by:
      getContainer in interface javax.websocket.Session
    • addMessageHandler

      public void addMessageHandler(javax.websocket.MessageHandler messageHandler) throws IllegalStateException
      Specified by:
      addMessageHandler in interface javax.websocket.Session
      Throws:
      IllegalStateException
    • addMessageHandler

      public <T> void addMessageHandler(Class<T> clazz, javax.websocket.MessageHandler.Whole<T> handler)
      Specified by:
      addMessageHandler in interface javax.websocket.Session
    • addMessageHandler

      public <T> void addMessageHandler(Class<T> clazz, javax.websocket.MessageHandler.Partial<T> handler)
      Specified by:
      addMessageHandler in interface javax.websocket.Session
    • getMessageHandlers

      public Set<javax.websocket.MessageHandler> getMessageHandlers()
      Specified by:
      getMessageHandlers in interface javax.websocket.Session
    • removeMessageHandler

      public void removeMessageHandler(javax.websocket.MessageHandler messageHandler)
      Specified by:
      removeMessageHandler in interface javax.websocket.Session
    • setReceiveListener

      public void setReceiveListener(org.xnio.ChannelListener<io.undertow.websockets.core.WebSocketChannel> handler)
      sets the recieve listener This should only be used for annotated endpoints.
      Parameters:
      handler - The handler
    • getProtocolVersion

      public String getProtocolVersion()
      Specified by:
      getProtocolVersion in interface javax.websocket.Session
    • getNegotiatedSubprotocol

      public String getNegotiatedSubprotocol()
      Specified by:
      getNegotiatedSubprotocol in interface javax.websocket.Session
    • isSecure

      public boolean isSecure()
      Specified by:
      isSecure in interface javax.websocket.Session
    • isOpen

      public boolean isOpen()
      Specified by:
      isOpen in interface javax.websocket.Session
    • getMaxIdleTimeout

      public long getMaxIdleTimeout()
      Specified by:
      getMaxIdleTimeout in interface javax.websocket.Session
    • setMaxIdleTimeout

      public void setMaxIdleTimeout(long milliseconds)
      Specified by:
      setMaxIdleTimeout in interface javax.websocket.Session
    • getId

      public String getId()
      Specified by:
      getId in interface javax.websocket.Session
    • close

      public void close() throws IOException
      Specified by:
      close in interface AutoCloseable
      Specified by:
      close in interface Closeable
      Specified by:
      close in interface javax.websocket.Session
      Throws:
      IOException
    • close

      public void close(javax.websocket.CloseReason closeReason) throws IOException
      Specified by:
      close in interface javax.websocket.Session
      Throws:
      IOException
    • closeInternal

      public void closeInternal() throws IOException
      Throws:
      IOException
    • closeInternal

      public void closeInternal(javax.websocket.CloseReason closeReason) throws IOException
      Throws:
      IOException
    • forceClose

      public void forceClose()
    • getRequestURI

      public URI getRequestURI()
      Specified by:
      getRequestURI in interface javax.websocket.Session
    • getRequestParameterMap

      public Map<String,List<String>> getRequestParameterMap()
      Specified by:
      getRequestParameterMap in interface javax.websocket.Session
    • getQueryString

      public String getQueryString()
      Specified by:
      getQueryString in interface javax.websocket.Session
    • getPathParameters

      public Map<String,String> getPathParameters()
      Specified by:
      getPathParameters in interface javax.websocket.Session
    • getUserProperties

      public Map<String,Object> getUserProperties()
      Specified by:
      getUserProperties in interface javax.websocket.Session
    • getUserPrincipal

      public Principal getUserPrincipal()
      Specified by:
      getUserPrincipal in interface javax.websocket.Session
    • setMaxBinaryMessageBufferSize

      public void setMaxBinaryMessageBufferSize(int i)
      Specified by:
      setMaxBinaryMessageBufferSize in interface javax.websocket.Session
    • getMaxBinaryMessageBufferSize

      public int getMaxBinaryMessageBufferSize()
      Specified by:
      getMaxBinaryMessageBufferSize in interface javax.websocket.Session
    • setMaxTextMessageBufferSize

      public void setMaxTextMessageBufferSize(int i)
      Specified by:
      setMaxTextMessageBufferSize in interface javax.websocket.Session
    • getMaxTextMessageBufferSize

      public int getMaxTextMessageBufferSize()
      Specified by:
      getMaxTextMessageBufferSize in interface javax.websocket.Session
    • getAsyncRemote

      public javax.websocket.RemoteEndpoint.Async getAsyncRemote()
      Specified by:
      getAsyncRemote in interface javax.websocket.Session
    • getBasicRemote

      public javax.websocket.RemoteEndpoint.Basic getBasicRemote()
      Specified by:
      getBasicRemote in interface javax.websocket.Session
    • getOpenSessions

      public Set<javax.websocket.Session> getOpenSessions()
      Specified by:
      getOpenSessions in interface javax.websocket.Session
    • getNegotiatedExtensions

      public List<javax.websocket.Extension> getNegotiatedExtensions()
      Specified by:
      getNegotiatedExtensions in interface javax.websocket.Session
    • getEncoding

      public Encoding getEncoding()
    • getWebSocketChannel

      public io.undertow.websockets.core.WebSocketChannel getWebSocketChannel()
    • getExecutor

      public Executor getExecutor()