!include once #1015699 // websocket sclass FlexWebSocketClient extends WebSocketClient { *(URI uri) { super(uri); } *(URI uri, SS httpHeaders) { super(uri, httpHeaders); } settable bool verbose; event opened(ServerHandshake handshake); event gotMessage(S message); event gotBinaryMessage(java.nio.ByteBuffer message); event closed(CloseInfo info); event error(Exception error); record noeq CloseInfo(int code, S reason, bool remote) {} public void onMessage(S s) { if (verbose) print("WebSocket received: " + s); gotMessage(s); } public void onMessage(java.nio.ByteBuffer bytes) { if (verbose) print("WebSocket received " + nBytes(bytes.remaining()); gotBinaryMessage(bytes); } public void onOpen(ServerHandshake handshake) { if (verbose) print("WebSocket opened"); opened(handshake); } public void onClose(int code, S reason, bool remote) { if (verbose) print("WebSocket closed, code " + code + ", reason: " + reason + ", remote: " + remote); closed(new CloseInfo(code, reason, remote)); } public void onError(Exception e) { printStackTrace(e); error(e); } }