javax.mail.internet
Interface SharedInputStream
public interface SharedInputStream
An InputStream that is backed by data that can be shared by multiple readers
may implement this interface. This allows users of such an InputStream to
determine the current positionin the InputStream, and to create new
InputStreams representing a subset of the data in the original InputStream.
The new InputStream will access the same underlying data as the original,
without copying the data.
long | getPosition() - Return the current position in the InputStream, as an offset from the
beginning of the InputStream.
|
InputStream | newStream(long start, long end) - Return a new InputStream representing a subset of the data from this
InputStream, starting at
start (inclusive) up to
end (exclusive).
|
getPosition
public long getPosition()
Return the current position in the InputStream, as an offset from the
beginning of the InputStream.
- the current position
newStream
public InputStream newStream(long start,
long end)
Return a new InputStream representing a subset of the data from this
InputStream, starting at start
(inclusive) up to
end
(exclusive). start
must be non-negative.
If end
is -1, the new stream ends at the same place
as this stream. The returned InputStream will also implement the
SharedInputStream interface.
start
- the starting positionend
- the ending position + 1
- the new stream