Example usage for com.google.gwt.websockets.client WebSocket WebSocket

List of usage examples for com.google.gwt.websockets.client WebSocket WebSocket

Introduction

In this page you can find the example usage for com.google.gwt.websockets.client WebSocket WebSocket.

Prototype

public WebSocket(WebSocketCallback callback) 

Source Link

Usage

From source file:net.cristcost.study.gwtws.client.WebSocketApp.java

License:Apache License

@UiHandler("connectButton")
void handleConnectButtonClick(ClickEvent e) {

    Dictionary dictionary = Dictionary.getDictionary("config");

    if (dictionary.get("wsurl") == null) {
        appendErrorMessage("No WebSocket url specified!");
    }//  w  w w  .  j  a va 2s .c o m

    ws = new WebSocket(this);
    ws.connect(dictionary.get("wsurl"));

    appendClientMessage("Connect");
}

From source file:org.waveprotocol.box.webclient.client.WaveSocketFactory.java

License:Apache License

/**
 * Create a WaveSocket instance that wraps a concrete socket implementation.
 * If useWebSocketAlt is true an instance of {@link org.waveprotocol.box.webclient.client.atmosphere.AtmosphereConnection}
 * is wrapped, otherwise an instance of {@link com.google.gwt.websockets.client.WebSocket} is
 * wrapped.//from   w  w  w.jav  a 2s  . c  om
 */
public static WaveSocket create(boolean useWebSocketAlt, final String urlBase,
        final WaveSocket.WaveSocketCallback callback) {
    if (useWebSocketAlt) {
        return new WaveSocket() {

            private final AtmosphereConnection socket = new AtmosphereConnectionImpl(
                    new AtmosphereConnectionListener() {

                        @Override
                        public void onConnect() {
                            callback.onConnect();
                        }

                        @Override
                        public void onDisconnect() {
                            callback.onDisconnect();
                        }

                        @Override
                        public void onMessage(String message) {
                            callback.onMessage(message);
                        }
                    }, urlBase);

            @Override
            public void connect() {
                socket.connect();

            }

            @Override
            public void disconnect() {
                socket.close();
            }

            @Override
            public void sendMessage(String message) {
                socket.sendMessage(message);
            }

        };

    } else {
        return new WaveSocket() {
            final WebSocket socket = new WebSocket(new WebSocketCallback() {
                @Override
                public void onConnect() {
                    callback.onConnect();
                }

                @Override
                public void onDisconnect() {
                    callback.onDisconnect();
                }

                @Override
                public void onMessage(String message) {
                    callback.onMessage(message);
                }
            });

            @Override
            public void connect() {
                socket.connect(urlBase + "socket");
            }

            @Override
            public void disconnect() {
                socket.close();
            }

            @Override
            public void sendMessage(String message) {
                socket.send(message);
            }
        };
    }
}

From source file:org.waveprotocol.wave.examples.client.webclient.client.WaveWebSocketClient.java

License:Apache License

public WaveWebSocketClient(final WaveWebSocketCallback callback) {
    submitRequestCallbacks = new HashMap<Integer, SubmitResponseCallback>();
    WebSocketCallback wsCallback = new WebSocketCallback() {

        public void onConnect() {
            connected = ConnectState.CONNECTED;
            callback.connected();/*from w ww  .  j  ava 2s .  co m*/
        }

        public void onDisconnect() {
            connected = ConnectState.DISCONNECTED;
            callback.disconnected();
        }

        public void onMessage(final String message) {
            LOG.info("received JSON message " + message);
            JSONValue json = JSONParser.parse(message);
            // TODO(arb): pull apart the wrapper, extract the message.
            JSONObject wrapper = json.isObject();
            String messageType = wrapper.get("messageType").isString().stringValue();
            String payload = wrapper.get("messageJson").isString().stringValue();
            if (messageType.equals("ProtocolWaveletUpdate")) {
                ProtocolWaveletUpdate payloadMessage = ProtocolWaveletUpdate.parse(payload);
                callback.handleWaveletUpdate(payloadMessage);
            } else if (messageType.equals("ProtocolSubmitResponse")) {
                ProtocolSubmitResponse payloadMessage = ProtocolSubmitResponse.parse(payload);
                SubmitResponseCallback submitCallback = submitRequestCallbacks
                        .get((int) wrapper.get("sequenceNumber").isNumber().doubleValue());
                submitCallback.run(payloadMessage);
            }
        }
    };

    client = new WebSocket(wsCallback);
}