Author: tchemit Date: 2014-05-04 18:36:47 +0200 (Sun, 04 May 2014) New Revision: 3094 Url: http://forge.nuiton.org/projects/topia/repository/revisions/3094 Log: fixes #3188: Add containsXXX method on entities Modified: trunk/topia-templates/src/main/java/org/nuiton/topia/templates/EntityTransformer.java Modified: trunk/topia-templates/src/main/java/org/nuiton/topia/templates/EntityTransformer.java =================================================================== --- trunk/topia-templates/src/main/java/org/nuiton/topia/templates/EntityTransformer.java 2014-05-04 10:38:04 UTC (rev 3093) +++ trunk/topia-templates/src/main/java/org/nuiton/topia/templates/EntityTransformer.java 2014-05-04 16:36:47 UTC (rev 3094) @@ -775,6 +775,9 @@ // isXXXEmpty addMultipleIsEmptyOperations(attribute); + + // containsXXX + addMultipleContainsOperation(attribute); } } @@ -1499,6 +1502,33 @@ ); } + protected void addMultipleContainsOperation(ObjectModelAttribute attribute) { + + String attrName = getPropertyName(attribute); + String attrType = getPropertyType(attribute); + + if (log.isDebugEnabled()) { + log.debug("Generate multiple 'contains' operation for property : " + attrName); + } + + String methodName = getJavaBeanMethodName("contains", attrName); + + ObjectModelOperation isEmptyInterfaceOperation = + addOperation(outputInterface, methodName, + boolean.class, ObjectModelJavaModifier.PACKAGE); + addParameter(isEmptyInterfaceOperation, attrType, attrName); + + // Implementation + ObjectModelOperation isEmptyOperationImpl = createImplOperation(isEmptyInterfaceOperation); + + setOperationBody(isEmptyOperationImpl, "" +/*{ + boolean contains = this.<%=attrName%> !=null && this.<%=attrName%>.contains(<%=attrName%>); + return contains; + }*/ + ); + } + // ------------------------------------------------------------------------- // Generate util operations // -------------------------------------------------------------------------