Package Summary Overview Summary

### class:JarInputStream [NONE]
- All Implemented Interfaces: Closeable, AutoCloseable
      public class JarInputStream
      extends ZipInputStream
The `JarInputStream` class is used to read the contents of a JAR file from any input stream. It extends the class `java.util.zip.ZipInputStream` with support for reading an optional `Manifest` entry. The `Manifest` can be used to store meta-information about the JAR file and its entries. Since: 1.2 See Also: `Manifest`, `ZipInputStream`

### field:LOCSIG [NONE]
- #### LOCSIG
      public static final long LOCSIG
See Also: Constant Field Values

### field:EXTSIG [NONE]
- #### EXTSIG
      public static final long EXTSIG
See Also: Constant Field Values

### field:CENSIG [NONE]
- #### CENSIG
      public static final long CENSIG
See Also: Constant Field Values

### field:ENDSIG [NONE]
- #### ENDSIG
      public static final long ENDSIG
See Also: Constant Field Values

### field:LOCHDR [NONE]
- #### LOCHDR
      public static final int LOCHDR
See Also: Constant Field Values

### field:EXTHDR [NONE]
- #### EXTHDR
      public static final int EXTHDR
See Also: Constant Field Values

### field:CENHDR [NONE]
- #### CENHDR
      public static final int CENHDR
See Also: Constant Field Values

### field:ENDHDR [NONE]
- #### ENDHDR
      public static final int ENDHDR
See Also: Constant Field Values

### field:LOCVER [NONE]
- #### LOCVER
      public static final int LOCVER
See Also: Constant Field Values

### field:LOCFLG [NONE]
- #### LOCFLG
      public static final int LOCFLG
See Also: Constant Field Values

### field:LOCHOW [NONE]
- #### LOCHOW
      public static final int LOCHOW
See Also: Constant Field Values

### field:LOCTIM [NONE]
- #### LOCTIM
      public static final int LOCTIM
See Also: Constant Field Values

### field:LOCCRC [NONE]
- #### LOCCRC
      public static final int LOCCRC
See Also: Constant Field Values

### field:LOCSIZ [NONE]
- #### LOCSIZ
      public static final int LOCSIZ
See Also: Constant Field Values

### field:LOCLEN [NONE]
- #### LOCLEN
      public static final int LOCLEN
See Also: Constant Field Values

### field:LOCNAM [NONE]
- #### LOCNAM
      public static final int LOCNAM
See Also: Constant Field Values

### field:LOCEXT [NONE]
- #### LOCEXT
      public static final int LOCEXT
See Also: Constant Field Values

### field:EXTCRC [NONE]
- #### EXTCRC
      public static final int EXTCRC
See Also: Constant Field Values

### field:EXTSIZ [NONE]
- #### EXTSIZ
      public static final int EXTSIZ
See Also: Constant Field Values

### field:EXTLEN [NONE]
- #### EXTLEN
      public static final int EXTLEN
See Also: Constant Field Values

### field:CENVEM [NONE]
- #### CENVEM
      public static final int CENVEM
See Also: Constant Field Values

### field:CENVER [NONE]
- #### CENVER
      public static final int CENVER
See Also: Constant Field Values

### field:CENFLG [NONE]
- #### CENFLG
      public static final int CENFLG
See Also: Constant Field Values

### field:CENHOW [NONE]
- #### CENHOW
      public static final int CENHOW
See Also: Constant Field Values

### field:CENTIM [NONE]
- #### CENTIM
      public static final int CENTIM
See Also: Constant Field Values

### field:CENCRC [NONE]
- #### CENCRC
      public static final int CENCRC
See Also: Constant Field Values

### field:CENSIZ [NONE]
- #### CENSIZ
      public static final int CENSIZ
See Also: Constant Field Values

### field:CENLEN [NONE]
- #### CENLEN
      public static final int CENLEN
See Also: Constant Field Values

### field:CENNAM [NONE]
- #### CENNAM
      public static final int CENNAM
See Also: Constant Field Values

### field:CENEXT [NONE]
- #### CENEXT
      public static final int CENEXT
See Also: Constant Field Values

### field:CENCOM [NONE]
- #### CENCOM
      public static final int CENCOM
See Also: Constant Field Values

### field:CENDSK [NONE]
- #### CENDSK
      public static final int CENDSK
See Also: Constant Field Values

### field:CENATT [NONE]
- #### CENATT
      public static final int CENATT
See Also: Constant Field Values

### field:CENATX [NONE]
- #### CENATX
      public static final int CENATX
See Also: Constant Field Values

### field:CENOFF [NONE]
- #### CENOFF
      public static final int CENOFF
See Also: Constant Field Values

### field:ENDSUB [NONE]
- #### ENDSUB
      public static final int ENDSUB
See Also: Constant Field Values

### field:ENDTOT [NONE]
- #### ENDTOT
      public static final int ENDTOT
See Also: Constant Field Values

### field:ENDSIZ [NONE]
- #### ENDSIZ
      public static final int ENDSIZ
See Also: Constant Field Values

### field:ENDOFF [NONE]
- #### ENDOFF
      public static final int ENDOFF
See Also: Constant Field Values

### field:ENDCOM [NONE]
- #### ENDCOM
      public static final int ENDCOM
See Also: Constant Field Values

### constructor:JarInputStream(java.io.InputStream) [NONE]
- #### JarInputStream
      public JarInputStream(InputStream in)
                     throws IOException
Creates a new `JarInputStream` and reads the optional manifest. If a manifest is present, also attempts to verify the signatures if the JarInputStream is signed. Parameters: `in` - the actual input stream Throws: `IOException` - if an I/O error has occurred

### constructor:JarInputStream(java.io.InputStream, boolean) [NONE]
- #### JarInputStream
      public JarInputStream(InputStream in,
                            boolean verify)
                     throws IOException
Creates a new `JarInputStream` and reads the optional manifest. If a manifest is present and verify is true, also attempts to verify the signatures if the JarInputStream is signed. Parameters: `in` - the actual input stream `verify` - whether or not to verify the JarInputStream if it is signed. Throws: `IOException` - if an I/O error has occurred

### method:getManifest() [NONE]
- #### getManifest
      public Manifest getManifest()
Returns the `Manifest` for this JAR file, or `null` if none. Returns: the `Manifest` for this JAR file, or `null` if none.

### method:getNextEntry() [NONE]
- #### getNextEntry
      public ZipEntry getNextEntry()
                            throws IOException
Reads the next ZIP file entry and positions the stream at the beginning of the entry data. If verification has been enabled, any invalid signature detected while positioning the stream for the next entry will result in an exception. Overrides: `getNextEntry` in class `ZipInputStream` Returns: the next ZIP file entry, or null if there are no more entries Throws: `ZipException` - if a ZIP file error has occurred `IOException` - if an I/O error has occurred `SecurityException` - if any of the jar file entries are incorrectly signed.

### method:getNextJarEntry() [NONE]
- #### getNextJarEntry
      public JarEntry getNextJarEntry()
                               throws IOException
Reads the next JAR file entry and positions the stream at the beginning of the entry data. If verification has been enabled, any invalid signature detected while positioning the stream for the next entry will result in an exception. Returns: the next JAR file entry, or null if there are no more entries Throws: `ZipException` - if a ZIP file error has occurred `IOException` - if an I/O error has occurred `SecurityException` - if any of the jar file entries are incorrectly signed.

### method:read(byte[], int, int) [NONE]
- #### read
      public int read(byte[] b,
                      int off,
                      int len)
               throws IOException
Reads from the current JAR file entry into an array of bytes. If `len` is not zero, the method blocks until some input is available; otherwise, no bytes are read and `0` is returned. If verification has been enabled, any invalid signature on the current entry will be reported at some point before the end of the entry is reached. Overrides: `read` in class `ZipInputStream` Parameters: `b` - the buffer into which the data is read `off` - the start offset in the destination array `b` `len` - the maximum number of bytes to read Returns: the actual number of bytes read, or -1 if the end of the entry is reached Throws: `NullPointerException` - If `b` is `null`. `IndexOutOfBoundsException` - If `off` is negative, `len` is negative, or `len` is greater than `b.length - off` `ZipException` - if a ZIP file error has occurred `IOException` - if an I/O error has occurred `SecurityException` - if any of the jar file entries are incorrectly signed. See Also: `FilterInputStream.in`

### method:createZipEntry(java.lang.String) [NONE]
- #### createZipEntry
      protected ZipEntry createZipEntry(String name)
Creates a new `JarEntry` (`ZipEntry`) for the specified JAR file entry name. The manifest attributes of the specified JAR file entry name will be copied to the new `JarEntry`. Overrides: `createZipEntry` in class `ZipInputStream` Parameters: `name` - the name of the JAR/ZIP file entry Returns: the `JarEntry` object just created