public class VirtualJarInputStream
extends java.util.jar.JarInputStream
| Modifier and Type | Class and Description |
|---|---|
static class |
VirtualJarInputStream.VirtualJarEntry
Virtual JarEntry used for representing a child VirtualFile as a JarEntry.
|
| Modifier and Type | Field and Description |
|---|---|
static int |
CENATT |
static int |
CENATX |
static int |
CENCOM |
static int |
CENCRC |
static int |
CENDSK |
static int |
CENEXT |
static int |
CENFLG |
static int |
CENHDR |
static int |
CENHOW |
static int |
CENLEN |
static int |
CENNAM |
static int |
CENOFF |
static long |
CENSIG |
static int |
CENSIZ |
static int |
CENTIM |
static int |
CENVEM |
static int |
CENVER |
private boolean |
closed |
private java.io.InputStream |
currentEntryStream |
static int |
ENDCOM |
static int |
ENDHDR |
static int |
ENDOFF |
static long |
ENDSIG |
static int |
ENDSIZ |
static int |
ENDSUB |
static int |
ENDTOT |
private java.util.Deque<java.util.Iterator<VirtualFile>> |
entryItr |
static int |
EXTCRC |
static int |
EXTHDR |
static int |
EXTLEN |
static long |
EXTSIG |
static int |
EXTSIZ |
static int |
LOCCRC |
static int |
LOCEXT |
static int |
LOCFLG |
static int |
LOCHDR |
static int |
LOCHOW |
static int |
LOCLEN |
static int |
LOCNAM |
static long |
LOCSIG |
static int |
LOCSIZ |
static int |
LOCTIM |
static int |
LOCVER |
private java.util.jar.Manifest |
manifest |
private static VirtualFileFilter |
MANIFEST_FILTER |
private static java.lang.String |
MANIFEST_NAME |
private static java.lang.String |
META_INF_DIR |
private VirtualFile |
root |
| Constructor and Description |
|---|
VirtualJarInputStream(VirtualFile root)
Construct a
VirtualJarInputStream from a VirtualFile root |
| Modifier and Type | Method and Description |
|---|---|
int |
available()
*
|
private int |
checkForEoSAndReturn(int result)
Check to see if the result is the EOF and if so exchange the current entry stream with the empty stream.
|
void |
close()
*
|
void |
closeEntry()
*
|
private void |
ensureOpen()
*
|
private java.lang.String |
fixDirectoryName(java.lang.String name)
Make sure directory names end with a trailing slash
|
private java.lang.String |
getEntryName(VirtualFile entry)
Get the entry name from a VirtualFile.
|
java.util.jar.Manifest |
getManifest()
*
|
java.util.zip.ZipEntry |
getNextEntry()
*
|
java.util.jar.JarEntry |
getNextJarEntry()
*
|
private void |
openCurrent(VirtualFile current)
Open the current virtual file as the current JarEntry stream.
|
int |
read()
*
|
int |
read(byte[] b)
*
|
int |
read(byte[] b,
int off,
int len)
*
|
long |
skip(long n)
*
|
private static final java.lang.String MANIFEST_NAME
private static final java.lang.String META_INF_DIR
private static final VirtualFileFilter MANIFEST_FILTER
private final java.util.Deque<java.util.Iterator<VirtualFile>> entryItr
private final VirtualFile root
private final java.util.jar.Manifest manifest
private java.io.InputStream currentEntryStream
private boolean closed
public static final long LOCSIG
public static final long EXTSIG
public static final long CENSIG
public static final long ENDSIG
public static final int LOCHDR
public static final int EXTHDR
public static final int CENHDR
public static final int ENDHDR
public static final int LOCVER
public static final int LOCFLG
public static final int LOCHOW
public static final int LOCTIM
public static final int LOCCRC
public static final int LOCSIZ
public static final int LOCLEN
public static final int LOCNAM
public static final int LOCEXT
public static final int EXTCRC
public static final int EXTSIZ
public static final int EXTLEN
public static final int CENVEM
public static final int CENVER
public static final int CENFLG
public static final int CENHOW
public static final int CENTIM
public static final int CENCRC
public static final int CENSIZ
public static final int CENLEN
public static final int CENNAM
public static final int CENEXT
public static final int CENCOM
public static final int CENDSK
public static final int CENATT
public static final int CENATX
public static final int CENOFF
public static final int ENDSUB
public static final int ENDTOT
public static final int ENDSIZ
public static final int ENDOFF
public static final int ENDCOM
public VirtualJarInputStream(VirtualFile root) throws java.io.IOException
VirtualJarInputStream from a VirtualFile rootroot - VirtualFile directory to use as the base of the virtual Jar.java.io.IOExceptionpublic java.util.zip.ZipEntry getNextEntry()
throws java.io.IOException
getNextEntry in class java.util.jar.JarInputStreamjava.io.IOExceptionpublic java.util.jar.JarEntry getNextJarEntry()
throws java.io.IOException
getNextJarEntry in class java.util.jar.JarInputStreamjava.io.IOExceptionpublic java.util.jar.Manifest getManifest()
getManifest in class java.util.jar.JarInputStreampublic int read()
throws java.io.IOException
read in class java.util.zip.InflaterInputStreamjava.io.IOExceptionpublic int read(byte[] b)
throws java.io.IOException
read in class java.io.FilterInputStreamjava.io.IOExceptionpublic int read(byte[] b,
int off,
int len)
throws java.io.IOException
read in class java.util.jar.JarInputStreamjava.io.IOExceptionpublic int available()
throws java.io.IOException
available in class java.util.zip.ZipInputStreamjava.io.IOExceptionpublic void close()
throws java.io.IOException
close in interface java.io.Closeableclose in interface java.lang.AutoCloseableclose in class java.util.zip.ZipInputStreamjava.io.IOExceptionpublic void closeEntry()
throws java.io.IOException
closeEntry in class java.util.zip.ZipInputStreamjava.io.IOExceptionpublic long skip(long n)
throws java.io.IOException
skip in class java.util.zip.ZipInputStreamjava.io.IOExceptionprivate void ensureOpen()
throws java.io.IOException
java.io.IOExceptionprivate int checkForEoSAndReturn(int result)
throws java.io.IOException
result - java.io.IOExceptionprivate void openCurrent(VirtualFile current) throws java.io.IOException
current - java.io.IOExceptionprivate java.lang.String getEntryName(VirtualFile entry)
entry - private java.lang.String fixDirectoryName(java.lang.String name)
name -