## org.apache.catalina.connector
Class ResponseStream

    java.lang.Object
      |
      +--java.io.OutputStream
            |
            +--javax.servlet.ServletOutputStream
                  |
                  +--org.apache.catalina.connector.ResponseStream

Direct Known Subclasses:
  HttpResponseStream

public class ResponseStream
extends javax.servlet.ServletOutputStream

Convenience implementation of ServletOutputStream that works with the standard ResponseBase implementation of Response. If the content length has been set on our associated Response, this implementation will enforce not writing more than that many bytes on the underlying stream.

Version:
  $Revision: 1.4.2.1 $ $Date: 2001/10/04 19:26:57 $
Author:
  Craig R. McClanahan

Field Summary
`protected boolean` `closed` Has this stream been closed?
`protected boolean` `commit` Should we commit the response when we are flushed?
`protected int` `count` The number of bytes which have already been written to this stream.
`protected int` `length` The content length past which we will not write, or -1 if there is no defined content length.
`protected Response` `response` The Response with which this input stream is associated.
`protected static StringManager` `sm` The localized strings for this package.
`protected java.io.OutputStream` `stream` The underlying output stream to which we should write data.
`protected boolean` `suspended` Has this response output been suspended?

Constructor Summary
`ResponseStream(Response response)` Construct a servlet output stream associated with the specified Request.

Method Summary
`void` `close()` Close this output stream, causing any buffered data to be flushed and any further output data to throw an IOException.
`void` `flush()` Flush any buffered data for this output stream, which also causes the response to be committed.
`void` `write(byte[] b)` Write `b.length` bytes from the specified byte array to our output stream.
`void` `write(byte[] b, int off, int len)` Write `len` bytes from the specified byte array, starting at the specified offset, to our output stream.
`void` `write(int b)` Write the specified byte to our output stream.

Methods inherited from class javax.servlet.ServletOutputStream
`print, print, print, print, print, print, print, println, println, println, println, println, println, println, println`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### closed

    protected boolean closed

  Has this stream been closed?

### commit

    protected boolean commit

  Should we commit the response when we are flushed?

### count

    protected int count

  The number of bytes which have already been written to this stream.

### length

    protected int length

  The content length past which we will not write, or -1 if there is no defined content length.

### response

    protected Response response

  The Response with which this input stream is associated.

### sm

    protected static StringManager sm

  The localized strings for this package.

### stream

    protected java.io.OutputStream stream

  The underlying output stream to which we should write data.

### suspended

    protected boolean suspended

  Has this response output been suspended?

Constructor Detail

### ResponseStream

    public ResponseStream(Response response)

  Construct a servlet output stream associated with the specified Request.

Parameters:
  `response` - The associated response

Method Detail

### close

    public void close()
               throws java.io.IOException

  Close this output stream, causing any buffered data to be flushed and any further output data to throw an IOException.

  Overrides:
    `close` in class `java.io.OutputStream`
    `java.io.IOException`

### flush

    public void flush()
               throws java.io.IOException

  Flush any buffered data for this output stream, which also causes the response to be committed.

  Overrides:
    `flush` in class `java.io.OutputStream`
    `java.io.IOException`

### write

    public void write(int b)
               throws java.io.IOException

  Write the specified byte to our output stream.

  Specified by:
    `write` in class `java.io.OutputStream`
  Parameters:
    `b` - The byte to be written
  Throws:
    `java.io.IOException` - if an input/output error occurs

### write

    public void write(byte[] b)
               throws java.io.IOException

  Write `b.length` bytes from the specified byte array to our output stream.

  Overrides:
    `write` in class `java.io.OutputStream`
  Parameters:
    `b` - The byte array to be written
  Throws:
    `java.io.IOException` - if an input/output error occurs

### write

    public void write(byte[] b,
                      int off,
                      int len)
               throws java.io.IOException

  Write `len` bytes from the specified byte array, starting at the specified offset, to our output stream.

  Overrides:
    `write` in class `java.io.OutputStream`
  Parameters:
    `b` - The byte array containing the bytes to be written
    `off` - Zero-relative starting offset of the bytes to be written
    `len` - The number of bytes to be written
  Throws:
    `java.io.IOException` - if an input/output error occurs

Copyright © 2000-2001 Apache Software Foundation. All Rights Reserved.