Class ArchiveWrapper
- java.lang.Object
-
- org.apache.jackrabbit.vault.fs.impl.ArchiveWrapper
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Archive
public final class ArchiveWrapper extends Object implements Archive
Wrapper class that hides all implementation details from the underlying archive. this is mainly use to hide theZipArchive.getFile()
.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.apache.jackrabbit.vault.fs.io.Archive
Archive.Entry
-
-
Constructor Summary
Constructors Constructor Description ArchiveWrapper(Archive archive)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Closes the archive.@Nullable Archive.Entry
getEntry(@NotNull String path)
Returns the entry specified by path.@Nullable VaultInputSource
getInputSource(@Nullable Archive.Entry entry)
Returns an input source for the given entry.@Nullable Archive.Entry
getJcrRoot()
Returns the entry that specifies the "jcr_root".@NotNull MetaInf
getMetaInf()
Returns the meta inf.@NotNull Archive.Entry
getRoot()
Returns the root entry.@Nullable Archive
getSubArchive(@NotNull String root, boolean asJcrRoot)
Returns a sub archive that is rooted at the given path.void
open(boolean strict)
Opens the archive.@Nullable InputStream
openInputStream(@Nullable Archive.Entry entry)
Opens an input stream for the given entry.
-
-
-
Constructor Detail
-
ArchiveWrapper
public ArchiveWrapper(Archive archive)
-
-
Method Detail
-
open
public void open(boolean strict) throws IOException
Description copied from interface:Archive
Opens the archive.- Specified by:
open
in interfaceArchive
- Parameters:
strict
- iftrue
open will fail if there was an internal error while parsing meta data.- Throws:
IOException
- if an error occurs
-
openInputStream
@Nullable public @Nullable InputStream openInputStream(@Nullable @Nullable Archive.Entry entry) throws IOException
Description copied from interface:Archive
Opens an input stream for the given entry. Requires a previous call toArchive.open(boolean)
.- Specified by:
openInputStream
in interfaceArchive
- Parameters:
entry
- the entry- Returns:
- the input stream or
null
if the entry can't be read - Throws:
IOException
- if an error occurs
-
getInputSource
@Nullable public @Nullable VaultInputSource getInputSource(@Nullable @Nullable Archive.Entry entry) throws IOException
Description copied from interface:Archive
Returns an input source for the given entry. Requires a previous call toArchive.open(boolean)
.- Specified by:
getInputSource
in interfaceArchive
- Parameters:
entry
- the entry- Returns:
- the input source or
null
if the entry can't be read - Throws:
IOException
- if an error occurs
-
getJcrRoot
@Nullable public @Nullable Archive.Entry getJcrRoot() throws IOException
Description copied from interface:Archive
Returns the entry that specifies the "jcr_root". if no such entry exists,null
is returned. Requires a previous call toArchive.open(boolean)
.- Specified by:
getJcrRoot
in interfaceArchive
- Returns:
- the jcr_root entry or
null
- Throws:
IOException
- if an error occurs
-
getRoot
@NotNull public @NotNull Archive.Entry getRoot() throws IOException
Description copied from interface:Archive
Returns the root entry. Requires a previous call toArchive.open(boolean)
.- Specified by:
getRoot
in interfaceArchive
- Returns:
- the root entry.
- Throws:
IOException
- if an error occurs
-
getMetaInf
@NotNull public @NotNull MetaInf getMetaInf()
Description copied from interface:Archive
Returns the meta inf. If the archive provides no specific meta data, a default, empty meta inf is returned. Requires a previous call toArchive.open(boolean)
.- Specified by:
getMetaInf
in interfaceArchive
- Returns:
- the meta inf.
-
getEntry
@Nullable public @Nullable Archive.Entry getEntry(@NotNull @NotNull String path) throws IOException
Description copied from interface:Archive
Returns the entry specified by path. Requires a previous call toArchive.open(boolean)
.- Specified by:
getEntry
in interfaceArchive
- Parameters:
path
- the path- Returns:
- the entry or
null
if not found. - Throws:
IOException
- if an error occurs
-
getSubArchive
@Nullable public @Nullable Archive getSubArchive(@NotNull @NotNull String root, boolean asJcrRoot) throws IOException
Description copied from interface:Archive
Returns a sub archive that is rooted at the given path. Note that sub archives currently can't have their own meta inf and are closed automatically if their container archive is closed. Requires a previous call toArchive.open(boolean)
.- Specified by:
getSubArchive
in interfaceArchive
- Parameters:
root
- root pathasJcrRoot
- iftrue
the given root is the jcr_root- Returns:
- the archive or
null
if entry specified by root does not exist. - Throws:
IOException
- if an error occurs
-
-