code: public OutputStream openBufferedStream() throws IOException {
      OutputStream out = openStream();
      return (out instanceof BufferedOutputStream)
          ? (BufferedOutputStream) out
          : new BufferedOutputStream(out);
    }
docs: Opens a new buffered {@link OutputStream} for writing to this sink. The returned stream is not
  required to be a {@link BufferedOutputStream} in order to allow implementations to simply
  delegate to {@link #openStream()} when the stream returned by that method does not benefit from
  additional buffering (for example, a {@code ByteArrayOutputStream}). This method returns a new,
  independent stream each time it is called.
  
  <p>The caller is responsible for ensuring that the returned stream is closed.
  
  @throws IOException if an I/O error occurs while opening the stream
  @since 15.0 (in 14.0 with return type {@link BufferedOutputStream})