package org.frameworkset.http;
import java.io.IOException;
import java.io.OutputStream;
public interface StreamingHttpOutputMessage extends HttpOutputMessage {
/**
* Set the streaming body for this message.
* @param body the streaming body
*/
void setBody(Body body);
/**
* Defines the contract for bodies that can be written directly to an {@link OutputStream}.
* It is useful with HTTP client libraries that provide indirect access to an
* {@link OutputStream} via a callback mechanism.
*/
interface Body {
/**
* Write this body to the given {@link OutputStream}.
* @param outputStream the output stream to write to
* @throws IOException in case of errors
*/
void writeTo(OutputStream outputStream) throws IOException;
}
}