public interface ArchiveFormat
ArchiveFormatFactory
.Modifier and Type | Method and Description |
---|---|
org.apache.commons.compress.archivers.ArchiveInputStream |
archiveInputStream(InputStream is) |
org.apache.commons.compress.archivers.ArchiveOutputStream |
archiveOutputStream(OutputStream os) |
org.apache.commons.compress.archivers.ArchiveOutputStream |
create(File archiveFile)
Creates a new archive file.
|
String |
getArchiveFileName(String fileName)
Maps the given fileName to the name that a corresponding archive file would have.
|
String |
getName() |
boolean |
isArchiveFileName(String fileName) |
boolean |
matches(byte[] signature,
int signatureLength) |
org.apache.commons.compress.archivers.ArchiveInputStream |
open(File archiveFile)
Opens an existing archive file for reading.
|
void |
writeDirectoryEntry(org.apache.commons.compress.archivers.ArchiveOutputStream archiveOutputStream,
String name)
Appends a 'directory entry', i.e. an entry without contents, to the given archiveOutputStream.
|
void |
writeEntry(org.apache.commons.compress.archivers.ArchiveOutputStream archiveOutputStream,
org.apache.commons.compress.archivers.ArchiveEntry archiveEntry,
String name,
ConsumerWhichThrows<? super OutputStream,? extends IOException> writeContents)
Appends the given archiveEntry with the given contents to the given archiveOutputStream.
|
void |
writeEntry(org.apache.commons.compress.archivers.ArchiveOutputStream archiveOutputStream,
String name,
ConsumerWhichThrows<? super OutputStream,? extends IOException> writeContents)
Appends a 'normal' entry (as opposed to a 'directory entry') with the given contents to the given
archiveOutputStream . |
String getName()
boolean isArchiveFileName(String fileName)
ArchiveFormat
String getArchiveFileName(String fileName)
org.apache.commons.compress.archivers.ArchiveInputStream archiveInputStream(InputStream is) throws org.apache.commons.compress.archivers.StreamingNotSupportedException, org.apache.commons.compress.archivers.ArchiveException
ArchiveInputStream
for this format which reads from the given
input streamorg.apache.commons.compress.archivers.StreamingNotSupportedException
- This archive format does not support streamingorg.apache.commons.compress.archivers.ArchiveException
- The contents is invalid for this archive formatorg.apache.commons.compress.archivers.ArchiveInputStream open(File archiveFile) throws IOException, org.apache.commons.compress.archivers.ArchiveException
ArchiveInputStream
for this format which reads from the given archiveFileIOException
org.apache.commons.compress.archivers.ArchiveException
org.apache.commons.compress.archivers.ArchiveOutputStream archiveOutputStream(OutputStream os) throws org.apache.commons.compress.archivers.StreamingNotSupportedException, org.apache.commons.compress.archivers.ArchiveException
ArchiveOutputStream
for this format which writes to the given
output streamorg.apache.commons.compress.archivers.StreamingNotSupportedException
- This archive format does not support streamingorg.apache.commons.compress.archivers.ArchiveException
- Creation of archives in in this format is not supportedorg.apache.commons.compress.archivers.ArchiveOutputStream create(File archiveFile) throws IOException, org.apache.commons.compress.archivers.ArchiveException
ArchiveOutputStream
for this format which writes to the given archiveFile
org.apache.commons.compress.archivers.ArchiveException
- Creation of archives in this format is not supportedIOException
void writeEntry(org.apache.commons.compress.archivers.ArchiveOutputStream archiveOutputStream, String name, ConsumerWhichThrows<? super OutputStream,? extends IOException> writeContents) throws IOException
archiveOutputStream
. The archive entry is filled with "standard values", except for the entry name.
writeContents is called exactly once unless the name designates a directory entry.
archiveOutputStream
- Must match this ArchiveFormat
name
- The name for the entry; may be slightly changed (in particulary wrt/ leading
and trailing slashes) before the entry is createdwriteContents
- Writes the entry's contents to the 'subject' output streamIllegalArgumentException
- The type of the archiveOutputStream does not match this ArchiveFormat
IOException
writeDirectoryEntry(ArchiveOutputStream, String)
void writeDirectoryEntry(org.apache.commons.compress.archivers.ArchiveOutputStream archiveOutputStream, String name) throws IOException
archiveOutputStream
- Must match this ArchiveFormat
name
- The name for the entry; may be slightly changed (in particulary wrt/
leading and trailing slashes) before the entry is createdIllegalArgumentException
- The type of the archiveOutputStream does not match this ArchiveFormat
UnsupportedOperationException
- This archive format does not support 'directory entries'IOException
void writeEntry(org.apache.commons.compress.archivers.ArchiveOutputStream archiveOutputStream, org.apache.commons.compress.archivers.ArchiveEntry archiveEntry, @Nullable String name, ConsumerWhichThrows<? super OutputStream,? extends IOException> writeContents) throws IOException
null
, then it overrides the name in the archive entry.
If the type of the archiveEntry does not match this ArchiveFormat
, then it is automatically
converted to the correct type, preserving as much information as possible ('re-archiving').
writeContents is called exactly once unless the archiveEntry is a directory entry.
archiveOutputStream
- Must match this ArchiveFormat
archiveEntry
- May or may not match this ArchiveFormat
(see above)name
- Overrides the name in the archiveEntry, or null
writeContents
- Writes the entry's contents to the 'subject' output streamIllegalArgumentException
- The type of the archiveOutputStream does not match this ArchiveFormat
IOException
boolean matches(byte[] signature, int signatureLength)
Copyright © 2018 Arno Unkrig. All rights reserved.