This is an automated email from the git hooks/post-receive script. New commit to branch feature/3860_introduce_topiasqlbatchsupport in repository topia. See http://git.nuiton.org/topia.git commit 3fb01b270f94faf2d51bd7442feb61a886980e5c Author: Tony CHEMIT <chemit@codelutin.com> Date: Mon Jan 4 20:44:35 2016 +0100 Generate metadata model location path --- .../internal/AbstractTopiaApplicationContext.java | 5 +++-- .../internal/support/TopiaMetadataModelSupportImpl.java | 5 ++--- .../topia/templates/ApplicationContextTransformer.java | 15 +++++++++++++++ 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/topia-persistence/src/main/java/org/nuiton/topia/persistence/internal/AbstractTopiaApplicationContext.java b/topia-persistence/src/main/java/org/nuiton/topia/persistence/internal/AbstractTopiaApplicationContext.java index a0b1292..bf71b06 100644 --- a/topia-persistence/src/main/java/org/nuiton/topia/persistence/internal/AbstractTopiaApplicationContext.java +++ b/topia-persistence/src/main/java/org/nuiton/topia/persistence/internal/AbstractTopiaApplicationContext.java @@ -52,7 +52,6 @@ import org.nuiton.topia.persistence.event.TopiaSchemaListener; import org.nuiton.topia.persistence.event.TopiaTransactionListener; import org.nuiton.topia.persistence.event.TopiaTransactionVetoable; import org.nuiton.topia.persistence.internal.support.TopiaFiresSupport; -import org.nuiton.topia.persistence.internal.support.TopiaMetadataModelSupportImpl; import org.nuiton.topia.persistence.internal.support.TopiaServiceSupportImpl; import org.nuiton.topia.persistence.metadata.TopiaMetadataModel; import org.nuiton.topia.persistence.support.TopiaMetadataModelSupport; @@ -128,13 +127,15 @@ public abstract class AbstractTopiaApplicationContext<K extends TopiaPersistence init(); } + protected abstract TopiaMetadataModelSupport loadMetadataModelSupport(); + protected void init() { new TopiaConfigurationBuilder().check(configuration); topiaFiresSupport = new TopiaFiresSupport(); sessionRegistry = new TopiaHibernateSessionRegistry(); - topiaMetadataModelSupport = new TopiaMetadataModelSupportImpl(this); + topiaMetadataModelSupport = loadMetadataModelSupport(); // First initialize all the services initServices(); diff --git a/topia-persistence/src/main/java/org/nuiton/topia/persistence/internal/support/TopiaMetadataModelSupportImpl.java b/topia-persistence/src/main/java/org/nuiton/topia/persistence/internal/support/TopiaMetadataModelSupportImpl.java index 4fdd915..3b0ccca 100644 --- a/topia-persistence/src/main/java/org/nuiton/topia/persistence/internal/support/TopiaMetadataModelSupportImpl.java +++ b/topia-persistence/src/main/java/org/nuiton/topia/persistence/internal/support/TopiaMetadataModelSupportImpl.java @@ -1,6 +1,5 @@ package org.nuiton.topia.persistence.internal.support; -import org.nuiton.topia.persistence.TopiaApplicationContext; import org.nuiton.topia.persistence.TopiaException; import org.nuiton.topia.persistence.TopiaPersistenceContext; import org.nuiton.topia.persistence.metadata.TopiaMetadataModel; @@ -19,8 +18,8 @@ public class TopiaMetadataModelSupportImpl implements TopiaMetadataModelSupport protected TopiaMetadataModel metadataModel; - public <K extends TopiaPersistenceContext> TopiaMetadataModelSupportImpl(TopiaApplicationContext topiaApplicationContext) { - this.metadataModelPath = String.format("/%s/%sTopiaMetadataModel.json", topiaApplicationContext.getClass().getPackage().getName().replace(".", "/"), topiaApplicationContext.getModelName()); + public <K extends TopiaPersistenceContext> TopiaMetadataModelSupportImpl(String packageName, String modelName) { + this.metadataModelPath = String.format("/%s/%sTopiaMetadataModel.json", packageName.replace(".", "/"), modelName); } @Override diff --git a/topia-templates/src/main/java/org/nuiton/topia/templates/ApplicationContextTransformer.java b/topia-templates/src/main/java/org/nuiton/topia/templates/ApplicationContextTransformer.java index f7de8e8..bdc4783 100644 --- a/topia-templates/src/main/java/org/nuiton/topia/templates/ApplicationContextTransformer.java +++ b/topia-templates/src/main/java/org/nuiton/topia/templates/ApplicationContextTransformer.java @@ -38,6 +38,8 @@ import org.nuiton.topia.persistence.TopiaEntity; import org.nuiton.topia.persistence.TopiaEntityEnumProvider; import org.nuiton.topia.persistence.internal.AbstractTopiaApplicationContext; import org.nuiton.topia.persistence.internal.AbstractTopiaPersistenceContextConstructorParameter; +import org.nuiton.topia.persistence.internal.support.TopiaMetadataModelSupportImpl; +import org.nuiton.topia.persistence.support.TopiaMetadataModelSupport; import org.nuiton.topia.persistence.util.EntityOperator; import java.util.Properties; @@ -258,6 +260,19 @@ public class ApplicationContextTransformer extends ObjectModelTransformerToJava return <%=entityEnumName%>.valueOf(name); }*/ ); + + addImport(output, TopiaMetadataModelSupportImpl.class); + String defaultPackageName = getDefaultPackageName(); + + op = addOperation(output, "loadMetadataModelSupport", TopiaMetadataModelSupport.class, + ObjectModelJavaModifier.PROTECTED); + addAnnotation(output, op, Override.class); + setOperationBody(op, "" +/*{ + return new TopiaMetadataModelSupportImpl("<%=defaultPackageName%>", "<%=modelName%>"); + }*/ + ); + } protected ObjectModelClass generateImpl(String packageName, -- To stop receiving notification emails like this one, please contact nuiton.org SCM administrator <admin+scm@nuiton.org>.