Index: topia2/src/java/org/codelutin/topia/generator/EntityHibernateMappingGenerator.java diff -u topia2/src/java/org/codelutin/topia/generator/EntityHibernateMappingGenerator.java:1.34 topia2/src/java/org/codelutin/topia/generator/EntityHibernateMappingGenerator.java:1.35 --- topia2/src/java/org/codelutin/topia/generator/EntityHibernateMappingGenerator.java:1.34 Wed Oct 17 09:42:27 2007 +++ topia2/src/java/org/codelutin/topia/generator/EntityHibernateMappingGenerator.java Wed Nov 7 17:01:57 2007 @@ -24,10 +24,10 @@ * Created: 12 déc. 2005 * * @author Arnaud Thimel -* @version $Revision: 1.34 $ +* @version $Revision: 1.35 $ * -* Mise a jour: $Date: 2007-10-17 09:42:27 $ -* par : $Author: chatellier $ +* Mise a jour: $Date: 2007-11-07 17:01:57 $ +* par : $Author: thimel $ */ package org.codelutin.topia.generator; @@ -103,6 +103,10 @@ /*{name="<%=GeneratorUtil.getDOType(clazz, model)%>" }*/ /*{extends="<%=GeneratorUtil.getDOType(superClassname, model)%>" }*/ /*{table="<%=GeneratorUtil.getDBName(clazz)%>" }*/ + String schema = GeneratorUtil.getSchemaName(clazz, model); + if (schema != null) { +/*{schema="<%=schema%>" }*/ + } /*{node="<%=GeneratorUtil.getDOType(clazz, model)%>" }*/ /*{abstract="<%=(clazz.isAbstract()?"true":"false")%>" }*/ //On précise au proxy de quelle interface hérite l'objet @@ -114,6 +118,10 @@ /*{ " }*/ //On précise au proxy de quelle interface hérite l'objet Index: topia2/src/java/org/codelutin/topia/generator/GeneratorUtil.java diff -u topia2/src/java/org/codelutin/topia/generator/GeneratorUtil.java:1.18 topia2/src/java/org/codelutin/topia/generator/GeneratorUtil.java:1.19 --- topia2/src/java/org/codelutin/topia/generator/GeneratorUtil.java:1.18 Tue Oct 31 14:57:24 2006 +++ topia2/src/java/org/codelutin/topia/generator/GeneratorUtil.java Wed Nov 7 17:01:57 2007 @@ -25,9 +25,9 @@ * * @author Arnaud Thimel * - * @version $Revision: 1.18 $ + * @version $Revision: 1.19 $ * - * Mise a jour: $Date: 2006-10-31 14:57:24 $ par : $Author: ruchaud $ + * Mise a jour: $Date: 2007-11-07 17:01:57 $ par : $Author: thimel $ */ package org.codelutin.topia.generator; @@ -96,6 +96,11 @@ public static final String TAG_DB_NAME = "dbName"; /** + * Tag pour le nom du schema en BD + */ + public static final String TAG_SCHEMA_NAME = "dbSchema"; + + /** * Tag pour la taille du champ en BD */ public static final String TAG_LENGTH = "length"; @@ -221,6 +226,26 @@ return toLowerCaseFirstLetter(element.getName()); } + /** + * Cherches et renvoie le schema a utiliser sur cet element, sinon sur le model. + * @return le nom du schema ou null + */ + public static String getSchemaName(ObjectModelElement element, ObjectModel model) { + if (element == null) { + if (model != null) { + if (notEmpty(model.getTagValue(TAG_SCHEMA_NAME))) { + return model.getTagValue(TAG_SCHEMA_NAME); + } + } + return null; + } + if (notEmpty(element.getTagValue(TAG_SCHEMA_NAME))) { + return element.getTagValue(TAG_SCHEMA_NAME); + } + //On va chercher sur l'element declarant + return getSchemaName(element.getDeclaringElement(), model); + } + public static Collection getElementsWithStereotype( Collection elements, String... stereotypes) { Collection result = new ArrayList();