diff --git a/src/org/dclermonte/siba/model/SibaManager.java b/src/org/dclermonte/siba/model/SibaManager.java index 32ef090..c690a28 100644 --- a/src/org/dclermonte/siba/model/SibaManager.java +++ b/src/org/dclermonte/siba/model/SibaManager.java @@ -58,7 +58,6 @@ public class SibaManager String outputFileNameWithoutExtension = fileToSave.getName() + "-" + textDate; result = new File(target + "/" + outputFileNameWithoutExtension + ".tgz"); - OutputStream gzipOutputStream = new GzipCompressorOutputStream( new BufferedOutputStream(new FileOutputStream(result))); TarArchiveOutputStream out = new TarArchiveOutputStream(gzipOutputStream); @@ -137,7 +136,19 @@ public class SibaManager if (file.isDirectory()) { - directoryToSave(file, outputStream, pathLength); + if (file.listFiles().length == 0) + { + TarArchiveEntry tarArchiveEntry = new TarArchiveEntry(file); + String pathPartiel = file.getPath().substring(pathLength); + tarArchiveEntry.setName(pathPartiel); + outputStream.putArchiveEntry(tarArchiveEntry); + outputStream.closeArchiveEntry(); + } + else + { + directoryToSave(file, outputStream, pathLength); + } + } else { diff --git a/test/org/dclermonte/siba/model/SibaManagerTest.java b/test/org/dclermonte/siba/model/SibaManagerTest.java index b06fabe..7fcc67b 100644 --- a/test/org/dclermonte/siba/model/SibaManagerTest.java +++ b/test/org/dclermonte/siba/model/SibaManagerTest.java @@ -46,8 +46,8 @@ public class SibaManagerTest public void backupTest02() throws ArchiveException, IOException, SibaNullException { String md5LineSource = "qslfjqmlsfjmqlsjfqmlsjfsjf mqlsfjmljdf"; - File target = SibaManager.backup(new File("../data/simplestuff"), new File("../tmp/")); - + File target = SibaManager.backup(new File("../data/simplestuff"), new File("/home/papou/tmp")); + System.out.println(target.getName()); // Load md5 file. String encoding = null; String md5LineTarget = FileUtils.readFileToString(target, encoding);