public class TyrusSession extends Object implements Session
Session
.Modifier and Type | Method and Description |
---|---|
void |
addMessageHandler(MessageHandler handler)
Register to handle to incoming messages in this conversation.
|
Map<Session,Future<?>> |
broadcast(ByteBuffer message)
Broadcasts binary message to all connected clients.
|
Map<Session,Future<?>> |
broadcast(String message)
Broadcasts text message to all connected clients.
|
void |
close()
Close the current conversation with a normal status code and no reason phrase.
|
void |
close(CloseReason closeReason)
Closes the underlying connection this session is based upon.
|
RemoteEndpoint.Async |
getAsyncRemote()
Return a reference a RemoteEndpoint object representing the peer of this conversation
that is able to send messages asynchronously to the peer.
|
RemoteEndpoint.Basic |
getBasicRemote()
Return a reference a RemoteEndpoint object representing the peer of this conversation
that is able to send messages synchronously to the peer.
|
WebSocketContainer |
getContainer()
Return the container that this session is part of.
|
String |
getId()
Returns a string containing the unique identifier assigned to this session.
|
int |
getMaxBinaryMessageBufferSize()
The maximum length of incoming binary messages that this Session can buffer.
|
long |
getMaxIdleTimeout()
Return the number of milliseconds before this conversation may be closed by the
container if it is inactive, i.e.
|
int |
getMaxTextMessageBufferSize()
The maximum length of incoming text messages that this Session can buffer.
|
Set<MessageHandler> |
getMessageHandlers()
Return an unmodifiable copy of the set of MessageHandlers for this Session.
|
List<Extension> |
getNegotiatedExtensions()
Return the list of extensions currently in use for this conversation.
|
String |
getNegotiatedSubprotocol()
Return the sub protocol agreed during the websocket handshake for this conversation.
|
Set<Session> |
getOpenSessions()
Return a copy of the Set of all the open web socket sessions that represent
connections to the same endpoint to which this session represents a connection.
|
Map<String,String> |
getPathParameters()
Return a map of the path parameter names and values used associated with the
request this session was opened under.
|
String |
getProtocolVersion()
Web Socket protocol version used.
|
String |
getQueryString()
Return the query string associated with the request this session
was opened under.
|
Map<String,List<String>> |
getRequestParameterMap()
Return the request parameters associated with the request this session
was opened under.
|
URI |
getRequestURI()
Return the URI under which this session was opened, including
the query string if there is one.
|
Principal |
getUserPrincipal()
Return the authenticated user for this Session or
null if no user is authenticated for this session. |
Map<String,Object> |
getUserProperties()
While the session is open, this method returns a Map that the developer may
use to store application specific information relating to this session
instance.
|
boolean |
isOpen()
Return true if and only if the underlying socket is open.
|
boolean |
isSecure()
Return true if and only if the underlying socket is using a secure transport.
|
void |
removeMessageHandler(MessageHandler handler)
Remove the given MessageHandler from the set belonging to this session.
|
void |
setMaxBinaryMessageBufferSize(int maxBinaryMessageBufferSize)
Sets the maximum length of incoming binary messages that this Session can buffer.
|
void |
setMaxIdleTimeout(long maxIdleTimeout)
Set the non-zero number of milliseconds before this session will be closed by the
container if it is inactive, ie no messages are either sent or received.
|
void |
setMaxTextMessageBufferSize(int maxTextMessageBufferSize)
Sets the maximum length of incoming text messages that this Session can buffer.
|
String |
toString() |
public String getProtocolVersion()
getProtocolVersion
in interface Session
public String getNegotiatedSubprotocol()
Session
getNegotiatedSubprotocol
in interface Session
public RemoteEndpoint.Async getAsyncRemote()
Session
getAsyncRemote
in interface Session
public RemoteEndpoint.Basic getBasicRemote()
Session
getBasicRemote
in interface Session
public boolean isOpen()
Session
public void close() throws IOException
Session
close
in interface Closeable
close
in interface AutoCloseable
close
in interface Session
IOException
- if there was a connection error closing the connection.public void close(CloseReason closeReason) throws IOException
close
in interface Session
closeReason
- the reason for the closure.IOException
- if there was a connection error closing the connectionpublic int getMaxBinaryMessageBufferSize()
Session
CloseReason.CloseCodes.TOO_BIG
.getMaxBinaryMessageBufferSize
in interface Session
public void setMaxBinaryMessageBufferSize(int maxBinaryMessageBufferSize)
Session
setMaxBinaryMessageBufferSize
in interface Session
maxBinaryMessageBufferSize
- the maximum length.public int getMaxTextMessageBufferSize()
Session
CloseReason.CloseCodes.TOO_BIG
.getMaxTextMessageBufferSize
in interface Session
public void setMaxTextMessageBufferSize(int maxTextMessageBufferSize)
Session
setMaxTextMessageBufferSize
in interface Session
maxTextMessageBufferSize
- the maximum length.public Set<Session> getOpenSessions()
Session
getOpenSessions
in interface Session
public List<Extension> getNegotiatedExtensions()
Session
getNegotiatedExtensions
in interface Session
public long getMaxIdleTimeout()
Session
getMaxIdleTimeout
in interface Session
public void setMaxIdleTimeout(long maxIdleTimeout)
Session
setMaxIdleTimeout
in interface Session
maxIdleTimeout
- the number of milliseconds.public boolean isSecure()
Session
public WebSocketContainer getContainer()
Session
getContainer
in interface Session
public void addMessageHandler(MessageHandler handler)
Session
MessageHandler.Whole
and MessageHandler.Partial
.
Adding more than one of any one type will result in a runtime exception.
See Endpoint
for a usage example.
addMessageHandler
in interface Session
handler
- the MessageHandler to be added.public Set<MessageHandler> getMessageHandlers()
Session
getMessageHandlers
in interface Session
public void removeMessageHandler(MessageHandler handler)
Session
removeMessageHandler
in interface Session
handler
- the handler to be removed.public URI getRequestURI()
Session
getRequestURI
in interface Session
public Map<String,List<String>> getRequestParameterMap()
Session
getRequestParameterMap
in interface Session
public Map<String,String> getPathParameters()
Session
getPathParameters
in interface Session
public Map<String,Object> getUserProperties()
Session
getUserProperties
in interface Session
public String getQueryString()
Session
getQueryString
in interface Session
public String getId()
Session
public Principal getUserPrincipal()
Session
null
if no user is authenticated for this session.getUserPrincipal
in interface Session
public Map<Session,Future<?>> broadcast(String message)
message
- message to be broadcasted.public Map<Session,Future<?>> broadcast(ByteBuffer message)
message
- message to be broadcasted.Copyright © 2012-2014, Oracle and/or its affiliates. All Rights Reserved. Use is subject to license terms.