All Packages Class Hierarchy This Package Previous Next Index
Class com.sun.wizards.builder.resolver.FileSequenceInputStream
java.lang.Object
|
+----java.io.InputStream
|
+----com.sun.wizards.builder.resolver.FileSequenceInputStream
- public class FileSequenceInputStream
- extends InputStream
The file sequence input stream is based on the SequenceInputStream
class in java core and is a class that allows an application to
combine several input files serially and make them appear as if
they were a single input stream. The difference between this stream
and java's SequenceInputStream is that the files do not have to be
opened at the same time. Rather, each file is opened as it appears
in the enumeration (which are all Strings). Each input stream is
read from, in turn, until it reaches the end of the stream. The
sequence input stream class then closes that stream and
automatically switches to the next input stream.
-
FileSequenceInputStream()
- Creates a new FileSequenceInputStream.
-
FileSequenceInputStream(Enumeration)
- Constructs a new sequence input stream initialized to the
specified enumeration of files.
-
available()
- Returns the number of bytes available on the current stream.
-
close()
- Closes this input stream and releases any system resources
associated with the stream.
-
read()
- Reads the next byte of data from this input stream.
-
read(byte[], int, int)
- Reads up to
len bytes of data from this input stream
into an array of bytes.
FileSequenceInputStream
public FileSequenceInputStream()
- Creates a new FileSequenceInputStream.
FileSequenceInputStream
public FileSequenceInputStream(Enumeration e)
- Constructs a new sequence input stream initialized to the
specified enumeration of files. Each object in the
enumeration must be a
String representing the
path to the files.
- Parameters:
- e - an enumeration of input streams.
- See Also:
- Enumeration
available
public int available() throws IOException
- Returns the number of bytes available on the current stream.
- Overrides:
- available in class InputStream
read
public int read() throws IOException
- Reads the next byte of data from this input stream. The byte is
returned as an
int in the range 0 to
255. If no byte is available because the end of the
stream has been reached, the value -1 is returned.
This method blocks until input data is available, the end of the
stream is detected, or an exception is thrown.
The read method of FileSequenceInputStream
tries to read one character from the current substream. If it
reaches the end of the stream, it calls the close
method of the current substream and begins reading from the next
substream.
- Returns:
- the next byte of data, or
-1 if the end of the
stream is reached.
- Throws: IOException
- if an I/O error occurs.
- Overrides:
- read in class InputStream
read
public int read(byte buf[],
int pos,
int len) throws IOException
- Reads up to
len bytes of data from this input stream
into an array of bytes. This method blocks until at least 1 byte
of input is available. If the first argument is null,
up to len bytes are read and discarded.
The read method of FileSequenceInputStream
tries to read the data from the current substream. If it fails to
read any characters because the substream has reached the end of
the stream, it calls the close method of the current
substream and begins reading from the next substream.
- Parameters:
- buf - the buffer into which the data is read.
- pos - the start offset of the data.
- len - the maximum number of bytes read.
- Throws: IOException
- if an I/O error occurs.
- Overrides:
- read in class InputStream
close
public void close() throws IOException
- Closes this input stream and releases any system resources
associated with the stream.
The close method of FileSequenceInputStream
calls the close method of both the substream from
which it is currently reading and the close method of
all the substreams that it has not yet begun to read from.
- Throws: IOException
- if an I/O error occurs.
- Overrides:
- close in class InputStream
All Packages Class Hierarchy This Package Previous Next Index