r1019 - in trunk/eugene/src: main/java/org/nuiton/eugene main/java/org/nuiton/eugene/models/object/xml test/java/org/nuiton/eugene/models/object
Author: tchemit Date: 2010-11-29 10:24:24 +0100 (Mon, 29 Nov 2010) New Revision: 1019 Url: http://nuiton.org/repositories/revision/eugene/1019 Log: add documentation tag value + clean model impl (remove all the oldy commented code) Modified: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorUtil.java trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelClassImpl.java trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelElementImpl.java trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelEnumerationImpl.java trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelInterfaceImpl.java trunk/eugene/src/test/java/org/nuiton/eugene/models/object/XMI21ToObjectModelTest.java Modified: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java 2010-11-29 08:55:47 UTC (rev 1018) +++ trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java 2010-11-29 09:24:24 UTC (rev 1019) @@ -63,6 +63,19 @@ * <p/> * You can globaly use it on the complete model or to a specific classifier. * + * @see GeneratorUtil#getDocumentationTagValue(ObjectModel) + * @see GeneratorUtil#getDocumentationTagValue(ObjectModelElement) + * @since 2.5 + */ + @TagValueDefinition(target = {ObjectModel.class, ObjectModelElement.class}) + String TAG_DOCUMENTATION = "documentation"; + + /** + * Tag value to add on constants enumeration (or other incoming dev) + * a prefix to constant to generate. + * <p/> + * You can globaly use it on the complete model or to a specific classifier. + * * @see JavaGeneratorUtil#getConstantPrefixTagValue(ObjectModel, ObjectModelClassifier) * @since 2.3 */ Modified: trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorUtil.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorUtil.java 2010-11-29 08:55:47 UTC (rev 1018) +++ trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorUtil.java 2010-11-29 09:24:24 UTC (rev 1019) @@ -576,7 +576,7 @@ /** * Suppress packageName from a fullQualifiedName, even if it contains * List, Map or other generics. - * + * <p/> * See JUnit test for matching expressions. * * @param str FullQualifiedName for an attribute type (for exemple) @@ -590,7 +590,7 @@ /** * Suppress packageName from a fullQualifiedName, even if it contains List, * Map or other generics. - * + * <p/> * See JUnit test for matching expressions. * * @param str fullQualifiedName for an attribute type (for exemple) @@ -751,9 +751,38 @@ * @param attribute attribute to test * @return {@code true} if stereotype was found, {@code false otherwise} * @see EugeneStereoTypes#STEREOTYPE_INDEXED + * @since 2.5 */ public static boolean hasIndexedStereotype(ObjectModelAttribute attribute) { return attribute.hasStereotype(EugeneStereoTypes.STEREOTYPE_INDEXED); } + /** + * Obtain the value of the {@link EugeneTagValues#TAG_DOCUMENTATION} + * tag value on the given model. + * + * @param model model to seek + * @return the none empty value of the found tag value or {@code null} if not found nor empty. + * @see EugeneTagValues#TAG_DOCUMENTATION + * @since 2.5 + */ + public static String getDocumentationTagValue(ObjectModel model) { + String value = findTagValue(EugeneTagValues.TAG_DOCUMENTATION, null, model); + return value; + } + + /** + * Obtain the value of the {@link EugeneTagValues#TAG_DOCUMENTATION} + * tag value on the given element. + * + * @param element element to seek + * @return the none empty value of the found tag value or {@code null} if not found nor empty. + * @see EugeneTagValues#TAG_DOCUMENTATION + * @since 2.5 + */ + public static String getDocumentationTagValue(ObjectModelElement element) { + String value = findTagValue(EugeneTagValues.TAG_DOCUMENTATION, element, null); + return value; + } + } // GeneratorUtil Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelClassImpl.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelClassImpl.java 2010-11-29 08:55:47 UTC (rev 1018) +++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelClassImpl.java 2010-11-29 09:24:24 UTC (rev 1019) @@ -102,7 +102,7 @@ ObjectModelImplSuperClassRef ref = (ObjectModelImplSuperClassRef) superclassesRef; if (log.isDebugEnabled()) { - log.debug("Superclass ref for " + this.getQualifiedName() + " : " + ref.getName()); + log.debug("Superclass ref for " + getQualifiedName() + " : " + ref.getName()); } ObjectModelClass superclass = objectModelImpl.getClass(ref.getName()); @@ -114,7 +114,7 @@ } if (log.isDebugEnabled()) { - log.debug("Superclass for " + this.getQualifiedName() + " : " + superclass.getQualifiedName()); + log.debug("Superclass for " + getQualifiedName() + " : " + superclass.getQualifiedName()); } superclasses.add(superclass); @@ -192,11 +192,6 @@ return abstractz; } -// @Override -// public boolean isInner() { -// return inner; -// } - @Override public Collection<ObjectModelOperation> getAllOtherOperations( boolean distinct) { @@ -267,28 +262,4 @@ return result.toString(); } -// /** -// * Returns whether this classifier is a class or not -// * -// * @see ObjectModelClass -// * -// * @return a boolean indicating whether this classifier is a class or not. -// */ -// @Override -// public boolean isClass() { -// return true; -// } -// -// /** -// * Returns whether this classifier is an interface or not -// * -// * @see ObjectModelInterface -// * -// * @return a boolean indicating whether this classifier is an interface or -// * not. -// */ -// @Override -// public boolean isInterface() { -// return false; -// } } Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelElementImpl.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelElementImpl.java 2010-11-29 08:55:47 UTC (rev 1018) +++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelElementImpl.java 2010-11-29 09:24:24 UTC (rev 1019) @@ -28,6 +28,7 @@ import org.apache.commons.lang.StringUtils; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; +import org.nuiton.eugene.GeneratorUtil; import org.nuiton.eugene.models.object.ObjectModelElement; import java.util.ArrayList; @@ -144,8 +145,13 @@ @Override public String getDocumentation() { - if (documentation == null && hasTagValue("documentation")) { - return getTagValue("documentation"); +// if (documentation == null && hasTagValue("documentation")) { + if (documentation == null) { + String doc = GeneratorUtil.getDocumentationTagValue(this); + if (StringUtils.isNotEmpty(doc)) { + documentation = doc; + } +// return getTagValue("documentation"); } return documentation; } Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelEnumerationImpl.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelEnumerationImpl.java 2010-11-29 08:55:47 UTC (rev 1018) +++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelEnumerationImpl.java 2010-11-29 09:24:24 UTC (rev 1019) @@ -48,23 +48,6 @@ */ private Collection<ObjectModelImplRef> literalRefs = new ArrayList<ObjectModelImplRef>(); -// /** -// * Collection of operations objectModel -// */ -// private Collection<ObjectModelOperation> operations = new ArrayList<ObjectModelOperation>(); - -// /** -// * Package name from objectModel file, loaded with Digester -// */ -// private String packageName; - -// public void setPackage(String packageName) { -// this.packageName = packageName; -// } -// -// public String getPackage() { -// return this.packageName; -// } /** * Add a literal to the ObjectModelEnumeration from Digester * @param ref corresponding to a Literal value @@ -73,26 +56,6 @@ literalRefs.add(ref); } -// /** -// * Add an operation to the ObjectModelEnumeration from Digester -// * @param operation -// */ -// public void addOperation(ObjectModelOperationImpl operation) { -// operation.postInit(); -// operation.setDeclaringElement(this); -// operations.add(operation); -// } -// -// @Override -// public String getPackageName() { -// return this.packageName; -// } -// -// @Override -// public String getQualifiedName() { -// return this.packageName+"."+this.getName(); -// } - @Override public Collection<String> getLiterals() { Collection<String> results = new ArrayList<String>(); @@ -102,9 +65,4 @@ return results; } -// @Override -// public Collection<ObjectModelOperation> getOperations() { -// return operations; -// } - } Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelInterfaceImpl.java =================================================================== --- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelInterfaceImpl.java 2010-11-29 08:55:47 UTC (rev 1018) +++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelInterfaceImpl.java 2010-11-29 09:24:24 UTC (rev 1019) @@ -56,27 +56,4 @@ } return result.toString(); } - -// /** -// * Returns whether this classifier is a class or not -// * -// * @see ObjectModelClass -// * -// * @return a boolean indicating whether this classifier is a class or not. -// */ -// public boolean isClass() { -// return false; -// } -// -// /** -// * Returns whether this classifier is an interface or not -// * -// * @see ObjectModelInterface -// * -// * @return a boolean indicating whether this classifier is an interface or -// * not. -// */ -// public boolean isInterface() { -// return true; -// } } Modified: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/XMI21ToObjectModelTest.java =================================================================== --- trunk/eugene/src/test/java/org/nuiton/eugene/models/object/XMI21ToObjectModelTest.java 2010-11-29 08:55:47 UTC (rev 1018) +++ trunk/eugene/src/test/java/org/nuiton/eugene/models/object/XMI21ToObjectModelTest.java 2010-11-29 09:24:24 UTC (rev 1019) @@ -27,6 +27,7 @@ import org.junit.BeforeClass; import org.junit.Test; +import org.nuiton.eugene.GeneratorUtil; import org.nuiton.eugene.TestHelper; import org.nuiton.util.FileUtil; import org.nuiton.util.Resource; @@ -546,7 +547,7 @@ assertNotNull(model); assertEquals("XMITest21", model.getName()); - assertEquals("model doc!", model.getTagValue("documentation")); + assertEquals("model doc!", GeneratorUtil.getDocumentationTagValue(model)); // ClassC ObjectModelClass clazzC = model.getClass("org.nuiton.eugene.test21.ClassC");
participants (1)
-
tchemit@users.nuiton.org