Package org.apache.tomcat
Interface Jar
- 
- All Superinterfaces:
- java.lang.AutoCloseable
 - All Known Implementing Classes:
- AbstractInputStreamJar,- JarFileUrlJar,- JarFileUrlNestedJar,- ReferenceCountedJar,- UrlJar
 
 public interface Jar extends java.lang.AutoCloseableProvides an abstraction for use by the various classes that need to scan JARs. The classes provided by the JRE for accessing JARs (JarFileandJarInputStream) have significantly different performance characteristics depending on the form of the URL used to access the JAR. For file based JARURLs,JarFileis faster but for non-file basedURLs,JarFilecreates a copy of the JAR in the temporary directory soJarInputStreamis faster.
- 
- 
Method SummaryAll Methods Instance Methods Abstract Methods Modifier and Type Method Description voidclose()Close any resources associated with this JAR.booleanexists(java.lang.String name)Determine if the given resource in present in the JAR.java.io.InputStreamgetEntryInputStream()Obtains the input stream for the current entry.java.lang.StringgetEntryName()Obtains the name of the current entry.java.io.InputStreamgetInputStream(java.lang.String name)Obtain anInputStreamfor a given entry in a JAR.java.net.URLgetJarFileURL()longgetLastModified(java.lang.String name)Obtain the last modified time for the given resource in the JAR.java.util.jar.ManifestgetManifest()Obtain the manifest for the JAR file.java.lang.StringgetURL(java.lang.String entry)Obtain, in String form, the URL for an entry in this JAR.voidnextEntry()Moves the internal pointer to the next entry in the JAR.voidreset()Resets the internal pointer used to track JAR entries to the beginning of the JAR.
 
- 
- 
- 
Method Detail- 
getJarFileURLjava.net.URL getJarFileURL() - Returns:
- The URL for accessing the JAR file.
 
 - 
getInputStreamjava.io.InputStream getInputStream(java.lang.String name) throws java.io.IOExceptionObtain anInputStreamfor a given entry in a JAR. The caller is responsible for closing the stream.- Parameters:
- name- Entry to obtain an- InputStreamfor
- Returns:
- An InputStreamfor the specified entry or null if the entry does not exist
- Throws:
- java.io.IOException- if an I/O error occurs while processing the JAR file
 
 - 
getLastModifiedlong getLastModified(java.lang.String name) throws java.io.IOExceptionObtain the last modified time for the given resource in the JAR.- Parameters:
- name- Entry to obtain the modification time for
- Returns:
- The time (in the same format as
         System.currentTimeMillis()that the resource was last modified. Returns -1 if the entry does not exist
- Throws:
- java.io.IOException- if an I/O error occurs while processing the JAR file
 
 - 
existsboolean exists(java.lang.String name) throws java.io.IOExceptionDetermine if the given resource in present in the JAR.- Parameters:
- name- Entry to look for
- Returns:
- trueif the entry is present in the JAR, otherwise- false
- Throws:
- java.io.IOException- if an I/O error occurs while processing the JAR file
 
 - 
closevoid close() Close any resources associated with this JAR.- Specified by:
- closein interface- java.lang.AutoCloseable
 
 - 
nextEntryvoid nextEntry() Moves the internal pointer to the next entry in the JAR.
 - 
getEntryNamejava.lang.String getEntryName() Obtains the name of the current entry.- Returns:
- The entry name
 
 - 
getEntryInputStreamjava.io.InputStream getEntryInputStream() throws java.io.IOExceptionObtains the input stream for the current entry.- Returns:
- The input stream
- Throws:
- java.io.IOException- If the stream cannot be obtained
 
 - 
getURLjava.lang.String getURL(java.lang.String entry) Obtain, in String form, the URL for an entry in this JAR. Note that for JARs nested in WAR files, the Tomcat specific war:file:... form will not be used, rather the jar:jar:file:... form (that the JRE does not understand will be used). Note that this means that any code using these URLs will need to understand the jar:jar:file:... form and use theJarFactoryto ensure resources are accessed correctly.- Parameters:
- entry- The entry to generate the URL for
- Returns:
- a URL for the specified entry in the JAR
 
 - 
getManifestjava.util.jar.Manifest getManifest() throws java.io.IOExceptionObtain the manifest for the JAR file.- Returns:
- The manifest for this JAR file.
- Throws:
- java.io.IOException- If an I/O error occurs trying to obtain the manifest
 
 - 
resetvoid reset() throws java.io.IOExceptionResets the internal pointer used to track JAR entries to the beginning of the JAR.- Throws:
- java.io.IOException- If the pointer cannot be reset
 
 
- 
 
-