Apache Tomcat 7.0.54

org.apache.coyote.http11.upgrade
Class AbstractServletInputStream

java.lang.Object
  extended by java.io.InputStream
      extended by javax.servlet.ServletInputStream
          extended by org.apache.coyote.http11.upgrade.AbstractServletInputStream
All Implemented Interfaces:
Closeable
Direct Known Subclasses:
AprServletInputStream, BioServletInputStream, NioServletInputStream

public abstract class AbstractServletInputStream
extends ServletInputStream

Implements the new Servlet 3.1 methods for ServletInputStream.


Field Summary
protected static StringManager sm
           
 
Constructor Summary
AbstractServletInputStream()
           
 
Method Summary
 void close()
           
protected abstract  void doClose()
           
protected abstract  boolean doIsReady()
           
protected abstract  int doRead(boolean block, byte[] b, int off, int len)
          Abstract method to be overridden by concrete implementations.
protected  boolean isCloseRequired()
           
 boolean isFinished()
          New Servlet 3.1 method.
 boolean isReady()
          New Servlet 3.1 method.
protected  void onDataAvailable()
           
 int read()
           
 int read(byte[] b, int off, int len)
           
 int readLine(byte[] b, int off, int len)
          Reads the input stream, one line at a time.
 void setReadListener(ReadListener listener)
          New Servlet 3.1 method.
 
Methods inherited from class java.io.InputStream
available, mark, markSupported, read, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sm

protected static final StringManager sm
Constructor Detail

AbstractServletInputStream

public AbstractServletInputStream()
Method Detail

isFinished

public final boolean isFinished()
New Servlet 3.1 method.


isReady

public final boolean isReady()
New Servlet 3.1 method.


setReadListener

public final void setReadListener(ReadListener listener)
New Servlet 3.1 method.


read

public final int read()
               throws IOException
Specified by:
read in class InputStream
Throws:
IOException

readLine

public final int readLine(byte[] b,
                          int off,
                          int len)
                   throws IOException
Description copied from class: javax.servlet.ServletInputStream
Reads the input stream, one line at a time. Starting at an offset, reads bytes into an array, until it reads a certain number of bytes or reaches a newline character, which it reads into the array as well.

This method returns -1 if it reaches the end of the input stream before reading the maximum number of bytes.

Overrides:
readLine in class ServletInputStream
Parameters:
b - an array of bytes into which data is read
off - an integer specifying the character at which this method begins reading
len - an integer specifying the maximum number of bytes to read
Returns:
an integer specifying the actual number of bytes read, or -1 if the end of the stream is reached
Throws:
IOException - if an input or output exception has occurred

read

public final int read(byte[] b,
                      int off,
                      int len)
               throws IOException
Overrides:
read in class InputStream
Throws:
IOException

close

public void close()
           throws IOException
Specified by:
close in interface Closeable
Overrides:
close in class InputStream
Throws:
IOException

onDataAvailable

protected final void onDataAvailable()
                              throws IOException
Throws:
IOException

isCloseRequired

protected final boolean isCloseRequired()

doIsReady

protected abstract boolean doIsReady()
                              throws IOException
Throws:
IOException

doRead

protected abstract int doRead(boolean block,
                              byte[] b,
                              int off,
                              int len)
                       throws IOException
Abstract method to be overridden by concrete implementations. The base class will ensure that there are no concurrent calls to this method for the same socket.

Throws:
IOException

doClose

protected abstract void doClose()
                         throws IOException
Throws:
IOException

Apache Tomcat 7.0.54

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