@Override public Object call() throws Exception { synchronized (r) { if (AtmosphereResourceImpl.class.cast(r).isInScope() && r.isSuspended()) { try { logger.trace("Heartbeat for Resource {}", r); response.write(paddingBytes, false); if (Utils.resumableTransport(r.transport()) && resumeOnHeartbeat) { r.resume(); } else if (flushBuffer) { response.flushBuffer(); } } catch (Throwable t) { logger.trace("{}", r.uuid(), t); cancelF(request); } } else { cancelF(request); } } return null; } }, interval, TimeUnit.SECONDS));
if (!Utils.resumableTransport(r.transport())) { OnSuspend a = new OnSuspend() { @Override
synchronized (resources) { for (AtmosphereResource r : resources) { if (Utils.resumableTransport(r.transport())) try { r.resume();
final boolean willBeResumed = Utils.resumableTransport(r.transport());
if (Utils.resumableTransport(transport())) { resumeOnBroadcast.set(true); if (req.getAttribute(DefaultBroadcaster.CACHED) != null && transport() != null && Utils.resumableTransport(transport())) { action.type(Action.TYPE.CONTINUE);
if (!Utils.resumableTransport(r.transport()) && AtmosphereInterceptorWriter.class.isAssignableFrom(writer.getClass()) && request.getAttribute(INTERCEPTOR_ADDED) == null) {
final boolean willBeResumed = Utils.resumableTransport(r.transport()); List<AtmosphereResourceEventListener> listeners = willBeResumed ? new ArrayList() : EMPTY_LISTENERS; final AtmosphereRequest request = r.getRequest(false);
boolean longPolling = org.atmosphere.util.Utils.resumableTransport(r.transport());