io.vertx.reactivex.core.http.HttpServer.rxListen()方法的使用及代码示例

x33g5p2x  于2022-01-20 转载在 其他  
字(7.8k)|赞(0)|评价(0)|浏览(114)

本文整理了Java中io.vertx.reactivex.core.http.HttpServer.rxListen()方法的一些代码示例,展示了HttpServer.rxListen()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。HttpServer.rxListen()方法的具体详情如下:
包路径:io.vertx.reactivex.core.http.HttpServer
类名称:HttpServer
方法名:rxListen

HttpServer.rxListen介绍

暂无

代码示例

代码示例来源:origin: vert-x3/vertx-examples

@Override
public void start() throws Exception {
 Router router = Router.router(vertx);
 router.route().handler(BodyHandler.create());
 router.route().handler(req -> req.response().putHeader("content-type", "text/html")
  .end("<html><body><h1>Hello from vert.x!</h1></body></html>"));
 HttpServer server = vertx.createHttpServer();
 server.requestStream()
  .toFlowable()
  .map(HttpServerRequest::pause)
  .onBackpressureDrop(req -> req.response().setStatusCode(503).end())
  .observeOn(RxHelper.scheduler(vertx.getDelegate()))
  .subscribe(req -> {
   req.resume();
   router.accept(req);
  });
 server.rxListen(PORT).subscribe(res -> generateRequests());
}

代码示例来源:origin: sczyh30/vertx-blueprint-todo-backend

/**
 * Create an HTTP server for the REST service.
 *
 * @param router router instance
 * @param host   server host
 * @param port   server port
 * @return asynchronous result
 */
protected Completable createHttpServer(Router router, String host, int port) {
 return vertx.createHttpServer()
  .requestHandler(router::accept)
  .rxListen(port, host)
  .toCompletable();
}

代码示例来源:origin: redhat-developer/introduction-to-eclipse-vertx

private Completable createHttpServer(JsonObject config, Router router) {
  return vertx
    .createHttpServer()
    .requestHandler(router::accept)
    .rxListen(config.getInteger("HTTP_PORT", 8080))
    .toCompletable();
}

代码示例来源:origin: silentbalanceyh/vertx-zero

@Override
public void start() {
  /** 1.Call router hub to mount commont **/
  final Axis<Router> routerAxiser = Fn.poolThread(Pool.ROUTERS,
      () -> Ut.instance(RouterAxis.class));
  /** 2.Call route hub to mount defined **/
  final Axis<Router> axiser = Fn.poolThread(Pool.EVENTS,
      () -> Ut.instance(EventAxis.class));
  /** 3.Get the default HttpServer Options **/
  ZeroAtomic.RX_OPTS.forEach((port, option) -> {
    /** 3.1.Single server processing **/
    final HttpServer server = this.vertx.createHttpServer(option);
    /** 3.2. Build router with current option **/
    final Router router = Router.router(this.vertx);
    routerAxiser.mount(router);
    axiser.mount(router);
    /** 3.3. Listen for router on the server **/
    final Single<HttpServer> result =
        server.requestHandler(router::accept).rxListen();
    /** 3.4. Log output **/
    {
      result.subscribe((rxServer) -> {
        this.recordServer(option, router);
      });
    }
  });
}

代码示例来源:origin: cn.vertxup/vertx-rx

@Override
public void start() {
  /** 1.Call router hub to mount commont **/
  final Axis<Router> routerAxiser = Fn.poolThread(Pool.ROUTERS,
      () -> Ut.instance(RouterAxis.class));
  /** 2.Call route hub to mount defined **/
  final Axis<Router> axiser = Fn.poolThread(Pool.EVENTS,
      () -> Ut.instance(EventAxis.class));
  /** 3.Get the default HttpServer Options **/
  ZeroAtomic.RX_OPTS.forEach((port, option) -> {
    /** 3.1.Single server processing **/
    final HttpServer server = this.vertx.createHttpServer(option);
    /** 3.2. Build router with current option **/
    final Router router = Router.router(this.vertx);
    routerAxiser.mount(router);
    axiser.mount(router);
    /** 3.3. Listen for router on the server **/
    final Single<HttpServer> result =
        server.requestHandler(router::accept).rxListen();
    /** 3.4. Log output **/
    {
      result.subscribe((rxServer) -> {
        this.recordServer(option, router);
      });
    }
  });
}

代码示例来源:origin: net.redpipe/redpipe-engine

private Completable startVertx(VertxResteasyDeployment deployment)
{
  return Completable.defer(() -> {
    Router router = Router.router(vertx);
    AppGlobals globals = AppGlobals.get();
    globals.setRouter(router);
    VertxPluginRequestHandler resteasyHandler = new VertxPluginRequestHandler(vertx, deployment, plugins);
    return doOnPlugins(plugin -> plugin.preRoute())
        .doOnComplete(() -> {
          setupRoutes(router);
          router.route().handler(routingContext -> {
            ResteasyProviderFactory.pushContext(RoutingContext.class, routingContext);
            ResteasyProviderFactory.pushContext(io.vertx.rxjava.ext.web.RoutingContext.class, 
                io.vertx.rxjava.ext.web.RoutingContext.newInstance(routingContext.getDelegate()));
            resteasyHandler.handle(routingContext.request());
          });
        }).concatWith(doOnPlugins(plugin -> plugin.postRoute()))
        .concatWith(Completable.defer(() -> {
          // Start the front end server using the Jax-RS controller
          int port = globals.getConfig().getInteger("http_port", 9000);
          String host = globals.getConfig().getString("http_host", NetServerOptions.DEFAULT_HOST);
          return vertx.createHttpServer()
              .requestHandler(router::accept)
              .rxListen(port, host)
              .doOnSuccess(server -> System.out.println("Server started on port " + server.actualPort()))
              .doOnError(t -> t.printStackTrace())
              .ignoreElement();
        }));
  });
}

代码示例来源:origin: FroMage/redpipe

private Completable startVertx(VertxResteasyDeployment deployment)
{
  return Completable.defer(() -> {
    Router router = Router.router(vertx);
    AppGlobals globals = AppGlobals.get();
    globals.setRouter(router);
    VertxPluginRequestHandler resteasyHandler = new VertxPluginRequestHandler(vertx, deployment, plugins);
    return doOnPlugins(plugin -> plugin.preRoute())
        .doOnComplete(() -> {
          setupRoutes(router);
          router.route().handler(routingContext -> {
            ResteasyProviderFactory.pushContext(RoutingContext.class, routingContext);
            ResteasyProviderFactory.pushContext(io.vertx.rxjava.ext.web.RoutingContext.class, 
                io.vertx.rxjava.ext.web.RoutingContext.newInstance(routingContext.getDelegate()));
            resteasyHandler.handle(routingContext.request());
          });
        }).concatWith(doOnPlugins(plugin -> plugin.postRoute()))
        .concatWith(Completable.defer(() -> {
          // Start the front end server using the Jax-RS controller
          int port = globals.getConfig().getInteger("http_port", 9000);
          String host = globals.getConfig().getString("http_host", NetServerOptions.DEFAULT_HOST);
          return vertx.createHttpServer()
              .requestHandler(router::accept)
              .rxListen(port, host)
              .doOnSuccess(server -> System.out.println("Server started on port " + server.actualPort()))
              .doOnError(t -> t.printStackTrace())
              .ignoreElement();
        }));
  });
}

代码示例来源:origin: cescoffier/vertx-kubernetes-workshop

.subscribe();
server.rxListen(config().getInteger("http.port", 8080))
  .toCompletable()
  .subscribe(CompletableHelper.toObserver(future));

代码示例来源:origin: cescoffier/vertx-kubernetes-workshop

@Override
public void start(Future<Void> future) throws Exception {
  // Create a simple HTTP service (using Vert.x Web Router) and publish it in the service discovery.
  // As we want to complete the deployment when the service is exposed (asynchronous operation), we use a
  // `Future` argument to indicate when the deployment is completed. This allows deploying the other verticle
  // after the deployment completion of this one.
  // Create an instance of service discovery
  this.discovery = ServiceDiscovery.create(vertx);
  // Simple HTTP API using Vert.x Web Router.
  Router router = Router.router(vertx);
  router.get("/").handler(rc -> rc.response().end("OK"));
  router.get("/greetings").handler(rc -> rc.response().end("Hello world"));
  router.get("/greetings/:name").handler(rc -> rc.response().end("Hello " + rc.pathParam("name")));
  
  vertx.createHttpServer()
    .requestHandler(router::accept)
    .rxListen(8080)
    // When the server is ready, we publish the service
    .flatMap(this::publish)
    // Store the record, required to un-publish it
    .doOnSuccess(rec -> this.record = rec)
    .toCompletable()
    .subscribe(toObserver(future));
}

代码示例来源:origin: io.knotx/knotx-server

.rxListen()
.subscribe(ok -> {
   LOGGER.info("Knot.x HTTP Server started. Listening on port {}",

代码示例来源:origin: io.knotx/knotx-core

httpServer.rxListen().subscribe(ok -> {
   LOGGER.info("Knot.x HTTP Server started. Listening on port {}",
     options.getServerOptions().getPort());

代码示例来源:origin: Cognifide/knotx

httpServer.rxListen().subscribe(ok -> {
   LOGGER.info("Knot.x HTTP Server started. Listening on port {}",
     options.getServerOptions().getPort());

代码示例来源:origin: tsegismont/vertx-musicstore

.rxListen(8080)
 .ignoreElement();
return completable;

相关文章