Index: topia2/src/java/org/codelutin/topia/generator/ServiceInterfaceGenerator.java diff -u topia2/src/java/org/codelutin/topia/generator/ServiceInterfaceGenerator.java:1.5 topia2/src/java/org/codelutin/topia/generator/ServiceInterfaceGenerator.java:1.6 --- topia2/src/java/org/codelutin/topia/generator/ServiceInterfaceGenerator.java:1.5 Tue Jul 17 15:58:55 2007 +++ topia2/src/java/org/codelutin/topia/generator/ServiceInterfaceGenerator.java Fri Aug 31 08:30:56 2007 @@ -51,7 +51,7 @@ * Created: 14 juin 2007 * * @author ndupont -* @version $Revision: 1.5 $ +* @version $Revision: 1.6 $ * * L'interface du service etend TopiaApplicationService * @@ -68,7 +68,7 @@ * * @see TopiaApplicationService * -* Mise a jour: $Date: 2007/07/17 15:58:55 $ +* Mise a jour: $Date: 2007/08/31 08:30:56 $ * par : $Author: ndupont $ */ public class ServiceInterfaceGenerator extends ObjectModelGenerator { @@ -241,6 +241,8 @@ // ajouter les methodes à la liste methods.add("void delete"+clazz.getName()+"("+clazz.getName()+" entity)"); + methods.add(clazz.getName()+" create"+clazz.getName()+"(Object ... properties)"); + methods.add(clazz.getName()+" update"+clazz.getName()+"("+clazz.getName()+")"); methods.add("List<"+clazz.getName()+"> findAll"+clazz.getName()+"()"); methods.add(clazz.getName()+" find"+clazz.getName()+"ByTopiaId(String v)"); @@ -251,6 +253,18 @@ *) public abstract void delete<%=clazz.getName()%>(<%=clazz.getQualifiedName()%> entity) throws TopiaException; + /** + * Creer l'entite <%=clazz.getName()%> avec les proprietes passees en parametre + * @param entity l'entite a mettre a jour + *) + public abstract <%=clazz.getQualifiedName()%> create<%=clazz.getName()%>(Object ... properties) throws TopiaException; + + /** + * Mise a jour de l'entite <%=clazz.getName()%> passee en parametre + * @param properties les proprietes de l'entite a creer + *) + public abstract <%=clazz.getQualifiedName()%> update<%=clazz.getName()%>(<%=clazz.getQualifiedName()%> entity) throws TopiaException; + /** * Retourne tous les <%=clazz.getName()%> * @return une liste Index: topia2/src/java/org/codelutin/topia/generator/ServiceAbstractGenerator.java diff -u topia2/src/java/org/codelutin/topia/generator/ServiceAbstractGenerator.java:1.6 topia2/src/java/org/codelutin/topia/generator/ServiceAbstractGenerator.java:1.7 --- topia2/src/java/org/codelutin/topia/generator/ServiceAbstractGenerator.java:1.6 Fri Aug 17 12:59:33 2007 +++ topia2/src/java/org/codelutin/topia/generator/ServiceAbstractGenerator.java Fri Aug 31 08:30:56 2007 @@ -48,7 +48,7 @@ * Created: 19 juin 2007 * * @author dupont -* @version $Revision: 1.6 $ +* @version $Revision: 1.7 $ * * Le service abstrait etend TopiaApplicationServiceAbstract et implemente * l'interface du service. @@ -59,8 +59,8 @@ * @see ServiceInterfaceGenerator * @see TopiaApplicationServiceAbstract * -* Mise a jour: $Date: 2007/08/17 12:59:33 $ -* par : $Author: chatellier $ +* Mise a jour: $Date: 2007/08/31 08:30:56 $ +* par : $Author: ndupont $ */ public class ServiceAbstractGenerator extends ObjectModelGenerator { @@ -85,19 +85,19 @@ return; } - // g�n�rer l'ent�te du service abstrait + // generer l'entete du service abstrait generateInterfaceHeader(output, interfacez); - // g�n�rer les signatures des m�thodes m�tier du service + // generer les signatures des methodes metier du service generateInterfaceOperations(output, interfacez); - // g�n�rer les m�thodes �tendues en modifiant les signatures pour �viter les doublons (findAllByAdresse h�rit�e de Person et Employee) + // generer les methodes etendues en modifiant les signatures pour eviter les doublons (findAllByAddress heritee de Person et Employee) generateInheritedInterfaceOperations(output, interfacez); - // g�n�rer les signatures des m�thodes m�tier des entit�s + // generer les signatures des methodes metier des entites generateAssociatedClassOperations(output, interfacez); - // g�n�rer les signatures des m�thodes des entit�s (getter/setter) + // generer les signatures des methodes des entites (getter/setter) generateMethodsGetter(output, interfacez); /*{} //<%=interfacez.getName()%> @@ -214,7 +214,29 @@ <%=clazz.getName()%>DAOAbstract dao = (<%=clazz.getName()%>DAOAbstract)usedContextImpl.getDAO(<%=clazz.getName()%>.class); dao.delete(entity); } - + + /** + * Creer l'entite <%=clazz.getName()%> avec les proprietes passees en parametre + * @param properties les proprietes de l'entite a creer + *) + public <%=clazz.getQualifiedName()%> create<%=clazz.getName()%>(Object ... properties) throws TopiaException{ + TopiaContextImplementor usedContextImpl = (TopiaContextImplementor) topiaContext; + <%=clazz.getName()%>DAOAbstract dao = (<%=clazz.getName()%>DAOAbstract)usedContextImpl.getDAO(<%=clazz.getName()%>.class); + <%=clazz.getName()%> entity = (<%=clazz.getName()%>) dao.create(properties); + return entity; + } + + /** + * Mise a jour de l'entite <%=clazz.getName()%> passee en parametre + * @param entity l'entite a mettre a jour + *) + public <%=clazz.getQualifiedName()%> update<%=clazz.getName()%>(<%=clazz.getQualifiedName()%> entity) throws TopiaException{ + TopiaContextImplementor usedContextImpl = (TopiaContextImplementor) topiaContext; + <%=clazz.getName()%>DAOAbstract dao = (<%=clazz.getName()%>DAOAbstract)usedContextImpl.getDAO(<%=clazz.getName()%>.class); + <%=clazz.getName()%> entit = (<%=clazz.getName()%>) dao.update(entity); + return entit; + } + /** * Retourne tous les <%=clazz.getName()%> * @return une liste