public DebianPackageWriter ( final OutputStream stream, final GenericControlFile packageControlFile, final TimestampProvider timestampProvider ) throws IOException { this.packageControlFile = packageControlFile; this.timestampProvider = timestampProvider; if ( getTimestampProvider () == null ) { throw new IllegalArgumentException ( "'timestampProvider' must not be null" ); } BinaryPackageControlFile.validate ( packageControlFile ); this.ar = new ArArchiveOutputStream ( stream ); this.ar.putArchiveEntry ( new ArArchiveEntry ( "debian-binary", this.binaryHeader.length, 0, 0, AR_ARCHIVE_DEFAULT_MODE, getTimestampProvider ().getModTime () / 1000 ) ); this.ar.write ( this.binaryHeader ); this.ar.closeArchiveEntry (); this.dataTemp = File.createTempFile ( "data", null ); this.dataStream = new TarArchiveOutputStream ( new GZIPOutputStream ( new FileOutputStream ( this.dataTemp ) ) ); this.dataStream.setLongFileMode ( TarArchiveOutputStream.LONGFILE_GNU ); }
public DebianPackageWriter ( final OutputStream stream, final GenericControlFile packageControlFile, final TimestampProvider timestampProvider ) throws IOException { this.packageControlFile = packageControlFile; this.timestampProvider = timestampProvider; if ( getTimestampProvider () == null ) { throw new IllegalArgumentException ( "'timestampProvider' must not be null" ); } BinaryPackageControlFile.validate ( packageControlFile ); this.ar = new ArArchiveOutputStream ( stream ); this.ar.putArchiveEntry ( new ArArchiveEntry ( "debian-binary", this.binaryHeader.length, 0, 0, AR_ARCHIVE_DEFAULT_MODE, getTimestampProvider ().getModTime () / 1000 ) ); this.ar.write ( this.binaryHeader ); this.ar.closeArchiveEntry (); this.dataTemp = File.createTempFile ( "data", null ); this.dataStream = new TarArchiveOutputStream ( new GZIPOutputStream ( new FileOutputStream ( this.dataTemp ) ) ); this.dataStream.setLongFileMode ( TarArchiveOutputStream.LONGFILE_GNU ); }
protected void internalAddDirectory ( final String path, final EntryInformation entryInformation ) throws IOException { final TarArchiveEntry entry = new TarArchiveEntry ( path ); applyInfo ( entry, entryInformation, this.getTimestampProvider () ); this.dataStream.putArchiveEntry ( entry ); this.dataStream.closeArchiveEntry (); this.paths.add ( path ); }
protected void internalAddDirectory ( final String path, final EntryInformation entryInformation ) throws IOException { final TarArchiveEntry entry = new TarArchiveEntry ( path ); applyInfo ( entry, entryInformation, this.getTimestampProvider () ); this.dataStream.putArchiveEntry ( entry ); this.dataStream.closeArchiveEntry (); this.paths.add ( path ); }
applyInfo ( entry, entryInformation, this.getTimestampProvider () );
applyInfo ( entry, entryInformation, this.getTimestampProvider () );
private void addControlContent ( final TarArchiveOutputStream out, final String name, final ContentProvider content, final int mode ) throws IOException { if ( content == null || !content.hasContent () ) { return; } final TarArchiveEntry entry = new TarArchiveEntry ( name ); if ( mode >= 0 ) { entry.setMode ( mode ); } entry.setUserName ( "root" ); entry.setGroupName ( "root" ); entry.setSize ( content.getSize () ); entry.setModTime ( this.getTimestampProvider ().getModTime () ); out.putArchiveEntry ( entry ); try ( InputStream stream = content.createInputStream () ) { ByteStreams.copy ( stream, out ); } out.closeArchiveEntry (); }
private void addControlContent ( final TarArchiveOutputStream out, final String name, final ContentProvider content, final int mode ) throws IOException { if ( content == null || !content.hasContent () ) { return; } final TarArchiveEntry entry = new TarArchiveEntry ( name ); if ( mode >= 0 ) { entry.setMode ( mode ); } entry.setUserName ( "root" ); entry.setGroupName ( "root" ); entry.setSize ( content.getSize () ); entry.setModTime ( this.getTimestampProvider ().getModTime () ); out.putArchiveEntry ( entry ); try ( InputStream stream = content.createInputStream () ) { ByteStreams.copy ( stream, out ); } out.closeArchiveEntry (); }