/** * Return the request headers sent to the server. */ public HttpHeaders getRequestHeaders() { return this.request.getHeaders(); }
@Override public MultiValueMap<String, HttpCookie> getCookies() { return this.delegate.getCookies(); }
/** * Return the method of the request. */ public HttpMethod getMethod() { return this.request.getMethod(); }
@Test public void adaptRequest() throws Exception { TestHttpHandler handler = new TestHttpHandler(response -> { response.setStatusCode(HttpStatus.OK); return response.setComplete(); }); new HttpHandlerConnector(handler).connect(HttpMethod.POST, URI.create("/custom-path"), request -> { request.getHeaders().put("custom-header", Arrays.asList("h0", "h1")); request.getCookies().add("custom-cookie", new HttpCookie("custom-cookie", "c0")); return request.writeWith(Mono.just(toDataBuffer("Custom body"))); }).block(Duration.ofSeconds(5)); MockServerHttpRequest request = (MockServerHttpRequest) handler.getSavedRequest(); assertEquals(HttpMethod.POST, request.getMethod()); assertEquals("/custom-path", request.getURI().toString()); HttpHeaders headers = request.getHeaders(); assertEquals(Arrays.asList("h0", "h1"), headers.get("custom-header")); assertEquals(new HttpCookie("custom-cookie", "c0"), request.getCookies().getFirst("custom-cookie")); assertEquals(Collections.singletonList("custom-cookie=c0"), headers.get(HttpHeaders.COOKIE)); DataBuffer buffer = request.getBody().blockFirst(Duration.ZERO); assertEquals("Custom body", DataBufferTestUtils.dumpString(buffer, UTF_8)); }
@Override public Mono<Void> writeTo(ClientHttpRequest request, ExchangeStrategies strategies) { HttpHeaders requestHeaders = request.getHeaders(); if (!this.headers.isEmpty()) { this.headers.entrySet().stream() MultiValueMap<String, HttpCookie> requestCookies = request.getCookies(); if (!this.cookies.isEmpty()) { this.cookies.forEach((name, values) -> values.forEach(value -> {
/** * Return the URI of the request. */ public URI getUrl() { return this.request.getURI(); }
@Override public Mono<Void> writeWith(Publisher<? extends DataBuffer> body) { return this.delegate.writeWith(body); }
@Override public void beforeCommit(Supplier<? extends Mono<Void>> action) { this.delegate.beforeCommit(action); }
@Override public Mono<Void> writeAndFlushWith(Publisher<? extends Publisher<? extends DataBuffer>> body) { return this.delegate.writeAndFlushWith(body); }
@Override public DataBufferFactory bufferFactory() { return this.delegate.bufferFactory(); }
@Override public Mono<Void> setComplete() { return this.delegate.setComplete(); }
@Override public boolean isCommitted() { return this.delegate.isCommitted(); }
@Override public Mono<Void> writeTo(ClientHttpRequest request, WebClientStrategies strategies) { HttpHeaders requestHeaders = request.getHeaders(); if (!this.headers.isEmpty()) { this.headers.entrySet().stream() .put(entry.getKey(), entry.getValue())); MultiValueMap<String, HttpCookie> requestCookies = request.getCookies(); if (!this.cookies.isEmpty()) { this.cookies.entrySet().forEach(entry -> {
@Override public URI getURI() { return this.delegate.getURI(); }
@Override public Mono<Void> writeWith(Publisher<? extends DataBuffer> body) { return this.delegate.writeWith(body); }
@Override public void beforeCommit(Supplier<? extends Mono<Void>> action) { this.delegate.beforeCommit(action); }
@Override public Mono<Void> writeAndFlushWith(Publisher<? extends Publisher<? extends DataBuffer>> body) { return this.delegate.writeAndFlushWith(body); }
@Override public DataBufferFactory bufferFactory() { return this.delegate.bufferFactory(); }
@Override public Mono<Void> setComplete() { return this.delegate.setComplete(); }
@Override public boolean isCommitted() { return this.delegate.isCommitted(); }