Sorry, joining the party so late ...but this thread let me to actually have a look ;)
So my comments: o Don't like that compressor does both compression and decompression. o Always use File not String o Please parameter overloading ...this method naming scheme makes the API really ugly But to be a bit more constructive... I would think more of something like: Compressor compressor = CompressorFactory.newInstance(new File("file.bz2")); Compressor compressor = CompressorFactory.newInstance("bzip2"); Compressor compressor = new Bzip2Compressor(); Compressor compressor = Bzip2Compressor.getInstance(); File output = compressor.compress(new File("input")); File output = compressor.compress(new FileInputStream("input")); InputStream in = compressor.compressStream(new File("input")) InputStream in = compressor.compressStream(new FileInputStream("input")) compressor.compressTo(new File("input"), new File("output")); compressor.compressTo(new FileInputStream("input"), new FileOutputStream("output")); Decompressor decompressor = DecompressorFactory.newInstance("bzip2"); File output = decompressor.decompress(new File("input")) File output = decompressor.decompress(new FileInputStream("input")); InputStream in = decompressor.decompressStream(new File("input")) InputStream in = decompressor.decompressStream(new FileInputStream("input")) decompressor.decompressTo(new File("input"), new File("output")); decompressor.decompressTo(new FileInputStream("input"), new FileOutputStream("output")); Archive arch = new TarArchive(new File("my.tar")); Archive arch = ArchiveFactory.newInstance(new File("my.tar"); arch.add(new File("input")); arch.add(new FileInputStream("input")); arch.delete("path"); arch.save(); arch.save(new File("output")); arch.save(new FileOutputStream("out")); for(Iterator it = arch.iterator(); it.hasNext(); it) { ArchiveEntry entry = (ArchiveEntry) it.next(); ... } ArchiveEntry entry = arch.getEntry("path"); entry.extract(new File("output")); entry.extract(new FileOutputStream("output")); entry.delete(); cheers -- Torsten --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]