org.springframework.web.socket.sockjs.transport.session

## Class PollingSockJsSession

- 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.PollingSockJsSession

All Implemented Interfaces:
  Closeable, AutoCloseable, SockJsSession, WebSocketSession

    public class PollingSockJsSession
    extends AbstractHttpSockJsSession

A SockJS session for use with polling 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, disconnectedClientLogger, logger, responseLock`

### Constructor Summary

Constructors
Constructor and Description
`PollingSockJsSession(String sessionId, SockJsServiceConfig config, WebSocketHandler wsHandler, Map<String,Object> attributes)`

### Method Summary

All Methods Instance Methods Concrete Methods
`protected void` `flushCache()` Called when the connection is active and ready to write to the response.
`protected void` `handleRequestInternal(org.springframework.http.server.ServerHttpRequest request, org.springframework.http.server.ServerHttpResponse response, boolean initialRequest)` Invoked when a SockJS transport request is received.
`protected void` `writeFrame(SockJsFrame frame)` For internal use within a TransportHandler and the (TransportHandler-specific) session class.

### 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, writeFrameInternal`

### Methods 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`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### PollingSockJsSession

    public PollingSockJsSession(String sessionId,
                                SockJsServiceConfig config,
                                WebSocketHandler wsHandler,
                                Map<String,Object> attributes)

### Method Detail

#### handleRequestInternal

    protected void handleRequestInternal(org.springframework.http.server.ServerHttpRequest request,
                                         org.springframework.http.server.ServerHttpResponse response,
                                         boolean initialRequest)
                                  throws IOException

Description copied from class: `AbstractHttpSockJsSession`
Invoked when a SockJS transport request is received.

Specified by:
  `handleRequestInternal` in class `AbstractHttpSockJsSession`
Parameters:
  `request` - the current request
  `response` - the current response
  `initialRequest` - whether it is the first request for the session
Throws:
  `IOException`

#### flushCache

    protected void flushCache()
                       throws SockJsTransportFailureException

Description copied from class: `AbstractHttpSockJsSession`
Called 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:
  `flushCache` in class `AbstractHttpSockJsSession`
Throws:
  `SockJsTransportFailureException`

#### writeFrame

    protected void writeFrame(SockJsFrame frame)
                       throws SockJsTransportFailureException

Description copied from class: `AbstractSockJsSession`
For internal use within a TransportHandler and the (TransportHandler-specific) session class.

Overrides:
  `writeFrame` in class `AbstractSockJsSession`
Throws:
  `SockJsTransportFailureException`