Class StreamingSockJsSession
java.lang.Object
org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession
org.springframework.web.socket.sockjs.transport.session.AbstractHttpSockJsSession
org.springframework.web.socket.sockjs.transport.session.StreamingSockJsSession
- All Implemented Interfaces:
Closeable,AutoCloseable,SockJsSession,WebSocketSession
A SockJS session for use with streaming HTTP transports.
- Since:
- 4.0
- Author:
- Rossen Stoyanchev
-
Field Summary
Fields inherited from class org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession
DISCONNECTED_CLIENT_LOG_CATEGORY, logger, responseLock -
Constructor Summary
ConstructorsConstructorDescriptionStreamingSockJsSession(String sessionId, SockJsServiceConfig config, WebSocketHandler wsHandler, Map<String, Object> attributes) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidCalled when the connection is active and ready to write to the response.protected abstract byte[]getPrelude(ServerHttpRequest request) Get the prelude to write to the response before any other data.protected voidhandleRequestInternal(ServerHttpRequest request, ServerHttpResponse response, boolean initialRequest) Invoked when a SockJS transport request is received.Methods inherited from class org.springframework.web.socket.sockjs.transport.session.AbstractHttpSockJsSession
disconnect, getAcceptedProtocol, getBinaryMessageSizeLimit, getExtensions, getHandshakeHeaders, getLocalAddress, getMessageCache, getPrincipal, getRemoteAddress, getTextMessageSizeLimit, getUri, handleInitialRequest, handleSuccessiveRequest, isActive, resetRequest, sendMessageInternal, setAcceptedProtocol, setBinaryMessageSizeLimit, setTextMessageSizeLimit, writeFrameInternalMethods inherited from class org.springframework.web.socket.sockjs.transport.session.AbstractSockJsSession
cancelHeartbeat, close, close, delegateConnectionClosed, delegateConnectionEstablished, delegateError, delegateMessages, disableHeartbeat, getAttributes, getId, getMessageCodec, getSockJsServiceConfig, getTimeSinceLastActive, isClosed, isNew, isOpen, scheduleHeartbeat, sendHeartbeat, sendMessage, toString, tryCloseWithSockJsTransportError, updateLastActiveTime, writeFrame
-
Constructor Details
-
StreamingSockJsSession
public StreamingSockJsSession(String sessionId, SockJsServiceConfig config, WebSocketHandler wsHandler, Map<String, Object> attributes)
-
-
Method Details
-
getPrelude
Get the prelude to write to the response before any other data.- Since:
- 4.2
-
handleRequestInternal
protected void handleRequestInternal(ServerHttpRequest request, ServerHttpResponse response, boolean initialRequest) throws IOException Description copied from class:AbstractHttpSockJsSessionInvoked when a SockJS transport request is received.- Specified by:
handleRequestInternalin classAbstractHttpSockJsSession- Parameters:
request- the current requestresponse- the current responseinitialRequest- whether it is the first request for the session- Throws:
IOException
-
flushCache
Description copied from class:AbstractHttpSockJsSessionCalled when the connection is active and ready to write to the response. Subclasses should only call this method from a method where the "responseLock" is acquired.- Specified by:
flushCachein classAbstractHttpSockJsSession- Throws:
SockJsTransportFailureException
-