{
getLogger().info( "Expanding " + getSourceFile().getAbsolutePath() + " to "
+ getDestFile().getAbsolutePath() );
FileOutputStream out = null;
BZip2CompressorInputStream zIn = null;
FileInputStream fis = null;
BufferedInputStream bis = null;
try
{
out = new FileOutputStream( getDestFile() );
fis = new FileInputStream( getSourceFile() );
bis = new BufferedInputStream( fis );
zIn = getBZip2InputStream( bis );
if ( zIn == null )
{
throw new ArchiverException( getSourceFile().getAbsolutePath() + " is an invalid bz2 file." );
}
byte[] buffer = new byte[8 * 1024];
int count = 0;
do
{
out.write( buffer, 0, count );
count = zIn.read( buffer, 0, buffer.length );
}
while ( count != -1 );
}
catch ( IOException ioe )
{