@Override public void onResume(AtmosphereResourceEvent event) { if (event.isResuming()) { listener.onComplete(AtmosphereContinuation.this); } else { try { r.getAtmosphereConfig().framework().doCometSupport(r.getRequest(), r.getResponse()); } catch (IOException e) { logger.warn("", e); } catch (ServletException e) { logger.warn("", e); } listener.onTimeout(AtmosphereContinuation.this); } } });
@Override public void onStateChange(AtmosphereResourceEvent event) throws IOException { if (event.getMessage() == null || event.isCancelled() || event.isResuming() || event.isResumedOnTimeout()) { return; } AtmosphereResource resource = event.getResource(); AtmosphereRequest req = resource.getRequest(); AtmosphereResponse res = resource.getResponse(); PrintWriter writer = res.getWriter(); writer.print((String) event.getMessage()); writer.flush(); if (req.getParameter("transport").startsWith("longpoll")) { req.setAttribute("used", true); resource.resume(); } }
if (event.isResuming() || event.isResumedOnTimeout()) { return;
else if (event.isResumedOnTimeout() || event.isResuming()) { remoteEndpoint.status().status(Status.STATUS.CLOSED_BY_TIMEOUT); request.removeAttribute(RemoteEndpointImpl.class.getName());
if (event.isResuming() || event.isResumedOnTimeout()) { return;
@Override public void onStateChange(AtmosphereResourceEvent event) throws IOException { ensureInitialized(event.getResource()); AtmosphereResponse response = ((AtmosphereResourceImpl) event.getResource()).getResponse(false); if (event.getMessage() != null && List.class.isAssignableFrom(event.getMessage().getClass())) { List<String> messages = List.class.cast(event.getMessage()); for (String t : messages) { onMessage(event, response, t); } } else if (event.isClosedByApplication() || event.isClosedByClient() || event.isCancelled()) { onDisconnect(event, response); } else if (event.isSuspended()) { onMessage(event, response, (String) event.getMessage()); } else if (event.isResuming()) { onResume(event, response); } else if (event.isResumedOnTimeout()) { onTimeout(event, response); } }