Author: jcouteau Date: 2010-09-07 12:13:04 +0200 (Tue, 07 Sep 2010) New Revision: 283 Url: http://nuiton.org/repositories/revision/wikitty/283 Log: throws a wikittyException if a required extension is not present in base during import. It simplifies debugging. Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/importexport/ImportExportCSV.java Modified: trunk/wikitty-api/src/main/java/org/nuiton/wikitty/importexport/ImportExportCSV.java =================================================================== --- trunk/wikitty-api/src/main/java/org/nuiton/wikitty/importexport/ImportExportCSV.java 2010-09-07 09:44:57 UTC (rev 282) +++ trunk/wikitty-api/src/main/java/org/nuiton/wikitty/importexport/ImportExportCSV.java 2010-09-07 10:13:04 UTC (rev 283) @@ -29,16 +29,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.util.StringUtil; -import org.nuiton.wikitty.Criteria; -import org.nuiton.wikitty.FacetTopic; -import org.nuiton.wikitty.FieldType; -import org.nuiton.wikitty.PagedResult; -import org.nuiton.wikitty.Wikitty; -import org.nuiton.wikitty.WikittyExtension; -import org.nuiton.wikitty.WikittyImpl; -import org.nuiton.wikitty.WikittyService; -import org.nuiton.wikitty.WikittyTransaction; -import org.nuiton.wikitty.WikittyUtil; +import org.nuiton.wikitty.*; import org.nuiton.wikitty.search.Element; import org.nuiton.wikitty.search.Search; @@ -150,6 +141,8 @@ /** * Recusively add missing extension of not exist and required extension too. + * + * @throws WikittyException if the extension does not exist in base */ protected void addMissingExtension(String securityToken, WikittyService ws, WikittyTransaction transaction, Wikitty currentWikitty, String extName) { @@ -158,16 +151,20 @@ WikittyExtension extension = ws.restoreExtensionLastVersion( securityToken, transaction, extName); - String requires = extension.getRequires(); - if (StringUtils.isNotEmpty(requires)) { - // add required extensions BEFORE current - for (String require : requires.split(",")) { - String localRequire = require.trim(); - addMissingExtension(securityToken, ws, transaction, currentWikitty, localRequire); + if (extension != null) { + String requires = extension.getRequires(); + if (StringUtils.isNotEmpty(requires)) { + // add required extensions BEFORE current + for (String require : requires.split(",")) { + String localRequire = require.trim(); + addMissingExtension(securityToken, ws, transaction, currentWikitty, localRequire); + } } - } - currentWikitty.addExtension(extension); + currentWikitty.addExtension(extension); + } else { + throw new WikittyException("Extension " + extName + " does not exist"); + } } }
participants (1)
-
jcouteau@users.nuiton.org