Class JettyWebSocketSession
java.lang.Object
org.springframework.web.socket.adapter.AbstractWebSocketSession<org.eclipse.jetty.websocket.api.Session>
org.springframework.web.socket.adapter.jetty.JettyWebSocketSession
- All Implemented Interfaces:
- Closeable,- AutoCloseable,- NativeWebSocketSession,- WebSocketSession
public class JettyWebSocketSession
extends AbstractWebSocketSession<org.eclipse.jetty.websocket.api.Session>
A 
WebSocketSession for use with the Jetty WebSocket API.- Since:
- 4.0
- Author:
- Phillip Webb, Rossen Stoyanchev, Brian Clozel, Juergen Hoeller
- 
Field SummaryFields inherited from class org.springframework.web.socket.adapter.AbstractWebSocketSessionidGenerator, logger
- 
Constructor SummaryConstructorsConstructorDescriptionJettyWebSocketSession(Map<String, Object> attributes) Create a newJettyWebSocketSessioninstance.JettyWebSocketSession(Map<String, Object> attributes, Principal user) Create a newJettyWebSocketSessioninstance associated with the given user.
- 
Method SummaryModifier and TypeMethodDescriptionprotected voidcloseInternal(CloseStatus status) Return the negotiated sub-protocol.intGet the configured maximum size for an incoming binary message.Determine the negotiated extensions.Return the headers used in the handshake request (nevernull).getId()Return a unique session identifier.Return the address on which the request was received.Return aPrincipalinstance containing the name of the authenticated user.Return the address of the remote client.intGet the configured maximum size for an incoming text message.getUri()Return the URI used to open the WebSocket connection.voidinitializeNativeSession(org.eclipse.jetty.websocket.api.Session session) booleanisOpen()Whether the underlying connection is open.protected voidsendBinaryMessage(BinaryMessage message) protected voidsendPingMessage(PingMessage message) protected voidsendPongMessage(PongMessage message) protected voidsendTextMessage(TextMessage message) voidsetBinaryMessageSizeLimit(int messageSizeLimit) Configure the maximum size for an incoming binary message.voidsetTextMessageSizeLimit(int messageSizeLimit) Configure the maximum size for an incoming text message.Methods inherited from class org.springframework.web.socket.adapter.AbstractWebSocketSessioncheckNativeSessionInitialized, close, close, getAttributes, getNativeSession, getNativeSession, sendMessage, toString
- 
Constructor Details- 
JettyWebSocketSessionCreate a newJettyWebSocketSessioninstance.- Parameters:
- attributes- the attributes from the HTTP handshake to associate with the WebSocket session
 
- 
JettyWebSocketSessionCreate a newJettyWebSocketSessioninstance associated with the given user.- Parameters:
- attributes- the attributes from the HTTP handshake to associate with the WebSocket session; the provided attributes are copied, the original map is not used.
- user- the user associated with the session; if- nullwe'll fall back on the user available via- Session.getUpgradeRequest()
 
 
- 
- 
Method Details- 
getIdDescription copied from interface:WebSocketSessionReturn a unique session identifier.
- 
getUriDescription copied from interface:WebSocketSessionReturn the URI used to open the WebSocket connection.
- 
getHandshakeHeadersDescription copied from interface:WebSocketSessionReturn the headers used in the handshake request (nevernull).
- 
getAcceptedProtocolDescription copied from interface:WebSocketSessionReturn the negotiated sub-protocol.- Returns:
- the protocol identifier, or nullif no protocol was specified or negotiated successfully
 
- 
getExtensionsDescription copied from interface:WebSocketSessionDetermine the negotiated extensions.- Returns:
- the list of extensions, or an empty list if no extension was specified or negotiated successfully
 
- 
getPrincipalDescription copied from interface:WebSocketSessionReturn aPrincipalinstance containing the name of the authenticated user.If the user has not been authenticated, the method returns null.
- 
getLocalAddressDescription copied from interface:WebSocketSessionReturn the address on which the request was received.
- 
getRemoteAddressDescription copied from interface:WebSocketSessionReturn the address of the remote client.
- 
setTextMessageSizeLimitpublic void setTextMessageSizeLimit(int messageSizeLimit) Description copied from interface:WebSocketSessionConfigure the maximum size for an incoming text message.
- 
getTextMessageSizeLimitpublic int getTextMessageSizeLimit()Description copied from interface:WebSocketSessionGet the configured maximum size for an incoming text message.
- 
setBinaryMessageSizeLimitpublic void setBinaryMessageSizeLimit(int messageSizeLimit) Description copied from interface:WebSocketSessionConfigure the maximum size for an incoming binary message.
- 
getBinaryMessageSizeLimitpublic int getBinaryMessageSizeLimit()Description copied from interface:WebSocketSessionGet the configured maximum size for an incoming binary message.
- 
isOpenpublic boolean isOpen()Description copied from interface:WebSocketSessionWhether the underlying connection is open.
- 
initializeNativeSessionpublic void initializeNativeSession(org.eclipse.jetty.websocket.api.Session session) - Overrides:
- initializeNativeSessionin class- AbstractWebSocketSession<org.eclipse.jetty.websocket.api.Session>
 
- 
sendTextMessage- Specified by:
- sendTextMessagein class- AbstractWebSocketSession<org.eclipse.jetty.websocket.api.Session>
- Throws:
- IOException
 
- 
sendBinaryMessage- Specified by:
- sendBinaryMessagein class- AbstractWebSocketSession<org.eclipse.jetty.websocket.api.Session>
- Throws:
- IOException
 
- 
sendPingMessage- Specified by:
- sendPingMessagein class- AbstractWebSocketSession<org.eclipse.jetty.websocket.api.Session>
- Throws:
- IOException
 
- 
sendPongMessage- Specified by:
- sendPongMessagein class- AbstractWebSocketSession<org.eclipse.jetty.websocket.api.Session>
- Throws:
- IOException
 
- 
closeInternal- Specified by:
- closeInternalin class- AbstractWebSocketSession<org.eclipse.jetty.websocket.api.Session>
- Throws:
- IOException
 
 
-