@Override
    public HttpContent processContentChunk(ZuulMessage zuulReq, HttpContent chunk) {
        if (originConn != null) {
            if (chunk instanceof LastHttpContent && !receivedChunkAfterProxyStarted) {
                // if everything except the LastHttpContent was buffered, then buffer the last chunk so this request
                // is considered replayable
                zuulReq.bufferBodyContents(chunk.retain());
            }

            // Connected to origin, stream request body without buffering
            receivedChunkAfterProxyStarted = true;

            ByteBufUtil.touch(chunk, "ProxyEndpoint writing chunk to origin, request: ", zuulReq);
            originConn.getChannel().writeAndFlush(chunk);
            return null;
        }

        // Not connected to origin yet, let caller buffer the request body
        ByteBufUtil.touch(chunk, "ProxyEndpoint buffering chunk to origin, request: ", zuulReq);
        return chunk;
    }
Get the implementing origin.
<p>
Note: this method gets called in the constructor so if overloading it or any methods called within, you cannot
rely on your own constructor parameters.
zuul-core/src/main/java/com/netflix/zuul/filters/endpoint/ProxyEndpoint.java