Save This Page
Home » HttpComponents-Core-4.0.1 » org.apache.http.impl.io » [javadoc | source]
org.apache.http.impl.io
public class: ContentLengthOutputStream [javadoc | source]
java.lang.Object
   java.io.OutputStream
      org.apache.http.impl.io.ContentLengthOutputStream

All Implemented Interfaces:
    Closeable, Flushable

Output stream that cuts off after a defined number of bytes. This class is used to send content of HTTP messages where the end of the content entity is determined by the value of the Content-Length header. Entities transferred using this stream can be maximum Long#MAX_VALUE long.

Note that this class NEVER closes the underlying stream, even when close gets called. Instead, the stream will be marked as closed and no further output will be permitted.

Constructor:
 public ContentLengthOutputStream(SessionOutputBuffer out,
    long contentLength) 
    Wraps a session output buffer and cuts off output after a defined number of bytes.
    Parameters:
    out - The session output buffer
    contentLength - The maximum number of bytes that can be written to the stream. Subsequent write operations will be ignored.
    since: 4.0 -
Method from org.apache.http.impl.io.ContentLengthOutputStream Summary:
close,   flush,   write,   write,   write
Methods from java.io.OutputStream:
close,   flush,   write,   write,   write
Methods from java.lang.Object:
clone,   equals,   finalize,   getClass,   hashCode,   notify,   notifyAll,   toString,   wait,   wait,   wait
Method from org.apache.http.impl.io.ContentLengthOutputStream Detail:
 public  void close() throws IOException 

    Does not close the underlying socket output.

 public  void flush() throws IOException 
 public  void write(byte[] b) throws IOException 
 public  void write(int b) throws IOException 
 public  void write(byte[] b,
    int off,
    int len) throws IOException