@Override public void start() throws Exception { Router router = Router.router(vertx); router.route("/news-feed/*").handler(SockJSHandler.create(vertx).socketHandler(sockJSSocket -> { // Consumer the event bus address as an Observable Observable<String> msg = vertx.eventBus().<String>consumer("news-feed") .bodyStream() .toObservable(); // Send the event to the client Subscription subscription = msg.subscribe(sockJSSocket::write); // Unsubscribe when the socket closes sockJSSocket.endHandler(v -> { subscription.unsubscribe(); }); })); // Serve the static resources router.route().handler(StaticHandler.create()); vertx.createHttpServer().requestHandler(router).listen(8080); // Publish a message to the address "news-feed" every second vertx.setPeriodic(1000, t -> vertx.eventBus().publish("news-feed", "news from the server!")); } }
public static LoggerHandler newInstance(io.vertx.ext.web.handler.LoggerHandler arg) { return arg != null ? new LoggerHandler(arg) : null; } }
public static SessionHandler newInstance(io.vertx.ext.web.handler.SessionHandler arg) { return arg != null ? new SessionHandler(arg) : null; } }
public static CookieHandler newInstance(io.vertx.ext.web.handler.CookieHandler arg) { return arg != null ? new CookieHandler(arg) : null; } }
public static CorsHandler newInstance(io.vertx.ext.web.handler.CorsHandler arg) { return arg != null ? new CorsHandler(arg) : null; } }
public static VirtualHostHandler newInstance(io.vertx.ext.web.handler.VirtualHostHandler arg) { return arg != null ? new VirtualHostHandler(arg) : null; } }
public static OAuth2AuthHandler newInstance(io.vertx.ext.web.handler.OAuth2AuthHandler arg) { return arg != null ? new OAuth2AuthHandler(arg) : null; } }
public static BodyHandler newInstance(io.vertx.ext.web.handler.BodyHandler arg) { return arg != null ? new BodyHandler(arg) : null; } }
public static AuthHandler newInstance(io.vertx.ext.web.handler.AuthHandler arg) { return arg != null ? new AuthHandlerImpl(arg) : null; } }
public static TemplateHandler newInstance(io.vertx.ext.web.handler.TemplateHandler arg) { return arg != null ? new TemplateHandler(arg) : null; } }
public static RedirectAuthHandler newInstance(io.vertx.ext.web.handler.RedirectAuthHandler arg) { return arg != null ? new RedirectAuthHandler(arg) : null; } }
public static CSRFHandler newInstance(io.vertx.ext.web.handler.CSRFHandler arg) { return arg != null ? new CSRFHandler(arg) : null; } }
public static DigestAuthHandler newInstance(io.vertx.ext.web.handler.DigestAuthHandler arg) { return arg != null ? new DigestAuthHandler(arg) : null; } }
public static ChainAuthHandler newInstance(io.vertx.ext.web.handler.ChainAuthHandler arg) { return arg != null ? new ChainAuthHandler(arg) : null; } }
public static JWTAuthHandler newInstance(io.vertx.ext.web.handler.JWTAuthHandler arg) { return arg != null ? new JWTAuthHandler(arg) : null; } }
public static BasicAuthHandler newInstance(io.vertx.ext.web.handler.BasicAuthHandler arg) { return arg != null ? new BasicAuthHandler(arg) : null; } }
public static ErrorHandler newInstance(io.vertx.ext.web.handler.ErrorHandler arg) { return arg != null ? new ErrorHandler(arg) : null; } }
public static ResponseTimeHandler newInstance(io.vertx.ext.web.handler.ResponseTimeHandler arg) { return arg != null ? new ResponseTimeHandler(arg) : null; } }
public static FaviconHandler newInstance(io.vertx.ext.web.handler.FaviconHandler arg) { return arg != null ? new FaviconHandler(arg) : null; } }
public static ResponseContentTypeHandler newInstance(io.vertx.ext.web.handler.ResponseContentTypeHandler arg) { return arg != null ? new ResponseContentTypeHandler(arg) : null; } }