r2898 - trunk/topia-templates/src/main/java/org/nuiton/topia/templates
Author: athimel Date: 2013-11-27 18:13:23 +0100 (Wed, 27 Nov 2013) New Revision: 2898 Url: http://nuiton.org/projects/topia/repository/revisions/2898 Log: Let PersistenceContextTransformer delegate to XyzEntityEnum as much as possible Modified: trunk/topia-templates/src/main/java/org/nuiton/topia/templates/EntityEnumTransformer.java trunk/topia-templates/src/main/java/org/nuiton/topia/templates/PersistenceContextTransformer.java Modified: trunk/topia-templates/src/main/java/org/nuiton/topia/templates/EntityEnumTransformer.java =================================================================== --- trunk/topia-templates/src/main/java/org/nuiton/topia/templates/EntityEnumTransformer.java 2013-11-27 11:11:51 UTC (rev 2897) +++ trunk/topia-templates/src/main/java/org/nuiton/topia/templates/EntityEnumTransformer.java 2013-11-27 17:13:23 UTC (rev 2898) @@ -90,7 +90,9 @@ } entityEnum = createEnumeration(entityEnumName, packageName); addImport(entityEnum, TopiaEntity.class); - addImport(entityEnum, EntityOperatorStore.class); + if (generateOperator) { + addImport(entityEnum, EntityOperatorStore.class); + } addImport(entityEnum, Arrays.class); addImport(entityEnum, ArrayUtils.class); Modified: trunk/topia-templates/src/main/java/org/nuiton/topia/templates/PersistenceContextTransformer.java =================================================================== --- trunk/topia-templates/src/main/java/org/nuiton/topia/templates/PersistenceContextTransformer.java 2013-11-27 11:11:51 UTC (rev 2897) +++ trunk/topia-templates/src/main/java/org/nuiton/topia/templates/PersistenceContextTransformer.java 2013-11-27 17:13:23 UTC (rev 2898) @@ -42,7 +42,6 @@ import org.nuiton.topia.persistence.util.EntityOperator; import org.nuiton.topia.persistence.util.EntityOperatorStore; -import java.lang.reflect.Array; import java.util.List; /** @@ -131,15 +130,11 @@ // // } -// addImport(output, TopiaDAO.class); addImport(output, TopiaEntity.class); -// addImport(output, TopiaContext.class); - addImport(output, Array.class); - addImport(output, Array.class); if (generateOperator) { addImport(output, EntityOperator.class); - addImport(output, EntityOperatorStore.class); +// addImport(output, EntityOperatorStore.class); } // add public constructor @@ -194,23 +189,20 @@ } - // getContractClass method - op = addOperation(output, "getContractClass", "<T extends TopiaEntity> Class<T>", ObjectModelJavaModifier.PUBLIC, ObjectModelJavaModifier.STATIC); - addParameter(op, "Class<T>", "klass"); + // getContracts method + op = addOperation(output, "getContracts", entityEnumName + "[]", ObjectModelJavaModifier.PUBLIC, ObjectModelJavaModifier.STATIC); setOperationBody(op, "" /*{ - <%=entityEnumName%> constant = <%=entityEnumName%>.valueOf(klass); - return (Class<T>) constant.getContract(); + return <%=entityEnumName%>.getContracts(); }*/ ); - // getImplementationClass method - op = addOperation(output, "getImplementationClass", "<T extends TopiaEntity> Class<T>", ObjectModelJavaModifier.PUBLIC, ObjectModelJavaModifier.STATIC); + // getContractClass method + op = addOperation(output, "getContractClass", "<T extends TopiaEntity> Class<T>", ObjectModelJavaModifier.PUBLIC, ObjectModelJavaModifier.STATIC); addParameter(op, "Class<T>", "klass"); setOperationBody(op, "" /*{ - <%=entityEnumName%> constant = <%=entityEnumName%>.valueOf(klass); - return (Class<T>) constant.getImplementation(); + return <%=entityEnumName%>.getContractClass(klass); }*/ ); @@ -218,33 +210,32 @@ op = addOperation(output, "getContractClasses", "Class<? extends TopiaEntity>[]", ObjectModelJavaModifier.PUBLIC, ObjectModelJavaModifier.STATIC); setOperationBody(op, "" /*{ - <%=entityEnumName%>[] values = <%=entityEnumName%>.values(); - Class<? extends TopiaEntity>[] result = (Class<? extends TopiaEntity>[]) Array.newInstance(Class.class, values.length); - for (int i = 0; i < values.length; i++) { - result[i] = values[i].getContract(); - } - return result; + return <%=entityEnumName%>.getContractClasses(); }*/ ); + // getImplementationClass method + op = addOperation(output, "getImplementationClass", "<T extends TopiaEntity> Class<T>", ObjectModelJavaModifier.PUBLIC, ObjectModelJavaModifier.STATIC); + addParameter(op, "Class<T>", "klass"); + setOperationBody(op, "" +/*{ + return <%=entityEnumName%>.getImplementationClass(klass); + }*/ + ); + // getImplementationClasses method op = addOperation(output, "getImplementationClasses", "Class<? extends TopiaEntity>[]", ObjectModelJavaModifier.PUBLIC, ObjectModelJavaModifier.STATIC); setOperationBody(op, "" /*{ - <%=entityEnumName%>[] values = <%=entityEnumName%>.values(); - Class<? extends TopiaEntity>[] result = (Class<? extends TopiaEntity>[]) Array.newInstance(Class.class, values.length); - for (int i = 0; i < values.length; i++) { - result[i] = values[i].getImplementation(); - } - return result; + return <%=entityEnumName%>.getImplementationClasses(); }*/ ); - // getContracts method - op = addOperation(output, "getContracts", entityEnumName + "[]", ObjectModelJavaModifier.PUBLIC, ObjectModelJavaModifier.STATIC); + // getImplementationClassesAsString method + op = addOperation(output, "getImplementationClassesAsString", "String", ObjectModelJavaModifier.PUBLIC, ObjectModelJavaModifier.STATIC); setOperationBody(op, "" /*{ - return <%=entityEnumName%>.values(); + return <%=entityEnumName%>.getImplementationClassesAsString(); }*/ ); @@ -254,8 +245,7 @@ addParameter(op, "Class<T>", "klass"); setOperationBody(op, "" /*{ - <%=entityEnumName%> constant = <%=entityEnumName%>.valueOf(klass); - return EntityOperatorStore.getOperator(constant); + return <%=entityEnumName%>.getOperator(klass); }*/ ); }
participants (1)
-
athimelï¼ users.nuiton.org