Author: tchemit Date: 2013-04-30 14:23:35 +0200 (Tue, 30 Apr 2013) New Revision: 895 Url: http://forge.codelutin.com/projects/tutti/repository/revisions/895 Log: fixes #2379: [IMP/EXP] - Structure du ZIP lors de l'import d'une base Modified: trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java Modified: trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java =================================================================== --- trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java 2013-04-30 09:54:27 UTC (rev 894) +++ trunk/tutti-service/src/main/java/fr/ifremer/tutti/service/PersistenceService.java 2013-04-30 12:23:35 UTC (rev 895) @@ -187,17 +187,26 @@ throw new TuttiBusinessException(_("tutti.service.persistence.checkImportstructure.tooManyChildren", file)); } fileObject = children[0]; - checkArchiveDb(file, fileObject, "db"); - checkArchiveDb(file, fileObject, "meas_files"); - checkArchiveDb(file, fileObject, "protocol"); + checkArchiveDb(file, fileObject, "db", true); + checkArchiveDb(file, fileObject, "meas_files", false); + checkArchiveDb(file, fileObject, "protocol", false); } protected void checkArchiveDb(File file, FileObject fileObject, - String dir) { + String dir, + boolean required) { FileObject directory = TuttiIOUtil.getChild(fileObject, dir, _("tutti.service.persistence.getChild.error", dir)); if (directory == null) { - throw new TuttiBusinessException(_("tutti.service.persistence.checkArchiveDb.error", file, dir)); + + String message = _("tutti.service.persistence.checkArchiveDb.error", file, dir); + if (required) { + throw new TuttiBusinessException(message); + } + + if (log.isWarnEnabled()) { + log.warn(message); + } } }