public class

ContentLengthOutputStream

extends OutputStream
java.lang.Object
   ↳ java.io.OutputStream
     ↳ org.apache.http.impl.io.ContentLengthOutputStream

Class Overview

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 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.

Summary

Public Constructors
ContentLengthOutputStream(SessionOutputBuffer out, long contentLength)
Wraps a session output buffer and cuts off output after a defined number of bytes.
Public Methods
void close()

Does not close the underlying socket output.

void flush()
void write(byte[] b, int off, int len)
void write(byte[] b)
void write(int b)
[Expand]
Inherited Methods
From class java.io.OutputStream
From class java.lang.Object
From interface java.io.Closeable
From interface java.io.Flushable

Public Constructors

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.

Public Methods

public void close ()

Does not close the underlying socket output.

Throws
IOException If an I/O problem occurs.

public void flush ()

Throws
IOException

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

Throws
IOException

public void write (byte[] b)

Throws
IOException

public void write (int b)

Throws
IOException