Class AtmosphereResourceLifecycleInterceptor

java.lang.Object
org.atmosphere.interceptor.AtmosphereResourceLifecycleInterceptor
All Implemented Interfaces:
AtmosphereInterceptor, AtmosphereConfigAware

public class AtmosphereResourceLifecycleInterceptor extends Object implements AtmosphereInterceptor

This AtmosphereInterceptor implementation automatically suspends the intercepted AtmosphereResource and takes care of managing the response's state (flushing, resuming, etc.) when a Broadcaster.broadcast(java.lang.Object) is invoked. When used, AtmosphereHandler implementations no longer need to make calls to AtmosphereResource.suspend().

If your application doesn't use Broadcaster, this interceptor will not work and you need to programmatically resume, flush, etc.

By default, intercepted AtmosphereResource instances are suspended when a GET request is received. You can change the triggering http method by configuring ApplicationConfig.ATMOSPHERERESOURCE_INTERCEPTOR_METHOD

Use this class when you don't want to manage the suspend/resume operation from your particular Atmosphere framework implementation classes (AtmosphereHandler, WebSocketHandler, or Meteor instances) or extensions (GWT, Jersey, Wicket, etc...)

For this mechanism to work properly, each client must set the HeaderConfig.X_ATMOSPHERE_TRANSPORT header. Your AtmosphereHandler must also extends the AbstractReflectorAtmosphereHandler or implements the logic defined inside AbstractReflectorAtmosphereHandler.postStateChange(org.atmosphere.cpr.AtmosphereResourceEvent)
Author:
Jeanfrancois Arcand