/** * Apply a wire logger configuration using the specified category * and {@code DEBUG} logger level * * @param category the logger category * * @return a new {@link TcpServer} */ public final TcpServer wiretap(String category) { return wiretap(category, LogLevel.DEBUG); }
/** * Apply a wire logger configuration using the specified category * and {@code DEBUG} logger level * * @param category the logger category * * @return a new {@link TcpServer} */ public final TcpServer wiretap(String category) { return wiretap(category, LogLevel.DEBUG); }
}) .map(jsonEncoder))) .wiretap(true) .bindNow();
.doOnComplete(() -> System.out.println("wow")) .log("flatmap-retry"))) .wiretap(true) .bindNow();
.wiretap(true) .bindNow();
.window(5) .concatMap(w -> out.send(w.collectList().map(jsonEncoder)))) .wiretap(true) .bindNow();
@Test public void testIssue462() throws InterruptedException { final CountDownLatch countDownLatch = new CountDownLatch(1); DisposableServer server = TcpServer.create() .port(0) .handle((in, out) -> { in.receive() .log("channel") .subscribe(trip -> countDownLatch.countDown()); return Flux.never(); }) .wiretap(true) .bindNow(); assertNotNull(server); System.out.println("PORT +" + server.address() .getPort()); Connection client = TcpClient.create() .port(server.address() .getPort()) .handle((in, out) -> out.sendString(Flux.just("test"))) .wiretap(true) .connectNow(); assertNotNull(client); client.disposeNow(); server.disposeNow(); assertThat("Latch was counted down", countDownLatch.await(5, TimeUnit.SECONDS)); }
.neverComplete(); }) .wiretap(true) .bindNow();
@Test public void prematureCancel() { DirectProcessor<Void> signal = DirectProcessor.create(); DisposableServer x = TcpServer.create() .host("localhost") .port(0) .handle((in, out) -> { signal.onComplete(); return out.withConnection(c -> c.addHandlerFirst(new HttpResponseEncoder())) .sendObject(Mono.delay(Duration.ofSeconds(2)) .map(t -> new DefaultFullHttpResponse(HttpVersion.HTTP_1_1, HttpResponseStatus.PROCESSING))) .neverComplete(); }) .wiretap(true) .bindNow(Duration.ofSeconds(30)); StepVerifier.create( createHttpClientForContextWithAddress(x) .get() .uri("/") .responseContent() .timeout(signal)) .verifyError(TimeoutException.class); }
@Test public void exposesRemoteAddress() throws InterruptedException { final int port = SocketUtils.findAvailableTcpPort(); final CountDownLatch latch = new CountDownLatch(1); DisposableServer server = TcpServer.create() .port(port) .handle((in, out) -> { in.withConnection(c -> { InetSocketAddress addr = c.address(); assertNotNull("remote address is not null", addr.getAddress()); latch.countDown(); }); return Flux.never(); }) .wiretap(true) .bindNow(); assertNotNull(server); Connection client = TcpClient.create().port(port) .handle((in, out) -> out.sendString(Flux.just("Hello World!"))) .wiretap(true) .connectNow(); assertNotNull(client); assertTrue("Latch was counted down", latch.await(5, TimeUnit.SECONDS)); client.disposeNow(); server.disposeNow(); }
out.sendFile(largeFile).then() : out.sendString(Mono.just("NOPE")))) .wiretap(true) .bindNow();
HttpResponseStatus.ACCEPTED)) .then(Mono.delay(Duration.ofSeconds(2)).then())))) .wiretap(true) .bindNow();
fn.apply(out).then() : out.sendString(Mono.just("NOPE")))) .wiretap(true) .bindNow();
.sendObject(Flux.just(response(), response())) .neverComplete()) .wiretap(true) .bindNow();
.wiretap(true) .bindNow();