Class OutputJarArchive
- java.lang.Object
-
- com.sun.enterprise.deployment.deploy.shared.JarArchive
-
- com.sun.enterprise.deployment.deploy.shared.OutputJarArchive
-
- All Implemented Interfaces:
Archive,WritableArchive
@Service(name="jar") @PerLookup public class OutputJarArchive extends JarArchive implements WritableArchive
Provides an implementation of the Archive that maps to a Jar file @see java.util.jar.JarFile- Author:
- Jerome Dochez
-
-
Field Summary
Fields Modifier and Type Field Description protected ZipOutputStreamjos-
Fields inherited from class com.sun.enterprise.deployment.deploy.shared.JarArchive
archiveMetaData, extraData, parentArchive
-
-
Constructor Summary
Constructors Constructor Description OutputJarArchive()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()close the abstract archivevoidcloseEntry()closes the current entryvoidcloseEntry(WritableArchive subArchive)Close a previously returned sub archivevoidcreate(URI path)creates a new abstract archive with the given pathWritableArchivecreateSubArchive(String name)Returns an instance of this archive abstraction for an embedded archive within this archive.Enumerationentries()Returns an enumeration of the module file entries.Enumerationentries(Enumeration embeddedArchives)longgetArchiveSize()Get the size of the archiveCollection<String>getDirectories()Returns the enumeration of first level directories in this archiveprotected JarEntrygetJarEntry(String entryName)ManifestgetManifest()Returns the manifest information for this archiveURIgetURI()Returns the path used to create or open the underlyong archiveOutputStreamputNextEntry(String name)Create a new entry in the archive-
Methods inherited from class com.sun.enterprise.deployment.deploy.shared.JarArchive
addArchiveMetaData, entries, exists, getArchiveMetaData, getExtraData, getName, getParentArchive, isDirectory, removeArchiveMetaData, removeExtraData, setExtraData, setParentArchive
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.glassfish.api.deployment.archive.Archive
entries, getName, isDirectory
-
-
-
-
Field Detail
-
jos
protected ZipOutputStream jos
-
-
Method Detail
-
getArchiveSize
public long getArchiveSize() throws NullPointerException, SecurityExceptionGet the size of the archive- Specified by:
getArchiveSizein interfaceArchive- Returns:
- -1 because this is getting created
- Throws:
NullPointerExceptionSecurityException
-
close
public void close() throws IOExceptionclose the abstract archive- Specified by:
closein interfaceArchive- Throws:
IOException
-
getJarEntry
protected JarEntry getJarEntry(String entryName)
- Specified by:
getJarEntryin classJarArchive
-
create
public void create(URI path) throws IOException
creates a new abstract archive with the given path- Specified by:
createin interfaceWritableArchive- Parameters:
path- the path to create the archive- Throws:
IOException
-
entries
public Enumeration entries()
Description copied from interface:ArchiveReturns an enumeration of the module file entries. All elements in the enumeration are of type String. Each String represents a file name relative to the root of the module.
-
getDirectories
public Collection<String> getDirectories() throws IOException
Description copied from interface:ArchiveReturns the enumeration of first level directories in this archive- Specified by:
getDirectoriesin interfaceArchive- Returns:
- enumeration of directories under the root of this archive
- Throws:
IOException
-
entries
public Enumeration entries(Enumeration embeddedArchives)
- Returns:
- an @see java.util.Enumeration of entries in this abstract archive, providing the list of embedded archive to not count their entries as part of this archive
-
getManifest
public Manifest getManifest() throws IOException
Description copied from interface:ArchiveReturns the manifest information for this archive- Specified by:
getManifestin interfaceArchive- Returns:
- the manifest information for this abstract archive
- Throws:
IOException
-
getURI
public URI getURI()
Returns the path used to create or open the underlyong archive
-
createSubArchive
public WritableArchive createSubArchive(String name) throws IOException
Description copied from interface:WritableArchiveReturns an instance of this archive abstraction for an embedded archive within this archive.- Specified by:
createSubArchivein interfaceWritableArchive- Parameters:
name- is the entry name relative to the root for the archive- Returns:
- the Archive instance for this abstraction
- Throws:
IOException
-
closeEntry
public void closeEntry(WritableArchive subArchive) throws IOException
Close a previously returned sub archive- Specified by:
closeEntryin interfaceWritableArchive- Parameters:
subArchive- output stream to close- Throws:
IOException
-
putNextEntry
public OutputStream putNextEntry(String name) throws IOException
Description copied from interface:WritableArchiveCreate a new entry in the archive- Specified by:
putNextEntryin interfaceWritableArchive- Parameters:
name- the entry name- Throws:
IOException
-
closeEntry
public void closeEntry() throws IOExceptioncloses the current entry- Specified by:
closeEntryin interfaceWritableArchive- Throws:
IOException
-
-