/** * Deploy a verticle you have created yourself, using an * RxJava vertx instance. * * @param vertx the vertx instance * @param verticle the verticle instance to deploy * @return the response observable */ public static Observable<String> deployVerticle(Vertx vertx, Verticle verticle) { return deployVerticle(vertx, verticle, new DeploymentOptions()); }
/** * Deploy a verticle you have created yourself, using an * RxJava vertx instance. * * @param vertx the vertx instance * @param verticle the verticle instance to deploy * @return the response observable */ public static Observable<String> deployVerticle(Vertx vertx, Verticle verticle) { return deployVerticle(vertx, verticle, new DeploymentOptions()); }
@Override public void afterPropertiesSet() throws Exception { Observable.from(verticles) .map(verticle -> RxHelper.deployVerticle(vertx, verticle)) .map(Observable::toBlocking) .map(BlockingObservable::single) .forEach(response -> { log.debug("deployed verticle {}", response); }); }
@Test public void testDeployVerticle() throws Exception { CountDownLatch deployLatch = new CountDownLatch(2); io.vertx.rxjava.core.RxHelper.deployVerticle(vertx, new AbstractVerticle() { @Override public void start() { deployLatch.countDown(); } }).subscribe(resp -> { deployLatch.countDown(); }); awaitLatch(deployLatch); } }
@Test @DisplayName("Check the deployment and interaction of a Rx1 verticle") void check_deployment_and_message_send(Vertx vertx, VertxTestContext testContext) { RxHelper .deployVerticle(vertx, new RxVerticle()) .toSingle() .flatMap(id -> vertx.eventBus().rxSend("check", "Ok?")) .subscribe( message -> testContext.verify(() -> { assertThat(message.body()).isEqualTo("Check!"); testContext.completeNow(); }), testContext::failNow); }