Skip to content

Instantly share code, notes, and snippets.

@purplefox
Created June 10, 2013 10:39
Show Gist options
  • Save purplefox/5747861 to your computer and use it in GitHub Desktop.
Save purplefox/5747861 to your computer and use it in GitHub Desktop.
import org.vertx.java.core.Handler;
import org.vertx.java.core.net.NetSocket;
import org.vertx.java.core.streams.Pump;
import org.vertx.java.core.sockjs.*;
import org.vertx.java.platform.Verticle;
import org.vertx.java.core.buffer.*;
import org.vertx.java.core.json.*;
import org.vertx.java.core.http.*;
public class Example extends Verticle {
public void start() {
HttpServer server = vertx.createHttpServer();
server.requestHandler(new Handler<HttpServerRequest>() {
public void handle(HttpServerRequest req) {
if (req.path().equals("/")) {
req.response().sendFile("index.html");
}
}
});
SockJSServer sockServer = vertx.createSockJSServer(server);
sockServer.installApp(
new JsonObject().putString("prefix", "/testapp"),
new Handler<SockJSSocket>() {
public void handle(final SockJSSocket sock) {
System.out.println("Open: " + sock);
sock.dataHandler(new Handler<Buffer>() {
@Override public void handle(Buffer data) {
System.out.println("> " + data.toString());
sock.write(data);
}
});
sock.exceptionHandler(new Handler<Throwable>() {
@Override public void handle(Throwable e) {
System.out.println("Exception: " + e.getMessage());
}
});
sock.endHandler(new Handler<Void>() {
@Override public void handle(Void _) {
System.out.println("Close: " + sock);
}
});
}
}
);
server.listen(8080);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment