List of usage examples for org.apache.commons.compress.archivers ArchiveStreamProvider createArchiveInputStream
ArchiveInputStream createArchiveInputStream(final String name, final InputStream in, final String encoding) throws ArchiveException;
From source file:org.apache.tika.parser.pkg.TikaArchiveStreamFactory.java
@Override public ArchiveInputStream createArchiveInputStream(final String archiverName, final InputStream in, final String actualEncoding) throws ArchiveException { if (archiverName == null) { throw new IllegalArgumentException("Archivername must not be null."); }//from w w w .ja v a2 s.c o m if (in == null) { throw new IllegalArgumentException("InputStream must not be null."); } if (AR.equalsIgnoreCase(archiverName)) { return new ArArchiveInputStream(in); } if (ARJ.equalsIgnoreCase(archiverName)) { if (actualEncoding != null) { return new ArjArchiveInputStream(in, actualEncoding); } return new ArjArchiveInputStream(in); } if (ZIP.equalsIgnoreCase(archiverName)) { if (actualEncoding != null) { return new ZipArchiveInputStream(in, actualEncoding); } return new ZipArchiveInputStream(in); } if (TAR.equalsIgnoreCase(archiverName)) { if (actualEncoding != null) { return new TarArchiveInputStream(in, actualEncoding); } return new TarArchiveInputStream(in); } if (JAR.equalsIgnoreCase(archiverName)) { if (actualEncoding != null) { return new JarArchiveInputStream(in, actualEncoding); } return new JarArchiveInputStream(in); } if (CPIO.equalsIgnoreCase(archiverName)) { if (actualEncoding != null) { return new CpioArchiveInputStream(in, actualEncoding); } return new CpioArchiveInputStream(in); } if (DUMP.equalsIgnoreCase(archiverName)) { if (actualEncoding != null) { return new DumpArchiveInputStream(in, actualEncoding); } return new DumpArchiveInputStream(in); } if (SEVEN_Z.equalsIgnoreCase(archiverName)) { throw new StreamingNotSupportedException(SEVEN_Z); } final ArchiveStreamProvider archiveStreamProvider = getArchiveInputStreamProviders() .get(toKey(archiverName)); if (archiveStreamProvider != null) { return archiveStreamProvider.createArchiveInputStream(archiverName, in, actualEncoding); } throw new ArchiveException("Archiver: " + archiverName + " not found."); }