package examples;

import io.vertx.core.Vertx;
import io.vertx.ext.web.Router;
import io.vertx.ext.web.handler.sockjs.BridgeOptions;
import io.vertx.ext.web.handler.sockjs.PermittedOptions;
import io.vertx.ext.web.handler.sockjs.SockJSHandler;
import io.vertx.serviceproxy.ProxyHelper;

Author:Clement Escoffier
/** * @author <a href="http://escoffier.me">Clement Escoffier</a> */
public class Examples { public void serviceAndSockJS(Vertx vertx) { SomeDatabaseService service = new SomeDatabaseServiceImpl(); ProxyHelper.registerService(SomeDatabaseService.class, vertx, service, "database-service-address"); Router router = Router.router(vertx); // Allow events for the designated addresses in/out of the event bus bridge BridgeOptions opts = new BridgeOptions() .addInboundPermitted(new PermittedOptions() .setAddress("database-service-address")) .addOutboundPermitted(new PermittedOptions() .setAddress("database-service-address")); // Create the event bus bridge and add it to the router. SockJSHandler ebHandler = SockJSHandler.create(vertx).bridge(opts); router.route("/eventbus/*").handler(ebHandler); vertx.createHttpServer().requestHandler(router::accept).listen(8080); } }