Class SubPackageFilterArchive

  • All Implemented Interfaces:
    Closeable, AutoCloseable, Archive

    public class SubPackageFilterArchive
    extends Object
    implements Archive
    Archive filter that suppresses the sub packages via the normal tree and allows to extract them individually. Note that it doesn't alter the workspace filter, which is not a problem when /etc/packages is never traversed.
    • Constructor Detail

      • SubPackageFilterArchive

        public SubPackageFilterArchive​(Archive base)
    • Method Detail

      • open

        public void open​(boolean strict)
                  throws IOException
        Description copied from interface: Archive
        Opens the archive.
        Specified by:
        open in interface Archive
        Parameters:
        strict - if true open will fail if there was an internal error while parsing meta data.
        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 to Archive.open(boolean).
        Specified by:
        getMetaInf in interface Archive
        Returns:
        the meta inf.
      • 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 to Archive.open(boolean).
        Specified by:
        getSubArchive in interface Archive
        Parameters:
        root - root path
        asJcrRoot - if true 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
      • close

        public void close()
        Description copied from interface: Archive
        Closes the archive. Only necessary to call if the archive has been opened.
        Specified by:
        close in interface Archive
        Specified by:
        close in interface AutoCloseable
        Specified by:
        close in interface Closeable
      • getSubPackageEntries

        public List<Archive.Entry> getSubPackageEntries()
                                                 throws IOException
        Returns a list of sub package entries.
        Returns:
        the list of sub package entries.
        Throws:
        IOException - if an error occurrs.