Package org.atmosphere.container
Class BlockingIOCometSupport
java.lang.Object
org.atmosphere.cpr.AsynchronousProcessor
org.atmosphere.container.BlockingIOCometSupport
- All Implemented Interfaces:
AsyncSupport<AtmosphereResourceImpl>
- Direct Known Subclasses:
Tomcat7BIOSupportWithWebSocket
This class is used when the
AtmosphereFramework fails to autodetect
the Servlet Container we are running on.
This AsyncSupport implementation uses a blocking approach, meaning
the request thread will be blocked until another Thread invoke the Broadcaster.broadcast(java.lang.Object).- Author:
- Jeanfrancois Arcand
-
Field Summary
FieldsFields inherited from class org.atmosphere.cpr.AsynchronousProcessor
cancelledAction, config, timedoutAction -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidProcess anActionfrom anActionEventoperation like suspend, resume or timed out.cancelled(AtmosphereRequest req, AtmosphereResponse res) All proprietary Comet basedServletmust invoke the cancelled method when the underlying WebServer detect that the client closed the connection.Complete and close the connection associated with an implementation ofAtmosphereResourceservice(AtmosphereRequest req, AtmosphereResponse res) protected voidsuspend(Action action, AtmosphereRequest req, AtmosphereResponse res) Suspend the connection by blocking the currentThreadMethods inherited from class org.atmosphere.cpr.AsynchronousProcessor
allowSessionTimeoutRemoval, completeLifecycle, endRequest, getContainerName, init, invokeAtmosphereHandler, invokeInterceptors, map, postInterceptors, resumed, shutdown, supportSession, supportWebSocket, suspended, timedout
-
Field Details
-
LATCH
-
-
Constructor Details
-
BlockingIOCometSupport
-
-
Method Details
-
service
public Action service(AtmosphereRequest req, AtmosphereResponse res) throws IOException, javax.servlet.ServletException Description copied from interface:AsyncSupport- Parameters:
req- theAtmosphereRequestres- theAtmosphereResponse- Returns:
- the
Actionthat was manipulated by theAtmosphereHandler - Throws:
IOExceptionjavax.servlet.ServletException
-
suspend
protected void suspend(Action action, AtmosphereRequest req, AtmosphereResponse res) throws IOException, javax.servlet.ServletException Suspend the connection by blocking the currentThread- Parameters:
action- TheActionreq- theAtmosphereRequestres- theAtmosphereResponse- Throws:
IOExceptionjavax.servlet.ServletException
-
cancelled
public Action cancelled(AtmosphereRequest req, AtmosphereResponse res) throws IOException, javax.servlet.ServletException Description copied from class:AsynchronousProcessorAll proprietary Comet basedServletmust invoke the cancelled method when the underlying WebServer detect that the client closed the connection.- Overrides:
cancelledin classAsynchronousProcessor- Parameters:
req- theAtmosphereRequestres- theAtmosphereResponse- Returns:
- action the Action operation.
- Throws:
IOExceptionjavax.servlet.ServletException
-
action
Description copied from interface:AsyncSupportProcess anActionfrom anActionEventoperation like suspend, resume or timed out.- Specified by:
actionin interfaceAsyncSupport<AtmosphereResourceImpl>- Overrides:
actionin classAsynchronousProcessor- Parameters:
r- An instance ofAction
-
complete
Description copied from interface:AsyncSupportComplete and close the connection associated with an implementation ofAtmosphereResource- Specified by:
completein interfaceAsyncSupport<AtmosphereResourceImpl>- Overrides:
completein classAsynchronousProcessor- Parameters:
r-AtmosphereResource- Returns:
- this
-