protected void send(ByteBuffer src, CompletionHandler completionHandler) throws IOException {
        try {
            byteBufferData += src.remaining();
            endpoint.write(src, new LoggingCompletionHandler(completionHandler));
        } catch (RuntimeException e) {
            throw new IOException(Exceptions.toMessageString(e), e);
        }
    }
Write a ByteBuffer to the wrapped ContentChannel. Do invoke
{@link ContentChannelOutputStream#flush()} before send(ByteBuffer) to
avoid garbled output if the stream API has been accessed before using the
ByteBuffer based API. As with ContentChannel, this transfers ownership of
the ByteBuffer to this stream.
container-core/src/main/java/com/yahoo/container/jdisc/ContentChannelOutputStream.java