@Test public void testClosingServerClosesRequestStreamEndHandler() { this.server = vertx.createHttpServer(new HttpServerOptions().setPort(HttpTestBase.DEFAULT_HTTP_PORT)); ReadStream<HttpServerRequest> stream = server.requestStream(); AtomicBoolean closed = new AtomicBoolean(); stream.endHandler(v -> closed.set(true)); stream.handler(req -> {}); server.listen(ar -> { assertTrue(ar.succeeded()); assertFalse(closed.get()); server.close(v -> { assertTrue(ar.succeeded()); assertTrue(closed.get()); testComplete(); }); }); await(); }
this.server = vertx.createHttpServer(new HttpServerOptions().setPort(HttpTestBase.DEFAULT_HTTP_PORT)); AtomicInteger done = new AtomicInteger(); ReadStream<HttpServerRequest> stream = server.requestStream(); stream.handler(req -> {}); ThreadLocal<Object> stack = new ThreadLocal<>();
@Test public void testMultipleServerClose() { this.server = vertx.createHttpServer(new HttpServerOptions().setPort(DEFAULT_HTTP_PORT)); AtomicInteger times = new AtomicInteger(); // We assume the endHandler and the close completion handler are invoked in the same context task ThreadLocal stack = new ThreadLocal(); stack.set(true); server.requestStream().endHandler(v -> { assertNull(stack.get()); assertTrue(Vertx.currentContext().isEventLoopContext()); times.incrementAndGet(); }); server.close(ar1 -> { assertNull(stack.get()); assertTrue(Vertx.currentContext().isEventLoopContext()); server.close(ar2 -> { server.close(ar3 -> { assertEquals(1, times.get()); testComplete(); }); }); }); await(); }
String path = "/some/path"; this.server = vertx.createHttpServer(new HttpServerOptions().setAcceptBacklog(10).setPort(HttpTestBase.DEFAULT_HTTP_PORT)); ReadStream<HttpServerRequest> httpStream = server.requestStream(); AtomicBoolean paused = new AtomicBoolean(); httpStream.handler(req -> {
@Test public void testClosingServerClosesRequestStreamEndHandler() { this.server = vertx.createHttpServer(new HttpServerOptions().setPort(HttpTestBase.DEFAULT_HTTP_PORT)); ReadStream<HttpServerRequest> stream = server.requestStream(); AtomicBoolean closed = new AtomicBoolean(); stream.endHandler(v -> closed.set(true)); stream.handler(req -> {}); server.listen(ar -> { assertTrue(ar.succeeded()); assertFalse(closed.get()); server.close(v -> { assertTrue(ar.succeeded()); assertTrue(closed.get()); testComplete(); }); }); await(); }
this.server = vertx.createHttpServer(new HttpServerOptions().setPort(HttpTestBase.DEFAULT_HTTP_PORT)); AtomicInteger done = new AtomicInteger(); ReadStream<HttpServerRequest> stream = server.requestStream(); stream.handler(req -> {}); ThreadLocal<Object> stack = new ThreadLocal<>();
@Test public void testMultipleServerClose() { this.server = vertx.createHttpServer(new HttpServerOptions().setPort(DEFAULT_HTTP_PORT)); AtomicInteger times = new AtomicInteger(); // We assume the endHandler and the close completion handler are invoked in the same context task ThreadLocal stack = new ThreadLocal(); stack.set(true); server.requestStream().endHandler(v -> { assertNull(stack.get()); assertTrue(Vertx.currentContext().isEventLoopContext()); times.incrementAndGet(); }); server.close(ar1 -> { assertNull(stack.get()); assertTrue(Vertx.currentContext().isEventLoopContext()); server.close(ar2 -> { server.close(ar3 -> { assertEquals(1, times.get()); testComplete(); }); }); }); await(); }
String path = "/some/path"; this.server = vertx.createHttpServer(new HttpServerOptions().setAcceptBacklog(10).setPort(HttpTestBase.DEFAULT_HTTP_PORT)); ReadStream<HttpServerRequest> httpStream = server.requestStream(); AtomicBoolean paused = new AtomicBoolean(); httpStream.handler(req -> {
/** * Return the request stream for the server. As HTTP requests are received by the server, * instances of {@link io.vertx.rxjava.core.http.HttpServerRequest} will be created and passed to the stream . * @return the request stream */ public io.vertx.rxjava.core.streams.ReadStream<io.vertx.rxjava.core.http.HttpServerRequest> requestStream() { if (cached_0 != null) { return cached_0; } io.vertx.rxjava.core.streams.ReadStream<io.vertx.rxjava.core.http.HttpServerRequest> ret = io.vertx.rxjava.core.streams.ReadStream.newInstance(delegate.requestStream(), io.vertx.rxjava.core.http.HttpServerRequest.__TYPE_ARG); cached_0 = ret; return ret; }
/** * Return the request stream for the server. As HTTP requests are received by the server, * instances of {@link io.vertx.rxjava.core.http.HttpServerRequest} will be created and passed to the stream {@link io.vertx.rxjava.core.streams.ReadStream#handler}. * @return the request stream */ public io.vertx.rxjava.core.streams.ReadStream<io.vertx.rxjava.core.http.HttpServerRequest> requestStream() { if (cached_0 != null) { return cached_0; } io.vertx.rxjava.core.streams.ReadStream<io.vertx.rxjava.core.http.HttpServerRequest> ret = io.vertx.rxjava.core.streams.ReadStream.newInstance(delegate.requestStream(), io.vertx.rxjava.core.http.HttpServerRequest.__TYPE_ARG); cached_0 = ret; return ret; }