Class LazyInputStream
java.lang.Object
java.io.InputStream
org.jboss.vfs.util.LazyInputStream
- All Implemented Interfaces:
Closeable, AutoCloseable
Lazy input stream.
Delaying opening stream from underlying virtual file as long as possible.
Won't be opened if not used at all.
Synchronization is very simplistic, as it's highly unlikely
there will be a lot of concurrent requests.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
Field Details
-
file
-
stream
-
-
Constructor Details
-
LazyInputStream
-
-
Method Details
-
openStream
Open stream.- Returns:
- file's stream
- Throws:
IOException- for any IO error
-
read
- Specified by:
readin classInputStream- Throws:
IOException
-
read
- Overrides:
readin classInputStream- Throws:
IOException
-
read
- Overrides:
readin classInputStream- Throws:
IOException
-
skip
- Overrides:
skipin classInputStream- Throws:
IOException
-
available
- Overrides:
availablein classInputStream- Throws:
IOException
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classInputStream- Throws:
IOException
-
mark
public void mark(int readlimit) - Overrides:
markin classInputStream
-
reset
- Overrides:
resetin classInputStream- Throws:
IOException
-
markSupported
public boolean markSupported()- Overrides:
markSupportedin classInputStream
-