All Packages Class Hierarchy This Package Previous Next Index
Class com.ibm.as400.access.PrintObjectPageInputStream
java.lang.Object
|
+----java.io.InputStream
|
+----com.ibm.as400.access.PrintObjectPageInputStream
- public class PrintObjectPageInputStream
- extends InputStream
The PrintObjectPageInputStream class is used to read data out of an
AS/400 spooled file one page at a time. The page of data may be
transformed, depending on the
PrintParameterList
used to create an instance of the class.
The number of pages in the spooled file may be estimated. To help process
spooled files with estimated page counts, methods nextPage, previousPage, and
selectPage will return false if the requested page is not available.
An instance of this class is created
using the getPageInputStream method
from the class SpooledFile.
NOTE: This class is supported on OS/400 V4R4 or later.
Not all spooled file formats are supported for transform.
-
available()
- Returns the number of bytes remaining in the current page.
-
close()
- Closes the input stream and releases any resources associated with it.
-
getCurrentPageNumber()
- Returns the number of the current page of the input stream.
-
getNumberOfPages()
- Returns the number of pages in the stream.
-
isPagesEstimated()
- Indicates if the number of pages is estimated.
-
mark(int)
- Marks the current position of the current page of the input stream.
-
markSupported()
- Returns a boolean indicating whether this stream type supports mark and reset.
-
nextPage()
- Repositions the stream to the next page.
-
previousPage()
- Repositions the stream to the previous page.
-
read()
- Reads the next byte of data from this input stream.
-
read(byte[])
- Reads up to data.length bytes of data from the page input
stream into data.
-
read(byte[], int, int)
- Reads up to length bytes of data from this input stream into data,
starting at the array offset dataOffset.
-
reset()
- Repositions the stream to the last marked position.
-
selectPage(int)
- Repositions the stream to page page.
-
skip(long)
- Skips over the next bytesToSkip bytes in the stream.
available
public int available() throws IOException
- Returns the number of bytes remaining in the current page.
- Returns:
- The number of available bytes (without blocking) in the current page.
- Overrides:
- available in class InputStream
close
public void close() throws IOException
- Closes the input stream and releases any resources associated with it.
- Throws: IOException
- If an error occurs while communicating with the AS/400.
- Overrides:
- close in class InputStream
getCurrentPageNumber
public int getCurrentPageNumber()
- Returns the number of the current page of the input stream.
- Returns:
- The number of the current page.
getNumberOfPages
public int getNumberOfPages()
- Returns the number of pages in the stream.
- Returns:
- The number of pages in the stream.
isPagesEstimated
public boolean isPagesEstimated()
- Indicates if the number of pages is estimated.
- Returns:
- True if the number of pages is estimated; false otherwise.
mark
public void mark(int readLimit)
- Marks the current position of the current page of the input stream.
A subsequent call to reset() will reposition the stream at the
last marked position, so that subsequent reads will reread the same bytes.
The stream promises to allow readLimit bytes to be read before the
mark position gets invalidated, provided readLimit does not exceed amount
of page data available, in which case the readLimit is set to a value
equal to the amount of data available until the end of the page is reached.
- Parameters:
- readLimit - The maximum limit of bytes allowed to be read before
the mark position is no longer valid.
- Overrides:
- mark in class InputStream
markSupported
public boolean markSupported()
- Returns a boolean indicating whether this stream type supports mark and reset.
- Returns:
- Always true. Objects of this class will support the mark and reset methods.
- Overrides:
- markSupported in class InputStream
nextPage
public boolean nextPage() throws IOException
- Repositions the stream to the next page.
- Returns:
- True if the stream is positioned to the next page; false otherwise.
- Throws: IOException
- If an error occurs while communicating with the AS/400.
previousPage
public boolean previousPage() throws IOException
- Repositions the stream to the previous page.
- Returns:
- True if the stream is positioned to the previous page;
false otherwise.
- Throws: IOException
- If an error occurs while communicating with the AS/400.
read
public int read() throws IOException
- Reads the next byte of data from this input stream.
- Returns:
- The byte read, or -1 if the end of the page stream is reached.
- Throws: IOException
- If an error occurs while communicating with the AS/400.
- Overrides:
- read in class InputStream
read
public int read(byte data[]) throws IOException
- Reads up to data.length bytes of data from the page input
stream into data.
- Parameters:
- data - The buffer into which the data is read.
- Returns:
- The total number of bytes read into the buffer or -1 if there is no more
data because the end of the page stream has been reached.
- Throws: IOException
- If an error occurs while communicating with the AS/400.
- Overrides:
- read in class InputStream
read
public int read(byte data[],
int dataOffset,
int length) throws IOException
- Reads up to length bytes of data from this input stream into data,
starting at the array offset dataOffset.
- Parameters:
- data - The buffer into which the data is read.
- dataOffset - The start offset of the data.
- length - The maximum number of bytes to read.
- Returns:
- The total number of bytes read into the buffer, or -1 if there is
no more data because the end of the page stream has been reached.
- Throws: IOException
- If an error occurs while communicating with the AS/400.
- Overrides:
- read in class InputStream
reset
public void reset() throws IOException
- Repositions the stream to the last marked position.
If the stream has not been marked or if the mark has been invalidated,
an IOException is thrown.
- Throws: IOException
- If an error occurs while communicating with the AS/400.
- Overrides:
- reset in class InputStream
selectPage
public boolean selectPage(int page) throws IOException, IllegalArgumentException
- Repositions the stream to page page.
- Parameters:
- page - The page at which to reposition the input stream.
- Returns:
- True if the stream is positioned to the specified page; false otherwise.
- Throws: IOException
- If an error occurs while communicating with the AS/400,
or an error occurs selecting the specified page.
- Throws: IllegalArgumentException
- If page is negative.
skip
public long skip(long bytesToSkip) throws IOException
- Skips over the next bytesToSkip bytes in the stream.
This method may skip less bytes than specified if the end of
the page is reached. The actual number of bytes skipped is returned.
No action is taken if the number of bytes to skip is not positive.
- Parameters:
- bytesToSkip - The number of bytes to be skipped.
- Returns:
- The actual number of bytes skipped.
- Throws: IOException
- If an error occurs while communicating with the AS/400.
- Overrides:
- skip in class InputStream
All Packages Class Hierarchy This Package Previous Next Index