private void doOnBeforeDisconnected(CometClientTransportWrapper transport) { if (refreshState == null && transport == primaryTransport) { listener.onBeforeDisconnected(); } }
@Override public void onClose(WebSocket socket) { logger.fine("Websocket connection closed"); WebSocketCometTransport.this.socket = null; listener.onDisconnected(); }
private void onDisconnected() { connected = false; body = null; if (expectingDisconnection) { listener.onDisconnected(); } else { listener.onError(new AtmosphereClientException("Unexpected disconnection"), false); } }
clientListener.onConnected(-1, -1); break; case ON_BEFORE_DISCONNECTED: clientListener.onBeforeDisconnected(); break; case ON_DISCONNECTED: clientListener.onDisconnected(); break; case ON_ERROR: clientListener.onHeartbeat(); break; case ON_REFRESH: clientListener.onRefresh(); break; case ON_AFTER_REFRESH: clientListener.onAfterRefresh(); break; case ON_MESSAGE: clientListener.onMessage(Collections.singletonList(event.getData())); break; case LOCAL_BROADCAST: if (masterConnection != null) { masterListener.onMessage(Collections.singletonList(event.getData())); } else if (parent != null) {
String[] params = initParameters.split(":"); connectionId = Integer.parseInt(params[1]); listener.onConnected(Integer.parseInt(params[0]), connectionId); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected init parameters: " + initParameters), true); statusMessage = HTTPRequestCometTransport.unescape(status.substring(index + 1)); listener.onError(new StatusCodeException(statusCode, statusMessage), false); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected status code: " + status), false); listener.onDisconnected(); } else if (message.equals("h")) { listener.onHeartbeat(); } else { listener.onError(new AtmosphereClientException("Unexpected connection status: " + message), true);
private void parse(String message, List messages) { if (expectingDisconnection) { listener.onError(new AtmosphereClientException("Expecting disconnection but received message: " + message), true); } else if (message.isEmpty()) { listener.onError(new AtmosphereClientException("Invalid empty message received"), true); } else { char c = message.charAt(0); String[] params = initParameters.split(":"); connectionId = Integer.parseInt(params[1]); listener.onConnected(Integer.parseInt(params[0]), connectionId); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected init parameters: " + initParameters), true); break; case '#': listener.onHeartbeat(); break; case '@': listener.onRefresh(); break; case '*': messages.add(parse(message)); } catch (SerializationException e) { listener.onError(e, true); listener.onError(new AtmosphereClientException("Invalid message received: " + message), true);
if (!connected) { expectingDisconnection = true; listener.onError(new StatusCodeException(statusCode, responseText), connected); listener.onMessage(messages); listener.onDisconnected(); } else { listener.onError(new AtmosphereClientException("Unexpected disconnection"), false);
String[] params = initParameters.split(";"); connectionId = Integer.parseInt(params[1]); listener.onConnected(Integer.parseInt(params[0]), connectionId); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected init parameters: " + initParameters), true); statusMessage = HTTPRequestCometTransport.unescape(status.substring(index + 1)); listener.onError(new StatusCodeException(statusCode, statusMessage), false); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected status code: " + status), false); listener.onHeartbeat(); } else { listener.onError(new AtmosphereClientException("Unexpected connection status: " + message), true);
@Override public void onError(Throwable exception, boolean connected) { clientListener.onError(exception, connected); // dispatchEvent(event(EventType.ON_ERROR).setData(exception.getMessage())); }
private void doOnConnected(int heartbeat, int connectionID, CometClientTransportWrapper transport) { if (refreshState != null) { if (transport == refreshTransport) { if (refreshState == RefreshState.PRIMARY_DISCONNECTED) { doneRefresh(); } else if (refreshState == RefreshState.CONNECTING) { primaryTransport.disconnect(); doneRefresh(); } else { throw new IllegalStateException("Unexpected refresh state"); } } else { // refreshed connection after connection failed if (refreshState != RefreshState.CONNECTING && refreshState != RefreshState.PRIMARY_RECONNECT) { throw new IllegalStateException("Unexpected refresh state"); } refreshState = null; listener.onAfterRefresh(); } } else { listener.onConnected(heartbeat, connectionID); } }
@SuppressWarnings("unused") private void onString(String message) { listener.onMessage(Collections.singletonList(HTTPRequestCometTransport.unescape(message))); }
@SuppressWarnings("unused") private void onRefresh() { collect(); listener.onRefresh(); }
private void doOnHeartbeat(CometClientTransportWrapper transport) { if (transport == primaryTransport) { listener.onHeartbeat(); } }
@Override public void onConnected(int heartbeat, int connectionID) { clientListener.onConnected(heartbeat, connectionID); dispatchEvent(event(EventType.ON_CONNECTED)); }
@Override public void onAfterRefresh() { clientListener.onAfterRefresh(); dispatchEvent(event(EventType.ON_AFTER_REFRESH)); }
String[] params = initParameters.split(":"); connectionId = Integer.parseInt(params[1]); listener.onConnected(Integer.parseInt(params[0]), connectionId); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected init parameters: " + initParameters), true); statusMessage = HTTPRequestCometTransport.unescape(status.substring(index + 1)); listener.onError(new StatusCodeException(statusCode, statusMessage), false); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected status code: " + status), false); listener.onDisconnected(); } else if (message.equals("h")) { listener.onHeartbeat(); } else { listener.onError(new AtmosphereClientException("Unexpected connection status: " + message), true);
private void parse(String message, List messages) { if (expectingDisconnection) { listener.onError(new AtmosphereClientException("Expecting disconnection but received message: " + message), true); } else if (message.isEmpty()) { listener.onError(new AtmosphereClientException("Invalid empty message received"), true); } else { char c = message.charAt(0); String[] params = initParameters.split(":"); connectionId = Integer.parseInt(params[1]); listener.onConnected(Integer.parseInt(params[0]), connectionId); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected init parameters: " + initParameters), true); break; case '#': listener.onHeartbeat(); break; case '@': listener.onRefresh(); break; case '*': messages.add(parse(message)); } catch (SerializationException e) { listener.onError(e, true); listener.onError(new AtmosphereClientException("Invalid message received: " + message), true);
if (!connected) { expectingDisconnection = true; listener.onError(new StatusCodeException(statusCode, responseText), connected); listener.onMessage(messages); listener.onDisconnected(); } else { listener.onError(new AtmosphereClientException("Unexpected disconnection"), false);
String[] params = initParameters.split(";"); connectionId = Integer.parseInt(params[1]); listener.onConnected(Integer.parseInt(params[0]), connectionId); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected init parameters: " + initParameters), true); statusMessage = HTTPRequestCometTransport.unescape(status.substring(index + 1)); listener.onError(new StatusCodeException(statusCode, statusMessage), false); } catch (NumberFormatException e) { listener.onError(new AtmosphereClientException("Unexpected status code: " + status), false); listener.onHeartbeat(); } else { listener.onError(new AtmosphereClientException("Unexpected connection status: " + message), true);