public static StreamingHttpClient from()

in servicetalk-http-api/src/testFixtures/java/io/servicetalk/http/api/TestStreamingHttpClient.java [90:215]


    public static StreamingHttpClient from(FilterableStreamingHttpClient filterChain) {
        return new StreamingHttpClient() {
            @Override
            public Single<ReservedStreamingHttpConnection> reserveConnection(final HttpRequestMetaData metaData) {
                return filterChain.reserveConnection(metaData)
                        .map(rc -> new ReservedStreamingHttpConnection() {
                            @Override
                            public ReservedHttpConnection asConnection() {
                                return toReservedConnection(this, HttpExecutionStrategies.offloadNone());
                            }

                            @Override
                            public ReservedBlockingStreamingHttpConnection asBlockingStreamingConnection() {
                                return toReservedBlockingStreamingConnection(this,
                                        HttpExecutionStrategies.offloadNone());
                            }

                            @Override
                            public ReservedBlockingHttpConnection asBlockingConnection() {
                                return toReservedBlockingConnection(this, HttpExecutionStrategies.offloadNone());
                            }

                            @Override
                            public Completable releaseAsync() {
                                return rc.releaseAsync();
                            }

                            @Override
                            public Single<StreamingHttpResponse> request(final StreamingHttpRequest request) {
                                return rc.request(request);
                            }

                            @Override
                            public HttpConnectionContext connectionContext() {
                                return rc.connectionContext();
                            }

                            @Override
                            public <T> Publisher<? extends T> transportEventStream(final HttpEventKey<T> settingKey) {
                                return rc.transportEventStream(settingKey);
                            }

                            @Override
                            public HttpExecutionContext executionContext() {
                                return rc.executionContext();
                            }

                            @Override
                            public StreamingHttpResponseFactory httpResponseFactory() {
                                return rc.httpResponseFactory();
                            }

                            @Override
                            public Completable onClose() {
                                return rc.onClose();
                            }

                            @Override
                            public Completable closeAsync() {
                                return rc.closeAsync();
                            }

                            @Override
                            public Completable closeAsyncGracefully() {
                                return rc.closeAsyncGracefully();
                            }

                            @Override
                            public StreamingHttpRequest newRequest(final HttpRequestMethod method,
                                                                   final String requestTarget) {
                                return rc.newRequest(method, requestTarget);
                            }
                        });
            }

            @Override
            public StreamingHttpRequest newRequest(final HttpRequestMethod method, final String requestTarget) {
                return filterChain.newRequest(method, requestTarget);
            }

            @Override
            public Completable closeAsync() {
                return filterChain.closeAsync();
            }

            @Override
            public Completable closeAsyncGracefully() {
                return filterChain.closeAsyncGracefully();
            }

            @Override
            public Completable onClose() {
                return filterChain.onClose();
            }

            @Override
            public HttpExecutionContext executionContext() {
                return filterChain.executionContext();
            }

            @Override
            public StreamingHttpResponseFactory httpResponseFactory() {
                return filterChain.httpResponseFactory();
            }

            @Override
            public Single<StreamingHttpResponse> request(final StreamingHttpRequest request) {
                return filterChain.request(request);
            }

            @Override
            public HttpClient asClient() {
                return toClient(this, HttpExecutionStrategies.offloadNone());
            }

            @Override
            public BlockingStreamingHttpClient asBlockingStreamingClient() {
                return toBlockingStreamingClient(this, HttpExecutionStrategies.offloadNone());
            }

            @Override
            public BlockingHttpClient asBlockingClient() {
                return toBlockingClient(this, HttpExecutionStrategies.offloadNone());
            }
        };
    }