Class ZipArchiveMagicNumber

  • All Implemented Interfaces:
    Comparable<MagicNumber>
    Direct Known Subclasses:
    ZipArchiveXMLMagicNumber

    public abstract class ZipArchiveMagicNumber
    extends MagicNumber
    This class defines a set of informations that could distinguish a file content from another one. It is also known as Magic Number on several operating systems.

    This magic number supports zip archive of files. For a single zipped file, please use ZipMagicNumber. For a jar file, plase use JarMagicNumber.

    Since:
    14.0
    Version:
    17.0 2020-01-04 14:41:40
    Author:
    Stéphane GALLAND
    See Also:
    ZipMagicNumber, JarMagicNumber
    Maven Group Id:
    org.arakhne.afc.core
    Maven Artifact Id:
    inputoutput
    • Constructor Detail

      • ZipArchiveMagicNumber

        public ZipArchiveMagicNumber​(javax.activation.MimeType mimeType)
        Constructor.
        Parameters:
        mimeType - is the MIME type associated to this magic number.
      • ZipArchiveMagicNumber

        public ZipArchiveMagicNumber​(javax.activation.MimeType mimeType,
                                     String formatVersion,
                                     File innerFile)
        Constructor.
        Parameters:
        mimeType - is the MIME type associated to this magic number.
        formatVersion - is the version of the supported format.
        innerFile - is the file to open from the inside of the Zip archive to test the type. The filename is relative to the root of the zip file content.
      • ZipArchiveMagicNumber

        public ZipArchiveMagicNumber​(javax.activation.MimeType mimeType,
                                     File innerFile)
        Constructor.
        Parameters:
        mimeType - is the MIME type associated to this magic number.
        innerFile - is the file to open from the inside of the Zip archive to test the type. The filename is relative to the root of the zip file content.
      • ZipArchiveMagicNumber

        public ZipArchiveMagicNumber​(javax.activation.MimeType mimeType,
                                     String formatVersion)
        Constructor.
        Parameters:
        mimeType - is the MIME type associated to this magic number.
        formatVersion - is the version of the supported format.
    • Method Detail

      • isContentType

        protected final boolean isContentType​(MagicNumberStream stream)
        Description copied from class: MagicNumber
        Replies if the specified stream contains data that corresponds to this magic number.
        Specified by:
        isContentType in class MagicNumber
        Parameters:
        stream - is the stream to analyse.
        Returns:
        true if the stream is containing this magic number, otherwise false
      • isContentType

        protected abstract boolean isContentType​(ZipInputStream zipStream,
                                                 ZipEntry zipEntry,
                                                 InputStream zipEntryStream)
        Replies if the specified stream contains data that corresponds to this magic number.
        Parameters:
        zipStream - is the stream of the Zip archive
        zipEntry - is the zip entry that is corresponding to the innerFile given as parameter of the constructor, or null not significant.
        zipEntryStream - is the stream on the data of the given zip entry, or null not significant.
        Returns:
        true if the stream is containing this magic number, otherwise false