public abstract class AbstractStreamHttpTransport extends AbstractHttpTransport
The base class for HTTP transports that use blocking stream I/O.
Modifier and Type | Class and Description |
---|---|
protected class |
AbstractStreamHttpTransport.DispatchingLongPollScheduler |
AbstractHttpTransport.Context, AbstractHttpTransport.HttpScheduler, AbstractHttpTransport.LongPollScheduler
AbstractServerTransport.Scheduler
BROWSER_COOKIE_DOMAIN_OPTION, BROWSER_COOKIE_HTTP_ONLY_OPTION, BROWSER_COOKIE_NAME_OPTION, BROWSER_COOKIE_PATH_OPTION, BROWSER_COOKIE_SAME_SITE_OPTION, BROWSER_COOKIE_SECURE_OPTION, DUPLICATE_META_CONNECT_HTTP_RESPONSE_CODE_OPTION, HTTP2_MAX_SESSIONS_PER_BROWSER_OPTION, JSON_DEBUG_OPTION, MAX_SESSIONS_PER_BROWSER_OPTION, MESSAGE_PARAM, MULTI_SESSION_INTERVAL_OPTION, PREFIX, TRUST_CLIENT_SESSION_OPTION
ALLOW_MESSAGE_DELIVERY_DURING_HANDSHAKE, HANDSHAKE_RECONNECT_OPTION, INTERVAL_OPTION, JSON_CONTEXT_OPTION, MAX_INTERVAL_OPTION, MAX_LAZY_TIMEOUT_OPTION, MAX_MESSAGE_SIZE_OPTION, MAX_PROCESSING_OPTION, MAX_QUEUE_OPTION, META_CONNECT_DELIVERY_OPTION, TIMEOUT_OPTION
Modifier | Constructor and Description |
---|---|
protected |
AbstractStreamHttpTransport(BayeuxServerImpl bayeux,
String name) |
Modifier and Type | Method and Description |
---|---|
protected abstract javax.servlet.ServletOutputStream |
beginWrite(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response) |
protected abstract void |
endWrite(javax.servlet.http.HttpServletResponse response,
javax.servlet.ServletOutputStream output) |
void |
handle(javax.servlet.http.HttpServletRequest request,
javax.servlet.http.HttpServletResponse response) |
protected AbstractHttpTransport.HttpScheduler |
newHttpScheduler(AbstractHttpTransport.Context context,
Promise<Void> promise,
ServerMessage.Mutable message,
long timeout) |
protected abstract ServerMessage.Mutable[] |
parseMessages(javax.servlet.http.HttpServletRequest request) |
protected ServerMessage.Mutable[] |
parseMessages(String[] requestParameters) |
protected void |
process(AbstractHttpTransport.Context context,
Promise<Void> promise) |
protected AbstractHttpTransport.HttpScheduler |
suspend(AbstractHttpTransport.Context context,
Promise<Void> promise,
ServerMessage.Mutable message,
long timeout) |
protected void |
write(AbstractHttpTransport.Context context,
List<ServerMessage> messages,
Promise<Void> promise) |
protected void |
writeComplete(AbstractHttpTransport.Context context,
List<ServerMessage> messages) |
protected void |
writeMessage(AbstractHttpTransport.Context context,
javax.servlet.ServletOutputStream output,
ServerMessage message) |
protected void |
writeMessage(javax.servlet.http.HttpServletResponse response,
javax.servlet.ServletOutputStream output,
ServerSessionImpl session,
ServerMessage message) |
accept, decBrowserId, findBrowserId, findCurrentSessions, findSession, flush, getAsyncContext, getDuplicateMetaConnectHttpResponseCode, getMultiSessionInterval, handleJSONParseException, handleMessage, incBrowserId, init, isHTTP2, processMessages, resume, sendError, setBrowserId, sweep, toJSONBytes
allowMessageDeliveryDuringHandshake, destroy, dump, getBayeux, getInterval, getJSONContextServer, getMaxInterval, getMaxLazyTimeout, getMaxMessageSize, getTimeout, isAllowMessageDeliveryDuringHandshake, isHandshakeReconnect, isMetaConnectDeliveryOnly, newMetaConnectCycle, parseMessages, parseMessages, processReply, scheduleExpiration, setAllowMessageDeliveryDuringHandshake, setHandshakeReconnect, setInterval, setMaxInterval, setMaxLazyTimeout, setMaxMessageSize, setMetaConnectDeliveryOnly, setTimeout, toJSON, toString
getName, getOption, getOption, getOption, getOption, getOption, getOptionNames, getOptionPrefix, setOption, setOptionPrefix
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getName, getOption, getOptionNames, getOptionPrefix
protected AbstractStreamHttpTransport(BayeuxServerImpl bayeux, String name)
public void handle(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
handle
in class AbstractHttpTransport
protected void process(AbstractHttpTransport.Context context, Promise<Void> promise)
protected AbstractHttpTransport.HttpScheduler suspend(AbstractHttpTransport.Context context, Promise<Void> promise, ServerMessage.Mutable message, long timeout)
suspend
in class AbstractHttpTransport
protected AbstractHttpTransport.HttpScheduler newHttpScheduler(AbstractHttpTransport.Context context, Promise<Void> promise, ServerMessage.Mutable message, long timeout)
protected abstract ServerMessage.Mutable[] parseMessages(javax.servlet.http.HttpServletRequest request) throws IOException, ParseException
IOException
ParseException
protected ServerMessage.Mutable[] parseMessages(String[] requestParameters) throws IOException, ParseException
IOException
ParseException
protected void write(AbstractHttpTransport.Context context, List<ServerMessage> messages, Promise<Void> promise)
write
in class AbstractHttpTransport
protected void writeMessage(AbstractHttpTransport.Context context, javax.servlet.ServletOutputStream output, ServerMessage message) throws IOException
IOException
protected void writeMessage(javax.servlet.http.HttpServletResponse response, javax.servlet.ServletOutputStream output, ServerSessionImpl session, ServerMessage message) throws IOException
IOException
protected abstract javax.servlet.ServletOutputStream beginWrite(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws IOException
IOException
protected abstract void endWrite(javax.servlet.http.HttpServletResponse response, javax.servlet.ServletOutputStream output) throws IOException
IOException
protected void writeComplete(AbstractHttpTransport.Context context, List<ServerMessage> messages)
Copyright © 2008–2024 The CometD Project. All rights reserved.