Class AlteringZipArchiveExtractor

    • Field Detail

      • myUseStream

        protected volatile boolean myUseStream
    • Constructor Detail

      • AlteringZipArchiveExtractor

        public AlteringZipArchiveExtractor()
    • Method Detail

      • setUseStream

        protected void setUseStream​(boolean useStream)
      • isUseStream

        protected boolean isUseStream()
      • isSupported

        public boolean isSupported​(@NotNull
                                   File archive)
        Description copied from interface: ArchiveExtractor
        Detect whether archive can be extract by this extractor
        Specified by:
        isSupported in interface ArchiveExtractor
        Parameters:
        archive - path to archive
        Returns:
        whether archive can be extract by this extractor
      • getEntitiesSize

        public Map<String,​Long> getEntitiesSize​(@NotNull
                                                      File archive)
                                               throws IOException
        Specified by:
        getEntitiesSize in interface ArchiveExtractor
        Parameters:
        archive - archive to be processed
        Returns:
        map of entities name to uncompressed size on this entry, same names which are used in ArchiveFileSelector will be used as keys, -1 as size may be returned if size is unknown
        Throws:
        IOException - Error occurred during extraction
      • getEntitiesUnixPermissions

        public Map<String,​Integer> getEntitiesUnixPermissions​(@NotNull
                                                                    File archive)
                                                             throws IOException
        Specified by:
        getEntitiesUnixPermissions in interface ArchiveExtractor
        Parameters:
        archive - archive to be processed
        Returns:
        map of entities name to an integer representation of Unix permissions for this entry, same names which are used in ArchiveFileSelector will be used as keys, empty map if unix permissions are not available in the map
        Throws:
        IOException - Error occurred during extraction
      • extractFiles

        public void extractFiles​(@NotNull
                                 File archive,
                                 @NotNull
                                 ArchiveFileSelector selector)
                          throws IOException
        Description copied from interface: ArchiveExtractor
        Extracts files from given archive filtered by file selector
        Specified by:
        extractFiles in interface ArchiveExtractor
        Parameters:
        archive - archive to be processed
        selector - selector for files within the archive
        Throws:
        IOException - Error occurred during extraction
      • setEncoding

        public void setEncoding​(@NotNull
                                String encoding)