List of usage examples for org.apache.commons.compress.archivers.sevenz SevenZArchiveEntry setSize
public void setSize(final long size)
From source file:com.espringtran.compressor4j.processor.SevenZipProcessor.java
/** * Compress data//from www .j ava 2 s . c o m * * @param fileCompressor * FileCompressor object * @return * @throws Exception */ @Override public byte[] compressData(FileCompressor fileCompressor) throws Exception { ByteArrayOutputStream baos = new ByteArrayOutputStream(); SevenZOutputFile sevenZOutput = new SevenZOutputFile(new File(fileCompressor.getCompressedPath())); try { for (BinaryFile binaryFile : fileCompressor.getMapBinaryFile().values()) { SevenZArchiveEntry entry = sevenZOutput.createArchiveEntry(new File(binaryFile.getSrcPath()), binaryFile.getDesPath()); entry.setSize(binaryFile.getActualSize()); sevenZOutput.putArchiveEntry(entry); sevenZOutput.write(binaryFile.getData()); sevenZOutput.closeArchiveEntry(); } sevenZOutput.finish(); } catch (Exception e) { FileCompressor.LOGGER.error("Error on compress data", e); } finally { sevenZOutput.close(); baos.close(); } return baos.toByteArray(); }
From source file:org.apache.ant.compress.taskdefs.SevenZ.java
public SevenZ() { setFactory(new SevenZStreamFactory() { public ArchiveOutputStream getArchiveOutputStream(File f, String encoding) throws IOException { SevenZArchiveOutputStream o = (SevenZArchiveOutputStream) super.getArchiveOutputStream(f, encoding); if (contentCompression != null) { o.setContentCompression(asMethod(contentCompression)); }/*from w ww .ja va 2 s. co m*/ if (contentMethods != null) { o.setContentMethods(contentMethods); } return o; } }); setEntryBuilder(new ArchiveBase.EntryBuilder() { public ArchiveEntry buildEntry(ArchiveBase.ResourceWithFlags r) { SevenZArchiveEntry entry = new SevenZArchiveEntry(); entry.setName(r.getName()); entry.setDirectory(r.getResource().isDirectory()); entry.setLastModifiedDate(new Date(r.getResource().getLastModified())); entry.setSize(r.getResource().getSize()); if (keepCompression && r.getResourceFlags().hasContentMethods()) { entry.setContentMethods(r.getResourceFlags().getContentMethods()); } return entry; } }); setFileSetBuilder(new ArchiveBase.FileSetBuilder() { public ArchiveFileSet buildFileSet(Resource dest) { ArchiveFileSet afs = new SevenZFileSet(); afs.setSrcResource(dest); return afs; } }); }