Package io.undertow.websockets.jsr
Class UndertowSession
- java.lang.Object
-
- io.undertow.websockets.jsr.UndertowSession
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,javax.websocket.Session
public final class UndertowSession extends java.lang.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 Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description <T> void
addMessageHandler(java.lang.Class<T> clazz, javax.websocket.MessageHandler.Partial<T> handler)
<T> void
addMessageHandler(java.lang.Class<T> clazz, javax.websocket.MessageHandler.Whole<T> handler)
void
addMessageHandler(javax.websocket.MessageHandler messageHandler)
void
close()
void
close(javax.websocket.CloseReason closeReason)
void
closeInternal()
void
closeInternal(javax.websocket.CloseReason closeReason)
void
forceClose()
javax.websocket.RemoteEndpoint.Async
getAsyncRemote()
javax.websocket.RemoteEndpoint.Basic
getBasicRemote()
ServerWebSocketContainer
getContainer()
Encoding
getEncoding()
java.util.concurrent.Executor
getExecutor()
java.lang.String
getId()
int
getMaxBinaryMessageBufferSize()
long
getMaxIdleTimeout()
int
getMaxTextMessageBufferSize()
java.util.Set<javax.websocket.MessageHandler>
getMessageHandlers()
java.util.List<javax.websocket.Extension>
getNegotiatedExtensions()
java.lang.String
getNegotiatedSubprotocol()
java.util.Set<javax.websocket.Session>
getOpenSessions()
java.util.Map<java.lang.String,java.lang.String>
getPathParameters()
java.lang.String
getProtocolVersion()
java.lang.String
getQueryString()
java.util.Map<java.lang.String,java.util.List<java.lang.String>>
getRequestParameterMap()
java.net.URI
getRequestURI()
java.security.Principal
getUserPrincipal()
java.util.Map<java.lang.String,java.lang.Object>
getUserProperties()
io.undertow.websockets.core.WebSocketChannel
getWebSocketChannel()
boolean
isOpen()
boolean
isSecure()
void
removeMessageHandler(javax.websocket.MessageHandler messageHandler)
void
setMaxBinaryMessageBufferSize(int i)
void
setMaxIdleTimeout(long milliseconds)
void
setMaxTextMessageBufferSize(int i)
void
setReceiveListener(org.xnio.ChannelListener<io.undertow.websockets.core.WebSocketChannel> handler)
sets the recieve listener This should only be used for annotated endpoints.
-
-
-
Method Detail
-
getContainer
public ServerWebSocketContainer getContainer()
- Specified by:
getContainer
in interfacejavax.websocket.Session
-
addMessageHandler
public void addMessageHandler(javax.websocket.MessageHandler messageHandler) throws java.lang.IllegalStateException
- Specified by:
addMessageHandler
in interfacejavax.websocket.Session
- Throws:
java.lang.IllegalStateException
-
addMessageHandler
public <T> void addMessageHandler(java.lang.Class<T> clazz, javax.websocket.MessageHandler.Whole<T> handler)
- Specified by:
addMessageHandler
in interfacejavax.websocket.Session
-
addMessageHandler
public <T> void addMessageHandler(java.lang.Class<T> clazz, javax.websocket.MessageHandler.Partial<T> handler)
- Specified by:
addMessageHandler
in interfacejavax.websocket.Session
-
getMessageHandlers
public java.util.Set<javax.websocket.MessageHandler> getMessageHandlers()
- Specified by:
getMessageHandlers
in interfacejavax.websocket.Session
-
removeMessageHandler
public void removeMessageHandler(javax.websocket.MessageHandler messageHandler)
- Specified by:
removeMessageHandler
in interfacejavax.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 java.lang.String getProtocolVersion()
- Specified by:
getProtocolVersion
in interfacejavax.websocket.Session
-
getNegotiatedSubprotocol
public java.lang.String getNegotiatedSubprotocol()
- Specified by:
getNegotiatedSubprotocol
in interfacejavax.websocket.Session
-
isSecure
public boolean isSecure()
- Specified by:
isSecure
in interfacejavax.websocket.Session
-
isOpen
public boolean isOpen()
- Specified by:
isOpen
in interfacejavax.websocket.Session
-
getMaxIdleTimeout
public long getMaxIdleTimeout()
- Specified by:
getMaxIdleTimeout
in interfacejavax.websocket.Session
-
setMaxIdleTimeout
public void setMaxIdleTimeout(long milliseconds)
- Specified by:
setMaxIdleTimeout
in interfacejavax.websocket.Session
-
getId
public java.lang.String getId()
- Specified by:
getId
in interfacejavax.websocket.Session
-
close
public void close() throws java.io.IOException
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in interfacejavax.websocket.Session
- Throws:
java.io.IOException
-
close
public void close(javax.websocket.CloseReason closeReason) throws java.io.IOException
- Specified by:
close
in interfacejavax.websocket.Session
- Throws:
java.io.IOException
-
closeInternal
public void closeInternal() throws java.io.IOException
- Throws:
java.io.IOException
-
closeInternal
public void closeInternal(javax.websocket.CloseReason closeReason) throws java.io.IOException
- Throws:
java.io.IOException
-
forceClose
public void forceClose()
-
getRequestURI
public java.net.URI getRequestURI()
- Specified by:
getRequestURI
in interfacejavax.websocket.Session
-
getRequestParameterMap
public java.util.Map<java.lang.String,java.util.List<java.lang.String>> getRequestParameterMap()
- Specified by:
getRequestParameterMap
in interfacejavax.websocket.Session
-
getQueryString
public java.lang.String getQueryString()
- Specified by:
getQueryString
in interfacejavax.websocket.Session
-
getPathParameters
public java.util.Map<java.lang.String,java.lang.String> getPathParameters()
- Specified by:
getPathParameters
in interfacejavax.websocket.Session
-
getUserProperties
public java.util.Map<java.lang.String,java.lang.Object> getUserProperties()
- Specified by:
getUserProperties
in interfacejavax.websocket.Session
-
getUserPrincipal
public java.security.Principal getUserPrincipal()
- Specified by:
getUserPrincipal
in interfacejavax.websocket.Session
-
setMaxBinaryMessageBufferSize
public void setMaxBinaryMessageBufferSize(int i)
- Specified by:
setMaxBinaryMessageBufferSize
in interfacejavax.websocket.Session
-
getMaxBinaryMessageBufferSize
public int getMaxBinaryMessageBufferSize()
- Specified by:
getMaxBinaryMessageBufferSize
in interfacejavax.websocket.Session
-
setMaxTextMessageBufferSize
public void setMaxTextMessageBufferSize(int i)
- Specified by:
setMaxTextMessageBufferSize
in interfacejavax.websocket.Session
-
getMaxTextMessageBufferSize
public int getMaxTextMessageBufferSize()
- Specified by:
getMaxTextMessageBufferSize
in interfacejavax.websocket.Session
-
getAsyncRemote
public javax.websocket.RemoteEndpoint.Async getAsyncRemote()
- Specified by:
getAsyncRemote
in interfacejavax.websocket.Session
-
getBasicRemote
public javax.websocket.RemoteEndpoint.Basic getBasicRemote()
- Specified by:
getBasicRemote
in interfacejavax.websocket.Session
-
getOpenSessions
public java.util.Set<javax.websocket.Session> getOpenSessions()
- Specified by:
getOpenSessions
in interfacejavax.websocket.Session
-
getNegotiatedExtensions
public java.util.List<javax.websocket.Extension> getNegotiatedExtensions()
- Specified by:
getNegotiatedExtensions
in interfacejavax.websocket.Session
-
getEncoding
public Encoding getEncoding()
-
getWebSocketChannel
public io.undertow.websockets.core.WebSocketChannel getWebSocketChannel()
-
getExecutor
public java.util.concurrent.Executor getExecutor()
-
-