[Lutinutil-commits] r1462 - in lutinutil/trunk/src: main/java/org/codelutin/util test/java/org/codelutin/util
Author: chatellier Date: 2009-05-01 17:39:17 +0000 (Fri, 01 May 2009) New Revision: 1462 Modified: lutinutil/trunk/src/main/java/org/codelutin/util/Tbz2Util.java lutinutil/trunk/src/test/java/org/codelutin/util/Tbz2UtilTest.java Log: Now md5 is correct (confirmed by unix md5sum tool ;) ) Modified: lutinutil/trunk/src/main/java/org/codelutin/util/Tbz2Util.java =================================================================== --- lutinutil/trunk/src/main/java/org/codelutin/util/Tbz2Util.java 2009-05-01 17:07:26 UTC (rev 1461) +++ lutinutil/trunk/src/main/java/org/codelutin/util/Tbz2Util.java 2009-05-01 17:39:17 UTC (rev 1462) @@ -175,6 +175,12 @@ OutputStream tbz2os = new FileOutputStream(tbz2File); try { + + // if md5 creation flag + if (createMD5) { + tbz2os = new MD5OutputStream(tbz2os); + } + OutputStream cos = new CompressorStreamFactory().createCompressorOutputStream("bzip2", tbz2os); ArchiveOutputStream os = new ArchiveStreamFactory() @@ -201,23 +207,23 @@ } os.finish(); os.close(); - cos.close(); - tbz2os.close(); // if md5 creation flag if (createMD5) { - MD5InputStream in = new MD5InputStream(new FileInputStream(tbz2File)); - String md5hash = MD5.asHex(in.hash()); - in.close(); + String md5hash = MD5.asHex(((MD5OutputStream) tbz2os).hash()); File md5File = new File(tbz2File.getAbsoluteFile() + ".md5"); FileUtil.writeString(md5File, md5hash); } - + + cos.close(); } catch (ArchiveException e) { throw new IOException("Can't archive as tar", e); } catch (CompressorException e) { throw new IOException("Can't compress as bzip2", e); } + finally { + tbz2os.close(); + } } /** Modified: lutinutil/trunk/src/test/java/org/codelutin/util/Tbz2UtilTest.java =================================================================== --- lutinutil/trunk/src/test/java/org/codelutin/util/Tbz2UtilTest.java 2009-05-01 17:07:26 UTC (rev 1461) +++ lutinutil/trunk/src/test/java/org/codelutin/util/Tbz2UtilTest.java 2009-05-01 17:39:17 UTC (rev 1462) @@ -134,7 +134,7 @@ @Test public void testCompressMD5() throws IOException { File tbz2File = File.createTempFile("testCompressTbz2Md5", ".tbz2"); - tbz2File.deleteOnExit(); + //tbz2File.deleteOnExit(); log.info("Compress " + I18N_DIR + " in tbz2 file = " + tbz2File); FileFilter filter = new FileFilter() { @@ -154,7 +154,7 @@ md5File.deleteOnExit(); Assert.assertTrue(md5File.exists()); String md5sum = FileUtil.readAsString(md5File); - Assert.assertEquals("d41d8cd98f00b204e9800998ecf8427e", md5sum); + Assert.assertEquals("566f3f4b280eddf8637fe9e4336980a9", md5sum); } }
participants (1)
-
chatellierï¼ users.labs.libre-entreprise.org