r669 - in branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene: java test/generator
Author: fdesbois Date: 2009-10-29 19:42:55 +0100 (Thu, 29 Oct 2009) New Revision: 669 Modified: branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/java/JavaBuilder.java branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/java/OM2JavaTransformer.java branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/test/generator/BeanTransformer.java Log: Continue translation BeanGenerator to BeanTransformer Modified: branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/java/JavaBuilder.java =================================================================== --- branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/java/JavaBuilder.java 2009-10-29 17:47:57 UTC (rev 668) +++ branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/java/JavaBuilder.java 2009-10-29 18:42:55 UTC (rev 669) @@ -301,6 +301,12 @@ return operation; } + public ObjectModelOperation addOperation(ObjectModelClassifier classifier, String visibility, + String type, String name, String... inputParameters) { + + return ObjectModelBuilderHelper.addOperation(classifier, visibility, name, type, inputParameters); + } + public ObjectModelParameter addParameter(ObjectModelOperation operation, String type, String name) { ObjectModelParameter param = ObjectModelBuilderHelper.addParameter(operation, type, name); this.addImport((ObjectModelClassifier) operation.getDeclaringElement(), type); Modified: branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/java/OM2JavaTransformer.java =================================================================== --- branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/java/OM2JavaTransformer.java 2009-10-29 17:47:57 UTC (rev 668) +++ branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/java/OM2JavaTransformer.java 2009-10-29 18:42:55 UTC (rev 669) @@ -2,12 +2,9 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; -import org.nuiton.eugene.GeneratorUtil; import org.nuiton.eugene.ImportsManager; import org.nuiton.eugene.ObjectModelTransformer; import org.nuiton.eugene.models.object.*; -import org.nuiton.eugene.models.object.xml.ObjectModelClassImpl; -import org.nuiton.eugene.models.object.xml.ObjectModelImpl; /** * OM2JavaTransformer @@ -94,6 +91,11 @@ return builder.addOperation(classifier, parse); } + protected ObjectModelOperation addOperation(ObjectModelClassifier classifier, String visibility, + String type, String name, String... inputParameters) { + return builder.addOperation(classifier, visibility, type, name, inputParameters); + } + protected ObjectModelParameter addParameter(ObjectModelOperation operation, String type, String name) { return builder.addParameter(operation, type, name); } Modified: branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/test/generator/BeanTransformer.java =================================================================== --- branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/test/generator/BeanTransformer.java 2009-10-29 17:47:57 UTC (rev 668) +++ branches/1.1.0-Javabuilder/eugene-test/src/main/java/org/nuiton/eugene/test/generator/BeanTransformer.java 2009-10-29 18:42:55 UTC (rev 669) @@ -174,11 +174,49 @@ } // Add helper methods + if (hasMultipleAttribute) { + ObjectModelOperation getChild = addOperation(resultClass, "protected", "<T> T", "getChild", + "java.util.Collection<T>", "childs", "int", "index"); // params + setOperationBody(getChild, "" + /*{ + if (childs != null) { + int i = 0; + for (T o : childs) { + if (index == i) { + return o; + } + i++; + } + } + return null; + }*/ + ); + } + if (hasEntity) { + ObjectModelOperation getEntity = addOperation(resultClass, "protected", + "<T extends org.nuiton.topia.persistence.TopiaEntity> T", // returnType + "getEntity", + "java.util.Collection<T>", "childs", "java.lang.String", "topiaId"); // params + setOperationBody(getEntity, "" + /*{ + if (childs != null) { + for (T o : childs) { + if (topiaId.equals(o.getTopiaId())) { + return o; + } + } + } + return null; + }*/ + ); + } + + // Add operations for (ObjectModelOperation op : clazz.getOperations()) { - ObjectModelOperation resultOperation = this.addOperation(resultClass, + ObjectModelOperation resultOperation = addOperation(resultClass, op.getVisibility() + " abstract " + op.getReturnType() + " " + op.getName()); for (ObjectModelParameter param : op.getParameters()) { @@ -190,6 +228,8 @@ addException(resultOperation, exception); } } + + } private void createForDTO(ObjectModelClass resultClass, ObjectModelClass inputClass) {
participants (1)
-
fdesbois@users.nuiton.org