Package org.cometd.server.transport
Class AsyncJSONTransport
- java.lang.Object
-
- org.cometd.common.AbstractTransport
-
- org.cometd.server.AbstractServerTransport
-
- org.cometd.server.transport.AbstractHttpTransport
-
- org.cometd.server.transport.AsyncJSONTransport
-
- All Implemented Interfaces:
ServerTransport
,Transport
,org.eclipse.jetty.util.component.Dumpable
public class AsyncJSONTransport extends AbstractHttpTransport
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
AsyncJSONTransport.AbstractReader
protected class
AsyncJSONTransport.CharsetReader
protected class
AsyncJSONTransport.UTF8Reader
protected class
AsyncJSONTransport.Writer
-
Nested classes/interfaces inherited from class org.cometd.server.transport.AbstractHttpTransport
AbstractHttpTransport.Context, AbstractHttpTransport.HttpScheduler, AbstractHttpTransport.LongPollScheduler
-
Nested classes/interfaces inherited from class org.cometd.server.AbstractServerTransport
AbstractServerTransport.Scheduler
-
-
Field Summary
-
Fields inherited from class org.cometd.server.transport.AbstractHttpTransport
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, TRUST_CLIENT_SESSION, TRUST_CLIENT_SESSION_OPTION
-
Fields inherited from class org.cometd.server.AbstractServerTransport
_logger, 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
-
-
Constructor Summary
Constructors Constructor Description AsyncJSONTransport(BayeuxServerImpl bayeux)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
accept(javax.servlet.http.HttpServletRequest request)
void
handle(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response)
protected AbstractHttpTransport.HttpScheduler
newHttpScheduler(AbstractHttpTransport.Context context, Promise<Void> promise, ServerMessage.Mutable reply, long timeout)
protected void
process(String json, 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)
-
Methods inherited from class org.cometd.server.transport.AbstractHttpTransport
decBrowserId, findBrowserId, findCurrentSessions, findSession, flush, getAsyncContext, getDuplicateMetaConnectHttpResponseCode, getMultiSessionInterval, handleJSONParseException, handleMessage, incBrowserId, init, isHTTP2, processMessages, resume, sendError, setBrowserId, sweep, toJSONBytes
-
Methods inherited from class org.cometd.server.AbstractServerTransport
allowMessageDeliveryDuringHandshake, destroy, dump, getBayeux, getInterval, getMaxInterval, getMaxLazyTimeout, getMaxMessageSize, getTimeout, isAllowMessageDeliveryDuringHandshake, isHandshakeReconnect, isMetaConnectDeliveryOnly, parseMessages, parseMessages, processReply, scheduleExpiration, setAllowMessageDeliveryDuringHandshake, setHandshakeReconnect, setInterval, setMaxInterval, setMaxLazyTimeout, setMaxMessageSize, setMetaConnectDeliveryOnly, setTimeout, toJSON, toString
-
Methods inherited from class org.cometd.common.AbstractTransport
getName, getOption, getOption, getOption, getOption, getOption, getOptionNames, getOptionPrefix, setOption, setOptionPrefix
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.cometd.bayeux.Transport
getName, getOption, getOptionNames, getOptionPrefix
-
-
-
-
Constructor Detail
-
AsyncJSONTransport
public AsyncJSONTransport(BayeuxServerImpl bayeux)
-
-
Method Detail
-
accept
public boolean accept(javax.servlet.http.HttpServletRequest request)
- Specified by:
accept
in classAbstractHttpTransport
-
handle
public void handle(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws IOException
- Specified by:
handle
in classAbstractHttpTransport
- Throws:
IOException
-
process
protected void process(String json, AbstractHttpTransport.Context context, Promise<Void> promise)
-
suspend
protected AbstractHttpTransport.HttpScheduler suspend(AbstractHttpTransport.Context context, Promise<Void> promise, ServerMessage.Mutable message, long timeout)
- Specified by:
suspend
in classAbstractHttpTransport
-
newHttpScheduler
protected AbstractHttpTransport.HttpScheduler newHttpScheduler(AbstractHttpTransport.Context context, Promise<Void> promise, ServerMessage.Mutable reply, long timeout)
-
write
protected void write(AbstractHttpTransport.Context context, List<ServerMessage> messages, Promise<Void> promise)
- Specified by:
write
in classAbstractHttpTransport
-
writeComplete
protected void writeComplete(AbstractHttpTransport.Context context, List<ServerMessage> messages)
-
-