Class ZipArchive
- java.lang.Object
 - 
- org.apache.jackrabbit.vault.fs.io.ZipArchive
 
 
- 
- All Implemented Interfaces:
 java.io.Closeable,java.lang.AutoCloseable,Archive
public class ZipArchive extends java.lang.ObjectImplements an archive that is based on a zip file. 
- 
- 
Nested Class Summary
- 
Nested classes/interfaces inherited from interface org.apache.jackrabbit.vault.fs.io.Archive
Archive.Entry 
 - 
 
- 
Constructor Summary
Constructors Constructor Description ZipArchive(java.io.File zipFile)Creates a new archive that is based on the given zip file.ZipArchive(java.io.File zipFile, boolean isTempFile)Creates a new archive that is based on the given zip file. 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()closes the archiveArchive.EntrygetEntry(java.lang.String path)Returns the entry specified by path.java.io.FilegetFile()Returns the underlying file ornullif it does not exist.longgetFileSize()Returns the size of the underlying file or -1 if it does not exist.VaultInputSourcegetInputSource(Archive.Entry entry)Returns an input source for the given entryArchive.EntrygetJcrRoot()Returns the entry that specifies the "jcr_root".MetaInfgetMetaInf()Returns the meta inf.Archive.EntrygetRoot()Returns the root entry.ArchivegetSubArchive(java.lang.String rootPath, boolean asJcrRoot)Returns a sub archive that is rooted at the given path.voidopen(boolean strict)Opens the archive.java.io.InputStreamopenInputStream(Archive.Entry entry)Opens an input stream for the given entryjava.lang.StringtoString() 
 - 
 
- 
- 
Constructor Detail
- 
ZipArchive
public ZipArchive(@Nonnull java.io.File zipFile)Creates a new archive that is based on the given zip file.- Parameters:
 zipFile- the zip file
 
- 
ZipArchive
public ZipArchive(@Nonnull java.io.File zipFile, boolean isTempFile)Creates a new archive that is based on the given zip file.- Parameters:
 zipFile- the zip fileisTempFile- iftrueif the file is considered temporary and can be deleted after this archive is closed.
 
 - 
 
- 
Method Detail
- 
open
public void open(boolean strict) throws java.io.IOExceptionDescription copied from interface:ArchiveOpens the archive.- Parameters:
 strict- iftrueopen will fail if there was an internal error while parsing meta data.- Throws:
 java.io.IOException- if an error occurs
 
- 
openInputStream
@Nullable public java.io.InputStream openInputStream(@Nullable Archive.Entry entry) throws java.io.IOExceptionDescription copied from interface:ArchiveOpens an input stream for the given entry- Parameters:
 entry- the entry- Returns:
 - the input stream or 
nullif the entry can't be read - Throws:
 java.io.IOException- if an error occurs
 
- 
getInputSource
@Nullable public VaultInputSource getInputSource(@Nullable Archive.Entry entry) throws java.io.IOException
Description copied from interface:ArchiveReturns an input source for the given entry- Parameters:
 entry- the entry- Returns:
 - the input source or 
nullif the entry can't be read - Throws:
 java.io.IOException- if an error occurs
 
- 
close
public void close()
Description copied from interface:Archivecloses the archive 
- 
getRoot
@Nonnull public Archive.Entry getRoot() throws java.io.IOException
Description copied from interface:ArchiveReturns the root entry.- Returns:
 - the root entry.
 - Throws:
 java.io.IOException- if an error occurs
 
- 
getMetaInf
@Nonnull public MetaInf getMetaInf()
Description copied from interface:ArchiveReturns the meta inf. If the archive provides no specific meta data, a default, empty meta inf is returned.- Returns:
 - the meta inf.
 
 
- 
getFile
@Nullable public java.io.File getFile()
Returns the underlying file ornullif it does not exist.- Returns:
 - the file or null.
 
 
- 
getFileSize
public long getFileSize()
Returns the size of the underlying file or -1 if it does not exist.- Returns:
 - the file size
 
 
- 
toString
public java.lang.String toString()
- Overrides:
 toStringin classjava.lang.Object
 
- 
getEntry
public Archive.Entry getEntry(java.lang.String path) throws java.io.IOException
Description copied from interface:ArchiveReturns the entry specified by path. 
- 
getJcrRoot
public Archive.Entry getJcrRoot() throws java.io.IOException
Description copied from interface:ArchiveReturns the entry that specifies the "jcr_root". if no such entry exists,nullis returned.- Specified by:
 getJcrRootin interfaceArchive- Returns:
 - the jcr_root entry or 
null - Throws:
 java.io.IOException- if an error occurs
 
- 
getSubArchive
public Archive getSubArchive(java.lang.String rootPath, boolean asJcrRoot) throws java.io.IOException
Description copied from interface:ArchiveReturns a sub archive that is rooted at the given path. Note that sub archives currently can't have they own meta inf and are closed automatically if they base is closed.- Specified by:
 getSubArchivein interfaceArchive- Parameters:
 rootPath- root pathasJcrRoot- iftruethe given root is the jcr_root- Returns:
 - the archive or 
nullif entry specified by root does not exist. - Throws:
 java.io.IOException- if an error occurs
 
 - 
 
 -