Package org.eclipse.packager.rpm.build
Class PayloadRecorder
- java.lang.Object
-
- org.eclipse.packager.rpm.build.PayloadRecorder
-
- All Implemented Interfaces:
java.lang.AutoCloseable,PayloadProvider
public class PayloadRecorder extends java.lang.Object implements java.lang.AutoCloseable, PayloadProvider
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classPayloadRecorder.Result
-
Constructor Summary
Constructors Constructor Description PayloadRecorder()PayloadRecorder(boolean autoFinish)PayloadRecorder(boolean autoFinish, PayloadCoding payloadCoding, java.lang.String payloadFlags, DigestAlgorithm fileDigestAlgorithm)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description PayloadRecorder.ResultaddDirectory(java.lang.String targetPath, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer)PayloadRecorder.ResultaddFile(java.lang.String targetPath, java.io.InputStream stream)PayloadRecorder.ResultaddFile(java.lang.String targetPath, java.io.InputStream stream, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer)PayloadRecorder.ResultaddFile(java.lang.String targetPath, java.nio.ByteBuffer data)PayloadRecorder.ResultaddFile(java.lang.String targetPath, java.nio.ByteBuffer data, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer)PayloadRecorder.ResultaddFile(java.lang.String targetPath, java.nio.file.Path path)PayloadRecorder.ResultaddFile(java.lang.String targetPath, java.nio.file.Path path, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer)PayloadRecorder.ResultaddSymbolicLink(java.lang.String targetPath, java.lang.String linkTo, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer)voidclose()voidfinish()Stop recording payload datalonggetArchiveSize()Get the number of bytes of the uncompressed payload archiveDigestAlgorithmgetFileDigestAlgorithm()The algorithm used for generating file checksum digests whose ordinal is defined inHashAlgorithmTagsPayloadCodinggetPayloadCoding()The compression method for this compressed archive filejava.util.Optional<java.lang.String>getPayloadFlags()The compression flags for this compressed archive file, if anylonggetPayloadSize()The number of bytes of the compressed archive filejava.nio.channels.FileChannelopenChannel()Open a new channel to the payload data
-
-
-
Constructor Detail
-
PayloadRecorder
public PayloadRecorder() throws java.io.IOException- Throws:
java.io.IOException
-
PayloadRecorder
public PayloadRecorder(boolean autoFinish) throws java.io.IOException- Throws:
java.io.IOException
-
PayloadRecorder
public PayloadRecorder(boolean autoFinish, PayloadCoding payloadCoding, java.lang.String payloadFlags, DigestAlgorithm fileDigestAlgorithm) throws java.io.IOException- Throws:
java.io.IOException
-
-
Method Detail
-
addFile
public PayloadRecorder.Result addFile(java.lang.String targetPath, java.nio.file.Path path) throws java.io.IOException
- Throws:
java.io.IOException
-
addFile
public PayloadRecorder.Result addFile(java.lang.String targetPath, java.nio.file.Path path, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer) throws java.io.IOException
- Throws:
java.io.IOException
-
addFile
public PayloadRecorder.Result addFile(java.lang.String targetPath, java.nio.ByteBuffer data) throws java.io.IOException
- Throws:
java.io.IOException
-
addFile
public PayloadRecorder.Result addFile(java.lang.String targetPath, java.nio.ByteBuffer data, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer) throws java.io.IOException
- Throws:
java.io.IOException
-
addFile
public PayloadRecorder.Result addFile(java.lang.String targetPath, java.io.InputStream stream) throws java.io.IOException
- Throws:
java.io.IOException
-
addFile
public PayloadRecorder.Result addFile(java.lang.String targetPath, java.io.InputStream stream, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer) throws java.io.IOException
- Throws:
java.io.IOException
-
addDirectory
public PayloadRecorder.Result addDirectory(java.lang.String targetPath, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer) throws java.io.IOException
- Throws:
java.io.IOException
-
addSymbolicLink
public PayloadRecorder.Result addSymbolicLink(java.lang.String targetPath, java.lang.String linkTo, java.util.function.Consumer<org.apache.commons.compress.archivers.cpio.CpioArchiveEntry> customizer) throws java.io.IOException
- Throws:
java.io.IOException
-
finish
public void finish() throws java.io.IOExceptionStop recording payload dataIf the recorder is already finished then nothing will happen
- Throws:
java.io.IOException- in case of IO errors
-
getArchiveSize
public long getArchiveSize() throws java.io.IOExceptionDescription copied from interface:PayloadProviderGet the number of bytes of the uncompressed payload archive- Specified by:
getArchiveSizein interfacePayloadProvider- Returns:
- the number of bytes of the uncompressed payload archive
- Throws:
java.io.IOException- if anything goes wrong
-
getPayloadSize
public long getPayloadSize() throws java.io.IOExceptionDescription copied from interface:PayloadProviderThe number of bytes of the compressed archive file- Specified by:
getPayloadSizein interfacePayloadProvider- Returns:
- the number of bytes of the compressed archive file
- Throws:
java.io.IOException- if anything goes wrong
-
getPayloadCoding
public PayloadCoding getPayloadCoding()
Description copied from interface:PayloadProviderThe compression method for this compressed archive file- Specified by:
getPayloadCodingin interfacePayloadProvider- Returns:
- the compression method for this compressed archive file
-
getPayloadFlags
public java.util.Optional<java.lang.String> getPayloadFlags()
Description copied from interface:PayloadProviderThe compression flags for this compressed archive file, if any- Specified by:
getPayloadFlagsin interfacePayloadProvider- Returns:
- the compression flags for this compressed archive file, if any
-
getFileDigestAlgorithm
public DigestAlgorithm getFileDigestAlgorithm()
Description copied from interface:PayloadProviderThe algorithm used for generating file checksum digests whose ordinal is defined inHashAlgorithmTags- Specified by:
getFileDigestAlgorithmin interfacePayloadProvider- Returns:
- the algorithm used for generating file checksum digests whose
ordinal is defined in
HashAlgorithmTags
-
openChannel
public java.nio.channels.FileChannel openChannel() throws java.io.IOExceptionDescription copied from interface:PayloadProviderOpen a new channel to the payload dataThe caller is responsible for closing the resource
- Specified by:
openChannelin interfacePayloadProvider- Returns:
- the newly created channel
- Throws:
java.io.IOException- if opening the channels fails
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Throws:
java.io.IOException
-
-