@Override public void onDisconnect(final AtmosphereResourceEvent event) { if (event.isCancelled() || event.isClosedByClient()) { feed.resumeAll(); if (futures.get(tagid) != null) { futures.get(tagid).cancel(true); } } }
if (event.isCancelled()) { logger.info("Browser {} unexpectedly disconnected", event.getResource().uuid()); } else if (event.isClosedByClient()) { logger.info("Browser {} closed the connection", event.getResource().uuid());
@Disconnect public void onDisconnect(AtmosphereResourceEvent event) { if (event.isCancelled()) { log.info("Browser " + event.getResource().uuid() + " unexpectedly disconnected"); } else if (event.isClosedByClient()) { log.info("Browser " + event.getResource().uuid() + " closed the connection"); } }
@SuppressWarnings("WeakerAccess") @Disconnect public void onDisconnect(final AtmosphereResourceEvent event) { if (event.isCancelled()) { // We didn't get notified, so we remove the user. logger.info("Browser {} unexpectedly disconnected for pathParam {}.", event.getResource().uuid(), id); } else if (event.isClosedByClient()) { logger.info("Browser {} closed the connection for pathParam {}.", event.getResource().uuid(), id); } else { logger.info("Browser {} closed for other reason for pathParam {}.", event.getResource().uuid(), id); } }
@Disconnect public final void onDisconnect(final AtmosphereResourceEvent event){ Collection<AtmosphereResource> atmosphereResources = event.getResource().getBroadcaster().getAtmosphereResources(); if (atmosphereResources.size() < 2 && subscription != null) { synchronized (subscription) { subscription.unsubscribe(); subscription = null; } LOG.debug("[websocket {}] [broadcaster:#{}] unsubscribed !", scopeAsAString, event.getResource().getBroadcaster().getID()); } if (event.isCancelled()) { LOG.info("[websocket {}] Client {} cancelled the connection", scopeAsAString, event.getResource().uuid()); } else if(event.isClosedByClient()) { LOG.info("[websocket {}] Client {} closed the connection", scopeAsAString, event.getResource().uuid()); } }
@Disconnect public void onDisconnect(AtmosphereResourceEvent event) throws IOException { if (writeOnClose.get() && build != null && !build.isReadonly()) { UUID buildId = build.getId(); String eventKey = "written"; String eventValue = buildId.toString(); try { hub.writeBuild(build); log.info("[websocket] written build {}", buildId); } catch (IOException e) { eventKey = e.getClass().getSimpleName(); eventValue = e.getMessage(); log.info("[websocket] exception writing build {}, {} : {}", buildId, eventKey, eventValue); } event.broadcaster().broadcast(new Event(eventKey, eventValue, null)); } final String cause; if (event.isCancelled()) { cause = "cancelled"; } else if (event.isClosedByApplication()) { cause = "closedByAppplication"; } else if (event.isClosedByClient()) { cause = "closedByClient"; } else { cause = "unknown"; } log.info("[websocket] Client {} disconnected, cause: {}, buildId: {}, writeOnClose: {}", event.getResource().uuid(), cause, build == null ? null : build.getId(), writeOnClose); }
if (event.isCancelled() || event.isClosedByClient()) { remoteEndpoint.status().status(event.isCancelled() ? Status.STATUS.UNEXPECTED_CLOSE : Status.STATUS.CLOSED_BY_CLIENT); request.removeAttribute(RemoteEndpointImpl.class.getName());
@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); } }