public abstract class AbstractHttpSockJsSession extends AbstractSockJsSession
logger| Constructor and Description |
|---|
AbstractHttpSockJsSession(String id,
SockJsServiceConfig config,
WebSocketHandler wsHandler,
Map<String,Object> handshakeAttributes) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
afterRequestUpdated() |
protected void |
disconnect(CloseStatus status) |
protected abstract void |
flushCache()
Only called if the connection is currently active
|
String |
getAcceptedProtocol()
Return the selected sub-protocol to use.
|
List<WebSocketExtension> |
getExtensions()
Return the negotiated extensions or
null if none was specified or
negotiated successfully. |
HttpHeaders |
getHandshakeHeaders()
Return the headers used in the handshake request.
|
InetSocketAddress |
getLocalAddress()
Return the address on which the request was received.
|
protected BlockingQueue<String> |
getMessageCache() |
Principal |
getPrincipal()
Return a
Principal instance containing the name of the
authenticated user. |
InetSocketAddress |
getRemoteAddress()
Return the address of the remote client.
|
protected ServerHttpRequest |
getRequest() |
protected ServerHttpResponse |
getResponse() |
URI |
getUri()
Return the URI used to open the WebSocket connection.
|
void |
handleInitialRequest(ServerHttpRequest request,
ServerHttpResponse response,
SockJsFrame.FrameFormat frameFormat) |
boolean |
isActive()
Polling and Streaming sessions periodically close the current HTTP request and
wait for the next request to come through.
|
protected void |
resetRequest() |
protected void |
sendMessageInternal(String message) |
void |
setAcceptedProtocol(String protocol)
Unlike WebSocket where sub-protocol negotiation is part of the
initial handshake, in HTTP transports the same negotiation must
be emulated and the selected protocol set through this setter.
|
protected void |
setHandshakeHeaders(HttpHeaders handshakeHeaders) |
protected void |
setLocalAddress(InetSocketAddress localAddress) |
protected void |
setPrincipal(Principal principal) |
protected void |
setRemoteAddress(InetSocketAddress remoteAddress) |
void |
startLongPollingRequest(ServerHttpRequest request,
ServerHttpResponse response,
SockJsFrame.FrameFormat frameFormat) |
protected void |
writeFrameInternal(SockJsFrame frame) |
protected void |
writePrelude() |
cancelHeartbeat, close, close, delegateConnectionClosed, delegateConnectionEstablished, delegateError, delegateMessages, getHandshakeAttributes, getId, getSockJsServiceConfig, getTimeSinceLastActive, isClosed, isNew, isOpen, scheduleHeartbeat, sendHeartbeat, sendMessage, toString, tryCloseWithSockJsTransportError, updateLastActiveTime, writeFramepublic AbstractHttpSockJsSession(String id, SockJsServiceConfig config, WebSocketHandler wsHandler, Map<String,Object> handshakeAttributes)
public URI getUri()
WebSocketSessionpublic HttpHeaders getHandshakeHeaders()
WebSocketSessionprotected void setHandshakeHeaders(HttpHeaders handshakeHeaders)
public Principal getPrincipal()
WebSocketSessionPrincipal instance containing the name of the
authenticated user. If the user has not been authenticated, the method returns
null.protected void setPrincipal(Principal principal)
public InetSocketAddress getLocalAddress()
WebSocketSessionprotected void setLocalAddress(InetSocketAddress localAddress)
public InetSocketAddress getRemoteAddress()
WebSocketSessionprotected void setRemoteAddress(InetSocketAddress remoteAddress)
public List<WebSocketExtension> getExtensions()
WebSocketSessionnull if none was specified or
negotiated successfully.public void setAcceptedProtocol(String protocol)
protocol - the sub-protocol to setpublic String getAcceptedProtocol()
public void handleInitialRequest(ServerHttpRequest request, ServerHttpResponse response, SockJsFrame.FrameFormat frameFormat) throws SockJsException
SockJsExceptionprotected void writePrelude()
throws IOException
IOExceptionpublic void startLongPollingRequest(ServerHttpRequest request, ServerHttpResponse response, SockJsFrame.FrameFormat frameFormat) throws SockJsException
SockJsExceptionprotected void afterRequestUpdated()
public boolean isActive()
AbstractSockJsSessionisActive in class AbstractSockJsSessionprotected BlockingQueue<String> getMessageCache()
protected ServerHttpRequest getRequest()
protected ServerHttpResponse getResponse()
protected final void sendMessageInternal(String message) throws SockJsTransportFailureException
sendMessageInternal in class AbstractSockJsSessionSockJsTransportFailureExceptionprotected abstract void flushCache()
throws SockJsTransportFailureException
SockJsTransportFailureExceptionprotected void disconnect(CloseStatus status)
disconnect in class AbstractSockJsSessionprotected void resetRequest()
protected void writeFrameInternal(SockJsFrame frame) throws IOException
writeFrameInternal in class AbstractSockJsSessionIOException