List of usage examples for io.vertx.core AbstractVerticle AbstractVerticle
AbstractVerticle
From source file:com.palmg.core.main.vertx.VertxCoreWrapperKernel.java
License:Open Source License
@PostConstruct public void init() { // build vertx vertxBuild();/*ww w . j a va 2s. com*/ // we must deploy one verticle beforotherwise palmg will be terminal. vertx.deployVerticle(new AbstractVerticle() { }); }
From source file:com.palmg.core.main.vertx.VertxCoreWrapperKernel.java
License:Open Source License
@Override public <T> AaronKernel addConsumer(String address, Callback<Msg<T>> callback, ConsumerOptions options) { Objects.requireNonNull(address); Objects.requireNonNull(callback); Objects.requireNonNull(options); // verticle/* www . jav a 2 s . com*/ vertx.deployVerticle(new AbstractVerticle() { @Override public void start() { // ?consumer switch (options.getLocalType()) { case Local: vertx.eventBus().<T>localConsumer(address, handler -> { callback.call(new DefaultMsgImpl<T>().setvertxMsg(handler)); }); break; case Cluseter: default: vertx.eventBus().<T>consumer(address, handler -> { callback.call(new DefaultMsgImpl<T>().setvertxMsg(handler)); }); break; } } @Override public void stop() { } }, Optional.of(new DeploymentOptions()).map(opt -> { // deploy? switch (options.getThreadType()) { case worker: opt.setWorker(true); break;// worker case multiWorker: opt.setMultiThreaded(true); break;// ?worker case core: default: break; } return opt; }).get(), depResult -> { // ? if (depResult.succeeded()) { if (LOG.isDebugEnabled()) { LOG.debug("deploy consumer {} success.", address); } } else { LOG.error("deploy consumer error!", depResult.cause()); } }); return this; }
From source file:org.apache.bookkeeper.http.vertx.VertxHttpServer.java
License:Apache License
@Override public boolean startServer(int port) { CompletableFuture<AsyncResult<io.vertx.core.http.HttpServer>> future = new CompletableFuture<>(); VertxHttpHandlerFactory handlerFactory = new VertxHttpHandlerFactory(httpServiceProvider); Router router = Router.router(vertx); HttpRouter<VertxAbstractHandler> requestRouter = new HttpRouter<VertxAbstractHandler>(handlerFactory) { @Override//from w w w. ja va 2 s . c om public void bindHandler(String endpoint, VertxAbstractHandler handler) { router.get(endpoint).handler(handler); router.put(endpoint).handler(handler); router.post(endpoint).handler(handler); router.delete(endpoint).handler(handler); } }; requestRouter.bindAll(); vertx.deployVerticle(new AbstractVerticle() { @Override public void start() throws Exception { LOG.info("Starting Vertx HTTP server on port {}", port); vertx.createHttpServer().requestHandler(router::accept).listen(port, future::complete); } }); try { AsyncResult<io.vertx.core.http.HttpServer> asyncResult = future.get(); if (asyncResult.succeeded()) { LOG.info("Vertx Http server started successfully"); listeningPort = asyncResult.result().actualPort(); isRunning = true; return true; } else { LOG.error("Failed to start org.apache.bookkeeper.http server on port {}", port, asyncResult.cause()); } } catch (InterruptedException ie) { Thread.currentThread().interrupt(); LOG.error("Failed to start org.apache.bookkeeper.http server on port {}", port, ie); } catch (ExecutionException e) { LOG.error("Failed to start org.apache.bookkeeper.http server on port {}", port, e); } return false; }