org.jboss.vfs.util
Class LazyInputStream
java.lang.Object
java.io.InputStream
org.jboss.vfs.util.LazyInputStream
- All Implemented Interfaces:
- Closeable
public class LazyInputStream
- extends InputStream
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.
- Author:
- Ales Justin
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
LazyInputStream
public LazyInputStream(VirtualFile file)
openStream
protected InputStream openStream()
throws IOException
- Open stream.
- Returns:
- file's stream
- Throws:
IOException
- for any IO error
read
public int read()
throws IOException
- Specified by:
read
in class InputStream
- Throws:
IOException
read
public int read(byte[] b)
throws IOException
- Overrides:
read
in class InputStream
- Throws:
IOException
read
public int read(byte[] b,
int off,
int len)
throws IOException
- Overrides:
read
in class InputStream
- Throws:
IOException
skip
public long skip(long n)
throws IOException
- Overrides:
skip
in class InputStream
- Throws:
IOException
available
public int available()
throws IOException
- Overrides:
available
in class InputStream
- Throws:
IOException
close
public void close()
throws IOException
- Specified by:
close
in interface Closeable
- Overrides:
close
in class InputStream
- Throws:
IOException
mark
public void mark(int readlimit)
- Overrides:
mark
in class InputStream
reset
public void reset()
throws IOException
- Overrides:
reset
in class InputStream
- Throws:
IOException
markSupported
public boolean markSupported()
- Overrides:
markSupported
in class InputStream
Copyright © 2012 JBoss, A division of Red Hat, Inc. All Rights Reserved.