X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.suite.core%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fcore%2FCustomMaintenanceService.java;h=5d76eb126ae5ec4c83cf21d7de33316e385d9c88;hb=26204f48e2c40e98cc5b85757779b8a291edaa6a;hp=2fd15d1575903b450255ee1a7ef41ad2b7bff20c;hpb=60331bd8849821baaa87be00b97de4eb535dd7ba;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.suite.core/src/org/argeo/suite/core/CustomMaintenanceService.java b/org.argeo.suite.core/src/org/argeo/suite/core/CustomMaintenanceService.java index 2fd15d1..5d76eb1 100644 --- a/org.argeo.suite.core/src/org/argeo/suite/core/CustomMaintenanceService.java +++ b/org.argeo.suite.core/src/org/argeo/suite/core/CustomMaintenanceService.java @@ -34,14 +34,18 @@ public abstract class CustomMaintenanceService extends AbstractMaintenanceServic if (!typologies.isEmpty()) { Node termsBase = JcrUtils.getOrAdd(customBaseNode, EntityType.terms.name(), EntityType.typologies.get()); for (String terms : typologies) { - loadTerms(customBaseNode, terms); + loadTerms(termsBase, terms); } + // TODO do not save here, so that upper layers can decide when to save termsBase.getSession().save(); } } protected void loadTerms(Node termsBase, String name) throws IOException, RepositoryException { try { +// if (termsBase.hasNode(name)) +// return; + String termsLoadPath = getTypologiesLoadBase() + '/' + name + ".xml"; URL termsUrl = getClass().getClassLoader().getResource(termsLoadPath); if (termsUrl == null) @@ -59,6 +63,7 @@ public abstract class CustomMaintenanceService extends AbstractMaintenanceServic } if (log.isDebugEnabled()) log.debug("Terms '" + name + "' loaded."); + // TODO do not save here, so that upper layers can decide when to save termsBase.getSession().save(); } catch (RepositoryException | IOException e) { log.error("Cannot load terms '" + name + "': " + e.getMessage());