r1732 - in trunk: topia-persistence topia-persistence/src/main/java/org/nuiton/topia/generator topia-service-history topia-service-migration topia-service-security topia-soa/src/main/java/org/nuiton/topia/generator topia-soa/src/main/java/org/nuiton/topia/service/servers
Author: tchemit Date: 2009-12-20 17:29:38 +0100 (Sun, 20 Dec 2009) New Revision: 1732 Added: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/TopiaMetaTransformer.java Modified: trunk/topia-persistence/pom.xml trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/BeanGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOAbstractGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOHelperGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOHelperTransformer.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOImplGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DTOGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityAbstractGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityDTOGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityHibernateMappingGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityImplGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityInterfaceGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/InterfaceGenerator.java trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/TopiaMetaGenerator.java trunk/topia-service-history/pom.xml trunk/topia-service-migration/pom.xml trunk/topia-service-security/pom.xml trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceAbstractGenerator.java trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceImplGenerator.java trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceInterfaceGenerator.java trunk/topia-soa/src/main/java/org/nuiton/topia/generator/TopiaApplicationServiceMetaGenerator.java trunk/topia-soa/src/main/java/org/nuiton/topia/service/servers/XMLRPCServer.java Log: - use cleaned eugene api : everything which is not neutral can not be on org.nuiton.eugene package (go to models.object or models.state) - remove deprecated code, clean code in soa module - introduce TopiaMetaTransformer using AbstractMetaTransformer api from eugene and use it Modified: trunk/topia-persistence/pom.xml =================================================================== --- trunk/topia-persistence/pom.xml 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/pom.xml 2009-12-20 16:29:38 UTC (rev 1732) @@ -156,7 +156,7 @@ <phase>generate-test-sources</phase> <configuration> <testPhase>true</testPhase> - <templates>org.nuiton.topia.generator.TopiaMetaGenerator, + <templates>org.nuiton.topia.generator.TopiaMetaTransformer, org.nuiton.topia.generator.InterfaceTransformer, org.nuiton.topia.generator.BeanTransformer, org.nuiton.topia.generator.EntityDTOTransformer Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/BeanGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/BeanGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/BeanGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -50,7 +50,7 @@ import java.util.Set; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.GeneratorUtil; import org.nuiton.eugene.ImportsManager; import org.nuiton.eugene.models.object.ObjectModelAttribute; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOAbstractGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOAbstractGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOAbstractGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -46,7 +46,7 @@ import org.apache.commons.lang.StringUtils; import org.nuiton.eugene.GeneratorUtil; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.models.object.ObjectModelAssociationClass; import org.nuiton.eugene.models.object.ObjectModelAttribute; import org.nuiton.eugene.models.object.ObjectModelClass; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -38,7 +38,7 @@ import java.io.IOException; import java.io.Writer; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.models.object.ObjectModelClass; /** Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOHelperGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOHelperGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOHelperGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -43,8 +43,7 @@ import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.GeneratorUtil; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.models.object.ObjectModel; import org.nuiton.eugene.models.object.ObjectModelClass; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOHelperTransformer.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOHelperTransformer.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOHelperTransformer.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -22,7 +22,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelType; +import org.nuiton.eugene.models.object.ObjectModelType; import org.nuiton.eugene.Template; import org.nuiton.eugene.java.ObjectModelTransformerToJava; import org.nuiton.eugene.models.object.*; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOImplGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOImplGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DAOImplGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -38,7 +38,7 @@ import java.io.IOException; import java.io.Writer; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.models.object.ObjectModelClass; import org.nuiton.eugene.models.object.ObjectModelOperation; /** Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DTOGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DTOGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/DTOGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -43,7 +43,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.GeneratorUtil; import org.nuiton.eugene.models.object.ObjectModelAssociationClass; import org.nuiton.eugene.models.object.ObjectModelAttribute; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityAbstractGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityAbstractGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityAbstractGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -37,7 +37,7 @@ import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.GeneratorUtil; import org.nuiton.eugene.models.object.ObjectModelAssociationClass; import org.nuiton.eugene.models.object.ObjectModelAttribute; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityDTOGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityDTOGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityDTOGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -34,6 +34,7 @@ package org.nuiton.topia.generator; +import org.nuiton.eugene.models.object.*; import static org.nuiton.topia.generator.TopiaGeneratorUtil.TAG_ANNOTATION; import static org.nuiton.topia.generator.TopiaGeneratorUtil.hasUnidirectionalRelationOnAbstractType; @@ -44,12 +45,8 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.GeneratorUtil; -import org.nuiton.eugene.models.object.ObjectModelAssociationClass; -import org.nuiton.eugene.models.object.ObjectModelAttribute; -import org.nuiton.eugene.models.object.ObjectModelClass; -import org.nuiton.eugene.models.object.ObjectModelClassifier; // do not remove me import org.apache.commons.lang.StringUtils; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityHibernateMappingGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityHibernateMappingGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityHibernateMappingGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -38,7 +38,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.GeneratorUtil; import org.nuiton.eugene.models.object.ObjectModelAssociationClass; import org.nuiton.eugene.models.object.ObjectModelAttribute; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityImplGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityImplGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityImplGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -39,7 +39,7 @@ import java.io.Writer; import java.util.Collection; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.models.object.ObjectModelClass; import org.nuiton.eugene.models.object.ObjectModelOperation; import org.apache.commons.logging.Log; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityInterfaceGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityInterfaceGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/EntityInterfaceGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -36,7 +36,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.GeneratorUtil; import org.nuiton.eugene.models.object.ObjectModelAssociationClass; import org.nuiton.eugene.models.object.ObjectModelAttribute; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/InterfaceGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/InterfaceGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/InterfaceGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -37,12 +37,8 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; -import org.nuiton.eugene.models.object.ObjectModelClass; -import org.nuiton.eugene.models.object.ObjectModelClassifier; -import org.nuiton.eugene.models.object.ObjectModelInterface; -import org.nuiton.eugene.models.object.ObjectModelOperation; -import org.nuiton.eugene.models.object.ObjectModelParameter; +import org.nuiton.eugene.models.object.ObjectModelGenerator; +import org.nuiton.eugene.models.object.*; import java.io.File; import java.io.IOException; Modified: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/TopiaMetaGenerator.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/TopiaMetaGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/TopiaMetaGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -35,7 +35,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.eugene.AbstractGenerator; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.Template; import org.nuiton.eugene.Transformer; import org.nuiton.eugene.models.object.ObjectModel; @@ -47,6 +47,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; +import java.util.Collections; import java.util.List; import org.nuiton.eugene.models.object.ObjectModelClass; @@ -55,34 +56,26 @@ * Il repercute la generation de code sur chacun des generateurs de ToPIA en se * positionnant en tant que parent de ces generateurs. * @plexus.component role="org.nuiton.eugene.Template" role-hint="org.nuiton.topia.generator.TopiaMetaGenerator" + * @deprecated since 2.3.0, prefer use the corresponding {@link Transformer} : {@link TopiaMetaTransformer}. */ +@Deprecated public class TopiaMetaGenerator extends ObjectModelGenerator { protected static Log log = LogFactory.getLog(TopiaMetaGenerator.class); - + /** * la liste des generateurs par defaut a utiliser */ - protected static final List<Class<? extends Template<ObjectModel>>> DEFAULT_GENERATORS = java.util.Collections + protected static final List<Class<? extends ObjectModelGenerator>> DEFAULT_GENERATORS = Collections .unmodifiableList(Arrays.asList( - -// EntityInterfaceGenerator.class, - EntityInterfaceTransformer.class, -// EntityAbstractGenerator.class, - EntityAbstractTransformer.class, - EntityImplTransformer.class, -// EntityImplGenerator.class, + EntityInterfaceGenerator.class, + EntityAbstractGenerator.class, + EntityImplGenerator.class, EntityHibernateMappingGenerator.class, - - DAOTransformer.class, - DAOImplTransformer.class, - DAOAbstractTransformer.class, - DAOHelperTransformer.class -// DAOGenerator.class, -// DAOImplGenerator.class, -// DAOAbstractGenerator.class, - -// DAOHelperGenerator.class) + DAOGenerator.class, + DAOImplGenerator.class, + DAOAbstractGenerator.class, + DAOHelperGenerator.class )); protected boolean validateModel(ObjectModel model) { @@ -140,7 +133,7 @@ log.warn("no entity to generate, " + getClass().getName() + " is skipped"); return; } - + generatePersistence(model, destDir); } @@ -158,7 +151,7 @@ generator = generatorClass.newInstance(); // init generator - + if (generator instanceof AbstractGenerator) { ((AbstractGenerator<ObjectModel>)generator).setParent(this); } @@ -172,7 +165,7 @@ } throw new RuntimeException(e); } - + // log if(log.isDebugEnabled()) { log.debug("call template : " + generatorClass.getSimpleName()); Added: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/TopiaMetaTransformer.java =================================================================== --- trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/TopiaMetaTransformer.java (rev 0) +++ trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/TopiaMetaTransformer.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -0,0 +1,94 @@ +package org.nuiton.topia.generator; + +import org.apache.commons.logging.Log; +import org.apache.commons.logging.LogFactory; +import org.nuiton.eugene.AbstractMetaTransformer; +import org.nuiton.eugene.models.object.ObjectModel; +import org.nuiton.eugene.models.object.ObjectModelClass; +import org.nuiton.eugene.models.object.validator.AttributeNamesValidator; +import org.nuiton.eugene.models.object.validator.ClassNamesValidator; +import org.nuiton.eugene.models.object.validator.ObjectModelValidator; + +import java.util.ArrayList; +import java.util.List; + +/** + * Created: 20 déc. 2009 + * + * @author Tony Chemit <chemit@codelutin.com> Copyright Code Lutin + * @version $Revision$ + * <p/> + * Mise a jour: $Date$ par : + * $Author: tchemit $ + * @plexus.component role="org.nuiton.eugene.Template" role-hint="org.nuiton.topia.generator.TopiaMetaTransformer" + */ +public class TopiaMetaTransformer extends AbstractMetaTransformer<ObjectModel> { + + /** + * Logger + */ + private static final Log log = LogFactory.getLog(TopiaMetaTransformer.class); + + public TopiaMetaTransformer() { + super( + EntityInterfaceTransformer.class, + EntityAbstractTransformer.class, + EntityImplTransformer.class, + DAOTransformer.class, + DAOImplTransformer.class, + DAOAbstractTransformer.class, + DAOHelperTransformer.class, + EntityHibernateMappingGenerator.class + ); + } + + protected boolean validateModel(ObjectModel model) { + List<ObjectModelValidator> validators = new ArrayList<ObjectModelValidator>(); + + AttributeNamesValidator attrValidator = new AttributeNamesValidator( + model); + attrValidator.addNameAndReason("next", + "Le nom d'attribut \"next\" est incompatible avec HSQL"); + attrValidator.addNameAndReason("value", + "Le nom d'attribut \"value\" est incompatible avec certains SGBD"); + attrValidator.addNameAndReason("values", + "Le nom d'attribut \"values\" est incompatible avec certains SGBD"); + attrValidator.addNameAndReason("begin", + "Le nom d'attribut \"begin\" est incompatible avec certains SGBD"); + attrValidator.addNameAndReason("end", + "Le nom d'attribut \"end\" est incompatible avec certains SGBD"); + attrValidator.addNameAndReason("authorization", + "Le nom d'attribut \"authorization\" est incompatible avec certains SGBD"); + attrValidator.addNameAndReason("order", + "Le nom d'attribut \"order\" est incompatible avec certains SGBD"); + validators.add(attrValidator); + + ClassNamesValidator classValidator = new ClassNamesValidator(model); + classValidator.addNameAndReason("constraint", "Nom de classe incompatible avec certains SGBD"); + classValidator.addNameAndReason("user", "Nom de classe incompatible avec certains SGBD"); + validators.add(classValidator); + + validators.add(new TopiaJavaValidator(model)); + validators.add(new TopiaRelationValidator(model)); + + for (ObjectModelValidator validator : validators) { + if (!validator.validate()) { + for (String error : validator.getErrors()) { + log.info("[VALIDATION] " + error); + } + } + } + + // test before all if there is some entities to generate + List<ObjectModelClass> classes = TopiaGeneratorUtil.getEntityClasses(model, true); + + if (classes.isEmpty()) { + // no entity to generate, can stop safely + log.warn("No entity to generate, " + getClass().getName() + " is skipped"); + return false; + } + //FIXME-TC20091220 seems we still generate if there is some validation errors ? not very normal + return true; + } + +} Property changes on: trunk/topia-persistence/src/main/java/org/nuiton/topia/generator/TopiaMetaTransformer.java ___________________________________________________________________ Added: svn:keywords + "Author Date Id Revision HeadURL Modified: trunk/topia-service-history/pom.xml =================================================================== --- trunk/topia-service-history/pom.xml 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-service-history/pom.xml 2009-12-20 16:29:38 UTC (rev 1732) @@ -98,12 +98,12 @@ <phase>generate-sources</phase> <id>generate-sources</id> <configuration> - <templates>org.nuiton.topia.generator.TopiaMetaGenerator</templates> + <templates>org.nuiton.topia.generator.TopiaMetaTransformer</templates> <defaultPackage>org.nuiton.topia</defaultPackage> <fullPackagePath>org.nuiton.topia</fullPackagePath> <includes>**/*.objectmodel</includes> - <copyVersionDir>${maven.src.dir}/main/resources/oldmappings/%MODELNAME%</copyVersionDir> + <copyVersionDir>${project.basedir}/src/main/resources/oldmappings/%MODELNAME%</copyVersionDir> <copyVersionFiles>**/*.hbm.xml</copyVersionFiles> <overwrite>true</overwrite> </configuration> Modified: trunk/topia-service-migration/pom.xml =================================================================== --- trunk/topia-service-migration/pom.xml 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-service-migration/pom.xml 2009-12-20 16:29:38 UTC (rev 1732) @@ -104,7 +104,7 @@ <id>Migration service generator</id> <phase>generate-sources</phase> <configuration> - <templates>org.nuiton.topia.generator.TopiaMetaGenerator</templates> + <templates>org.nuiton.topia.generator.TopiaMetaTransformer</templates> <fullPackagePath>org.nuiton.topia.migration</fullPackagePath> <defaultPackage>org.nuiton.topia.migration</defaultPackage> </configuration> Modified: trunk/topia-service-security/pom.xml =================================================================== --- trunk/topia-service-security/pom.xml 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-service-security/pom.xml 2009-12-20 16:29:38 UTC (rev 1732) @@ -94,7 +94,7 @@ <id>generate-sources</id> <phase>generate-sources</phase> <configuration> - <templates>org.nuiton.topia.generator.TopiaMetaGenerator</templates> + <templates>org.nuiton.topia.generator.TopiaMetaTransformer</templates> <defaultPackage>org.nuiton.topia</defaultPackage> <fullPackagePath>org.nuiton.topia</fullPackagePath> Modified: trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceAbstractGenerator.java =================================================================== --- trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceAbstractGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceAbstractGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -18,6 +18,7 @@ * ##%*/ package org.nuiton.topia.generator; +import org.nuiton.eugene.models.object.*; import static org.nuiton.topia.generator.TopiaGeneratorUtil.hasUnidirectionalRelationOnAbstractType; import java.io.File; @@ -29,20 +30,12 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.GeneratorUtil; -import org.nuiton.eugene.models.object.ObjectModelAssociationClass; -import org.nuiton.eugene.models.object.ObjectModelAttribute; -import org.nuiton.eugene.models.object.ObjectModelClass; -import org.nuiton.eugene.models.object.ObjectModelClassifier; -import org.nuiton.eugene.models.object.ObjectModelInterface; -import org.nuiton.eugene.models.object.ObjectModelOperation; -import org.nuiton.eugene.models.object.ObjectModelParameter; import org.nuiton.topia.service.TopiaApplicationServiceAbstract; - -// do not remove import org.apache.commons.lang.StringUtils; + /** * ServiceAbstractGenerator.java * @@ -182,7 +175,7 @@ comma = ", "; } /*{)}*/ - Set<String> exceptions = (Set<String>)op.getExceptions(); + Set<String> exceptions = op.getExceptions(); comma = " throws "; for (String exception : exceptions) { /*{<%=comma%><%=exception%>}*/ @@ -307,7 +300,7 @@ * @param v la valeur que doit avoir <%=attr.getName()%> * @return un element ou null *) - public <%=clazzFQN%> find<%=clazzName%>By<%=TopiaGeneratorUtil.capitalize(attr.getName())%>(<%=attr.getType()%> v) throws TopiaException{ + public <%=clazzFQN%> find<%=clazzName%>By<%=StringUtils.capitalize(attr.getName())%>(<%=attr.getType()%> v) throws TopiaException{ TopiaContextImplementor usedContextImpl = (TopiaContextImplementor) topiaContext; <%=clazzName%>DAOAbstract dao = (<%=clazzName%>DAOAbstract)usedContextImpl.getDAO(<%=clazzName%>.class); <%=clazzName%> entity = dao.findBy<%=StringUtils.capitalize(attr.getName())%>(v); @@ -397,7 +390,7 @@ if(parent.hasStereotype(TopiaGeneratorUtil.STEREOTYPE_DAO)){ // r�cup�rer la classe de l'object model correspondant � la DAO - String entityClassName = null; + String entityClassName; entityClassName = parent.getQualifiedName().replace("DAO", ""); if(getModel().hasClass(entityClassName)){ ObjectModelClass clazz = getModel().getClass(entityClassName); @@ -417,6 +410,7 @@ for (ObjectModelAttribute attr : clazz.getAttributes()) { ObjectModelAttribute reverse = attr.getReverseAttribute(); + String capitalizedAttrName = StringUtils.capitalize(attr.getName()); if (!attr.isNavigable() && !hasUnidirectionalRelationOnAbstractType(reverse, model)) { continue; @@ -429,9 +423,9 @@ /*{ * <%=attr.getName()%> : <%=attr.getDocumentation()%> }*/ } -/*{ * @param <%=GeneratorUtil.toLowerCaseFirstLetter(attr.getName())%> La valeur de l'attribut <%=attr.getName()%> � positionner. +/*{ * @param <%=GeneratorUtil.toLowerCaseFirstLetter(attr.getName())%> La valeur de l'attribut <%=attr.getName()%> a positionner. *) - public void set<%=StringUtils.capitalize(attr.getName())%>Of<%=clazzName%>(String topiaId, <%=attr.getType()%> <%=GeneratorUtil.toLowerCaseFirstLetter(attr.getName())%>) throws TopiaException{ + public void set<%=capitalizedAttrName%>Of<%=clazzName%>(String topiaId, <%=attr.getType()%> <%=GeneratorUtil.toLowerCaseFirstLetter(attr.getName())%>) throws TopiaException{ TopiaContextImplementor usedContextImpl = (TopiaContextImplementor) topiaContext; <%=clazzName%>DAOAbstract dao = (<%=clazzName%>DAOAbstract)usedContextImpl.getDAO(<%=clazzName%>.class); <%=clazzName%> entity = (<%=clazzName%>)dao.findByTopiaId(topiaId); Modified: trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceImplGenerator.java =================================================================== --- trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceImplGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceImplGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -26,7 +26,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.models.object.ObjectModelClass; import org.nuiton.eugene.models.object.ObjectModelClassifier; import org.nuiton.eugene.models.object.ObjectModelInterface; Modified: trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceInterfaceGenerator.java =================================================================== --- trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceInterfaceGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-soa/src/main/java/org/nuiton/topia/generator/ServiceInterfaceGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -34,7 +34,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.nuiton.eugene.GeneratorUtil; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.models.object.ObjectModelAssociationClass; import org.nuiton.eugene.models.object.ObjectModelAttribute; import org.nuiton.eugene.models.object.ObjectModelClass; @@ -332,8 +332,8 @@ } // ajouter les methodes à la liste - methods.add(clazzName+" find"+clazzName+"By"+TopiaGeneratorUtil.capitalize(attrName)+"("+attrType+" v)"); - methods.add("List<"+clazzName+"> findAll"+clazzName+"By"+TopiaGeneratorUtil.capitalize(attrName)+"("+attrType+" v)"); + methods.add(clazzName+" find"+clazzName+"By"+StringUtils.capitalize(attrName)+"("+attrType+" v)"); + methods.add("List<"+clazzName+"> findAll"+clazzName+"By"+StringUtils.capitalize(attrName)+"("+attrType+" v)"); /*{ /** * Retourne le premier element trouve ayant comme valeur pour l'attribut @@ -341,20 +341,20 @@ * @param v la valeur que doit avoir <%=attrName%> * @return un element ou null *) - public abstract <%=clazzFQN%> find<%=clazzName%>By<%=TopiaGeneratorUtil.capitalize(attrName)%>(<%=attrType%> v) throws TopiaException; + public abstract <%=clazzFQN%> find<%=clazzName%>By<%=StringUtils.capitalize(attrName)%>(<%=attrType%> v) throws TopiaException; /** * Retourne les éléments ayant comme valeur pour l'attribut * <%=attrName%> le paramêtre * @param v la valeur que doit avoir <%=attrName%> * @return une liste *) - public abstract List<<%=clazzFQN%>> findAll<%=clazzName%>By<%=TopiaGeneratorUtil.capitalize(attrName)%>(<%=attrType%> v) throws TopiaException; + public abstract List<<%=clazzFQN%>> findAll<%=clazzName%>By<%=StringUtils.capitalize(attrName)%>(<%=attrType%> v) throws TopiaException; }*/ if (attr.hasAssociationClass()) { String assocClassName = attr.getAssociationClass().getName(); String assocClassFQN = attr.getAssociationClass().getQualifiedName(); - methods.add(clazzName +" find"+clazzName+"By"+TopiaGeneratorUtil.capitalize(assocClassName)+"("+assocClassFQN+" value)"); - methods.add("List<"+clazzName+"> findAll"+clazzName+"By"+TopiaGeneratorUtil.capitalize(assocClassName)+"("+assocClassFQN+" value)"); + methods.add(clazzName +" find"+clazzName+"By"+StringUtils.capitalize(assocClassName)+"("+assocClassFQN+" value)"); + methods.add("List<"+clazzName+"> findAll"+clazzName+"By"+StringUtils.capitalize(assocClassName)+"("+assocClassFQN+" value)"); /*{ /** * Retourne le premier element trouve ayant comme valeur pour l'attribut @@ -362,14 +362,14 @@ * @param value la valeur que doit avoir <%=TopiaGeneratorUtil.toLowerCaseFirstLetter(assocClassName)%> * @return un element ou null *) - public abstract <%=clazzFQN%> find<%=clazzName%>By<%=TopiaGeneratorUtil.capitalize(assocClassName)%>(<%=assocClassFQN%> value) throws TopiaException; + public abstract <%=clazzFQN%> find<%=clazzName%>By<%=StringUtils.capitalize(assocClassName)%>(<%=assocClassFQN%> value) throws TopiaException; /** * Retourne les éléments ayant comme valeur pour l'attribut * <%=TopiaGeneratorUtil.toLowerCaseFirstLetter(assocClassName)%> le paramêtre * @param value la valeur que doit avoir <%=TopiaGeneratorUtil.toLowerCaseFirstLetter(assocClassName)%> * @return une liste *) - public abstract List<<%=clazzFQN%>> findAll<%=clazzName%>By<%=TopiaGeneratorUtil.capitalize(assocClassName)%>(<%=assocClassFQN%> value) throws TopiaException; + public abstract List<<%=clazzFQN%>> findAll<%=clazzName%>By<%=StringUtils.capitalize(assocClassName)%>(<%=assocClassFQN%> value) throws TopiaException; }*/ } } @@ -379,8 +379,8 @@ String attrType = attr.getType(); String clazzName = clazz.getName(); String clazzFQN = clazz.getQualifiedName(); - methods.add(clazzName + " find"+clazzName+"Contains"+TopiaGeneratorUtil.capitalize(attrName)+"("+attrType+" ... v)"); - methods.add("List<"+clazzName+"> findAll"+clazzName+"Contains"+TopiaGeneratorUtil.capitalize(attrName)+"("+attrType+" ... v)"); + methods.add(clazzName + " find"+clazzName+"Contains"+StringUtils.capitalize(attrName)+"("+attrType+" ... v)"); + methods.add("List<"+clazzName+"> findAll"+clazzName+"Contains"+StringUtils.capitalize(attrName)+"("+attrType+" ... v)"); /*{ /** * Retourne le premier element trouve dont l'attribut @@ -388,14 +388,14 @@ * @param v la valeur que doit contenir <%=attrName%> * @return un element ou null *) - public abstract <%=clazzFQN%> find<%=clazzName%>Contains<%=TopiaGeneratorUtil.capitalize(attrName)%>(<%=attrType%> ... v) throws TopiaException; + public abstract <%=clazzFQN%> find<%=clazzName%>Contains<%=StringUtils.capitalize(attrName)%>(<%=attrType%> ... v) throws TopiaException; /** * Retourne les elements trouve dont l'attribut * <%=attrName%> contient le parametre * @param v la valeur que doit contenir <%=attrName%> * @return une liste *) - public abstract List<<%=clazzFQN%>> findAll<%=clazzName%>Contains<%=TopiaGeneratorUtil.capitalize(attrName)%>(<%=attrType%> ... v) throws TopiaException; + public abstract List<<%=clazzFQN%>> findAll<%=clazzName%>Contains<%=StringUtils.capitalize(attrName)%>(<%=attrType%> ... v) throws TopiaException; }*/ } Modified: trunk/topia-soa/src/main/java/org/nuiton/topia/generator/TopiaApplicationServiceMetaGenerator.java =================================================================== --- trunk/topia-soa/src/main/java/org/nuiton/topia/generator/TopiaApplicationServiceMetaGenerator.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-soa/src/main/java/org/nuiton/topia/generator/TopiaApplicationServiceMetaGenerator.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -21,7 +21,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.ObjectModelGenerator; +import org.nuiton.eugene.models.object.ObjectModelGenerator; import org.nuiton.eugene.models.object.ObjectModel; import java.io.File; Modified: trunk/topia-soa/src/main/java/org/nuiton/topia/service/servers/XMLRPCServer.java =================================================================== --- trunk/topia-soa/src/main/java/org/nuiton/topia/service/servers/XMLRPCServer.java 2009-12-19 18:09:15 UTC (rev 1731) +++ trunk/topia-soa/src/main/java/org/nuiton/topia/service/servers/XMLRPCServer.java 2009-12-20 16:29:38 UTC (rev 1732) @@ -173,7 +173,7 @@ * Construit et retourne une map de "maps entité", clé : TopiaId de * l'entité, valeur : Map de l'entité * - * @see #entityToMap(E entity) + * @see #entityToMap(org.nuiton.topia.persistence.TopiaEntity) * @param <E> * la classe étendant TopiaEntity * @param list @@ -183,7 +183,7 @@ */ private <E extends TopiaEntity> Map listToMap(List<E> list) { // construire la map contenant les entités - // cl� TopiaId, valeur :Map des attributs de l'entité + // cle TopiaId, valeur :Map des attributs de l'entité Map<String, Map<String, Object>> resultMap = new HashMap<String, Map<String, Object>>(); for (E entity : list) { // ajouter la map de l'entité @@ -206,20 +206,20 @@ */ private <E extends TopiaEntity> Map entityToMap(E entity) { Map<String, Object> entityMap = new HashMap<String, Object>(); - // invoquer tous les getters pour construire la map de l'entit� + // invoquer tous les getters pour construire la map de l'entite for (Method m : entity.getClass().getMethods()) { if (m.getName().startsWith("get")) { logger.info("* method " + m); String attributeName = m.getName().replace("get", ""); try { - Object o = m.invoke(entity, null); - if (o instanceof String && !((String) o).equals("")) { + Object o = m.invoke(entity); + if (o instanceof String && !o.equals("")) { // nom de l'attribut : valeur - entityMap.put(attributeName, (String) o); + entityMap.put(attributeName, o); } else if (o instanceof Date && o != null) { // nom de l'attribut : date - entityMap.put(attributeName, ((Date) o).toString()); + entityMap.put(attributeName, o.toString()); } else if (o instanceof TopiaEntity && o != null) { // nom de l'attribut : TopiaId
participants (1)
-
tchemit@users.nuiton.org