public final class BUnzip2 extends AbstractStreamCompressionProgram<T>
bunzip2
command. It understands a
subset of bunzip2
's command line arguments.
The program decompresses one or several files. A file must have the file name extension .bz2 to be decompressed. When it is decompressed, the .bz2 extension is removed.
The program uses BZip2InputStream
for the
decompression.
Usage: java -cp [classpath] org.at4j.comp.bzip2.prog.BUnzip2 [options] file[s] Where: classpath - Should include the at4j, bzip2 and entityfs-core Jars. options - Command options. See below. file[s] - The files to compress. Options: --apache - Use Apache Commons Compress' bunzip2 implementation instead of At4J's. -c - Write the decompressed data to standard output and do not delete the original files. --keep -k - Don't delete the original files. --threads no - Set the maximum number of threads to use for decompressing. Different files may be decompressed in different threads. The default number of threads is 1. --timing - After decompressing all files, print out how long it took.
BZip2
Constructor and Description |
---|
BUnzip2() |
Modifier and Type | Method and Description |
---|---|
protected InputStream |
createInputStream(int sourceNo,
T settings)
Create an input stream on the source entity for the given command line
arguments.
|
protected OutputStream |
createOutputStream(int targetNo,
T settings)
Create an output stream on the target entity for the given command line
arguments.
|
static void |
main(String[] args) |
protected org.at4j.comp.bzip2.prog.BUnzip2CommandLineArguments |
parseCommandLine(String[] args)
Subclasses implement this to parse their command line.
|
protected void |
postProcess(int sourceNo,
T settings)
Subclasses may override this for postprocessing the source and/or target
entity.
|
run
getArg, getParentLocation, isFlagArgument
protected org.at4j.comp.bzip2.prog.BUnzip2CommandLineArguments parseCommandLine(String[] args) throws CommandErrorException
AbstractStreamCompressionProgram
parseCommandLine
in class AbstractStreamCompressionProgram<org.at4j.comp.bzip2.prog.BUnzip2CommandLineArguments>
args
- The command line arguments, unparsed.CommandErrorException
- If the commands were invalid.public static void main(String[] args)
protected InputStream createInputStream(int sourceNo, T settings) throws IOException
AbstractStreamCompressionProgram
createInputStream
in class AbstractStreamCompressionProgram<T extends org.at4j.comp.bzip2.prog.AbstractBZip2ProgramArguments>
sourceNo
- The index number for the source entity. The first source
has index == 0.settings
- The command line arguments.IOException
- On I/O errors.protected OutputStream createOutputStream(int targetNo, T settings) throws IOException, IgnoreFileException
AbstractStreamCompressionProgram
createOutputStream
in class AbstractStreamCompressionProgram<T extends org.at4j.comp.bzip2.prog.AbstractBZip2ProgramArguments>
targetNo
- The index number for the target entity. The first target
has index == 0.settings
- The command line arguments.IOException
- On I/O errors.IgnoreFileException
- If the file should be ignored for some
reason.protected void postProcess(int sourceNo, T settings) throws IOException
AbstractStreamCompressionProgram
postProcess
in class AbstractStreamCompressionProgram<T extends org.at4j.comp.bzip2.prog.AbstractBZip2ProgramArguments>
sourceNo
- The index number for the source and target entities.settings
- The command line arguments.IOException
- On I/O errors.