Package org.apache.derby.iapi.types
Interface PositionedStream
- All Known Implementing Classes:
LOBInputStream
,PositionedStoreStream
public interface PositionedStream
This interface describes a stream that is aware of its own position and can
reposition itself on request.
This interface doesn't convey any information about how expensive it is for the stream to reposition itself.
-
Method Summary
Modifier and TypeMethodDescriptionReturns a reference to self as anInputStream
.long
Returns the current byte position of the stream.void
reposition
(long requestedPos) Repositions the stream to the requested byte position.
-
Method Details
-
asInputStream
InputStream asInputStream()Returns a reference to self as anInputStream
.This method is not allowed to return
null
.- Returns:
- An
InputStream
reference to self.
-
getPosition
long getPosition()Returns the current byte position of the stream.- Returns:
- Current byte position of the stream.
-
reposition
Repositions the stream to the requested byte position.If the repositioning fails because the stream is exhausted, most likely because of an invalid position specified by the user, the stream is reset to position zero and an
EOFException
is thrown.- Parameters:
requestedPos
- requested byte position, first position is0
- Throws:
IOException
- if accessing the stream failsEOFException
- if the requested position is equal to or larger than the length of the streamStandardException
- if an error occurs in store
-