MultipartStream.ItemInputStream (Apache Tomcat 9.0.62 API Documentation)

Package org.apache.tomcat.util.http.fileupload

## Class MultipartStream.ItemInputStream

- java.lang.Object
- - java.io.InputStream
  - - org.apache.tomcat.util.http.fileupload.MultipartStream.ItemInputStream

- All Implemented Interfaces:
    `Closeable`, `AutoCloseable`, `Closeable`
  Enclosing class:
    MultipartStream

      public class MultipartStream.ItemInputStream
      extends InputStream
      implements Closeable

  An `InputStream` for reading an items contents.

- - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `int` | `available()` | Returns the number of bytes, which are currently available, without blocking.
    `void` | `close()` | Closes the input stream.
    `void` | `close​(boolean pCloseUnderlying)` | Closes the input stream.
    `long` | `getBytesRead()` | Returns the number of bytes, which have been read by the stream.
    `boolean` | `isClosed()` | Returns, whether the stream is closed.
    `int` | `read()` | Returns the next byte in the stream.
    `int` | `read​(byte[] b, int off, int len)` | Reads bytes into the given buffer.
    `long` | `skip​(long bytes)` | Skips the given number of bytes.

    - ### Methods inherited from class java.io.InputStream

      `mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, transferTo`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### getBytesRead

          public long getBytesRead()

      Returns the number of bytes, which have been read by the stream.
      Returns:
        Number of bytes, which have been read so far.

    - #### available

          public int available()
                        throws IOException

      Returns the number of bytes, which are currently available, without blocking.
      Overrides:
        `available` in class `InputStream`
      Returns:
        Number of bytes in the buffer.
      Throws:
        `IOException` - An I/O error occurs.

    - #### read

          public int read()
                   throws IOException

      Returns the next byte in the stream.
      Specified by:
        `read` in class `InputStream`
      Returns:
        The next byte in the stream, as a non-negative integer, or -1 for EOF.
      Throws:
        `IOException` - An I/O error occurred.

    - #### read

          public int read​(byte[] b,
                          int off,
                          int len)
                   throws IOException

      Reads bytes into the given buffer.
      Overrides:
        `read` in class `InputStream`
      Parameters:
        `b` - The destination buffer, where to write to.
        `off` - Offset of the first byte in the buffer.
        `len` - Maximum number of bytes to read.
      Returns:
        Number of bytes, which have been actually read, or -1 for EOF.
      Throws:
        `IOException` - An I/O error occurred.

    - #### close

          public void close()
                     throws IOException

      Closes the input stream.
      Specified by:
        `close` in interface `AutoCloseable`
      Specified by:
        `close` in interface `Closeable`
      Specified by:
        `close` in interface `Closeable`
      Overrides:
        `close` in class `InputStream`
      Throws:
        `IOException` - An I/O error occurred.

    - #### close

          public void close​(boolean pCloseUnderlying)
                     throws IOException

      Closes the input stream.
      Parameters:
        `pCloseUnderlying` - Whether to close the underlying stream (hard close)
      Throws:
        `IOException` - An I/O error occurred.

    - #### skip

          public long skip​(long bytes)
                    throws IOException

      Skips the given number of bytes.
      Overrides:
        `skip` in class `InputStream`
      Parameters:
        `bytes` - Number of bytes to skip.
      Returns:
        The number of bytes, which have actually been skipped.
      Throws:
        `IOException` - An I/O error occurred.

    - #### isClosed

          public boolean isClosed()

      Returns, whether the stream is closed.
      Specified by:
        `isClosed` in interface `Closeable`
      Returns:
        True, if the stream is closed, otherwise false.