HttpClient extends ClientTransport<HttpClient, HttpClientConfig> { public static HttpClient create() { return new HttpClientConnect(new HttpConnectionProvider(HttpResources.get(), Http2Resources::get)); }  static HttpClient create(); static HttpClient create(ConnectionProvider connectionProvider); static HttpClient create(ConnectionProvider connectionProvider, int maxHttp2Connections); @Deprecated static HttpClient from(TcpClient tcpClient); static HttpClient newConnection(); final HttpClient baseUrl(String baseUrl); final HttpClient compress(boolean compressionEnabled); final HttpClient cookie(Cookie cookie); final HttpClient cookie(String name, Consumer<? super Cookie> cookieBuilder); final HttpClient cookieCodec(ClientCookieEncoder encoder); final HttpClient cookieCodec(ClientCookieEncoder encoder, ClientCookieDecoder decoder); final HttpClient cookiesWhen(String name, Function<? super Cookie, Mono<? extends Cookie>> cookieBuilder); final RequestSender delete(); final HttpClient disableRetry(boolean disableRetry); final HttpClient doAfterRequest(BiConsumer<? super HttpClientRequest, ? super Connection> doAfterRequest); final HttpClient doAfterResponseSuccess(BiConsumer<? super HttpClientResponse, ? super Connection> doAfterResponseSuccess); final HttpClient doOnError(BiConsumer<? super HttpClientRequest, ? super Throwable> doOnRequestError,
			BiConsumer<? super HttpClientResponse, ? super Throwable> doOnResponseError); final HttpClient doOnRedirect(BiConsumer<? super HttpClientResponse, ? super Connection> doOnRedirect); final HttpClient doOnRequest(BiConsumer<? super HttpClientRequest, ? super Connection> doOnRequest); final HttpClient doOnRequestError(BiConsumer<? super HttpClientRequest, ? super Throwable> doOnRequestError); final HttpClient doOnResponse(BiConsumer<? super HttpClientResponse, ? super Connection> doOnResponse); final HttpClient doOnResponseError(BiConsumer<? super HttpClientResponse, ? super Throwable> doOnResponseError); final HttpClient followRedirect(BiPredicate<HttpClientRequest, HttpClientResponse> predicate); final HttpClient followRedirect(BiPredicate<HttpClientRequest, HttpClientResponse> predicate,
			@Nullable BiConsumer<HttpHeaders, HttpClientRequest> redirectRequestBiConsumer); final HttpClient followRedirect(BiPredicate<HttpClientRequest, HttpClientResponse> predicate,
			@Nullable Consumer<HttpClientRequest> redirectRequestConsumer); final HttpClient followRedirect(boolean followRedirect); final HttpClient followRedirect(boolean followRedirect,
			@Nullable BiConsumer<HttpHeaders, HttpClientRequest> redirectRequestBiConsumer); final HttpClient followRedirect(boolean followRedirect, @Nullable Consumer<HttpClientRequest> redirectRequestConsumer); final ResponseReceiver<?> get(); final ResponseReceiver<?> head(); final HttpClient headers(Consumer<? super HttpHeaders> headerBuilder); final HttpClient headersWhen(Function<? super HttpHeaders, Mono<? extends HttpHeaders>> headerBuilder); final HttpClient http2Settings(Consumer<Http2SettingsSpec.Builder> http2Settings); final HttpClient httpResponseDecoder(Function<HttpResponseDecoderSpec, HttpResponseDecoderSpec> responseDecoderOptions); final HttpClient keepAlive(boolean keepAlive); final HttpClient mapConnect(
			Function<? super Mono<? extends Connection>, ? extends Mono<? extends Connection>> connector); final HttpClient metrics(boolean enable, Function<String, String> uriTagValue); @Override final HttpClient metrics(boolean enable, Supplier<? extends ChannelMetricsRecorder> recorder); final HttpClient metrics(boolean enable, Supplier<? extends ChannelMetricsRecorder> recorder, Function<String, String> uriValue); final HttpClient noSSL(); @Override final HttpClient observe(ConnectionObserver observer); final ResponseReceiver<?> options(); final RequestSender patch(); @Override final HttpClient port(int port); final RequestSender post(); final HttpClient protocol(HttpProtocol... supportedProtocols); final RequestSender put(); @Override final HttpClient remoteAddress(Supplier<? extends SocketAddress> remoteAddressSupplier); RequestSender request(HttpMethod method); final HttpClient responseTimeout(Duration timeout); final HttpClient secure(); final HttpClient secure(Consumer<? super SslProvider.SslContextSpec> sslProviderBuilder); HttpClient secure(SslProvider sslProvider); @Deprecated @SuppressWarnings("ReturnValueIgnored") final HttpClient tcpConfiguration(Function<? super TcpClient, ? extends TcpClient> tcpMapper); final WebsocketSender websocket(); final WebsocketSender websocket(WebsocketClientSpec websocketClientSpec); @Override final HttpClient wiretap(boolean enable); static final String USER_AGENT; }
@Test public void testConnectionNoIdleTimeElasticPool() throws Exception { ConnectionProvider provider = ConnectionProvider.create("testConnectionNoIdleTimeElasticPool", Integer.MAX_VALUE); ChannelId[] ids = doTestConnectionIdleTime(provider); assertThat(ids[0]).isEqualTo(ids[1]); }
@Test public void testConnectionNoLifeTimeElasticPool() throws Exception { ConnectionProvider provider = ConnectionProvider.create("testConnectionNoLifeTimeElasticPool", Integer.MAX_VALUE); ChannelId[] ids = doTestConnectionLifeTime(provider); assertThat(ids[0]).isEqualTo(ids[1]); }