Author: athimel Date: 2012-05-31 16:58:52 +0200 (Thu, 31 May 2012) New Revision: 1151 Url: http://nuiton.org/repositories/revision/eugene/1151 Log: Add ObjectModelModifier.TRANSIENT Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBuilder.java trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGenerator.java trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelAttribute.java trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelBuilder.java trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelModifier.java trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAttributeImpl.java Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBuilder.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBuilder.java 2012-05-28 10:13:34 UTC (rev 1150) +++ trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBuilder.java 2012-05-31 14:58:52 UTC (rev 1151) @@ -428,6 +428,9 @@ if (attribute.isFinal()) { modifiers.add(ObjectModelModifier.FINAL); } + if (attribute.isTransient()) { + modifiers.add(ObjectModelModifier.TRANSIENT); + } if (attribute.getVisibility().equals("public")) { modifiers.add(ObjectModelModifier.PUBLIC); } else if (attribute.getVisibility().equals("protected")) { Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGenerator.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGenerator.java 2012-05-28 10:13:34 UTC (rev 1150) +++ trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGenerator.java 2012-05-31 14:58:52 UTC (rev 1151) @@ -396,11 +396,13 @@ String attrType = GeneratorUtil.getSimpleName(attr.getType()); String attrStatic = attr.isStatic() ? "static " : ""; String attrFinal = attr.isFinal() ? "final " : ""; + String attrTransient = attr.isTransient() ? "transient " : ""; if (clazz instanceof ObjectModelInterface) { //tchemit 20100507 no modifier for constants in interfaces + attrStatic = ""; attrFinal = ""; - attrStatic = ""; + attrTransient = ""; attrVisibility = ""; } @@ -415,7 +417,7 @@ " = " + attr.getDefaultValue() : ""; // " = " + GeneratorUtil.getSimpleName(attr.getDefaultValue()) : ""; -/*{<%=prefix%> <%=attrVisibility%><%=attrStatic%><%=attrFinal%><%=attrType%> <%=attrName%><%=attrValue%>; +/*{<%=prefix%> <%=attrVisibility%><%=attrStatic%><%=attrFinal%><%=attrTransient%><%=attrType%> <%=attrName%><%=attrValue%>; }*/ } } Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelAttribute.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelAttribute.java 2012-05-28 10:13:34 UTC (rev 1150) +++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelAttribute.java 2012-05-31 14:58:52 UTC (rev 1151) @@ -124,6 +124,10 @@ */ boolean isFinal(); /** + * @return {@code true} if this attribute is transient. + */ + boolean isTransient(); + /** * @return {@code true} if this attribute is navigable. */ boolean isNavigable(); Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelBuilder.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelBuilder.java 2012-05-28 10:13:34 UTC (rev 1150) +++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelBuilder.java 2012-05-31 14:58:52 UTC (rev 1151) @@ -212,7 +212,7 @@ /** * Add an attribute to a classifier (interface, class, enum). - * Modifiers allowed : STATIC, FINAL, PUBLIC, PRIVATE, PROTECTED, PACKAGE, ORDERED, UNIQUE. + * Modifiers allowed : STATIC, FINAL, TRANSIENT, PUBLIC, PRIVATE, PROTECTED, PACKAGE, ORDERED, UNIQUE. * The last visibility set will be keeped. * * @param classifier where the attribute will be added @@ -252,6 +252,9 @@ case UNIQUE: attribute.setUnique(true); break; + case TRANSIENT: + attribute.setTransient(true); + break; default: throw new IllegalArgumentException( "Unsupported modifier type '" + modifier.name() + "'"); Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelModifier.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelModifier.java 2012-05-28 10:13:34 UTC (rev 1150) +++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelModifier.java 2012-05-31 14:58:52 UTC (rev 1151) @@ -41,6 +41,7 @@ STATIC("static"), FINAL("final"), ABSTRACT("abstract"), + TRANSIENT("transient"), PUBLIC("public"), PROTECTED("protected"), Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAttributeImpl.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAttributeImpl.java 2012-05-28 10:13:34 UTC (rev 1150) +++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAttributeImpl.java 2012-05-31 14:58:52 UTC (rev 1151) @@ -60,6 +60,7 @@ protected String associationClassName; protected boolean isStatic; protected boolean isFinal; + protected boolean isTransient; protected boolean navigable = true; public ObjectModelAttributeImpl() { @@ -93,6 +94,10 @@ this.isFinal = isFinal; } + public void setTransient(boolean isTransient) { + this.isTransient = isTransient; + } + public void setStatic(boolean isStatic) { this.isStatic = isStatic; } @@ -242,6 +247,10 @@ return isFinal; } + public boolean isTransient() { + return isTransient; + } + @Override public boolean isNavigable() { return navigable;