Index: topia/src/java/org/codelutin/topia/generators/ObjectModelToContextPropertiesGenerator.java diff -u topia/src/java/org/codelutin/topia/generators/ObjectModelToContextPropertiesGenerator.java:1.17 topia/src/java/org/codelutin/topia/generators/ObjectModelToContextPropertiesGenerator.java:1.18 --- topia/src/java/org/codelutin/topia/generators/ObjectModelToContextPropertiesGenerator.java:1.17 Fri Aug 19 14:52:47 2005 +++ topia/src/java/org/codelutin/topia/generators/ObjectModelToContextPropertiesGenerator.java Fri Aug 19 16:10:37 2005 @@ -23,10 +23,10 @@ * * @author Benjamin Poussin * Copyright Code Lutin - * @version $Revision: 1.17 $ + * @version $Revision: 1.18 $ * - * Mise a jour: $Date: 2005/08/19 14:52:47 $ - * par : $Author: bpoussin $ + * Mise a jour: $Date: 2005/08/19 16:10:37 $ + * par : $Author: thimel $ */ package org.codelutin.topia.generators; @@ -83,22 +83,22 @@ }*/ -/* Plus besoin de generer les proprietes suivantes - for(Iterator i=model.getClassifiers().iterator(); i.hasNext();){ - ObjectModelClassifier clazz = (ObjectModelClassifier)i.next(); - if(Util.isEntity(clazz)){ -/*{<%=TopiaConst.MAPPING_IMPLEMENTATION%>.<%=clazz.getQualifiedName()%>Operation=<%=clazz.getQualifiedName()%>OperationImpl -<%=TopiaConst.MAPPING_DISTRIBUTION%>.<%=clazz.getQualifiedName()%>Operation=<%=clazz.getQualifiedName()%>OperationRouter -<%=TopiaConst.MAPPING_IMPLEMENTATION%>.<%=clazz.getQualifiedName()%>PersistenceService=<%=clazz.getQualifiedName()%>PersistenceServiceImpl -}*/ - } - if(Util.isService(clazz)){ -/*{<%=TopiaConst.MAPPING_IMPLEMENTATION%>.<%=clazz.getQualifiedName()%>=<%=clazz.getQualifiedName()%>Impl -<%=TopiaConst.MAPPING_DISTRIBUTION%>.<%=clazz.getQualifiedName()%>=<%=clazz.getQualifiedName()%>Router -}*/ - } - } - */ +//Plus besoin de generer les proprietes suivantes +// for(Iterator i=model.getClassifiers().iterator(); i.hasNext();){ +// ObjectModelClassifier clazz = (ObjectModelClassifier)i.next(); +// if(Util.isEntity(clazz)){ +///*{<%=TopiaConst.MAPPING_IMPLEMENTATION%>.<%=clazz.getQualifiedName()%>Operation=<%=clazz.getQualifiedName()%>OperationImpl +//<%=TopiaConst.MAPPING_DISTRIBUTION%>.<%=clazz.getQualifiedName()%>Operation=<%=clazz.getQualifiedName()%>OperationRouter +//<%=TopiaConst.MAPPING_IMPLEMENTATION%>.<%=clazz.getQualifiedName()%>PersistenceService=<%=clazz.getQualifiedName()%>PersistenceServiceImpl +//}*/ +// } +// if(Util.isService(clazz)){ +///*{<%=TopiaConst.MAPPING_IMPLEMENTATION%>.<%=clazz.getQualifiedName()%>=<%=clazz.getQualifiedName()%>Impl +//<%=TopiaConst.MAPPING_DISTRIBUTION%>.<%=clazz.getQualifiedName()%>=<%=clazz.getQualifiedName()%>Router +//}*/ +// } +// } + } } // ObjectModelToContextPropertiesGenerator Index: topia/src/java/org/codelutin/topia/generators/Util.java diff -u topia/src/java/org/codelutin/topia/generators/Util.java:1.13 topia/src/java/org/codelutin/topia/generators/Util.java:1.14 --- topia/src/java/org/codelutin/topia/generators/Util.java:1.13 Tue Aug 16 22:19:33 2005 +++ topia/src/java/org/codelutin/topia/generators/Util.java Fri Aug 19 16:10:37 2005 @@ -23,10 +23,10 @@ * * @author Benjamin Poussin * Copyright Code Lutin - * @version $Revision: 1.13 $ + * @version $Revision: 1.14 $ * - * Mise a jour: $Date: 2005/08/16 22:19:33 $ - * par : $Author: bpoussin $ + * Mise a jour: $Date: 2005/08/19 16:10:37 $ + * par : $Author: thimel $ */ package org.codelutin.topia.generators; @@ -381,6 +381,8 @@ public static String getQualifiedAssociationClassName(ObjectModelAttribute attr) { if (attr.hasAssociationClass()) return attr.getAssociationClass().getQualifiedName(); + char SEP = '_'; + String DOUBLE_SEP = "__"; String packageName; String name; String local = attr.getName(); @@ -389,17 +391,17 @@ reverse = attr.getReverseAttribute().getName(); if (isFirstAttribute(attr)) { packageName = attr.getClassifier().getPackageName(); - name = ((ObjectModelClass)attr.getDeclaringElement()).getQualifiedName() + "_" + capitalize(local) + "_" + ((ObjectModelClass)attr.getReverseAttribute().getDeclaringElement()).getQualifiedName() + "_" + capitalize(reverse); + name = ((ObjectModelClass)attr.getDeclaringElement()).getQualifiedName() + SEP + local + DOUBLE_SEP + ((ObjectModelClass)attr.getReverseAttribute().getDeclaringElement()).getQualifiedName() + SEP + reverse; } else { packageName = attr.getReverseAttribute().getClassifier().getPackageName(); - name = ((ObjectModelClass)attr.getReverseAttribute().getDeclaringElement()).getQualifiedName() + "_" + capitalize(reverse) + "_" + ((ObjectModelClass)attr.getDeclaringElement()).getQualifiedName() + "_" + capitalize(local); + name = ((ObjectModelClass)attr.getReverseAttribute().getDeclaringElement()).getQualifiedName() + SEP + reverse + DOUBLE_SEP + ((ObjectModelClass)attr.getDeclaringElement()).getQualifiedName() + SEP + local; } } else { packageName = attr.getClassifier().getPackageName(); - name = ((ObjectModelClass)attr.getDeclaringElement()).getQualifiedName() + "_" + capitalize(local); + name = ((ObjectModelClass)attr.getDeclaringElement()).getQualifiedName() + SEP + capitalize(local); } - name = name.replace('.', '_'); - return packageName + "._associations_.Assoc_" + name; + name = name.replace('.', SEP); + return packageName + "." + SEP + "associations" + SEP + ".Assoc" + SEP + name; } public static String getAssociationClassName(ObjectModelAttribute attr) { @@ -407,6 +409,12 @@ return qualifiedName.substring(qualifiedName.lastIndexOf('.') +1); } + /** + * Renvoie si l'attribut passé en paramètre est premier lexicographiquement + * par rapport à son attribut inverse (si celui ci existe). + * @param attr L'attribut dont on veut savoir s'il est le premier + * @return true, si l'attribut est premier (lexico ou pas de reverse attribute), false dans les autres cas + */ public static boolean isFirstAttribute(ObjectModelAttribute attr) { if (attr.getReverseAttribute() == null) return true;