Eugene-commits
Threads by month
- ----- 2026 -----
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2007 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2006 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2005 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2004 -----
- December
- November
- October
- September
- August
November 2010
- 1 participants
- 39 discussions
r1021 - trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml
by tchemit@users.nuiton.org 29 Nov '10
by tchemit@users.nuiton.org 29 Nov '10
29 Nov '10
Author: tchemit
Date: 2010-11-29 14:16:08 +0100 (Mon, 29 Nov 2010)
New Revision: 1021
Url: http://nuiton.org/repositories/revision/eugene/1021
Log:
do not log change of model tag value when value is the same
Modified:
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImpl.java
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImpl.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImpl.java 2010-11-29 13:07:18 UTC (rev 1020)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImpl.java 2010-11-29 13:16:08 UTC (rev 1021)
@@ -514,7 +514,7 @@
*/
public void addTagValue(String tagValue, String value) {
String oldValue = getTagValue(tagValue);
- if (StringUtils.isNotEmpty(oldValue)) {
+ if (StringUtils.isNotEmpty(oldValue) && !oldValue.equals(value)) {
if (log.isWarnEnabled()) {
log.warn("Replace tagValue '" + tagValue + "' (old:" +
oldValue + ", new: " + value + ")");
1
0
Author: tchemit
Date: 2010-11-29 14:07:18 +0100 (Mon, 29 Nov 2010)
New Revision: 1020
Url: http://nuiton.org/repositories/revision/eugene/1020
Log:
Evolution #1119: Move all java extension to package extension
Implements check on tag values and stereotypes in ObjectModelReader
clean tests
Added:
trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/AnnotationsManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/AnnotationsManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/CodesManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/CodesManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ConstantsManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ConstantsManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ImportsManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ImportsManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/package-info.java
trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/
trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerExtensionTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerTest.java
Removed:
trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerExtensionTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerTest.java
Modified:
trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManagerExtension.java
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/java/ObjectModelTransformerToJava.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/package-info.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/GeneratorUtilTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelBuilderTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelImplTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/state/StateModelDTDTest.java
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/BeanGenerator.java
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -28,7 +28,7 @@
/**
* Obtain a new store of tag values and stereotypes.
*
- * @param loader the classloader to use (if none given will use the one of the current thread)
+ * @param loader the classloader to use (if none given will use the one of the current thread)
* @param verbose a verbose flag
* @return the aggregate store of all atomic one detected in the class-path
*/
@@ -256,6 +256,56 @@
return result;
}
+ public boolean containsTagValue(String tagValueName) {
+ boolean b = tagValueStore.containsKey(tagValueName);
+ return b;
+ }
+
+ public boolean containsStereotype(String stereotypeName) {
+ boolean b = stereotypeStore.containsKey(stereotypeName);
+ return b;
+ }
+
+ public boolean acceptTagValue(String tagValueName, Class<?> type) {
+ if (!containsTagValue(tagValueName)) {
+
+ // unknown
+ return false;
+ }
+
+ Class<?>[] tagValueTarget = getTagValueTarget(tagValueName);
+
+ for (Class<?> target : tagValueTarget) {
+ if (target.equals(type) || target.isAssignableFrom(type)) {
+
+ // found one accepting target
+ return true;
+ }
+ }
+
+ // no target found
+ return false;
+ }
+
+ public boolean acceptStereotype(String stereotypeName, Class<?> type) {
+ if (!containsStereotype(stereotypeName)) {
+
+ // unknown
+ return false;
+ }
+
+ Class<?>[] tagValueTarget = getStereotypeTarget(stereotypeName);
+ for (Class<?> target : tagValueTarget) {
+ if (target.equals(type) || target.isAssignableFrom(type)) {
+
+ // found one accepting target
+ return true;
+ }
+ }
+
+ // no target found
+ return false;
+ }
}
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -45,13 +45,30 @@
private static final Log log = LogFactory.getLog(ModelReader.class);
- /** date de derniere modification de la source la plus recente */
+ /** Date of the las modification of any source files. */
protected long lastModifiedSource;
- /** @since 2.3 */
+ /**
+ * A verbose flag to see more things.
+ *
+ * @since 2.3
+ */
protected boolean verbose;
- /** @since 2.3 */
+ /**
+ * A flag to load only safe things.
+ * <p/>
+ * Usefull to have a safe loading of a model and his properties file.
+ *
+ * @since 2.3
+ */
+ protected boolean strictLoading;
+
+ /**
+ * The classloader to use to obtain {@link ModelPropertiesUtil.ModelPropertiesProvider}.
+ *
+ * @since 2.3
+ */
protected ClassLoader loader;
public boolean isVerbose() {
@@ -62,6 +79,14 @@
this.verbose = verbose;
}
+ public boolean isStrictLoading() {
+ return strictLoading;
+ }
+
+ public void setStrictLoading(boolean strictLoading) {
+ this.strictLoading = strictLoading;
+ }
+
public ClassLoader getLoader() {
return loader;
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManager.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManager.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManager.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -39,10 +39,10 @@
*
* @author tchemit <chemit(a)codelutin.com>
* @version $Revision$
- * <p/>
- * Mise a jour: $Date$ par :
- * * @since 2.0.0
+ * @since 2.0.0
+ * @deprecated since 2.3, use now the class {@link org.nuiton.eugene.java.extension.AnnotationsManager}
*/
+@Deprecated
public class AnnotationsManager {
private static final String[] EMPTY_STRING_ARRAY = new String[]{};
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManagerExtension.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManagerExtension.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManagerExtension.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -38,9 +38,9 @@
*
* @author tchemit <chemit(a)codelutin.com>
* @version $Revision$
- * <p/>
- * Mise a jour: $Date$ par :
- * */
+ * @deprecated since 2.3, use now the class {@link org.nuiton.eugene.java.extension.AnnotationsManagerExtension}
+ */
+@Deprecated
public class AnnotationsManagerExtension {
private static final Log log = LogFactory.getLog(AnnotationsManagerExtension.class);
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManager.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManager.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManager.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -34,7 +34,9 @@
*
* @author tchemit <chemit(a)codelutin.com>
* @since 2.0.2
+ * @deprecated since 2.3, use now the class {@link org.nuiton.eugene.java.extension.CodesManager}
*/
+@Deprecated
public class CodesManager {
private static final String EMPTY_STRING = "";
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManagerExtension.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManagerExtension.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManagerExtension.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -38,7 +38,9 @@
* @author tchemit <chemit(a)codelutin.com>
* @see CodesManager
* @since 2.0.2
+ * @deprecated since 2.3, use now the class {@link org.nuiton.eugene.java.extension.CodesManagerExtension}
*/
+@Deprecated
public class CodesManagerExtension {
private static final Log log = LogFactory.getLog(CodesManagerExtension.class);
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManager.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManager.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManager.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -34,8 +34,10 @@
* Manager of constant names.
*
* @author tchemit <chemit(a)codelutin.com>
- * @since 2.3
+ * @since ?
+ * @deprecated since 2.3, use now the class {@link org.nuiton.eugene.java.extension.ConstantsManager}
*/
+@Deprecated
public class ConstantsManager {
/**
* cache of constant name (values) for property name (keys)
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManagerExtension.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManagerExtension.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManagerExtension.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -27,8 +27,10 @@
/**
* @author tchemit <chemit(a)codelutin.com>
- * @since 2.3
+ * @since ?
+ * @deprecated since 2.3, use now the class {@link org.nuiton.eugene.java.extension.ConstantsManagerExtension}
*/
+@Deprecated
public class ConstantsManagerExtension {
/**
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManager.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManager.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManager.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -41,9 +41,10 @@
* @author thimel, chemit
* @version $Revision$
- * Mise a jour: $Date$ par :
- * * @since 2.0.0
+ * @since 2.0.0
+ * @deprecated since 2.3, use now the class {@link org.nuiton.eugene.java.extension.ImportsManager}
*/
+@Deprecated
public class ImportsManager {
private static Set<String> primitiveTypes;
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManagerExtension.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManagerExtension.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManagerExtension.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -43,8 +43,9 @@
*
* Extension for ObjectModel to manage imports for all classifiers in the model.
*
- * Mise a jour: $Date$
- * par : */
+ * @deprecated since 2.3, use now the class {@link org.nuiton.eugene.java.extension.ImportsManagerExtension}
+ * */
+@Deprecated
public class ImportsManagerExtension {
private static final Log log = LogFactory.getLog(ImportsManagerExtension.class);
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBuilder.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBuilder.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBuilder.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -28,6 +28,13 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.eugene.GeneratorUtil;
+import org.nuiton.eugene.java.extension.AnnotationsManager;
+import org.nuiton.eugene.java.extension.AnnotationsManagerExtension;
+import org.nuiton.eugene.java.extension.CodesManager;
+import org.nuiton.eugene.java.extension.CodesManagerExtension;
+import org.nuiton.eugene.java.extension.ConstantsManagerExtension;
+import org.nuiton.eugene.java.extension.ImportsManager;
+import org.nuiton.eugene.java.extension.ImportsManagerExtension;
import org.nuiton.eugene.models.object.ObjectModelAttribute;
import org.nuiton.eugene.models.object.ObjectModelBuilder;
import org.nuiton.eugene.models.object.ObjectModelClass;
@@ -116,7 +123,7 @@
public void addSuperclass(ObjectModelClass clazz, String superclassQualifiedName)
throws UnsupportedOperationException {
throw new UnsupportedOperationException("This operation can't be used" +
- " to generate Java, use setSuperClass method instead");
+ " to generate Java, use setSuperClass method instead");
}
/**
@@ -163,10 +170,10 @@
String name,
String type) {
return addAttribute(classifier,
- name,
- type,
- "",
- ObjectModelModifier.PROTECTED
+ name,
+ type,
+ "",
+ ObjectModelModifier.PROTECTED
);
}
@@ -201,7 +208,7 @@
String type,
String name) {
addImport((ObjectModelClassifier) operation.getDeclaringElement(),
- type);
+ type);
return super.addParameter(operation, type, name);
}
@@ -214,7 +221,7 @@
@Override
public void addException(ObjectModelOperation operation, String exception) {
addImport((ObjectModelClassifier) operation.getDeclaringElement(),
- exception);
+ exception);
super.addException(operation, exception);
}
@@ -277,7 +284,7 @@
manager.addImport(oneType);
if (log.isDebugEnabled()) {
log.debug("Add import for : " + classifier.getQualifiedName() +
- " _ import: " + oneType);
+ " _ import: " + oneType);
}
}
}
@@ -302,7 +309,7 @@
manager.addAnnotation(element, annotation);
if (log.isDebugEnabled()) {
log.debug("Add annotation for <" + classifier.getQualifiedName() +
- ":" + element.getName() + "> : " + annotation);
+ ":" + element.getName() + "> : " + annotation);
}
}
@@ -345,16 +352,16 @@
if (!visibility.isVisibility()) {
throw new IllegalArgumentException(
"Illegal visibility type : " + visibility.name() +
- " for " + classifier.getQualifiedName());
+ " for " + classifier.getQualifiedName());
}
return addAttribute(classifier,
- name,
- type,
- value,
- visibility,
- ObjectModelModifier.STATIC,
- ObjectModelModifier.FINAL
+ name,
+ type,
+ value,
+ visibility,
+ ObjectModelModifier.STATIC,
+ ObjectModelModifier.FINAL
);
}
@@ -378,7 +385,7 @@
manager.addCode(operation, code);
if (log.isDebugEnabled()) {
log.debug("Add code for <" + classifier.getQualifiedName() +
- ":" + operation.getName() + "> : " + code);
+ ":" + operation.getName() + "> : " + code);
}
}
@@ -397,7 +404,7 @@
String result = constantsManagerExtension.getConstantName(propertyName);
if (log.isDebugEnabled()) {
log.debug("get constant name for <" + propertyName + "> : " +
- result);
+ result);
}
return result;
}
@@ -494,8 +501,8 @@
if (!visibility.isVisibility()) {
throw new IllegalArgumentException(
"Illegal visibility type : " + visibility.name() +
- " for " + classifier.getQualifiedName());
+ " for " + classifier.getQualifiedName());
}
- return addOperation(classifier, classifier.getName(), null, visibility);
+ return addOperation(classifier, classifier.getName(), null, visibility);
}
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGenerator.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGenerator.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGenerator.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -37,7 +37,8 @@
import org.apache.commons.logging.LogFactory;
import org.nuiton.eugene.GeneratorUtil;
import org.nuiton.eugene.models.object.*;
-import org.nuiton.eugene.models.object.xml.ObjectModelOperationImpl;
+import org.nuiton.eugene.java.extension.ImportsManagerExtension;
+import org.nuiton.eugene.java.extension.AnnotationsManagerExtension;
/*{generator option: parentheses = true}*/
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/ObjectModelTransformerToJava.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/ObjectModelTransformerToJava.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/ObjectModelTransformerToJava.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -32,6 +32,7 @@
import org.nuiton.eugene.EugeneTagValues;
import org.nuiton.eugene.GeneratorUtil;
import org.nuiton.eugene.Template;
+import org.nuiton.eugene.java.extension.ImportsManager;
import org.nuiton.eugene.models.object.ObjectModel;
import org.nuiton.eugene.models.object.ObjectModelAttribute;
import org.nuiton.eugene.models.object.ObjectModelClass;
Copied: trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/AnnotationsManager.java (from rev 1012, trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManager.java)
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/AnnotationsManager.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/AnnotationsManager.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,88 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package org.nuiton.eugene.java.extension;
+
+import org.nuiton.eugene.models.object.ObjectModelElement;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * To manage annotations for any {@link ObjectModelElement} of a classifier.
+ * <p/>
+ * Created: 17 déc. 2009
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @version $Revision$
+ * @since 2.0.0
+ */
+public class AnnotationsManager {
+
+ private static final String[] EMPTY_STRING_ARRAY = new String[]{};
+
+ protected Map<ObjectModelElement, List<String>> annotations;
+
+ /**
+ * Add the {@code annotation} for the given {@code element} of
+ * the classifier.
+ *
+ * @param element the element where to register the annotation
+ * @param annotation the annotation to register
+ */
+ public void addAnnotation(ObjectModelElement element, String annotation) {
+ Map<ObjectModelElement, List<String>> map = getAnnotations();
+ List<String> list = map.get(element);
+ if (list == null) {
+ list = new ArrayList<String>();
+ map.put(element, list);
+ }
+ list.add(annotation);
+ }
+
+ /**
+ * Obtain the array of annotations registred for a given element of
+ * the classifier.
+ *
+ * @param element the element where to search for annotations
+ * @return the annotations for the element (empty arry if none found
+ */
+ public String[] getAnnotations(ObjectModelElement element) {
+ Map<ObjectModelElement, List<String>> map = getAnnotations();
+ List<String> list = map.get(element);
+ return list == null ? EMPTY_STRING_ARRAY :
+ list.toArray(new String[list.size()]);
+ }
+
+ protected Map<ObjectModelElement, List<String>> getAnnotations() {
+ if (annotations == null) {
+ annotations = new HashMap<ObjectModelElement, List<String>>();
+ }
+ return annotations;
+ }
+
+}
Copied: trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/AnnotationsManagerExtension.java (from rev 1012, trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManagerExtension.java)
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/AnnotationsManagerExtension.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/AnnotationsManagerExtension.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,109 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package org.nuiton.eugene.java.extension;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.nuiton.eugene.models.object.ObjectModelClassifier;
+import org.nuiton.eugene.models.object.ObjectModelElement;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Created: 17 déc. 2009
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @version $Revision$
+ */
+public class AnnotationsManagerExtension {
+
+ private static final Log log = LogFactory.getLog(AnnotationsManagerExtension.class);
+
+ /**
+ * Extension static used to identify AnnotationsManagerExtension in
+ * ObjectModel.
+ */
+ public static final String OBJECTMODEL_EXTENSION = "annotations";
+
+ /**
+ * Map of AnotationsManager with key equals to the classifier qualified
+ * name associated to the AnotationsManager
+ */
+ protected Map<String, AnnotationsManager> managers;
+
+ private static final String[] EMPTY_STRING_ARRAY = new String[]{};
+
+ /**
+ * Get the registred annotations for the given {@code element} in the
+ * given {@code classifier}.
+ *
+ * <b>Note:</b> The method always returns a {@code none null} value, but
+ * an empty array when no annotation when no annotation found for the
+ * element.
+ *
+ * @param classifier the classifier where is the element
+ * @param element the element on which searching annotations
+ * @return the array of annotation registred or an empty array if none.
+ */
+ public String[] getAnnotations(ObjectModelClassifier classifier,
+ ObjectModelElement element) {
+ AnnotationsManager annotationsManager = getManager(classifier);
+ String[] result = null;
+ if (annotationsManager != null) {
+ result = annotationsManager.getAnnotations(element);
+ }
+ return result == null ? EMPTY_STRING_ARRAY : result;
+ }
+
+ /**
+ * Get the AnotationsManager associated to the classifier. If not exist,
+ * it will be created.
+ *
+ * @param classifier reference for the AnotationsManager
+ * @return the annotationsManager associated to the classifier (never null)
+ */
+ public AnnotationsManager getManager(ObjectModelClassifier classifier) {
+ Map<String, AnnotationsManager> managers = getManagers();
+ String fqn = classifier.getQualifiedName();
+ AnnotationsManager manager = managers.get(fqn);
+ if (manager == null) {
+ manager = new AnnotationsManager();
+ managers.put(fqn, manager);
+ if (log.isDebugEnabled()) {
+ log.debug("Add new annotationsManager for : " + fqn);
+ }
+ }
+ return manager;
+ }
+
+ protected Map<String, AnnotationsManager> getManagers() {
+ if (managers == null) {
+ managers = new HashMap<String, AnnotationsManager>();
+ }
+ return managers;
+ }
+}
Copied: trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/CodesManager.java (from rev 1010, trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManager.java)
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/CodesManager.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/CodesManager.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,81 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+package org.nuiton.eugene.java.extension;
+
+import org.nuiton.eugene.models.object.ObjectModelOperation;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * To manage some verbatim code to inject in operations.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 2.0.2
+ */
+public class CodesManager {
+
+ private static final String EMPTY_STRING = "";
+
+ /** store of codes associated to operations */
+ protected Map<ObjectModelOperation, StringBuilder> codes;
+
+ /**
+ * Add the {@code annotation} for the given {@code element} of
+ * the classifier.
+ *
+ * @param operation the operation on which add the code
+ * @param code the code to add
+ */
+ public void addCode(ObjectModelOperation operation, String code) {
+ Map<ObjectModelOperation, StringBuilder> map = getCodes();
+
+ StringBuilder buffer = map.get(operation);
+ if (buffer == null) {
+ buffer = new StringBuilder();
+ map.put(operation, buffer);
+ }
+ buffer.append('\n').append(code);
+ }
+
+ /**
+ * Obtain the codes registred for a given operation of the classifier.
+ *
+ * @param operation the operation where to search for code
+ * @return the code for the operation (empty if none found)
+ */
+ public String getCode(ObjectModelOperation operation) {
+ Map<ObjectModelOperation, StringBuilder> map = getCodes();
+ StringBuilder buffer = map.get(operation);
+ return buffer == null ? EMPTY_STRING : buffer.toString();
+ }
+
+ protected Map<ObjectModelOperation, StringBuilder> getCodes() {
+ if (codes == null) {
+ codes = new HashMap<ObjectModelOperation, StringBuilder>();
+ }
+ return codes;
+ }
+}
Copied: trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/CodesManagerExtension.java (from rev 1010, trunk/eugene/src/main/java/org/nuiton/eugene/java/CodesManagerExtension.java)
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/CodesManagerExtension.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/CodesManagerExtension.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,113 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+package org.nuiton.eugene.java.extension;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.nuiton.eugene.models.object.ObjectModelClassifier;
+import org.nuiton.eugene.models.object.ObjectModelOperation;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Object model extensions to manage verbatim code to attzach to operations.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @see CodesManager
+ * @since 2.0.2
+ */
+public class CodesManagerExtension {
+
+ private static final Log log = LogFactory.getLog(CodesManagerExtension.class);
+
+ /** Extension static used to identify CodesManagerExtension in ObjectModel */
+ public static final String OBJECTMODEL_EXTENSION = "codes";
+
+ /**
+ * Map of CodesManager with key equals to the classifier qualified name
+ * associated to the CodesManager
+ */
+ protected Map<String, CodesManager> managers;
+
+ /**
+ * Add the {@code code} for the given {@code operation} of the
+ * given {@code classifier}.
+ *
+ * @param classifier the classifier container of the operation
+ * @param operation the operation on which to add the code
+ * @param code the code to add for the operation
+ */
+ public void addcode(ObjectModelClassifier classifier,
+ ObjectModelOperation operation,
+ String code) {
+ CodesManager codesManager = getManager(classifier);
+ codesManager.addCode(operation, code);
+ }
+
+ /**
+ * Get body code for a operation of the given classifier.
+ * <p/>
+ * The CodesManager must be defined in the model.
+ *
+ * @param classifier reference for the codes
+ * @param operation the operation to seek
+ * @return the body code of the method
+ */
+ public String getCode(ObjectModelClassifier classifier,
+ ObjectModelOperation operation) {
+ CodesManager manager = getManager(classifier);
+ return manager.getCode(operation);
+ }
+
+ /**
+ * Get the CodesManager associated to the classifier.
+ * <p/>
+ * <b>Note:</b> If not exist, it will be created.
+ *
+ * @param classifier reference for the ImportsManager
+ * @return the codesManager associated to the classifier (never null)
+ */
+ public CodesManager getManager(ObjectModelClassifier classifier) {
+ Map<String, CodesManager> managers = getManagers();
+ String fqn = classifier.getQualifiedName();
+ CodesManager manager = managers.get(fqn);
+ if (manager == null) {
+ manager = new CodesManager();
+ managers.put(fqn, manager);
+ if (log.isDebugEnabled()) {
+ log.debug("Add new codesManager for : " + fqn);
+ }
+ }
+ return manager;
+ }
+
+ protected Map<String, CodesManager> getManagers() {
+ if (managers == null) {
+ managers = new HashMap<String, CodesManager>();
+ }
+ return managers;
+ }
+}
Copied: trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ConstantsManager.java (from rev 1012, trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManager.java)
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ConstantsManager.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ConstantsManager.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,70 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package org.nuiton.eugene.java.extension;
+
+import org.nuiton.eugene.GeneratorUtil;
+
+import java.util.Map;
+import java.util.TreeMap;
+
+/**
+ * Manager of constant names.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since ?
+ */
+public class ConstantsManager {
+ /**
+ * cache of constant name (values) for property name (keys)
+ */
+ protected Map<String, String> nameToConstant;
+
+ /**
+ * Obtain a constant nmae from a property name and store it in cache
+ * the first time it had to build it.
+ *
+ * @param propertyName the propertyName to convert
+ * @return the equivalent constant name
+ */
+ public String getConstantName(String propertyName) {
+ Map<String, String> map = getNameToConstant();
+ if (map.containsKey(propertyName)) {
+ return map.get(propertyName);
+ }
+ // convert propertyName to constant name
+ String constantName =
+ GeneratorUtil.convertVariableNameToConstantName(propertyName);
+ map.put(propertyName,constantName);
+ return constantName;
+ }
+
+ protected Map<String, String> getNameToConstant() {
+ if (nameToConstant == null) {
+ nameToConstant = new TreeMap<String, String>();
+ }
+ return nameToConstant;
+ }
+}
\ No newline at end of file
Copied: trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ConstantsManagerExtension.java (from rev 1012, trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManagerExtension.java)
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ConstantsManagerExtension.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ConstantsManagerExtension.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,55 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package org.nuiton.eugene.java.extension;
+
+/**
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 2.3
+ */
+public class ConstantsManagerExtension {
+
+ /**
+ * Extension static used to identify {@code ConstantsManagerExtension} in
+ * ObjectModel
+ */
+ public static final String OBJECTMODEL_EXTENSION = "constants";
+
+ /**
+ * the unique manager to use
+ */
+ protected ConstantsManager manager = new ConstantsManager();
+
+ /**
+ * Obtain a constant nmae from a property name and store it in cache
+ * the first time it had to build it.
+ *
+ * @param propertyName the propertyName to convert
+ * @return the equivalent constant name
+ */
+ public String getConstantName(String propertyName) {
+ return manager.getConstantName(propertyName);
+ }
+}
\ No newline at end of file
Copied: trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ImportsManager.java (from rev 1012, trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManager.java)
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ImportsManager.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ImportsManager.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,186 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package org.nuiton.eugene.java.extension;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * Class used in generators that allows to manage easily imports. A first-pass
+ * allow to register imports, and in a second-pass, returns the type to use in
+ * generated code.
+ *
+ * @author thimel, chemit
+ * @version $Revision$
+ *
+ * @since 2.0.0
+ */
+public class ImportsManager {
+
+ private static Set<String> primitiveTypes;
+
+ static {
+ primitiveTypes = new HashSet<String>();
+
+ primitiveTypes.add("byte");
+ primitiveTypes.add("Byte");
+ primitiveTypes.add("short");
+ primitiveTypes.add("Short");
+ primitiveTypes.add("int");
+ primitiveTypes.add("Integer");
+ primitiveTypes.add("long");
+ primitiveTypes.add("Long");
+ primitiveTypes.add("float");
+ primitiveTypes.add("Float");
+ primitiveTypes.add("double");
+ primitiveTypes.add("Double");
+
+ primitiveTypes.add("char");
+ primitiveTypes.add("Char");
+ primitiveTypes.add("String");
+
+ primitiveTypes.add("boolean");
+ primitiveTypes.add("Boolean");
+
+ primitiveTypes.add("void");
+
+ }
+ private Map<String, String> imports = new HashMap<String, String>();
+ private State state = State.FILLING;
+
+ /**
+ * From the given class, add it to the imports list.
+ * @param clazz the class to import
+ * @return true if import add was successful
+ * @see ImportsManager#addImport(String)
+ */
+ public boolean addImport(Class<?> clazz) {
+ return addImport(clazz.getName());
+ }
+
+ /**
+ * From the given fqn (fully qualified name), add it to the imports list.
+ * If there is a conflict adding this import, will return false.
+ * If reading of the imports has started, this method will return false,
+ * unless type does not need to be imported.
+ * @param fqn the fully qualified name to import
+ * @return true if import add was successful
+ */
+ public boolean addImport(String fqn) {
+ // if no package don't include it
+ if (!fqn.contains(".")) {
+ return true;
+ }
+
+ // Exclude java.lang classes
+ if (fqn == null || fqn.trim().isEmpty() ||
+ fqn.startsWith("java.lang.") && fqn.lastIndexOf(".") == 9) {
+ return true;
+ }
+ // Exclude primitive types
+ if (primitiveTypes.contains(fqn)) {
+ return true;
+ }
+ // Reject generics
+ if (fqn.contains("<") || fqn.contains(">")) {
+ return false;
+ }
+ String name = fqn.substring(fqn.lastIndexOf(".") + 1);
+ String inPlaceFqn = imports.get(name);
+ if (inPlaceFqn == null) {
+ // Someone has started to read imports, impossible to add some more
+ if (state == State.READING) {
+ return false;
+ } else {
+ imports.put(name, fqn);
+ return true;
+ }
+ }
+ // if fqn is not the same, return false. Otherwise, no need to override.
+ return inPlaceFqn.equals(fqn);
+ }
+
+ /**
+ * Accorging to the already added types, returns the type to write in file.
+ * If there is a conflict, returns the fully qualified name, otherwise
+ * returns the simple name
+ * @param fqn the fully qualified name to add
+ * @return the fqn or simple name according to in-place imports
+ */
+ public String getType(String fqn) {
+ boolean importResult = addImport(fqn);
+ if (!importResult) {
+ // There is a conflict, do not use simple name
+ return fqn;
+ } else {
+ // No conflict, use simple name
+ int packageEndIndex = fqn.lastIndexOf(".");
+ if (packageEndIndex == -1) {
+ return fqn;
+ } else {
+ return fqn.substring(packageEndIndex + 1);
+ }
+ }
+ }
+
+ /**
+ * List the imports. This method will remove the useless imports according
+ * to the given packageName (no need to import a class in the same package)
+ * @param packageName the current package name (to avoid useless imports)
+ * @return the imports alphabeticaly sorted
+ */
+ public List<String> getImports(String packageName) {
+ state = State.READING;
+ List<String> result = new ArrayList<String>();
+ for (String fqn : imports.values()) {
+ if (!(fqn.lastIndexOf(".") == packageName.length() &&
+ fqn.startsWith(packageName + "."))) {
+ result.add(fqn);
+ }
+ }
+ Collections.sort(result);
+ return result;
+ }
+
+ /**
+ * Method to reset imports list. If imports has been listed, it becomes back
+ * possible to add imports.
+ */
+ public void clearImports() {
+ imports.clear();
+ state = State.FILLING;
+ }
+
+ private enum State {
+
+ FILLING, READING
+ }
+}
Copied: trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ImportsManagerExtension.java (from rev 1012, trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManagerExtension.java)
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ImportsManagerExtension.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/ImportsManagerExtension.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,98 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package org.nuiton.eugene.java.extension;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.nuiton.eugene.models.object.ObjectModelClassifier;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * ImportsManagerExtension
+ *
+ * Created: 2 nov. 2009
+ *
+ * @author fdesbois
+ * @version $Revision$
+ *
+ * Extension for ObjectModel to manage imports for all classifiers in the model.
+ */
+public class ImportsManagerExtension {
+
+ private static final Log log = LogFactory.getLog(ImportsManagerExtension.class);
+
+ /**
+ * Extension static used to identify ImportsManagerExtension in ObjectModel
+ */
+ public static final String OBJECTMODEL_EXTENSION = "imports";
+
+ /**
+ * Map of ImportsManager with key equals to the classifier qualified name associated to
+ * the ImportsManager
+ */
+ protected Map<String, ImportsManager> managers;
+
+ /**
+ * Get the ImportsManager associated to the classifier. If not exist, it will be created.
+ *
+ * @param classifier reference for the ImportsManager
+ * @return the importsManager associated to the classifier (never null)
+ */
+ public ImportsManager getManager(ObjectModelClassifier classifier) {
+ Map<String, ImportsManager> managers = getManagers();
+ String fqn = classifier.getQualifiedName();
+ ImportsManager manager = managers.get(fqn);
+ if (manager == null) {
+ manager = new ImportsManager();
+ managers.put(fqn, manager);
+ if (log.isDebugEnabled()) {
+ log.debug("Add new importsManager for : " + fqn);
+ }
+ }
+ return manager;
+ }
+
+ /**
+ * Get imports for a classifier. The ImportsManager must be defined in the model.
+ *
+ * @param classifier reference for the imports
+ * @return a List of String which contains all imports for the classifier
+ */
+ public List<String> getImports(ObjectModelClassifier classifier) {
+ ImportsManager manager = getManager(classifier);
+ return manager.getImports(classifier.getPackageName());
+ }
+
+ protected Map<String, ImportsManager> getManagers() {
+ if (managers == null) {
+ managers = new HashMap<String, ImportsManager>();
+ }
+ return managers;
+ }
+}
Copied: trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/package-info.java (from rev 1012, trunk/eugene/src/main/java/org/nuiton/eugene/java/package-info.java)
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/package-info.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/extension/package-info.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,40 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+/**
+ * Eugene java extension package : all specific extension for Java generation.
+ * <ul>
+ * <li>Annotations extension : to add some annotation on elements of a object model.</li>
+ * <li>Imports extension : to deal smartly with imports of code to generate.</li>
+ * <li>Constants extension : to deal with constants in java generators.</li>
+ * <li>codes extension : to add smartly some codes to operations.</li>
+ * </ul>
+ * @see AnnotationsManager
+ * @see ImportsManager
+ * @see ConstantsManager
+ * @see CodesManager
+ */
+package org.nuiton.eugene.java.extension;
+
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/package-info.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/package-info.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/package-info.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -26,10 +26,10 @@
/**
* Eugene java package : all specific class for Java generation.
* <pre>
- * - ObjectModel Extensions : {@link org.nuiton.eugene.java.AnnotationsManager } and {@link org.nuiton.eugene.java.ImportsManager }
- * - Builder : {@link org.nuiton.eugene.java.JavaBuilder } used to fill an ObjectModel in a Java way
- * - Transformer : {@link org.nuiton.eugene.java.ObjectModelTransformerToJava } used to transform an xmi ObjectModel to a java one
- * - Generator : {@link org.nuiton.eugene.java.JavaGenerator } is a template used to write java files (processed by Nuiton-processor)
+ * - ObjectModel Extensions : which are in package extension
+ * - Builder : {@link JavaBuilder } used to fill an ObjectModel in a Java way
+ * - Transformer : {@link ObjectModelTransformerToJava } used to transform an xmi ObjectModel to a java one
+ * - Generator : {@link JavaGenerator } is a template used to write java files (processed by Nuiton-processor)
* </pre>
*/
package org.nuiton.eugene.java;
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -148,12 +148,12 @@
String name = FileUtil.basename(file, "." + ext);
File propFile = new File(dir, name + ".properties");
if (!propFile.exists()) {
- if (log.isInfoEnabled()) {
+ if (isVerbose()) {
log.info("Pas de fichier de propriete " + propFile
+ " associé au model");
}
} else {
- if (log.isInfoEnabled()) {
+ if (isVerbose()) {
log.info("Lecture du fichier de propriete " + propFile
+ " associé au model");
}
@@ -288,16 +288,30 @@
}
String tag = matcher.group(2);
- Class<?>[] targets = propertiesProvider.getTagValueTarget(tag);
- if (targets == null) {
+ boolean safe = propertiesProvider.containsTagValue(tag);
- // unknown tag value, can not use it
+ if (!safe) {
if (log.isWarnEnabled()) {
- log.warn("Invalid model tag value [" + key + "] : the tagvalue is unkown.");
+ log.warn("Invalid model tag value [" + key + "] : the tagvalue '" + tag + "' is unkown.");
}
-// return false;
+ } else {
+ safe = propertiesProvider.acceptTagValue(tag, ObjectModel.class);
+
+ if (!safe) {
+
+ // the tag value can not be apply of model
+ if (log.isWarnEnabled()) {
+ log.warn("Invalid model tag value [" + key + "] : this tagvalue '" + tag + "' can not be apply on the model.");
+ }
+ }
}
+ if (!safe && isStrictLoading()) {
+
+ // in strict loading do not accept unsafe tags
+ return false;
+ }
+
ObjectModelImpl modelImpl = (ObjectModelImpl) model;
if (tag.equals(EugeneTagValues.TAG_VERSION)) {
@@ -306,7 +320,7 @@
modelImpl.setVersion(value);
}
if (isVerbose()) {
- log.info("import model tag value " + key + " --> " + tag + " = " + value);
+ log.info("model tag value imported " + key + " --> " + tag + " = " + value);
}
modelImpl.addTagValue(tag, value);
return true;
@@ -324,15 +338,42 @@
}
String fqn = matcher.group(1);
- fqn = StringUtil.substring(fqn, 0, -1); // remove ended
- // .
+ fqn = StringUtil.substring(fqn, 0, -1); // remove ended .
// target is class, attribute or operation
String target = matcher.group(2);
String targetName = matcher.group(3);
-
- // type is stereotype or tagvalue
+ // type is stereotype
String type = matcher.group(4).toLowerCase();
+ // target real type
+ Class<?> targetType = getTargetType(target);
+ boolean safe = propertiesProvider.containsStereotype(value);
+
+ if (!safe) {
+
+ // stereotype unkown
+ if (log.isWarnEnabled()) {
+ log.warn("Invalid stereotype [" + key + "] : this stereotype '" + value + "' is unkown.");
+ }
+ } else {
+
+ safe = propertiesProvider.acceptStereotype(value, targetType);
+
+ if (!safe) {
+
+ // the stereotype can not be apply of the given target
+ if (log.isWarnEnabled()) {
+ log.warn("Invalid stereotype [" + key + "] : this stereotype '" + value + "' can not be apply on " + target + ".");
+ }
+ }
+ }
+
+ if (!safe && isStrictLoading()) {
+
+ // in strict loading do not accept unsafe stereotypes
+ return false;
+ }
+
if (log.isDebugEnabled()) {
log.debug("Propriete: '" + key + "' => "
+ "fqn:" + fqn + " target:" + target
@@ -342,22 +383,27 @@
ObjectModelClassifier omc = getClassifier(model, STEREOTYPE, key, fqn);
if (omc == null) {
+
+ // classifier not found
return false;
}
List<ObjectModelElement> elems = getObjectElements(omc, STEREOTYPE, key, fqn, target, targetName);
if (elems == null) {
+
+ // no element to apply
return false;
}
for (ObjectModelElement elem1 : elems) {
- if (elem1 == null) {
- if (log.isWarnEnabled()) {
- log.warn("Invalid stereotype [" + key + "] : Element '" + targetName + "' of type '" + target + "' on classifier '" + fqn + "' is null.");
- }
- continue;
- }
+ //TODO tchemit 2010-11-29 uncomment this if there is some proble, but I don't see why there would be...
+// if (elem1 == null) {
+// if (log.isWarnEnabled()) {
+// log.warn("Invalid stereotype [" + key + "] : Element '" + targetName + "' of type '" + target + "' on classifier '" + fqn + "' is null.");
+// }
+// continue;
+// }
ObjectModelElementImpl elem = (ObjectModelElementImpl) elem1;
// pour les stereotypes
@@ -367,7 +413,7 @@
}
if (isVerbose()) {
- log.info("import stereotype " + key + " --> " + fqn + ":" + target + ":" + targetName + ":" + type + " = " + value);
+ log.info("stereotype imported " + key + " --> " + fqn + ":" + target + ":" + targetName + ":" + type + " = " + value);
}
return true;
@@ -389,11 +435,14 @@
// .
// target is class, attribute or operation
String target = matcher.group(2);
+ // name of the target (can be null on class)
String targetName = matcher.group(3);
- // type is stereotype or tagvalue
+ // type is tagvalue
String type = matcher.group(4).toLowerCase();
-
+ // name of the tag value
String tag = matcher.group(5);
+ // target real type
+ Class<?> targetType = getTargetType(target);
if (log.isDebugEnabled()) {
log.debug("Propriete: '" + key + "' => "
@@ -402,8 +451,37 @@
+ " type:" + type + " tag:" + tag);
}
+ boolean safe = propertiesProvider.containsTagValue(tag);
+
+ if (!safe) {
+
+ // unkown tag value
+ if (log.isWarnEnabled()) {
+ log.warn("Invalid tag value [" + key + "] : this tagvalue '" + tag + "' is unkown.");
+ }
+ } else {
+
+ safe = propertiesProvider.acceptTagValue(tag, targetType);
+
+ if (!safe) {
+
+ // the tag value can not be apply of model
+ if (log.isWarnEnabled()) {
+ log.warn("Invalid tag value [" + key + "] : this tagvalue '" + tag + "' can not be apply on the given type '" + target + "'.");
+ }
+ }
+ }
+
+ if (!safe && isStrictLoading()) {
+
+ // in strict loading do not accept unsafe tags
+ return false;
+ }
+
ObjectModelClassifier omc = getClassifier(model, TAGVALUE, key, fqn);
if (omc == null) {
+
+ // classifier not found
return false;
}
@@ -411,6 +489,8 @@
getObjectElements(omc, TAGVALUE, key, fqn, target, targetName);
if (elements == null) {
+
+ // no elements to apply
return false;
}
@@ -425,11 +505,26 @@
}
if (isVerbose()) {
- log.info("import tag value " + key + " --> " + fqn + ":" + target + ":" + targetName + ":" + type + ":" + tag + " = " + value);
+ log.info("tag value imported " + key + " --> " + fqn + ":" + target + ":" + targetName + ":" + type + ":" + tag + " = " + value);
}
return true;
}
+ protected Class<?> getTargetType(String target) {
+ Class<?> result = null;
+ if (ATTRIBUTE.equals(target)) {
+ return ObjectModelAttribute.class;
+ }
+ if (OPERATION.equals(target)) {
+ return ObjectModelOperation.class;
+ }
+ if (CLASS.equals(target)) {
+ return ObjectModelClassifier.class;
+ }
+
+ return result;
+ }
+
protected ObjectModelClassifier getClassifier(ObjectModel model, String type, String key, String fqn) {
ObjectModelClassifier omc = model.getClassifier(fqn);
if (omc == null) {
Modified: trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -5,7 +5,11 @@
import org.junit.Test;
import org.nuiton.eugene.models.object.ObjectModel;
import org.nuiton.eugene.models.object.ObjectModelAttribute;
+import org.nuiton.eugene.models.object.ObjectModelClass;
import org.nuiton.eugene.models.object.ObjectModelClassifier;
+import org.nuiton.eugene.models.object.ObjectModelEnumeration;
+import org.nuiton.eugene.models.object.ObjectModelInterface;
+import org.nuiton.eugene.models.object.ObjectModelOperation;
/**
* To test {@link ModelPropertiesUtil.EugeneModelPropertiesProvider}.
@@ -24,35 +28,113 @@
}
@Test
- public void testGetTagValueTarget() throws Exception {
- testTagValue(EugeneTagValues.TAG_CONSTANT_PREFIX, ObjectModel.class, ObjectModelClassifier.class);
- testTagValue(EugeneTagValues.TAG_I18N_PREFIX, ObjectModel.class, ObjectModelClassifier.class);
- testTagValue(EugeneTagValues.TAG_NO_PCS, ObjectModel.class, ObjectModelClassifier.class);
- testTagValue(EugeneTagValues.TAG_VERSION, ObjectModel.class);
+ public void getTagValueTarget() throws Exception {
+ getTagValueTarget(EugeneTagValues.TAG_CONSTANT_PREFIX, ObjectModel.class, ObjectModelClassifier.class);
+ getTagValueTarget(EugeneTagValues.TAG_I18N_PREFIX, ObjectModel.class, ObjectModelClassifier.class);
+ getTagValueTarget(EugeneTagValues.TAG_NO_PCS, ObjectModel.class, ObjectModelClassifier.class);
+ getTagValueTarget(EugeneTagValues.TAG_VERSION, ObjectModel.class);
}
@Test
- public void testGetStereotypeTarget() throws Exception {
+ public void containsTagValue() throws Exception {
+ containsTagValue(EugeneTagValues.TAG_CONSTANT_PREFIX, true);
+ containsTagValue(EugeneTagValues.TAG_I18N_PREFIX, true);
+ containsTagValue(EugeneTagValues.TAG_NO_PCS, true);
+ containsTagValue(EugeneTagValues.TAG_VERSION, true);
- testStereotype(EugeneStereoTypes.STEREOTYPE_BEAN, ObjectModelClassifier.class);
- testStereotype(EugeneStereoTypes.STEREOTYPE_INDEXED, ObjectModelAttribute.class);
+ long l = System.nanoTime();
+ containsTagValue(EugeneTagValues.TAG_CONSTANT_PREFIX + l, false);
+ containsTagValue(EugeneTagValues.TAG_I18N_PREFIX + l, false);
+ containsTagValue(EugeneTagValues.TAG_NO_PCS + l, false);
+ containsTagValue(EugeneTagValues.TAG_VERSION + l, false);
}
@Test
- public void testGetStore() throws Exception {
+ public void acceptTagValue() throws Exception {
+ acceptTagValue(EugeneTagValues.TAG_CONSTANT_PREFIX, true, ObjectModel.class, ObjectModelClassifier.class, ObjectModelClass.class, ObjectModelEnumeration.class);
+ acceptTagValue(EugeneTagValues.TAG_I18N_PREFIX, true, ObjectModel.class, ObjectModelClassifier.class, ObjectModelClass.class, ObjectModelEnumeration.class);
+ acceptTagValue(EugeneTagValues.TAG_NO_PCS, true, ObjectModel.class, ObjectModelClassifier.class, ObjectModelClass.class, ObjectModelEnumeration.class);
+ acceptTagValue(EugeneTagValues.TAG_VERSION, true, ObjectModel.class);
+
+ acceptTagValue(EugeneTagValues.TAG_CONSTANT_PREFIX, false, ObjectModelOperation.class, ObjectModelAttribute.class);
+ acceptTagValue(EugeneTagValues.TAG_I18N_PREFIX, false, ObjectModelOperation.class, ObjectModelAttribute.class);
+ acceptTagValue(EugeneTagValues.TAG_NO_PCS, false, ObjectModelOperation.class, ObjectModelAttribute.class);
+ acceptTagValue(EugeneTagValues.TAG_VERSION, false, ObjectModelClassifier.class, ObjectModelOperation.class, ObjectModelAttribute.class);
+
+ long l = System.nanoTime();
+ acceptTagValue(EugeneTagValues.TAG_CONSTANT_PREFIX + l, false, ObjectModelOperation.class, ObjectModelAttribute.class);
+ acceptTagValue(EugeneTagValues.TAG_I18N_PREFIX + l, false, ObjectModelOperation.class, ObjectModelAttribute.class);
+ acceptTagValue(EugeneTagValues.TAG_NO_PCS + l, false, ObjectModelOperation.class, ObjectModelAttribute.class);
+ acceptTagValue(EugeneTagValues.TAG_VERSION + l, false, ObjectModelClassifier.class, ObjectModelOperation.class, ObjectModelAttribute.class);
}
- protected void testStereotype(String name, Class<?>... expected) {
- Class<?>[] classes = provider.getStereotypeTarget(name);
+ @Test
+ public void getStereotypeTarget() throws Exception {
+
+ getStereotypeTarget(EugeneStereoTypes.STEREOTYPE_BEAN, ObjectModelClassifier.class);
+ getStereotypeTarget(EugeneStereoTypes.STEREOTYPE_INDEXED, ObjectModelAttribute.class);
+ }
+
+ @Test
+ public void containsStereotype() throws Exception {
+ containsStereotype(EugeneStereoTypes.STEREOTYPE_INDEXED, true);
+ containsStereotype(EugeneStereoTypes.STEREOTYPE_BEAN, true);
+
+ long l = System.nanoTime();
+ containsStereotype(EugeneStereoTypes.STEREOTYPE_INDEXED + l, false);
+ containsStereotype(EugeneStereoTypes.STEREOTYPE_BEAN + l, false);
+ }
+
+ @Test
+ public void acceptStereotype() throws Exception {
+
+ acceptStereotype(EugeneStereoTypes.STEREOTYPE_BEAN, true, ObjectModelClassifier.class, ObjectModelClass.class, ObjectModelEnumeration.class, ObjectModelInterface.class);
+ acceptStereotype(EugeneStereoTypes.STEREOTYPE_INDEXED, true, ObjectModelAttribute.class);
+
+ acceptStereotype(EugeneStereoTypes.STEREOTYPE_BEAN, false, ObjectModel.class, ObjectModelOperation.class);
+ acceptStereotype(EugeneStereoTypes.STEREOTYPE_INDEXED, false, ObjectModel.class, ObjectModelOperation.class, ObjectModelClassifier.class, ObjectModelClass.class, ObjectModelEnumeration.class, ObjectModelInterface.class);
+
+ long l = System.nanoTime();
+ acceptStereotype(EugeneStereoTypes.STEREOTYPE_BEAN + l, false, ObjectModel.class, ObjectModelOperation.class);
+ acceptStereotype(EugeneStereoTypes.STEREOTYPE_INDEXED + l, false, ObjectModel.class, ObjectModelOperation.class, ObjectModelClassifier.class, ObjectModelClass.class, ObjectModelEnumeration.class, ObjectModelInterface.class);
+
+ }
+
+ protected void getTagValueTarget(String name, Class<?>... expected) {
+ Class<?>[] classes = provider.getTagValueTarget(name);
Assert.assertNotNull("Could not find target for " + name, classes);
Assert.assertEquals("Should have " + expected.length + " targets for " + name + " but had " + classes.length, classes.length, expected.length);
Assert.assertArrayEquals(expected, classes);
}
- protected void testTagValue(String name, Class<?>... expected) {
- Class<?>[] classes = provider.getTagValueTarget(name);
+ protected void containsTagValue(String name, boolean expected) {
+ boolean classes = provider.containsTagValue(name);
+ Assert.assertEquals(expected, classes);
+ }
+
+ protected void acceptTagValue(String name, boolean expected, Class<?>... types) {
+ for (Class<?> type : types) {
+ boolean actual = provider.acceptTagValue(name, type);
+ Assert.assertEquals(expected, actual);
+ }
+ }
+
+ protected void getStereotypeTarget(String name, Class<?>... expected) {
+ Class<?>[] classes = provider.getStereotypeTarget(name);
Assert.assertNotNull("Could not find target for " + name, classes);
Assert.assertEquals("Should have " + expected.length + " targets for " + name + " but had " + classes.length, classes.length, expected.length);
Assert.assertArrayEquals(expected, classes);
}
+
+ protected void containsStereotype(String name, boolean expected) {
+ boolean classes = provider.containsStereotype(name);
+ Assert.assertEquals(expected, classes);
+ }
+
+ protected void acceptStereotype(String name, boolean expected, Class<?>... types) {
+ for (Class<?> type : types) {
+ boolean actual = provider.acceptStereotype(name, type);
+ Assert.assertEquals(expected, actual);
+ }
+ }
}
Modified: trunk/eugene/src/test/java/org/nuiton/eugene/GeneratorUtilTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/GeneratorUtilTest.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/GeneratorUtilTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -28,14 +28,13 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.junit.Assert;
import org.junit.Test;
import org.nuiton.eugene.models.object.xml.ObjectModelOperationImpl;
import org.nuiton.eugene.models.object.xml.ObjectModelParameterImpl;
import java.util.Set;
-import static org.junit.Assert.assertEquals;
-
/** @author fdesbois */
public class GeneratorUtilTest {
@@ -49,7 +48,7 @@
// Without any params
String result = GeneratorUtil.getOperationParametersListName(op);
- assertEquals("", result);
+ Assert.assertEquals("", result);
// With one param
ObjectModelParameterImpl param1 = new ObjectModelParameterImpl();
@@ -57,7 +56,7 @@
op.addParameter(param1);
result = GeneratorUtil.getOperationParametersListName(op);
- assertEquals("param1", result);
+ Assert.assertEquals("param1", result);
// With two params
ObjectModelParameterImpl param2 = new ObjectModelParameterImpl();
@@ -65,7 +64,7 @@
op.addParameter(param2);
result = GeneratorUtil.getOperationParametersListName(op);
- assertEquals("param1, param2", result);
+ Assert.assertEquals("param1, param2", result);
}
@Test
@@ -76,7 +75,7 @@
// Without any params
String result = GeneratorUtil.getOperationParametersListDeclaration(op);
- assertEquals("", result);
+ Assert.assertEquals("", result);
// With one param
ObjectModelParameterImpl param1 = new ObjectModelParameterImpl();
@@ -85,7 +84,7 @@
op.addParameter(param1);
result = GeneratorUtil.getOperationParametersListDeclaration(op);
- assertEquals("String param1", result);
+ Assert.assertEquals("String param1", result);
// With two params
ObjectModelParameterImpl param2 = new ObjectModelParameterImpl();
@@ -94,7 +93,7 @@
op.addParameter(param2);
result = GeneratorUtil.getOperationParametersListDeclaration(op);
- assertEquals("String param1, Date param2", result);
+ Assert.assertEquals("String param1, Date param2", result);
}
@@ -107,92 +106,92 @@
String expResult = "List";
String result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.Regex";
expResult = "Regex";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "<T> java.util.List<T>";
expResult = "<T> List<T>";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.List<? extends org.chorem.bonzoms.Bonzoms>";
expResult = "List<? extends Bonzoms>";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.List<org.chorem.jtimer.Jtimer>";
expResult = "List<Jtimer>";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.Set<java.util.Collection<java.util.Collection<java.util.Collection" +
"<java.lang.String>>>>";
expResult = "Set<Collection<Collection<Collection<String>>>>";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.Map<org.chorem.jtimer.Jtimer, java.util.Collection<java.lang.String>>";
expResult = "Map<Jtimer, Collection<String>>";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "new java.util.HashMap<org.chorem.jtimer.Jtimer, T extends java.lang.String>()";
expResult = "new HashMap<Jtimer, T extends String>()";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "Class<O>";
expResult = "Class<O>";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "2.0";
expResult = "2.0";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "\"eric.chatellier\"";
expResult = "\"eric.chatellier\"";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "<T extends org.nuiton.topia.TopiaEntity, D extends org.nuiton.topia.TopiaDAO<? super T>> D";
expResult = "<T extends TopiaEntity, D extends TopiaDAO<? super T>> D";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "Object...";
expResult = "Object...";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "Class<A>...";
expResult = "Class<A>...";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.lang.Class<A>...";
expResult = "Class<A>...";
result = GeneratorUtil.getSimpleName(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
}
/**
@@ -207,92 +206,92 @@
String expResult = "List";
String result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.Regex";
expResult = "Regex";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "<T> java.util.List<T>";
expResult = "List<T>";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.List<? extends org.chorem.bonzoms.Bonzoms>";
expResult = "List<? extends Bonzoms>";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.List<org.chorem.jtimer.Jtimer>";
expResult = "List<Jtimer>";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.Set<java.util.Collection<java.util.Collection<java.util.Collection" +
"<java.lang.String>>>>";
expResult = "Set<Collection<Collection<Collection<String>>>>";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.Map<org.chorem.jtimer.Jtimer, java.util.Collection<java.lang.String>>";
expResult = "Map<Jtimer, Collection<String>>";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "new java.util.HashMap<org.chorem.jtimer.Jtimer, T extends java.lang.String>()";
expResult = "new HashMap<Jtimer, T extends String>()";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "Class<O>";
expResult = "Class<O>";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "2.0";
expResult = "2.0";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "\"eric.chatellier\"";
expResult = "\"eric.chatellier\"";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "<T extends org.nuiton.topia.TopiaEntity, D extends org.nuiton.topia.TopiaDAO<? super T>> D";
expResult = "D";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "Object...";
expResult = "Object...";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "Class<A>...";
expResult = "Class<A>...";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.lang.Class<A>...";
expResult = "Class<A>...";
result = GeneratorUtil.getSimpleName(str, true);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
}
@@ -305,81 +304,81 @@
String expResult = "List";
String result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.Regex";
expResult = "java.util.Regex";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "<T> java.util.List<T>";
expResult = "java.util.List<T>";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = " <T> java.util.List<T> ";
expResult = "java.util.List<T>";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.List<? extends org.chorem.bonzoms.Bonzoms>";
expResult = "java.util.List<? extends org.chorem.bonzoms.Bonzoms>";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.util.List<org.chorem.jtimer.Jtimer>";
expResult = "java.util.List<org.chorem.jtimer.Jtimer>";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "Class<O>";
expResult = "Class<O>";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "2.0";
expResult = "2.0";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "\"eric.chatellier\"";
expResult = "\"eric.chatellier\"";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "<T extends org.nuiton.topia.TopiaEntity, D extends org.nuiton.topia.TopiaDAO<? super T>> D";
expResult = "D";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "Object...";
expResult = "Object...";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "Class<A>...";
expResult = "Class<A>...";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
str = "java.lang.Class<A>...";
expResult = "java.lang.Class<A>...";
result = GeneratorUtil.removeGenericDefinition(str);
log.info(str + " -> " + result);
- assertEquals(expResult, result);
+ Assert.assertEquals(expResult, result);
}
@Test
@@ -387,58 +386,58 @@
String str = "List";
Set<String> results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(1, results.size());
+ Assert.assertEquals(1, results.size());
str = "java.util.Regex";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(1, results.size());
+ Assert.assertEquals(1, results.size());
str = "java.util.List<? extends org.chorem.bonzoms.Bonzoms>";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(2, results.size());
+ Assert.assertEquals(2, results.size());
str = "java.util.List<org.chorem.jtimer.Jtimer>";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(2, results.size());
+ Assert.assertEquals(2, results.size());
str = "java.util.Set<java.util.Collection<java.util.Collection<java.util.Collection" +
"<java.lang.String>>>>";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(3, results.size());
+ Assert.assertEquals(3, results.size());
str = "java.util.Map<org.chorem.jtimer.Jtimer, java.util.Collection<java.lang.String>>";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(4, results.size());
+ Assert.assertEquals(4, results.size());
str = "new java.util.HashMap<org.chorem.jtimer.Jtimer, T extends java.lang.String>()";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(3, results.size());
+ Assert.assertEquals(3, results.size());
str = "java.util.Map<org.chorem.jtimer.Jtimer, java.util.Collection<String>>";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(4, results.size());
+ Assert.assertEquals(4, results.size());
str = "java.util.List<java.util.Map<java.util.Date, java.lang.Integer>>";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(4, results.size());
+ Assert.assertEquals(4, results.size());
str = "java.util.List<java.util.Map<java.util.Date, java.lang.Integer>>";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(4, results.size());
+ Assert.assertEquals(4, results.size());
str = "java.util.TreeMap<java.util.ArrayList<java.util.Date>, java.util.SortedSet<java.lang.Number, java.lang.Double>>";
results = GeneratorUtil.getTypesList(str);
log.info(str + " -> " + results);
- assertEquals(6, results.size());
+ Assert.assertEquals(6, results.size());
// str = "<T extends org.nuiton.topia.TopiaEntity> T";
// results = GeneratorUtil.getTypesList(str);
Deleted: trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerExtensionTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerExtensionTest.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerExtensionTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -1,112 +0,0 @@
-/*
- * #%L
- * EUGene :: EUGene
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2004 - 2010 CodeLutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Lesser Public License for more details.
- *
- * You should have received a copy of the GNU General Lesser Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/lgpl-3.0.html>.
- * #L%
- */
-
-package org.nuiton.eugene.java;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-import org.junit.Test;
-import org.nuiton.eugene.models.object.xml.ObjectModelClassImpl;
-import org.nuiton.eugene.models.object.xml.ObjectModelImpl;
-
-import java.util.List;
-
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-
-
-/**
- * ImportsManagerExtensionTest
- * <p/>
- * Created: 2 nov. 2009
- *
- * @author fdesbois
- * @version $Revision$
- * <p/>
- * Mise a jour: $Date$
- * par :
- */
-public class ImportsManagerExtensionTest {
-
-
- private static final Log log =
- LogFactory.getLog(ImportsManagerExtensionTest.class);
-
- /**
- * Test of getManager method, of class ImportsManagerExtension.
- * Prerequisite : Existing ObjectModel containing a classifier
- * - Get an import Manager for a classifier
- * - Test unique : one ImportsManager by classifier
- */
- @Test
- public void testGetManager() {
- log.debug("getManager");
-
- ImportsManagerExtension managers = new ImportsManagerExtension();
-
- ObjectModelImpl model = new ObjectModelImpl();
- model.setName("TestModel");
-
- ObjectModelClassImpl clazz = new ObjectModelClassImpl();
- clazz.setName("Person");
- clazz.setPackage("org.chorem.bonzoms");
- model.addClass(clazz);
-
- ImportsManager manager = managers.getManager(clazz);
- assertNotNull(manager);
-
- ImportsManager manager2 = managers.getManager(clazz);
- assertEquals(manager, manager2);
- }
-
- /**
- * Test of getImports method, of class ImportsManagerExtension.
- * Prerequisite : Existing ObjectModel containing a classifier, imports set for this classifier
- * - Get imports for an existing classifier with its ImportsManager
- */
- @Test
- public void testGetImports() {
- log.debug("getImports");
-
- ImportsManagerExtension managers = new ImportsManagerExtension();
-
- ObjectModelImpl model = new ObjectModelImpl();
- model.setName("TestModel");
-
- ObjectModelClassImpl clazz = new ObjectModelClassImpl();
- clazz.setName("Person");
- clazz.setPackage("org.chorem.bonzoms");
- model.addClass(clazz);
-
- ImportsManager manager = managers.getManager(clazz);
- manager.addImport("java.util.List");
-
- List<String> imports = managers.getImports(clazz);
- assertNotNull(imports);
- assertEquals(imports.size(), 1);
- assertEquals(imports.get(0), "java.util.List");
- }
-
-}
Deleted: trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerTest.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -1,111 +0,0 @@
-/*
- * #%L
- * EUGene :: EUGene
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2004 - 2010 CodeLutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Lesser Public License for more details.
- *
- * You should have received a copy of the GNU General Lesser Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/lgpl-3.0.html>.
- * #L%
- */
-
-package org.nuiton.eugene.java;
-
-import junit.framework.TestCase;
-
-import java.io.Serializable;
-import java.util.List;
-
-public class ImportsManagerTest extends TestCase {
-
- private ImportsManager mgr;
-
- @Override
- protected void setUp() throws Exception {
- mgr = new ImportsManager();
- }
-
- public void testAddImport() throws Exception {
- assertTrue(mgr.addImport("org.nuiton.eugene.Toto"));
- assertTrue(mgr.addImport("org.nuiton.eugene.Toto")); //Repeat to test acceptance
- assertTrue(mgr.addImport("org.nuiton.eugene.Tutu"));
- assertFalse(mgr.addImport("org.chorem.eugene.Tutu")); //Conflict, package differs
-
- assertTrue(mgr.addImport("void"));
- assertTrue(mgr.addImport("boolean"));
- assertTrue(mgr.addImport("Byte"));
- assertTrue(mgr.addImport("java.lang.Toto"));
- assertFalse(mgr.addImport("java.lang.sub.Toto"));
-
- assertTrue(mgr.addImport(Serializable.class));
- assertFalse(mgr.addImport("org.nuiton.eugene.Serializable"));
- }
-
- public void testGetType() throws Exception {
- assertEquals("Toto", mgr.getType("org.nuiton.eugene.Toto"));
- assertEquals("Toto", mgr.getType("org.nuiton.eugene.Toto")); //Repeat to test acceptance
- assertEquals("Tutu", mgr.getType("org.nuiton.eugene.Tutu"));
- assertEquals("org.chorem.eugene.Tutu", mgr.getType("org.chorem.eugene.Tutu")); //Conflict, package differs
-
- assertEquals("void", mgr.getType("void"));
- assertEquals("boolean", mgr.getType("boolean"));
- assertEquals("Byte", mgr.getType("Byte"));
- assertEquals("Toto", mgr.getType("java.lang.Toto"));
- assertEquals("java.lang.sub.Toto", mgr.getType("java.lang.sub.Toto"));
- }
-
- public void testGetImports() throws Exception {
- assertTrue(mgr.addImport("org.nuiton.eugene.Toto"));
- assertTrue(mgr.addImport("org.nuiton.eugene.Tutu"));
- assertTrue(mgr.addImport("org.nuiton.eugene.subpackage.Tata"));
- List<String> imports = mgr.getImports("org.nuiton.eugene");
- assertEquals(1, imports.size());
- assertEquals("org.nuiton.eugene.subpackage.Tata", imports.get(0));
-
- imports = mgr.getImports("org.nuiton");
- assertEquals(3, imports.size());
- // Check using alphabetic sort
- assertEquals("org.nuiton.eugene.Toto", imports.get(0));
- assertEquals("org.nuiton.eugene.Tutu", imports.get(1));
- assertEquals("org.nuiton.eugene.subpackage.Tata", imports.get(2));
-
- imports = mgr.getImports("org.chorem");
- assertEquals(3, imports.size());
-
- imports = mgr.getImports("org.nuiton.eugene.subpackage");
- assertEquals(2, imports.size());
- assertEquals("org.nuiton.eugene.Toto", imports.get(0));
- assertEquals("org.nuiton.eugene.Tutu", imports.get(1));
-
- assertTrue(mgr.addImport("java.lang.String"));
- imports = mgr.getImports("org.nuiton.eugene.subpackage");
- assertEquals(2, imports.size());
- assertEquals("org.nuiton.eugene.Toto", imports.get(0));
- assertEquals("org.nuiton.eugene.Tutu", imports.get(1));
-
- assertTrue(mgr.addImport("void"));
- assertTrue(mgr.addImport("boolean"));
- assertTrue(mgr.addImport("Byte"));
- assertTrue(mgr.addImport("java.lang.Toto"));
- assertFalse(mgr.addImport("java.lang.sub.Titi")); // Read as started, import is refused
- assertTrue(mgr.addImport("org.nuiton.eugene.Tutu")); //Already present, must not reject
- imports = mgr.getImports("org.nuiton.eugene.subpackage");
- assertEquals(2, imports.size());
-
- }
-
-}
Modified: trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -27,8 +27,10 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.junit.Assert;
import org.junit.Test;
import org.nuiton.eugene.GeneratorUtilTest;
+import org.nuiton.eugene.java.extension.ImportsManagerExtension;
import org.nuiton.eugene.models.object.ObjectModel;
import org.nuiton.eugene.models.object.ObjectModelAttribute;
import org.nuiton.eugene.models.object.ObjectModelClass;
@@ -40,13 +42,6 @@
import java.util.List;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertNotSame;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
/**
* JavaBuilderTest
* <p/>
@@ -75,7 +70,8 @@
JavaBuilder builder = new JavaBuilder("TestModel");
- builder.getModel();
+ ObjectModel model = builder.getModel();
+ Assert.assertNotNull(model);
}
/**
@@ -102,7 +98,7 @@
String type = "java.util.List<org.chorem.cash.Category>"; // type add : 2 imports added
builder.addImport(classifier, type);
- assertEquals(3, importsExtension.getImports(classifier).size());
+ Assert.assertEquals(3, importsExtension.getImports(classifier).size());
}
/**
@@ -117,7 +113,10 @@
JavaBuilder builder = new JavaBuilder("TestModel");
- builder.createClass("Person", "org.chorem.bonzoms");
+ ObjectModelClass modelClass = builder.createClass("Person", "org.chorem.bonzoms");
+ Assert.assertNotNull(modelClass);
+ Assert.assertEquals("Person",modelClass.getName());
+ Assert.assertEquals("org.chorem.bonzoms",modelClass.getPackageName());
}
/**
@@ -131,7 +130,10 @@
JavaBuilder builder = new JavaBuilder("TestModel");
ObjectModelClass clazz = builder.createAbstractClass("Person", "org.chorem.bonzoms");
- assertTrue(clazz.isAbstract());
+ Assert.assertNotNull(clazz);
+ Assert.assertEquals("Person",clazz.getName());
+ Assert.assertEquals("org.chorem.bonzoms",clazz.getPackageName());
+ Assert.assertTrue(clazz.isAbstract());
}
/**
@@ -154,14 +156,14 @@
superclassQualifiedName = "org.chorem.bonzoms.NamedElement";
builder.setSuperClass(clazz, superclassQualifiedName);
- assertEquals(1, clazz.getSuperclasses().size());
+ Assert.assertEquals(1, clazz.getSuperclasses().size());
// Check imports
ImportsManagerExtension ext = builder.getModel().getExtension(
ImportsManagerExtension.OBJECTMODEL_EXTENSION, ImportsManagerExtension.class);
List<String> imports = ext.getImports(clazz);
- assertEquals(0, imports.size());
+ Assert.assertEquals(0, imports.size());
}
/**
@@ -185,8 +187,8 @@
ImportsManagerExtension.OBJECTMODEL_EXTENSION, ImportsManagerExtension.class);
List<String> imports = ext.getImports(classifier);
- assertEquals(1, imports.size());
- assertTrue(imports.contains("java.io.Serializable"));
+ Assert.assertEquals(1, imports.size());
+ Assert.assertTrue(imports.contains("java.io.Serializable"));
}
/**
@@ -204,8 +206,8 @@
ObjectModelAttribute constant = builder.addConstant(classifier, "GENDER_MALE", "boolean", "true",
ObjectModelModifier.PUBLIC);
- assertTrue(constant.isFinal());
- assertTrue(constant.isStatic());
+ Assert.assertTrue(constant.isFinal());
+ Assert.assertTrue(constant.isStatic());
}
/**
@@ -237,9 +239,9 @@
List<String> imports = ext.getImports(classifier);
// no imports for org.chorem.bonzoms.Role and java.lang.String
- assertEquals(2, imports.size());
- assertTrue(imports.contains("java.util.ArrayList"));
- assertTrue(imports.contains("java.util.List"));
+ Assert.assertEquals(2, imports.size());
+ Assert.assertTrue(imports.contains("java.util.ArrayList"));
+ Assert.assertTrue(imports.contains("java.util.List"));
}
/**
@@ -264,7 +266,7 @@
ObjectModelAttribute result = builder.addAttribute(classifier, attribute);
- assertNotSame(attribute, result);
+ Assert.assertNotSame(attribute, result);
}
/**
@@ -281,10 +283,10 @@
ObjectModelClass clazz = builder.createClass("Person", "org.chorem.bonzoms");
ObjectModelOperation operation = builder.addConstructor(clazz, ObjectModelModifier.PUBLIC);
- assertNotNull(operation);
- assertEquals(operation.getName(), "Person");
- assertNull(operation.getReturnParameter());
- assertFalse(operation.isAbstract());
+ Assert.assertNotNull(operation);
+ Assert.assertEquals(operation.getName(), "Person");
+ Assert.assertNull(operation.getReturnParameter());
+ Assert.assertFalse(operation.isAbstract());
}
/**
@@ -313,8 +315,8 @@
ImportsManagerExtension.OBJECTMODEL_EXTENSION, ImportsManagerExtension.class);
List<String> imports = ext.getImports(classifier);
- assertEquals(1, imports.size());
- assertTrue(imports.contains("java.util.List"));
+ Assert.assertEquals(1, imports.size());
+ Assert.assertTrue(imports.contains("java.util.List"));
}
/**
@@ -341,7 +343,7 @@
ImportsManagerExtension.OBJECTMODEL_EXTENSION, ImportsManagerExtension.class);
List<String> imports = ext.getImports(classifier);
- assertEquals(0, imports.size());
+ Assert.assertEquals(0, imports.size());
}
@@ -369,7 +371,7 @@
ImportsManagerExtension.OBJECTMODEL_EXTENSION, ImportsManagerExtension.class);
List<String> imports = ext.getImports(classifier);
- assertEquals(0, imports.size());
+ Assert.assertEquals(0, imports.size());
}
/**
@@ -378,7 +380,7 @@
*
* @see ObjectModelBuilderTest#testSetOperationBody()
*/
- @Test
+ @Test(expected = IllegalArgumentException.class)
public void testSetOperationBody() {
log.debug("setOperationBody");
@@ -389,12 +391,9 @@
ObjectModelOperation operation = builder.addOperation(classifier, "setName", "java.lang.String",
ObjectModelModifier.PUBLIC, ObjectModelModifier.ABSTRACT);
- try {
- builder.setOperationBody(operation, "this.name = name");
- } catch (Exception eee) {
- assertEquals(IllegalArgumentException.class, eee.getClass());
- log.debug("expected exception : " + eee.getMessage());
- }
+
+ builder.setOperationBody(operation, "this.name = name");
+
}
}
Copied: trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerExtensionTest.java (from rev 1012, trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerExtensionTest.java)
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerExtensionTest.java (rev 0)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerExtensionTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,107 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package org.nuiton.eugene.java.extension;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.junit.Assert;
+import org.junit.Test;
+import org.nuiton.eugene.models.object.xml.ObjectModelClassImpl;
+import org.nuiton.eugene.models.object.xml.ObjectModelImpl;
+
+import java.util.List;
+
+
+/**
+ * ImportsManagerExtensionTest
+ * <p/>
+ * Created: 2 nov. 2009
+ *
+ * @author fdesbois
+ * @version $Revision$
+ */
+public class ImportsManagerExtensionTest {
+
+
+ private static final Log log =
+ LogFactory.getLog(ImportsManagerExtensionTest.class);
+
+ /**
+ * Test of getManager method, of class ImportsManagerExtension.
+ * Prerequisite : Existing ObjectModel containing a classifier
+ * - Get an import Manager for a classifier
+ * - Test unique : one ImportsManager by classifier
+ */
+ @Test
+ public void testGetManager() {
+ log.debug("getManager");
+
+ ImportsManagerExtension managers = new ImportsManagerExtension();
+
+ ObjectModelImpl model = new ObjectModelImpl();
+ model.setName("TestModel");
+
+ ObjectModelClassImpl clazz = new ObjectModelClassImpl();
+ clazz.setName("Person");
+ clazz.setPackage("org.chorem.bonzoms");
+ model.addClass(clazz);
+
+ ImportsManager manager = managers.getManager(clazz);
+ Assert.assertNotNull(manager);
+
+ ImportsManager manager2 = managers.getManager(clazz);
+ Assert.assertEquals(manager, manager2);
+ }
+
+ /**
+ * Test of getImports method, of class ImportsManagerExtension.
+ * Prerequisite : Existing ObjectModel containing a classifier, imports set for this classifier
+ * - Get imports for an existing classifier with its ImportsManager
+ */
+ @Test
+ public void testGetImports() {
+ log.debug("getImports");
+
+ ImportsManagerExtension managers = new ImportsManagerExtension();
+
+ ObjectModelImpl model = new ObjectModelImpl();
+ model.setName("TestModel");
+
+ ObjectModelClassImpl clazz = new ObjectModelClassImpl();
+ clazz.setName("Person");
+ clazz.setPackage("org.chorem.bonzoms");
+ model.addClass(clazz);
+
+ ImportsManager manager = managers.getManager(clazz);
+ manager.addImport("java.util.List");
+
+ List<String> imports = managers.getImports(clazz);
+ Assert.assertNotNull(imports);
+ Assert.assertEquals(imports.size(), 1);
+ Assert.assertEquals(imports.get(0), "java.util.List");
+ }
+
+}
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerExtensionTest.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Copied: trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerTest.java (from rev 1012, trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerTest.java)
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerTest.java (rev 0)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -0,0 +1,116 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+
+package org.nuiton.eugene.java.extension;
+
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Test;
+
+import java.io.Serializable;
+import java.util.List;
+
+public class ImportsManagerTest {
+
+ private ImportsManager mgr;
+
+ @Before
+ public void setUp() throws Exception {
+ mgr = new ImportsManager();
+ }
+
+ @Test
+ public void testAddImport() throws Exception {
+ Assert.assertTrue(mgr.addImport("org.nuiton.eugene.Toto"));
+ Assert.assertTrue(mgr.addImport("org.nuiton.eugene.Toto")); //Repeat to test acceptance
+ Assert.assertTrue(mgr.addImport("org.nuiton.eugene.Tutu"));
+ Assert.assertFalse(mgr.addImport("org.chorem.eugene.Tutu")); //Conflict, package differs
+
+ Assert.assertTrue(mgr.addImport("void"));
+ Assert.assertTrue(mgr.addImport("boolean"));
+ Assert.assertTrue(mgr.addImport("Byte"));
+ Assert.assertTrue(mgr.addImport("java.lang.Toto"));
+ Assert.assertFalse(mgr.addImport("java.lang.sub.Toto"));
+
+ Assert.assertTrue(mgr.addImport(Serializable.class));
+ Assert.assertFalse(mgr.addImport("org.nuiton.eugene.Serializable"));
+ }
+
+ @Test
+ public void testGetType() throws Exception {
+ Assert.assertEquals("Toto", mgr.getType("org.nuiton.eugene.Toto"));
+ Assert.assertEquals("Toto", mgr.getType("org.nuiton.eugene.Toto")); //Repeat to test acceptance
+ Assert.assertEquals("Tutu", mgr.getType("org.nuiton.eugene.Tutu"));
+ Assert.assertEquals("org.chorem.eugene.Tutu", mgr.getType("org.chorem.eugene.Tutu")); //Conflict, package differs
+
+ Assert.assertEquals("void", mgr.getType("void"));
+ Assert.assertEquals("boolean", mgr.getType("boolean"));
+ Assert.assertEquals("Byte", mgr.getType("Byte"));
+ Assert.assertEquals("Toto", mgr.getType("java.lang.Toto"));
+ Assert.assertEquals("java.lang.sub.Toto", mgr.getType("java.lang.sub.Toto"));
+ }
+
+ @Test
+ public void testGetImports() throws Exception {
+ Assert.assertTrue(mgr.addImport("org.nuiton.eugene.Toto"));
+ Assert.assertTrue(mgr.addImport("org.nuiton.eugene.Tutu"));
+ Assert.assertTrue(mgr.addImport("org.nuiton.eugene.subpackage.Tata"));
+ List<String> imports = mgr.getImports("org.nuiton.eugene");
+ Assert.assertEquals(1, imports.size());
+ Assert.assertEquals("org.nuiton.eugene.subpackage.Tata", imports.get(0));
+
+ imports = mgr.getImports("org.nuiton");
+ Assert.assertEquals(3, imports.size());
+ // Check using alphabetic sort
+ Assert.assertEquals("org.nuiton.eugene.Toto", imports.get(0));
+ Assert.assertEquals("org.nuiton.eugene.Tutu", imports.get(1));
+ Assert.assertEquals("org.nuiton.eugene.subpackage.Tata", imports.get(2));
+
+ imports = mgr.getImports("org.chorem");
+ Assert.assertEquals(3, imports.size());
+
+ imports = mgr.getImports("org.nuiton.eugene.subpackage");
+ Assert.assertEquals(2, imports.size());
+ Assert.assertEquals("org.nuiton.eugene.Toto", imports.get(0));
+ Assert.assertEquals("org.nuiton.eugene.Tutu", imports.get(1));
+
+ Assert.assertTrue(mgr.addImport("java.lang.String"));
+ imports = mgr.getImports("org.nuiton.eugene.subpackage");
+ Assert.assertEquals(2, imports.size());
+ Assert.assertEquals("org.nuiton.eugene.Toto", imports.get(0));
+ Assert.assertEquals("org.nuiton.eugene.Tutu", imports.get(1));
+
+ Assert.assertTrue(mgr.addImport("void"));
+ Assert.assertTrue(mgr.addImport("boolean"));
+ Assert.assertTrue(mgr.addImport("Byte"));
+ Assert.assertTrue(mgr.addImport("java.lang.Toto"));
+ Assert.assertFalse(mgr.addImport("java.lang.sub.Titi")); // Read as started, import is refused
+ Assert.assertTrue(mgr.addImport("org.nuiton.eugene.Tutu")); //Already present, must not reject
+ imports = mgr.getImports("org.nuiton.eugene.subpackage");
+ Assert.assertEquals(2, imports.size());
+
+ }
+
+}
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/java/extension/ImportsManagerTest.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:mergeinfo
+ /branches/1.0.1-Javabuilder/eugene/src/test/java/org/nuiton/eugene/ImportsManagerTest.java:641-651
/branches/1.1.0-Javabuilder/eugene/src/test/java/org/nuiton/eugene/ImportsManagerTest.java:652-681
/branches/eugene-2.0/eugene/src/test/java/org/nuiton/eugene/ImportsManagerTest.java:682-754
Modified: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelBuilderTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelBuilderTest.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelBuilderTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -28,6 +28,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.junit.Assert;
import org.junit.Test;
import org.nuiton.eugene.models.object.ObjectModel;
import org.nuiton.eugene.models.object.ObjectModelAssociationClass;
@@ -43,11 +44,6 @@
import java.util.List;
import java.util.Set;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertFalse;
-import static org.junit.Assert.assertNotNull;
-import static org.junit.Assert.assertTrue;
-
/**
* ObjectModelBuilder
* <p/>
@@ -72,8 +68,8 @@
ObjectModelBuilder builder = new ObjectModelBuilder("TestModel");
- assertNotNull(builder.getModel());
- assertEquals("TestModel", builder.getModel().getName());
+ Assert.assertNotNull(builder.getModel());
+ Assert.assertEquals("TestModel", builder.getModel().getName());
}
/**
@@ -93,7 +89,7 @@
// model.tagvalue.fr.ifremer.isisfish.types.Month=fr.ifremer.isisfish.types.hibernate.MonthType
ObjectModel model = builder.getModel();
- assertEquals("fr.ifremer.isisfish.types.hibernate.MonthType",
+ Assert.assertEquals("fr.ifremer.isisfish.types.hibernate.MonthType",
model.getTagValue("fr.ifremer.isisfish.types.Month"));
// fr.isisfish.entities.Population.attribute.name.tagvalue.pk=topiaId
@@ -101,7 +97,7 @@
ObjectModelAttribute attr = builder.addAttribute(clazz, "name", "java.lang.String");
builder.addTagValue(attr, "pk", "topiaId");
- assertEquals("topiaId", attr.getTagValue("pk"));
+ Assert.assertEquals("topiaId", attr.getTagValue("pk"));
}
/**
@@ -117,10 +113,10 @@
ObjectModelClass clazz = builder.createClass("Person", "org.chorem.bonzoms");
- assertNotNull(clazz);
- assertEquals("Person", clazz.getName());
- assertEquals("org.chorem.bonzoms", clazz.getPackageName());
- assertEquals("org.chorem.bonzoms.Person", clazz.getQualifiedName());
+ Assert.assertNotNull(clazz);
+ Assert.assertEquals("Person", clazz.getName());
+ Assert.assertEquals("org.chorem.bonzoms", clazz.getPackageName());
+ Assert.assertEquals("org.chorem.bonzoms.Person", clazz.getQualifiedName());
}
/** Test of createInterface method, of class ObjectModelBuilder. */
@@ -141,7 +137,7 @@
ObjectModelClassifier classifier = builder.createClass("Person", "org.chorem.bonzoms");
ObjectModelAttribute attribute = builder.addAttribute(classifier, "firstName", "java.lang.String");
- assertEquals("", attribute.getDefaultValue());
+ Assert.assertEquals("", attribute.getDefaultValue());
}
/**
@@ -160,20 +156,20 @@
ObjectModelAttribute attribute = builder.addAttribute(classifier, "firstName", "java.lang.String", "",
ObjectModelModifier.PUBLIC);
- assertNotNull(attribute);
- assertEquals("firstName", attribute.getName());
- assertEquals("java.lang.String", attribute.getType());
- assertEquals("public", attribute.getVisibility());
- assertEquals("", attribute.getDefaultValue());
- assertFalse(attribute.isFinal());
- assertFalse(attribute.isStatic());
+ Assert.assertNotNull(attribute);
+ Assert.assertEquals("firstName", attribute.getName());
+ Assert.assertEquals("java.lang.String", attribute.getType());
+ Assert.assertEquals("public", attribute.getVisibility());
+ Assert.assertEquals("", attribute.getDefaultValue());
+ Assert.assertFalse(attribute.isFinal());
+ Assert.assertFalse(attribute.isStatic());
attribute = builder.addAttribute(classifier, "roles", "java.lang.List<org.chorem.bonzoms.Role>",
"new java.lang.ArrayList<org.chorem.bonzoms.Role>()",
ObjectModelModifier.PRIVATE, ObjectModelModifier.STATIC);
- assertEquals("new java.lang.ArrayList<org.chorem.bonzoms.Role>()", attribute.getDefaultValue());
- assertTrue(attribute.isStatic());
+ Assert.assertEquals("new java.lang.ArrayList<org.chorem.bonzoms.Role>()", attribute.getDefaultValue());
+ Assert.assertTrue(attribute.isStatic());
}
/**
@@ -191,15 +187,15 @@
ObjectModelOperation result = builder.addOperation(classifier,
"methodName", "java.util.List<java.lang.String>", ObjectModelModifier.PUBLIC);
- assertNotNull(result);
- assertEquals(result.getName(), "methodName");
- assertEquals(result.getReturnType(), "java.util.List<java.lang.String>");
- assertEquals(result.getVisibility(), "public");
- assertFalse(result.isAbstract());
+ Assert.assertNotNull(result);
+ Assert.assertEquals(result.getName(), "methodName");
+ Assert.assertEquals(result.getReturnType(), "java.util.List<java.lang.String>");
+ Assert.assertEquals(result.getVisibility(), "public");
+ Assert.assertFalse(result.isAbstract());
result = builder.addOperation(classifier, "addPropertyChangeListener", "void",
ObjectModelModifier.PUBLIC, ObjectModelModifier.ABSTRACT);
- assertTrue(result.isAbstract());
+ Assert.assertTrue(result.isAbstract());
}
/**
@@ -219,8 +215,8 @@
ObjectModelModifier.PUBLIC);
builder.setOperationBody(operation, "this.name = name");
- assertNotNull(operation.getBodyCode());
- assertEquals(operation.getBodyCode(), "this.name = name");
+ Assert.assertNotNull(operation.getBodyCode());
+ Assert.assertEquals(operation.getBodyCode(), "this.name = name");
}
/**
@@ -240,8 +236,8 @@
String interfaceQualifiedName = "java.io.Serializable";
builder.addInterface(classifier, interfaceQualifiedName);
- assertNotNull(classifier.getInterfaces());
- assertEquals(classifier.getInterfaces().size(), 1);
+ Assert.assertNotNull(classifier.getInterfaces());
+ Assert.assertEquals(classifier.getInterfaces().size(), 1);
}
/**
@@ -260,7 +256,7 @@
String superclassQualifiedName = "org.chorem.bonzoms.Party";
builder.addSuperclass(clazz, superclassQualifiedName);
- assertEquals(1, clazz.getSuperclasses().size());
+ Assert.assertEquals(1, clazz.getSuperclasses().size());
}
/**
@@ -280,13 +276,13 @@
ObjectModelModifier.PUBLIC);
ObjectModelParameter param = builder.addParameter(operation, "java.lang.String", "name");
- assertNotNull(param);
- assertEquals(param.getName(), "name");
- assertEquals(param.getType(), "java.lang.String");
+ Assert.assertNotNull(param);
+ Assert.assertEquals(param.getName(), "name");
+ Assert.assertEquals(param.getType(), "java.lang.String");
List<ObjectModelParameter> listParams = (List<ObjectModelParameter>) operation.getParameters();
ObjectModelParameter param1 = listParams.get(0);
- assertEquals(param1, param);
+ Assert.assertEquals(param1, param);
}
/**
@@ -307,11 +303,11 @@
builder.addException(operation, "java.lang.IllegalArgumentException");
Set<String> exceptions = operation.getExceptions();
- assertNotNull(exceptions);
- assertEquals(exceptions.size(), 1);
+ Assert.assertNotNull(exceptions);
+ Assert.assertEquals(exceptions.size(), 1);
Iterator<String> it = exceptions.iterator();
- assertNotNull(it.hasNext());
- assertEquals(it.next(), "java.lang.IllegalArgumentException");
+ Assert.assertNotNull(it.hasNext());
+ Assert.assertEquals(it.next(), "java.lang.IllegalArgumentException");
}
/** Test of setDocumentation method, of class ObjectModelBuilder. */
@@ -338,14 +334,14 @@
ObjectModelAttribute assoc = builder.addAssociation(classA, classB, "poll", 1, 1,
ObjectModelModifier.COMPOSITE, ObjectModelModifier.NAVIGABLE, ObjectModelModifier.ORDERED);
- assertNotNull(assoc);
- assertTrue(assoc.isNavigable());
- assertTrue(assoc.isComposite());
- assertTrue(assoc.isOrdered());
- assertEquals("poll", assoc.getName());
- assertEquals(1, assoc.getMinMultiplicity());
- assertEquals(1, assoc.getMaxMultiplicity());
- assertEquals("org.chorem.pollen.business.persistence.Vote", assoc.getType());
+ Assert.assertNotNull(assoc);
+ Assert.assertTrue(assoc.isNavigable());
+ Assert.assertTrue(assoc.isComposite());
+ Assert.assertTrue(assoc.isOrdered());
+ Assert.assertEquals("poll", assoc.getName());
+ Assert.assertEquals(1, assoc.getMinMultiplicity());
+ Assert.assertEquals(1, assoc.getMaxMultiplicity());
+ Assert.assertEquals("org.chorem.pollen.business.persistence.Vote", assoc.getType());
}
@@ -370,8 +366,8 @@
ObjectModelAttribute assocB = builder.addReverseAssociation(assocA, "vote", 0, -1);
- assertEquals(assocA, assocB.getReverseAttribute());
- assertEquals(assocB, assocA.getReverseAttribute());
+ Assert.assertEquals(assocA, assocB.getReverseAttribute());
+ Assert.assertEquals(assocB, assocA.getReverseAttribute());
}
/**
@@ -401,9 +397,9 @@
List<ObjectModelClassifier> classifiers = assocClass.getParticipantsClassifiers();
- assertEquals(2, classifiers.size());
- assertTrue(classifiers.contains(classA));
- assertTrue(classifiers.contains(classB));
+ Assert.assertEquals(2, classifiers.size());
+ Assert.assertTrue(classifiers.contains(classA));
+ Assert.assertTrue(classifiers.contains(classB));
}
/** Test of addStereotype method, of class ObjectModelBuilder. */
@@ -415,11 +411,11 @@
ObjectModelClass classA = builder.createClass("Vote", "org.chorem.pollen.business.persistence");
- assertEquals(0, classA.getStereotypes().size());
+ Assert.assertEquals(0, classA.getStereotypes().size());
builder.addStereotype(classA, "entity");
- assertEquals(1, classA.getStereotypes().size());
+ Assert.assertEquals(1, classA.getStereotypes().size());
}
Modified: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelImplTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelImplTest.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelImplTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -27,12 +27,10 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
+import org.junit.Assert;
import org.junit.Test;
-import org.nuiton.eugene.java.ImportsManagerExtension;
+import org.nuiton.eugene.java.extension.ImportsManagerExtension;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNotNull;
-
/** @author fdesbois */
public class ObjectModelImplTest {
@@ -349,12 +347,12 @@
ImportsManagerExtension result =
model.getExtension(ImportsManagerExtension.OBJECTMODEL_EXTENSION, ImportsManagerExtension.class);
- assertNotNull(result);
+ Assert.assertNotNull(result);
ImportsManagerExtension result2 =
model.getExtension(ImportsManagerExtension.OBJECTMODEL_EXTENSION, ImportsManagerExtension.class);
- assertEquals(result, result2);
+ Assert.assertEquals(result, result2);
}
}
Modified: trunk/eugene/src/test/java/org/nuiton/eugene/models/state/StateModelDTDTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/models/state/StateModelDTDTest.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/models/state/StateModelDTDTest.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -76,31 +76,36 @@
SAXParser parser = factory.newSAXParser();
// --- Set Input source
- InputSource source = new InputSource(new FileInputStream(file));
+ FileInputStream stream = new FileInputStream(file);
- // --- parse
- XMLReader reader = parser.getXMLReader();
- reader.setContentHandler(new DefaultHandler());
- reader.setErrorHandler(new DefaultHandler());
- reader.setEntityResolver(new EntityResolver() {
- @Override
- public InputSource resolveEntity(String publicId, String systemId)
- throws SAXException, IOException {
+ try {
+ InputSource source = new InputSource(stream);
+ // --- parse
+ XMLReader reader = parser.getXMLReader();
+ reader.setContentHandler(new DefaultHandler());
+ reader.setErrorHandler(new DefaultHandler());
+ reader.setEntityResolver(new EntityResolver() {
+ @Override
+ public InputSource resolveEntity(String publicId, String systemId)
+ throws SAXException, IOException {
- String dtd = systemId.substring(systemId.lastIndexOf("/"));
+ String dtd = systemId.substring(systemId.lastIndexOf("/"));
- URL url = Resource.getURL("dtd/" + dtd);
- InputSource source;
- try {
- source = new InputSource(new FileInputStream(new File(url.toURI())));
- } catch (URISyntaxException e) {
- throw new SAXException(e);
+ URL url = Resource.getURL("dtd/" + dtd);
+ InputSource source;
+ try {
+ source = new InputSource(new FileInputStream(new File(url.toURI())));
+ } catch (URISyntaxException e) {
+ throw new SAXException(e);
+ }
+
+ return source;
}
-
- return source;
- }
- });
- reader.parse(source);
+ });
+ reader.parse(source);
+ } finally {
+ stream.close();
+ }
}
}
}
Modified: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/BeanGenerator.java
===================================================================
--- trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/BeanGenerator.java 2010-11-29 09:24:24 UTC (rev 1019)
+++ trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/BeanGenerator.java 2010-11-29 13:07:18 UTC (rev 1020)
@@ -75,7 +75,6 @@
import org.apache.commons.logging.LogFactory;
import org.nuiton.eugene.models.object.ObjectModelGenerator;
import org.nuiton.eugene.GeneratorUtil;
-import org.nuiton.eugene.java.ImportsManager;
import org.nuiton.eugene.models.object.ObjectModelAttribute;
import org.nuiton.eugene.models.object.ObjectModelClass;
import org.nuiton.eugene.models.object.ObjectModelClassifier;
@@ -83,6 +82,8 @@
import org.nuiton.eugene.models.object.ObjectModelInterface;
import org.nuiton.eugene.models.object.ObjectModelOperation;
import org.nuiton.eugene.models.object.ObjectModelParameter;
+import org.nuiton.eugene.java.extension.ImportsManagerExtension;
+import org.nuiton.eugene.java.extension.ImportsManager;
/**
* DTO generator
@@ -632,7 +633,7 @@
* @param attributes list of attributes for the generation (may be not empty)
* @param imports the ImportsManager used to generate the header imports of the DTO
* @return the same list of attributes in parameter with attributes from entities dependencies
- * @see org.nuiton.eugene.java.ImportsManager
+ * @see org.nuiton.eugene.java.extension.ImportsManager
* @see org.nuiton.eugene.models.object.ObjectModelDependency
*/
private List<ObjectModelAttribute> setAttributesForDTO(ObjectModelClass clazz,
1
0
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
by tchemit@users.nuiton.org 29 Nov '10
by tchemit@users.nuiton.org 29 Nov '10
29 Nov '10
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");
1
0
r1018 - in trunk/eugene/src/main/java/org/nuiton/eugene: . models/object
by tchemit@users.nuiton.org 29 Nov '10
by tchemit@users.nuiton.org 29 Nov '10
29 Nov '10
Author: tchemit
Date: 2010-11-29 09:55:47 +0100 (Mon, 29 Nov 2010)
New Revision: 1018
Url: http://nuiton.org/repositories/revision/eugene/1018
Log:
can configure log level of model properties loader + do not still block unknown tag value, still a couple of unsafe one...
Modified:
trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java 2010-11-28 23:55:31 UTC (rev 1017)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java 2010-11-29 08:55:47 UTC (rev 1018)
@@ -25,26 +25,24 @@
/** Logger. */
private static final Log log = LogFactory.getLog(ModelPropertiesUtil.class);
- /** the shared store of known tag values and stereotypes. */
- public static ModelPropertiesProvider store;
+ /**
+ * Obtain a new store of tag values and stereotypes.
+ *
+ * @param loader the classloader to use (if none given will use the one of the current thread)
+ * @param verbose a verbose flag
+ * @return the aggregate store of all atomic one detected in the class-path
+ */
+ public static ModelPropertiesProvider newStore(ClassLoader loader,
+ boolean verbose) {
- public static Class<?>[] getTagValueTarget(String tagValueName) {
- return getStore().getTagValueTarget(tagValueName);
- }
-
- public static Class<?>[] getStereotypeTarget(String tagValueName) {
- return getStore().getStereotypeTarget(tagValueName);
- }
-
- public static ModelPropertiesProvider initStore(ClassLoader loader) {
-
if (loader == null) {
// use the current thread loader
loader = Thread.currentThread().getContextClassLoader();
}
- store = new AggregateModelPropertiesProvider(loader);
+ ModelPropertiesProvider store = new AggregateModelPropertiesProvider(loader);
+ store.setVerbose(verbose || log.isDebugEnabled());
try {
store.init();
} catch (Exception e) {
@@ -53,14 +51,6 @@
return store;
}
- public static ModelPropertiesProvider getStore() {
- if (store == null) {
-
- store = initStore(null);
- }
- return store;
- }
-
/**
* The Eugene provider of tag values and stereotypes.
*
@@ -97,9 +87,10 @@
loader = ServiceLoader.load(ModelPropertiesProvider.class,
this.loader);
for (ModelPropertiesProvider provider : loader) {
- if (log.isInfoEnabled()) {
+ if (isVerbose()) {
log.info("Will init model properties provider " + provider);
}
+ provider.setVerbose(isVerbose());
provider.init();
getStereotypeStore().putAll(provider.getStereotypeStore());
getTagValueStore().putAll(provider.getTagValueStore());
@@ -176,15 +167,25 @@
protected Map<String, TagValueDefinition> tagValueStore;
+ protected boolean verbose;
+
protected ModelPropertiesProvider() {
stereotypeStore = new TreeMap<String, StereotypeDefinition>();
tagValueStore = new TreeMap<String, TagValueDefinition>();
}
+ public boolean isVerbose() {
+ return verbose;
+ }
+
+ public void setVerbose(boolean verbose) {
+ this.verbose = verbose;
+ }
+
public abstract void init() throws Exception;
protected void scanStereotypeClass(Class<?> holder) throws IllegalAccessException {
- if (log.isInfoEnabled()) {
+ if (isVerbose()) {
log.info("Will scan " + holder.getName() + " to search some stereotype definitions...");
}
Field[] fields = holder.getDeclaredFields();
@@ -196,7 +197,7 @@
if (stereotypeDefinition != null) {
String fieldName = field.getName();
String stereotypeName = (String) field.get(null);
- if (log.isInfoEnabled()) {
+ if (isVerbose()) {
log.info("Detected stereotype definition [" + fieldName + ":" + stereotypeName + "] : " + Arrays.toString(stereotypeDefinition.target()));
}
stereotypeStore.put(stereotypeName, stereotypeDefinition);
@@ -205,7 +206,7 @@
}
protected void scanTagValueClass(Class<?> holder) throws IllegalAccessException {
- if (log.isInfoEnabled()) {
+ if (isVerbose()) {
log.info("Will scan " + holder.getName() + " to search some tag value definitions...");
}
Field[] fields = holder.getDeclaredFields();
@@ -216,7 +217,7 @@
if (tagValueDefinition != null) {
String fieldName = field.getName();
String tagValueName = (String) field.get(null);
- if (log.isInfoEnabled()) {
+ if (isVerbose()) {
log.info("Detected tag value definition [" + fieldName + ":" + tagValueName + "] : " + Arrays.toString(tagValueDefinition.target()));
}
tagValueStore.put(tagValueName, tagValueDefinition);
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java 2010-11-28 23:55:31 UTC (rev 1017)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java 2010-11-29 08:55:47 UTC (rev 1018)
@@ -109,6 +109,8 @@
public static final String MODEL = "model";
+ ModelPropertiesUtil.ModelPropertiesProvider propertiesProvider;
+
/**
* @param files les noms des fichiers existant contenant du XML représentant
* des ObjectModel. Il est automatiquement recherche un fichier de
@@ -201,8 +203,8 @@
public Properties loadModelProperties(File propFile, ObjectModel model) throws IOException {
// init ModelProperties store
- ModelPropertiesUtil.initStore(getLoader());
-
+ propertiesProvider = ModelPropertiesUtil.newStore(getLoader(), isVerbose());
+
Properties prop = new RecursiveProperties();
// try {
FileInputStream inStream = new FileInputStream(propFile);
@@ -286,14 +288,14 @@
}
String tag = matcher.group(2);
- Class<?>[] targets = ModelPropertiesUtil.getTagValueTarget(tag);
+ Class<?>[] targets = propertiesProvider.getTagValueTarget(tag);
if (targets == null) {
// unknown tag value, can not use it
if (log.isWarnEnabled()) {
log.warn("Invalid model tag value [" + key + "] : the tagvalue is unkown.");
}
- return false;
+// return false;
}
ObjectModelImpl modelImpl = (ObjectModelImpl) model;
1
0
28 Nov '10
Author: tchemit
Date: 2010-11-29 00:55:31 +0100 (Mon, 29 Nov 2010)
New Revision: 1017
Url: http://nuiton.org/repositories/revision/eugene/1017
Log:
let init moethod be public (for tests) + optimize imports
Modified:
trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java
trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java
trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java 2010-11-28 23:49:23 UTC (rev 1016)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java 2010-11-28 23:55:31 UTC (rev 1017)
@@ -29,6 +29,8 @@
import org.nuiton.eugene.models.object.ObjectModelAttribute;
import org.nuiton.eugene.models.object.ObjectModelClassifier;
+import static org.nuiton.eugene.ModelPropertiesUtil.StereotypeDefinition;
+
/**
* Defines all stereotypes managed by Eugene.
* <p/>
@@ -46,7 +48,7 @@
* @see JavaBeanTransformer
* @see JavaGeneratorUtil#hasBeanStereotype(ObjectModelClassifier)
*/
- @ModelPropertiesUtil.StereotypeDefinition(target = ObjectModelClassifier.class)
+ @StereotypeDefinition(target = ObjectModelClassifier.class)
String STEREOTYPE_BEAN = "bean";
/**
@@ -54,6 +56,6 @@
*
* @see GeneratorUtil#hasIndexedStereotype(ObjectModelAttribute)
*/
- @ModelPropertiesUtil.StereotypeDefinition(target = ObjectModelAttribute.class)
+ @StereotypeDefinition(target = ObjectModelAttribute.class)
String STEREOTYPE_INDEXED = "indexed";
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java 2010-11-28 23:49:23 UTC (rev 1016)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java 2010-11-28 23:55:31 UTC (rev 1017)
@@ -31,6 +31,7 @@
import org.nuiton.eugene.models.object.ObjectModelElement;
import org.nuiton.eugene.models.object.ObjectModelReader;
+import static org.nuiton.eugene.ModelPropertiesUtil.TagValueDefinition;
/**
* Defines all tag values managed by Eugene.
* <p/>
@@ -53,7 +54,7 @@
* @see ObjectModelReader#loadModelTagValue(ObjectModel, String, String)
* @since 2.3
*/
- @ModelPropertiesUtil.TagValueDefinition(target = {ObjectModel.class})
+ @TagValueDefinition(target = {ObjectModel.class})
String TAG_VERSION = "version";
/**
@@ -65,7 +66,7 @@
* @see JavaGeneratorUtil#getConstantPrefixTagValue(ObjectModel, ObjectModelClassifier)
* @since 2.3
*/
- @ModelPropertiesUtil.TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
+ @TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
String TAG_CONSTANT_PREFIX = "constantPrefix";
/**
@@ -77,7 +78,7 @@
* @see JavaGeneratorUtil#getNoPCSTagValue(ObjectModel, ObjectModelClassifier)
* @since 2.3
*/
- @ModelPropertiesUtil.TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
+ @TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
String TAG_NO_PCS = "noPCS";
/**
@@ -88,6 +89,6 @@
* @see JavaGeneratorUtil#getI18nPrefixTagValue(ObjectModelElement, ObjectModel)
* @since 2.3
*/
- @ModelPropertiesUtil.TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
+ @TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
String TAG_I18N_PREFIX = "i18n";
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java 2010-11-28 23:49:23 UTC (rev 1016)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java 2010-11-28 23:55:31 UTC (rev 1017)
@@ -70,7 +70,7 @@
public static class EugeneModelPropertiesProvider extends ModelPropertiesProvider {
@Override
- protected void init() throws IllegalAccessException {
+ public void init() throws IllegalAccessException {
scanStereotypeClass(EugeneStereoTypes.class);
scanTagValueClass(EugeneTagValues.class);
}
@@ -92,7 +92,7 @@
}
@Override
- protected void init() throws Exception {
+ public void init() throws Exception {
ServiceLoader<ModelPropertiesProvider> loader;
loader = ServiceLoader.load(ModelPropertiesProvider.class,
this.loader);
@@ -181,7 +181,7 @@
tagValueStore = new TreeMap<String, TagValueDefinition>();
}
- protected abstract void init() throws Exception;
+ public abstract void init() throws Exception;
protected void scanStereotypeClass(Class<?> holder) throws IllegalAccessException {
if (log.isInfoEnabled()) {
1
0
r1016 - in trunk/eugene/src: main/java/org/nuiton/eugene test/java/org/nuiton/eugene
by tchemit@users.nuiton.org 28 Nov '10
by tchemit@users.nuiton.org 28 Nov '10
28 Nov '10
Author: tchemit
Date: 2010-11-29 00:49:23 +0100 (Mon, 29 Nov 2010)
New Revision: 1016
Url: http://nuiton.org/repositories/revision/eugene/1016
Log:
add since + fix test
Modified:
trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java
trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java 2010-11-28 23:16:57 UTC (rev 1015)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java 2010-11-28 23:49:23 UTC (rev 1016)
@@ -85,7 +85,7 @@
*/
public static class AggregateModelPropertiesProvider extends ModelPropertiesProvider {
- ClassLoader loader;
+ protected ClassLoader loader;
public AggregateModelPropertiesProvider(ClassLoader loader) {
this.loader = loader;
@@ -94,7 +94,8 @@
@Override
protected void init() throws Exception {
ServiceLoader<ModelPropertiesProvider> loader;
- loader = ServiceLoader.load(ModelPropertiesProvider.class, this.loader);
+ loader = ServiceLoader.load(ModelPropertiesProvider.class,
+ this.loader);
for (ModelPropertiesProvider provider : loader) {
if (log.isInfoEnabled()) {
log.info("Will init model properties provider " + provider);
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java 2010-11-28 23:16:57 UTC (rev 1015)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java 2010-11-28 23:49:23 UTC (rev 1016)
@@ -48,8 +48,10 @@
/** date de derniere modification de la source la plus recente */
protected long lastModifiedSource;
+ /** @since 2.3 */
protected boolean verbose;
-
+
+ /** @since 2.3 */
protected ClassLoader loader;
public boolean isVerbose() {
@@ -82,9 +84,7 @@
}
}
- /**
- * @return the last modified file source (says the newer incoming file)
- */
+ /** @return the last modified file source (says the newer incoming file) */
public long getLastModifiedSource() {
return lastModifiedSource;
}
Modified: trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java 2010-11-28 23:16:57 UTC (rev 1015)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java 2010-11-28 23:49:23 UTC (rev 1016)
@@ -1,7 +1,7 @@
package org.nuiton.eugene;
import org.junit.Assert;
-import org.junit.BeforeClass;
+import org.junit.Before;
import org.junit.Test;
import org.nuiton.eugene.models.object.ObjectModel;
import org.nuiton.eugene.models.object.ObjectModelAttribute;
@@ -17,9 +17,10 @@
protected ModelPropertiesUtil.ModelPropertiesProvider provider;
- @BeforeClass
- public void setUp() {
+ @Before
+ public void setUp() throws Exception {
provider = new ModelPropertiesUtil.EugeneModelPropertiesProvider();
+ provider.init();
}
@Test
1
0
r1015 - in trunk: eugene/src/main/java/org/nuiton/eugene eugene/src/main/java/org/nuiton/eugene/models/object eugene/src/main/resolver-cache/META-INF eugene/src/main/resolver-cache/META-INF/services eugene/src/test/java/org/nuiton/eugene maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer
by tchemit@users.nuiton.org 28 Nov '10
by tchemit@users.nuiton.org 28 Nov '10
28 Nov '10
Author: tchemit
Date: 2010-11-29 00:16:57 +0100 (Mon, 29 Nov 2010)
New Revision: 1015
Url: http://nuiton.org/repositories/revision/eugene/1015
Log:
Evolution #1113: Introduce a safe api to manager tag values and stereotypes
Added:
trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
trunk/eugene/src/main/resolver-cache/META-INF/services/
trunk/eugene/src/main/resolver-cache/META-INF/services/org.nuiton.eugene.ModelPropertiesUtil$ModelPropertiesProvider
trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java
Removed:
trunk/eugene/src/main/java/org/nuiton/eugene/StereotypeDefinition.java
trunk/eugene/src/main/java/org/nuiton/eugene/TagValueDefinition.java
Modified:
trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java
trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java
trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java 2010-11-28 20:13:58 UTC (rev 1014)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java 2010-11-28 23:16:57 UTC (rev 1015)
@@ -46,7 +46,7 @@
* @see JavaBeanTransformer
* @see JavaGeneratorUtil#hasBeanStereotype(ObjectModelClassifier)
*/
- @StereotypeDefinition(target = ObjectModelClassifier.class)
+ @ModelPropertiesUtil.StereotypeDefinition(target = ObjectModelClassifier.class)
String STEREOTYPE_BEAN = "bean";
/**
@@ -54,6 +54,6 @@
*
* @see GeneratorUtil#hasIndexedStereotype(ObjectModelAttribute)
*/
- @StereotypeDefinition(target = ObjectModelAttribute.class)
+ @ModelPropertiesUtil.StereotypeDefinition(target = ObjectModelAttribute.class)
String STEREOTYPE_INDEXED = "indexed";
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java 2010-11-28 20:13:58 UTC (rev 1014)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java 2010-11-28 23:16:57 UTC (rev 1015)
@@ -50,10 +50,10 @@
* used while reading the properties associated with a model and if found is
* directly set to the {@code version} field of the model.
*
- * @see ObjectModelReader#loadModelTagvalue(ObjectModel, String, String)
+ * @see ObjectModelReader#loadModelTagValue(ObjectModel, String, String)
* @since 2.3
*/
- @TagValueDefinition(target = {ObjectModel.class})
+ @ModelPropertiesUtil.TagValueDefinition(target = {ObjectModel.class})
String TAG_VERSION = "version";
/**
@@ -65,7 +65,7 @@
* @see JavaGeneratorUtil#getConstantPrefixTagValue(ObjectModel, ObjectModelClassifier)
* @since 2.3
*/
- @TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
+ @ModelPropertiesUtil.TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
String TAG_CONSTANT_PREFIX = "constantPrefix";
/**
@@ -77,7 +77,7 @@
* @see JavaGeneratorUtil#getNoPCSTagValue(ObjectModel, ObjectModelClassifier)
* @since 2.3
*/
- @TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
+ @ModelPropertiesUtil.TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
String TAG_NO_PCS = "noPCS";
/**
@@ -88,6 +88,6 @@
* @see JavaGeneratorUtil#getI18nPrefixTagValue(ObjectModelElement, ObjectModel)
* @since 2.3
*/
- @TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
+ @ModelPropertiesUtil.TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
String TAG_I18N_PREFIX = "i18n";
}
Added: trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java 2010-11-28 23:16:57 UTC (rev 1015)
@@ -0,0 +1,259 @@
+package org.nuiton.eugene;
+
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import java.lang.reflect.Field;
+import java.util.Arrays;
+import java.util.Map;
+import java.util.ServiceLoader;
+import java.util.TreeMap;
+
+/**
+ * Util class which introduces all the stuff to make usage of stereotype
+ * and tag values safe.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 2.3
+ */
+public class ModelPropertiesUtil {
+
+ /** Logger. */
+ private static final Log log = LogFactory.getLog(ModelPropertiesUtil.class);
+
+ /** the shared store of known tag values and stereotypes. */
+ public static ModelPropertiesProvider store;
+
+ public static Class<?>[] getTagValueTarget(String tagValueName) {
+ return getStore().getTagValueTarget(tagValueName);
+ }
+
+ public static Class<?>[] getStereotypeTarget(String tagValueName) {
+ return getStore().getStereotypeTarget(tagValueName);
+ }
+
+ public static ModelPropertiesProvider initStore(ClassLoader loader) {
+
+ if (loader == null) {
+
+ // use the current thread loader
+ loader = Thread.currentThread().getContextClassLoader();
+ }
+
+ store = new AggregateModelPropertiesProvider(loader);
+ try {
+ store.init();
+ } catch (Exception e) {
+ throw new RuntimeException("Could not init store of tag values and stereotypes", e);
+ }
+ return store;
+ }
+
+ public static ModelPropertiesProvider getStore() {
+ if (store == null) {
+
+ store = initStore(null);
+ }
+ return store;
+ }
+
+ /**
+ * The Eugene provider of tag values and stereotypes.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 2.3
+ */
+ public static class EugeneModelPropertiesProvider extends ModelPropertiesProvider {
+
+ @Override
+ protected void init() throws IllegalAccessException {
+ scanStereotypeClass(EugeneStereoTypes.class);
+ scanTagValueClass(EugeneTagValues.class);
+ }
+ }
+
+ /**
+ * A aggregate provider to box all the ones registred in the class-path via the
+ * {@link ServiceLoader} api.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 2.3
+ */
+ public static class AggregateModelPropertiesProvider extends ModelPropertiesProvider {
+
+ ClassLoader loader;
+
+ public AggregateModelPropertiesProvider(ClassLoader loader) {
+ this.loader = loader;
+ }
+
+ @Override
+ protected void init() throws Exception {
+ ServiceLoader<ModelPropertiesProvider> loader;
+ loader = ServiceLoader.load(ModelPropertiesProvider.class, this.loader);
+ for (ModelPropertiesProvider provider : loader) {
+ if (log.isInfoEnabled()) {
+ log.info("Will init model properties provider " + provider);
+ }
+ provider.init();
+ getStereotypeStore().putAll(provider.getStereotypeStore());
+ getTagValueStore().putAll(provider.getTagValueStore());
+ }
+ }
+ }
+
+ /**
+ * To define a stereotype.
+ * <p/>
+ * Place this annotation on the constant defining your stereotype.
+ * <p/>
+ * <br/>
+ * Example for stereotype named mystereotype which can be only put on a attribute :
+ * <pre>
+ * String STEREOTYPE_MYSTEREOTYPE = "mystereotype";
+ * \@StereotypeDefinition(target = ObjectModelAttribute.class)
+ * </pre
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @see EugeneTagValues
+ * @since 2.3
+ */
+ @Target(ElementType.FIELD)
+ @Retention(RetentionPolicy.RUNTIME)
+ public @interface StereotypeDefinition {
+
+ /**
+ * Define the types of object model api which can use this tag value.
+ *
+ * @return the array of target object model element which can accept the tag value.
+ */
+ Class<?>[] target();
+ }
+
+ /**
+ * To define a tag value.
+ * <p/>
+ * Place this annotation on the constant defining your tag-value.
+ * <p/>
+ * Example for tag value named mytagvalut which can be only put on a attribute :
+ * <pre>
+ * String TAG_VALUE_MYTAGVALUE = "mytagvalue";
+ * \@TagValueDefinition(target = ObjectModelAttribute.class)
+ * </pre
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @see EugeneTagValues
+ * @since 2.3
+ */
+ @Target(ElementType.FIELD)
+ @Retention(RetentionPolicy.RUNTIME)
+ public @interface TagValueDefinition {
+
+ /**
+ * Define the types of object model api which can use this tag value.
+ *
+ * @return the array of target object model element which can accept the tag value.
+ */
+ Class<?>[] target();
+ }
+
+ /**
+ * TODO
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 2.3
+ */
+ public abstract static class ModelPropertiesProvider {
+
+ /** Logger. */
+ private static final Log log =
+ LogFactory.getLog(ModelPropertiesProvider.class);
+
+ protected Map<String, TagValueDefinition> tagValueStore;
+
+ protected ModelPropertiesProvider() {
+ stereotypeStore = new TreeMap<String, StereotypeDefinition>();
+ tagValueStore = new TreeMap<String, TagValueDefinition>();
+ }
+
+ protected abstract void init() throws Exception;
+
+ protected void scanStereotypeClass(Class<?> holder) throws IllegalAccessException {
+ if (log.isInfoEnabled()) {
+ log.info("Will scan " + holder.getName() + " to search some stereotype definitions...");
+ }
+ Field[] fields = holder.getDeclaredFields();
+ for (Field field : fields) {
+
+ StereotypeDefinition stereotypeDefinition =
+ field.getAnnotation(StereotypeDefinition.class);
+
+ if (stereotypeDefinition != null) {
+ String fieldName = field.getName();
+ String stereotypeName = (String) field.get(null);
+ if (log.isInfoEnabled()) {
+ log.info("Detected stereotype definition [" + fieldName + ":" + stereotypeName + "] : " + Arrays.toString(stereotypeDefinition.target()));
+ }
+ stereotypeStore.put(stereotypeName, stereotypeDefinition);
+ }
+ }
+ }
+
+ protected void scanTagValueClass(Class<?> holder) throws IllegalAccessException {
+ if (log.isInfoEnabled()) {
+ log.info("Will scan " + holder.getName() + " to search some tag value definitions...");
+ }
+ Field[] fields = holder.getDeclaredFields();
+ for (Field field : fields) {
+
+ TagValueDefinition tagValueDefinition =
+ field.getAnnotation(TagValueDefinition.class);
+ if (tagValueDefinition != null) {
+ String fieldName = field.getName();
+ String tagValueName = (String) field.get(null);
+ if (log.isInfoEnabled()) {
+ log.info("Detected tag value definition [" + fieldName + ":" + tagValueName + "] : " + Arrays.toString(tagValueDefinition.target()));
+ }
+ tagValueStore.put(tagValueName, tagValueDefinition);
+ }
+ }
+ }
+
+ protected Map<String, StereotypeDefinition> stereotypeStore;
+
+ protected Map<String, StereotypeDefinition> getStereotypeStore() {
+ return stereotypeStore;
+ }
+
+ protected Map<String, TagValueDefinition> getTagValueStore() {
+ return tagValueStore;
+ }
+
+ public Class<?>[] getTagValueTarget(String tagValueName) {
+ TagValueDefinition definition = tagValueStore.get(tagValueName);
+
+ Class<?>[] result = null;
+ if (definition != null) {
+ result = definition.target();
+ }
+ return result;
+ }
+
+ public Class<?>[] getStereotypeTarget(String tagValueName) {
+
+ StereotypeDefinition definition = stereotypeStore.get(tagValueName);
+
+ Class<?>[] result = null;
+ if (definition != null) {
+ result = definition.target();
+ }
+ return result;
+ }
+
+ }
+
+}
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/ModelPropertiesUtil.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java 2010-11-28 20:13:58 UTC (rev 1014)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java 2010-11-28 23:16:57 UTC (rev 1015)
@@ -49,6 +49,8 @@
protected long lastModifiedSource;
protected boolean verbose;
+
+ protected ClassLoader loader;
public boolean isVerbose() {
return verbose;
@@ -58,6 +60,14 @@
this.verbose = verbose;
}
+ public ClassLoader getLoader() {
+ return loader;
+ }
+
+ public void setLoader(ClassLoader loader) {
+ this.loader = loader;
+ }
+
protected void setLastModifiedSource(File... files) {
for (File file : files) {
if (file.lastModified() > getLastModifiedSource()) {
Deleted: trunk/eugene/src/main/java/org/nuiton/eugene/StereotypeDefinition.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/StereotypeDefinition.java 2010-11-28 20:13:58 UTC (rev 1014)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/StereotypeDefinition.java 2010-11-28 23:16:57 UTC (rev 1015)
@@ -1,57 +0,0 @@
-/*
- * #%L
- * EUGene :: EUGene
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2004 - 2010 CodeLutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Lesser Public License for more details.
- *
- * You should have received a copy of the GNU General Lesser Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/lgpl-3.0.html>.
- * #L%
- */
-package org.nuiton.eugene;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * To define a stereotype.
- * <p/>
- * Place this annotation on the constant defining your stereotype.
- * <p/>
- * <br/>
- * Example for stereotype named mystereotype which can be only put on a attribute :
- * <pre>
- * String STEREOTYPE_MYSTEREOTYPE = "mystereotype";
- * \@StereotypeDefinition(target = ObjectModelAttribute.class)
- * </pre
- *
- * @author tchemit <chemit(a)codelutin.com>
- * @see EugeneTagValues
- * @since 2.3
- */
-(a)Target(ElementType.FIELD)
-(a)Retention(RetentionPolicy.RUNTIME)
-public @interface StereotypeDefinition {
- /**
- * Define the types of object model api which can use this tag value.
- *
- * @return the array of target object model element which can accept the tag value.
- */
- Class<?>[] target();
-}
Deleted: trunk/eugene/src/main/java/org/nuiton/eugene/TagValueDefinition.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/TagValueDefinition.java 2010-11-28 20:13:58 UTC (rev 1014)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/TagValueDefinition.java 2010-11-28 23:16:57 UTC (rev 1015)
@@ -1,56 +0,0 @@
-/*
- * #%L
- * EUGene :: EUGene
- *
- * $Id$
- * $HeadURL$
- * %%
- * Copyright (C) 2004 - 2010 CodeLutin
- * %%
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License as
- * published by the Free Software Foundation, either version 3 of the
- * License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Lesser Public License for more details.
- *
- * You should have received a copy of the GNU General Lesser Public
- * License along with this program. If not, see
- * <http://www.gnu.org/licenses/lgpl-3.0.html>.
- * #L%
- */
-package org.nuiton.eugene;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * To define a tag value.
- * <p/>
- * Place this annotation on the constant defining your tag-value.
- * <p/>
- * Example for tag value named mytagvalut which can be only put on a attribute :
- * <pre>
- * String TAG_VALUE_MYTAGVALUE = "mytagvalue";
- * \@TagValueDefinition(target = ObjectModelAttribute.class)
- * </pre
- *
- * @author tchemit <chemit(a)codelutin.com>
- * @see EugeneTagValues
- * @since 2.3
- */
-(a)Target(ElementType.FIELD)
-(a)Retention(RetentionPolicy.RUNTIME)
-public @interface TagValueDefinition {
- /**
- * Define the types of object model api which can use this tag value.
- *
- * @return the array of target object model element which can accept the tag value.
- */
- Class<?>[] target();
-}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java 2010-11-28 20:13:58 UTC (rev 1014)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java 2010-11-28 23:16:57 UTC (rev 1015)
@@ -31,6 +31,7 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.nuiton.eugene.EugeneTagValues;
+import org.nuiton.eugene.ModelPropertiesUtil;
import org.nuiton.eugene.ModelReader;
import org.nuiton.eugene.models.object.xml.DigesterObjectModelRuleSet;
import org.nuiton.eugene.models.object.xml.ObjectModelAssociationClassImpl;
@@ -199,6 +200,9 @@
public Properties loadModelProperties(File propFile, ObjectModel model) throws IOException {
+ // init ModelProperties store
+ ModelPropertiesUtil.initStore(getLoader());
+
Properties prop = new RecursiveProperties();
// try {
FileInputStream inStream = new FileInputStream(propFile);
@@ -207,13 +211,6 @@
} finally {
inStream.close();
}
-// } catch (IOException eee) {
-//
-// if (log.isWarnEnabled()) {
-// log.warn("Impossible de lire le fichier de propriete "
-// + propFile, eee);
-// }
-// }
// number of sucessfull imported tag values into model
int numberImportedTagValues = 0;
@@ -235,7 +232,7 @@
// model tag value
- boolean loaded = loadModelTagvalue(model, key, value);
+ boolean loaded = loadModelTagValue(model, key, value);
if (loaded) {
@@ -278,7 +275,7 @@
return prop;
}
- public boolean loadModelTagvalue(ObjectModel model, String key, String value) {
+ public boolean loadModelTagValue(ObjectModel model, String key, String value) {
Matcher matcher = modelTagValuePattern.matcher(key);
if (!matcher.find()) {
@@ -288,6 +285,17 @@
return false;
}
String tag = matcher.group(2);
+
+ Class<?>[] targets = ModelPropertiesUtil.getTagValueTarget(tag);
+ if (targets == null) {
+
+ // unknown tag value, can not use it
+ if (log.isWarnEnabled()) {
+ log.warn("Invalid model tag value [" + key + "] : the tagvalue is unkown.");
+ }
+ return false;
+ }
+
ObjectModelImpl modelImpl = (ObjectModelImpl) model;
if (tag.equals(EugeneTagValues.TAG_VERSION)) {
Added: trunk/eugene/src/main/resolver-cache/META-INF/services/org.nuiton.eugene.ModelPropertiesUtil$ModelPropertiesProvider
===================================================================
--- trunk/eugene/src/main/resolver-cache/META-INF/services/org.nuiton.eugene.ModelPropertiesUtil$ModelPropertiesProvider (rev 0)
+++ trunk/eugene/src/main/resolver-cache/META-INF/services/org.nuiton.eugene.ModelPropertiesUtil$ModelPropertiesProvider 2010-11-28 23:16:57 UTC (rev 1015)
@@ -0,0 +1 @@
+org.nuiton.eugene.ModelPropertiesUtil$EugeneModelPropertiesProvider
\ No newline at end of file
Property changes on: trunk/eugene/src/main/resolver-cache/META-INF/services/org.nuiton.eugene.ModelPropertiesUtil$ModelPropertiesProvider
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java (rev 0)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java 2010-11-28 23:16:57 UTC (rev 1015)
@@ -0,0 +1,57 @@
+package org.nuiton.eugene;
+
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+import org.nuiton.eugene.models.object.ObjectModel;
+import org.nuiton.eugene.models.object.ObjectModelAttribute;
+import org.nuiton.eugene.models.object.ObjectModelClassifier;
+
+/**
+ * To test {@link ModelPropertiesUtil.EugeneModelPropertiesProvider}.
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @since 2.3
+ */
+public class EugeneModelPropertiesProviderTest {
+
+ protected ModelPropertiesUtil.ModelPropertiesProvider provider;
+
+ @BeforeClass
+ public void setUp() {
+ provider = new ModelPropertiesUtil.EugeneModelPropertiesProvider();
+ }
+
+ @Test
+ public void testGetTagValueTarget() throws Exception {
+ testTagValue(EugeneTagValues.TAG_CONSTANT_PREFIX, ObjectModel.class, ObjectModelClassifier.class);
+ testTagValue(EugeneTagValues.TAG_I18N_PREFIX, ObjectModel.class, ObjectModelClassifier.class);
+ testTagValue(EugeneTagValues.TAG_NO_PCS, ObjectModel.class, ObjectModelClassifier.class);
+ testTagValue(EugeneTagValues.TAG_VERSION, ObjectModel.class);
+ }
+
+ @Test
+ public void testGetStereotypeTarget() throws Exception {
+
+ testStereotype(EugeneStereoTypes.STEREOTYPE_BEAN, ObjectModelClassifier.class);
+ testStereotype(EugeneStereoTypes.STEREOTYPE_INDEXED, ObjectModelAttribute.class);
+ }
+
+ @Test
+ public void testGetStore() throws Exception {
+ }
+
+ protected void testStereotype(String name, Class<?>... expected) {
+ Class<?>[] classes = provider.getStereotypeTarget(name);
+ Assert.assertNotNull("Could not find target for " + name, classes);
+ Assert.assertEquals("Should have " + expected.length + " targets for " + name + " but had " + classes.length, classes.length, expected.length);
+ Assert.assertArrayEquals(expected, classes);
+ }
+
+ protected void testTagValue(String name, Class<?>... expected) {
+ Class<?>[] classes = provider.getTagValueTarget(name);
+ Assert.assertNotNull("Could not find target for " + name, classes);
+ Assert.assertEquals("Should have " + expected.length + " targets for " + name + " but had " + classes.length, classes.length, expected.length);
+ Assert.assertArrayEquals(expected, classes);
+ }
+}
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/EugeneModelPropertiesProviderTest.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Added: svn:eol-style
+ native
Modified: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java
===================================================================
--- trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java 2010-11-28 20:13:58 UTC (rev 1014)
+++ trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java 2010-11-28 23:16:57 UTC (rev 1015)
@@ -281,6 +281,7 @@
}
getModelReader().setVerbose(configuration.isVerbose());
+ getModelReader().setLoader(configuration.getClassLoader());
// read memory model from all files models
Model model = getModelReader().read(filesToRead);
1
0
r1014 - in trunk: . ant-eugene-task eugene eugene/src/main/java/org/nuiton/eugene eugene/src/main/java/org/nuiton/eugene/java eugene/src/main/java/org/nuiton/eugene/models/object eugene/src/main/java/org/nuiton/eugene/models/object/xml eugene/src/test/java/org/nuiton/eugene maven-eugene-plugin
by tchemit@users.nuiton.org 28 Nov '10
by tchemit@users.nuiton.org 28 Nov '10
28 Nov '10
Author: tchemit
Date: 2010-11-28 21:13:58 +0100 (Sun, 28 Nov 2010)
New Revision: 1014
Url: http://nuiton.org/repositories/revision/eugene/1014
Log:
Pass to version 2.3
Evolution #1117: Remove deprecated method isIndexed on ObjectModelAttribute
Evolution #1113: Introduce a safe api to manager tag values and stereotypes
Depreciate some old stuffs
Added:
trunk/eugene/src/main/java/org/nuiton/eugene/StereotypeDefinition.java
trunk/eugene/src/main/java/org/nuiton/eugene/TagValueDefinition.java
Modified:
trunk/ant-eugene-task/pom.xml
trunk/eugene/pom.xml
trunk/eugene/src/main/java/org/nuiton/eugene/AbstractMetaTransformer.java
trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java
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/Template.java
trunk/eugene/src/main/java/org/nuiton/eugene/Transformer.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBeanTransformer.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGeneratorUtil.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ObjectModelTransformerToJava.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/ObjectModelElement.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelParameter.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAttributeImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelParameterImpl.java
trunk/eugene/src/test/java/org/nuiton/eugene/TestHelper.java
trunk/maven-eugene-plugin/pom.xml
trunk/pom.xml
Modified: trunk/ant-eugene-task/pom.xml
===================================================================
--- trunk/ant-eugene-task/pom.xml 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/ant-eugene-task/pom.xml 2010-11-28 20:13:58 UTC (rev 1014)
@@ -36,7 +36,7 @@
<parent>
<groupId>org.nuiton</groupId>
<artifactId>eugene</artifactId>
- <version>2.2.1-SNAPSHOT</version>
+ <version>2.3-SNAPSHOT</version>
</parent>
<groupId>org.nuiton.eugene</groupId>
Modified: trunk/eugene/pom.xml
===================================================================
--- trunk/eugene/pom.xml 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/pom.xml 2010-11-28 20:13:58 UTC (rev 1014)
@@ -35,7 +35,7 @@
<parent>
<groupId>org.nuiton</groupId>
<artifactId>eugene</artifactId>
- <version>2.2.1-SNAPSHOT</version>
+ <version>2.3-SNAPSHOT</version>
</parent>
<groupId>org.nuiton.eugene</groupId>
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/AbstractMetaTransformer.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/AbstractMetaTransformer.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/AbstractMetaTransformer.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -56,14 +56,14 @@
* <p/>
* It will replace each time the input model by the generated output model.
*
- * @since 2.2.1
+ * @since 2.3
*/
protected Class<? extends Transformer<M, M>>[] transformerTypes;
/**
* Templates to apply to the model.
*
- * @since 2.2.1, replace the old transformers field.
+ * @since 2.3, replace the old transformers field.
*/
protected Class<? extends Template<M>>[] templateTypes;
@@ -72,7 +72,7 @@
/**
* @param templateTypes templates to apply on model
- * @deprecated since 2.2.1, prefer use the default constructor, the invoke
+ * @deprecated since 2.3, prefer use the default constructor, the invoke
* setters {@link #setTemplateTypes(Class[])} and
* {@link #setTransformerTypes(Class[])}.
*/
@@ -144,7 +144,7 @@
* @param model incoming model to transform
* @param transformers list of transformers to apply to the model
* @return the final transformed model
- * @since 2.2.1
+ * @since 2.3
*/
protected M applyTransformers(M model,
List<? extends Transformer<M, M>> transformers) {
@@ -171,7 +171,7 @@
* @param templates templates to apply the incoming model
* @param destDir the destination directory where to generate
* @throws IOException if any IO errors while generating files
- * @since 2.2.1
+ * @since 2.3
*/
protected void applyTemplates(M model,
List<? extends Template<M>> templates,
@@ -230,7 +230,7 @@
/**
* @return the instances of templates to apply to the model.
- * @deprecated since 2.2.1, prefer use the {@link #getInstances(Class[])}
+ * @deprecated since 2.3, prefer use the {@link #getInstances(Class[])}
*/
@Deprecated
protected List<Template<M>> getTemplates() {
@@ -273,7 +273,7 @@
/**
* @return the template types to apply
- * @deprecated since 2.2.1, use the method {@link #getTemplateTypes()} instead.
+ * @deprecated since 2.3, use the method {@link #getTemplateTypes()} instead.
*/
@Deprecated
public Class<? extends Template<M>>[] getTransformers() {
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -25,6 +25,9 @@
package org.nuiton.eugene;
import org.nuiton.eugene.java.JavaBeanTransformer;
+import org.nuiton.eugene.java.JavaGeneratorUtil;
+import org.nuiton.eugene.models.object.ObjectModelAttribute;
+import org.nuiton.eugene.models.object.ObjectModelClassifier;
/**
* Defines all stereotypes managed by Eugene.
@@ -33,14 +36,24 @@
* own stereotypes, to get a unique place where to find stereotypes.
*
* @author tchemit <chemit(a)codelutin.com>
- * @since 2.2.1
+ * @since 2.3
*/
public interface EugeneStereoTypes {
/**
- * Stereotype for JavaBean objects.
+ * Stereotype for JavaBean objects to place on a classifier.
*
* @see JavaBeanTransformer
+ * @see JavaGeneratorUtil#hasBeanStereotype(ObjectModelClassifier)
*/
+ @StereotypeDefinition(target = ObjectModelClassifier.class)
String STEREOTYPE_BEAN = "bean";
+
+ /**
+ * Stéréotype pour les attributs à indexer en base.
+ *
+ * @see GeneratorUtil#hasIndexedStereotype(ObjectModelAttribute)
+ */
+ @StereotypeDefinition(target = ObjectModelAttribute.class)
+ String STEREOTYPE_INDEXED = "indexed";
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -25,41 +25,69 @@
package org.nuiton.eugene;
import org.nuiton.eugene.java.JavaBeanTransformer;
+import org.nuiton.eugene.java.JavaGeneratorUtil;
+import org.nuiton.eugene.models.object.ObjectModel;
+import org.nuiton.eugene.models.object.ObjectModelClassifier;
+import org.nuiton.eugene.models.object.ObjectModelElement;
+import org.nuiton.eugene.models.object.ObjectModelReader;
/**
* Defines all tag values managed by Eugene.
- *
+ * <p/>
* In another library using eugene, please extends this contract to put your
* own tag values, to get a unique place where to find tag values.
*
* @author tchemit <chemit(a)codelutin.com>
- * @since 2.2.1
+ * @since 2.3
*/
public interface EugeneTagValues {
/**
- * tag value to add on constants enumeration (or other incoming dev)
+ * Tag value to add the version of the model from outside (says in the
+ * properties file associated to the model)..
+ * <p/>
+ * Actually, the eugene api does not use to modify the model. It is only
+ * used while reading the properties associated with a model and if found is
+ * directly set to the {@code version} field of the model.
+ *
+ * @see ObjectModelReader#loadModelTagvalue(ObjectModel, String, String)
+ * @since 2.3
+ */
+ @TagValueDefinition(target = {ObjectModel.class})
+ String TAG_VERSION = "version";
+
+ /**
+ * 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
*/
+ @TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
String TAG_CONSTANT_PREFIX = "constantPrefix";
/**
- * tag value to set if do not want any pcs (says PropertyChangeSupport in a generated bean).
+ * Tag value to set if do not want any pcs (says PropertyChangeSupport in a generated bean).
+ * <p/>
+ * You can globaly use it on the complete model or to a specific classifier.
+ *
* @see JavaBeanTransformer
+ * @see JavaGeneratorUtil#getNoPCSTagValue(ObjectModel, ObjectModelClassifier)
+ * @since 2.3
*/
- String TAG_NO_PCS= "noPCS";
+ @TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
+ String TAG_NO_PCS = "noPCS";
/**
- * tag value to add the version of the model from outside (says in the
- * properties file associated to the model)..
+ * Tag value to specify the i18n prefix to use whene generating i18n keys.
+ * <p/>
+ * You can globaly use it on the complete model or to a specific classifier.
*
- * @since 2.2.1
+ * @see JavaGeneratorUtil#getI18nPrefixTagValue(ObjectModelElement, ObjectModel)
+ * @since 2.3
*/
- String TAG_VERSION = "version";
-
- /**
- * Tag pour specfier if i18n must be generated.
- * @since 2.2.1
- */
+ @TagValueDefinition(target = {ObjectModel.class, ObjectModelClassifier.class})
String TAG_I18N_PREFIX = "i18n";
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorUtil.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorUtil.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorUtil.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -28,21 +28,33 @@
import org.apache.commons.lang.StringUtils;
import org.nuiton.eugene.models.Model;
-import org.nuiton.eugene.models.object.*;
+import org.nuiton.eugene.models.object.ObjectModel;
+import org.nuiton.eugene.models.object.ObjectModelAttribute;
+import org.nuiton.eugene.models.object.ObjectModelClass;
+import org.nuiton.eugene.models.object.ObjectModelClassifier;
+import org.nuiton.eugene.models.object.ObjectModelElement;
+import org.nuiton.eugene.models.object.ObjectModelOperation;
+import org.nuiton.eugene.models.object.ObjectModelParameter;
+import org.nuiton.util.StringUtil;
import java.io.File;
-import java.util.*;
-import org.nuiton.util.StringUtil;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Set;
/**
* GeneratorUtil.
- *
+ * <p/>
* Created: 25 aout 2003
*
* @author Benjamin Poussin <poussin(a)codelutin.com> Copyright Code Lutin
* @version $Revision$
- * Mise à jour: $Date$
- * By : */
+ * Mise à jour: $Date$
+ * By :
+ */
public class GeneratorUtil {
/**
@@ -50,7 +62,7 @@
* eg : org.nuiton.eugene.models -> org.nuiton.eugene
* eg : org -> org
* warning : org.nuiton.eugene. -> org.nuiton.eugene
- *
+ *
* @param packageName package
* @return parent package of given package
*/
@@ -66,8 +78,8 @@
/**
* @param qualifiedName the fully qualified name to test
* @return class name fr given fully qualified name (return given name if it is not fully qualified)
- * eg : org.nuiton.eugene.models.ObjectClass -> ObjectClass
- * eg : ObjectClass-> ObjectClass
+ * eg : org.nuiton.eugene.models.ObjectClass -> ObjectClass
+ * eg : ObjectClass-> ObjectClass
*/
public static String getClassNameFromQualifiedName(String qualifiedName) {
String className = qualifiedName;
@@ -79,7 +91,6 @@
}
/**
- *
* @param qualifiedName the fully qualified name to test
* @return the filename for the given qualified name.
*/
@@ -90,11 +101,10 @@
/**
* return all classifiers belonging to the given package recursively. The Collection may be empty.
*
- * @param model the model where to look at
+ * @param model the model where to look at
* @param packageName the package name to set for classifiers
+ * @return a Collection containing all classifiers belonging to the given package recursively.
* @see ObjectModelClassifier
- *
- * @return a Collection containing all classifiers belonging to the given package recursively.
*/
public static Collection<ObjectModelClassifier> getClassifiers(
ObjectModel model, String packageName) {
@@ -119,16 +129,16 @@
/**
* Retourne le type de l'attribut, c-a-d une List ou une collection
* ou le type defini si la cardinalité n'est pas multiple
- *
- * @param attribute the attribute to test
+ *
+ * @param attribute the attribute to test
* @param useGenerics {@code true} if the attribute use a generic type
* @return attribute type
*/
public static String getAttributeType(ObjectModelParameter attribute,
- boolean useGenerics) {
+ boolean useGenerics) {
String result;
if (attribute instanceof ObjectModelAttribute
- && isNMultiplicity((ObjectModelAttribute) attribute)) {
+ && isNMultiplicity((ObjectModelAttribute) attribute)) {
if (attribute.isOrdered()) {
result = List.class.getName();
} else {
@@ -145,6 +155,7 @@
/**
* Indicates if the specified attribute has a primitive type (byte, boolean, ...)
+ *
* @param attribute the attribute to test
* @return true if the attribute has a primitive type
*/
@@ -155,13 +166,14 @@
}
String type = attribute.getType();
return "byte".equals(type) || "short".equals(type)
- || "int".equals(type) || "long".equals(type)
- || "float".equals(type) || "double".equals(type)
- || "char".equals(type) || "boolean".equals(type);
+ || "int".equals(type) || "long".equals(type)
+ || "float".equals(type) || "double".equals(type)
+ || "char".equals(type) || "boolean".equals(type);
}
/**
* return an init value for the specified attribute
+ *
* @param attribute the attribute to test
* @return a String with the corresponding attribute init value
*/
@@ -269,8 +281,8 @@
/**
* @param attribute the attribute to test
* @return vrai si la cardinalite de l'attribut est superieur a 1, c-a-d
- * si MaxMultiplicity == -1 ou > 1
- */
+ * si MaxMultiplicity == -1 ou > 1
+ */
public static boolean isNMultiplicity(ObjectModelAttribute attribute) {
return isNMultiplicity(attribute.getMaxMultiplicity());
}
@@ -285,11 +297,10 @@
*/
public static boolean isOneMultiplicity(ObjectModelAttribute attribute) {
return attribute != null && attribute.getMinMultiplicity() == 1 &&
- attribute.getMaxMultiplicity() == 1;
+ attribute.getMaxMultiplicity() == 1;
}
/**
- *
* @param word the word to decapitalize
* @return the decapitalized word
*/
@@ -311,7 +322,7 @@
}
public static String getParsingExpression(String type,
- String attributeStringName) {
+ String attributeStringName) {
if ("byte".equals(type)) {
return "Byte.parseByte(" + attributeStringName + ")";
}
@@ -346,7 +357,7 @@
}
public static String getFormatingExpression(String type,
- String attributeStringName) {
+ String attributeStringName) {
if ("byte".equals(type)) {
return "Byte.toString(" + attributeStringName + ")";
}
@@ -383,20 +394,20 @@
/**
* ToString contract for ObjectModelParameter with type and name. This
* contract is used in
- * {@link StringUtil#join(Iterable, org.nuiton.util.StringUtil.ToString, String, boolean)}
+ * {@link StringUtil#join(Iterable, org.nuiton.util.StringUtil.ToString, String, boolean)}
*/
static final StringUtil.ToString<ObjectModelParameter>
OBJECT_MODEL_PARAMETER_TO_STRING_TYPE =
- new StringUtil.ToString<ObjectModelParameter>() {
+ new StringUtil.ToString<ObjectModelParameter>() {
- @Override
- public String toString(ObjectModelParameter param) {
- return new StringBuilder(getAttributeType(param)).
+ @Override
+ public String toString(ObjectModelParameter param) {
+ return new StringBuilder(getAttributeType(param)).
append(' ').
append(param.getName()).
toString();
- }
- };
+ }
+ };
/**
* ToString contract for ObjectModelParameter with name only. This contract
@@ -405,28 +416,28 @@
*/
static final StringUtil.ToString<ObjectModelParameter>
OBJECT_MODEL_PARAMETER_TO_STRING_NAME =
- new StringUtil.ToString<ObjectModelParameter>() {
+ new StringUtil.ToString<ObjectModelParameter>() {
- @Override
- public String toString(ObjectModelParameter param) {
- return param.getName();
- }
- };
+ @Override
+ public String toString(ObjectModelParameter param) {
+ return param.getName();
+ }
+ };
/**
- * Used to return the {@code operation} parameters for its declaration :
+ * Used to return the {@code operation} parameters for its declaration :
* type and name of each parameter will be join as a string separated by a
* comma. Usefull for operation parameters declaration in templates writing.
*
* @param operation to treate
* @return the string corresponding to the list of operation parameters
- * for declaration syntax.
+ * for declaration syntax.
*/
public static String getOperationParametersListDeclaration(
ObjectModelOperation operation) {
String result = StringUtil.join(
- operation.getParameters(),
+ operation.getParameters(),
OBJECT_MODEL_PARAMETER_TO_STRING_TYPE,
", ",
false);
@@ -439,7 +450,7 @@
*
* @param operation to treate
* @return the string corresponding to the list of operation parameter
- * names separated by a ', '.
+ * names separated by a ', '.
*/
public static String getOperationParametersListName(
ObjectModelOperation operation) {
@@ -473,6 +484,7 @@
/**
* Renvoie si l'attribut passé en paramètre est premier lexicographiquement
* par rapport à son attribut inverse (si celui ci existe).
+ *
* @param attr L'attribut dont on veut savoir s'il est le premier
* @return true, si l'attribut est premier (lexico ou pas de reverse attribute), false dans les autres cas
*/
@@ -492,7 +504,7 @@
* @return true s'il y a documentation, false sinon
*/
public static boolean hasDocumentation(ObjectModelElement element) {
- return notEmpty(element.getDocumentation());
+ return StringUtils.isNotEmpty(element.getDocumentation());
}
/**
@@ -500,7 +512,9 @@
*
* @param s la chaine de caractères à tester
* @return true si <code>s</code> n'est pas vide
+ * @deprecated since 2.3, use the method {@link StringUtils#isNotEmpty(String)}
*/
+ @Deprecated
public static boolean notEmpty(String s) {
return s != null && !"".equals(s);
}
@@ -515,25 +529,29 @@
* @return la valeur du tagValue ou null
*/
public static String findTagValue(String tagName,
- ObjectModelElement element, Model model) {
+ ObjectModelElement element,
+ Model model) {
if (element == null) {
if (model != null) {
- if (notEmpty(model.getTagValue(tagName))) {
- return model.getTagValue(tagName);
+ String value = model.getTagValue(tagName);
+ if (!StringUtils.isEmpty(value)) {
+ return value;
}
}
return null;
}
- if (notEmpty(element.getTagValue(tagName))) {
- return element.getTagValue(tagName);
+ String value = element.getTagValue(tagName);
+ if (!StringUtils.isEmpty(value)) {
+ return value;
}
//On va chercher sur l'element declarant
return findTagValue(tagName, element.getDeclaringElement(), model);
}
public static boolean hasStereotype(ObjectModelElement element,
- String stereotype) {
- return element.hasStereotype(stereotype) || element.hasStereotype(stereotype.toLowerCase());
+ String stereotype) {
+ return element.hasStereotype(stereotype) ||
+ element.hasStereotype(stereotype.toLowerCase());
}
/**
@@ -541,21 +559,24 @@
* serialVersionUID. Exemple, returns "123456789L".
* This id will change only if the type or the order of an attribute
* changes.
+ *
* @param clazz the class to use
* @return the generated serialVersionUID
*/
public static String computeSerialVersionUID(ObjectModelClass clazz) {
- String query = clazz.getQualifiedName() + "#";
- for (ObjectModelAttribute attr : clazz.getAttributes()) {
- query += "-" + attr.getType();
- }
- String result = query.hashCode() + "L";
- return result;
+ String query = clazz.getQualifiedName() + "#";
+ for (ObjectModelAttribute attr : clazz.getAttributes()) {
+ query += "-" + attr.getType();
+ }
+ String result = query.hashCode() + "L";
+ return result;
}
/**
- * Suppress packageName from a fullQualifiedName, even if it contains List, Map or other generics.
+ * Suppress packageName from a fullQualifiedName, even if it contains
+ * List, Map or other generics.
+ *
* See JUnit test for matching expressions.
*
* @param str FullQualifiedName for an attribute type (for exemple)
@@ -567,13 +588,15 @@
}
/**
- * Suppress packageName from a fullQualifiedName, even if it contains List, Map or other generics.
+ * Suppress packageName from a fullQualifiedName, even if it contains List,
+ * Map or other generics.
+ *
* See JUnit test for matching expressions.
*
- * @param str FullQualifiedName for an attribute type (for exemple)
+ * @param str fullQualifiedName for an attribute type (for exemple)
* @param removeGenericDefinition a flag to remove any generic definition at the beginning of the expression
* @return the simple name associated to the str given
- * @since 2.2.1
+ * @since 2.3
*/
public static String getSimpleName(String str, boolean removeGenericDefinition) {
if (removeGenericDefinition) {
@@ -606,7 +629,7 @@
*
* @param str the string to parse
* @return the string without any
- * @since 2.2.1
+ * @since 2.3
*/
public static String removeGenericDefinition(String str) {
@@ -646,7 +669,7 @@
/**
* Parse a fully qualified generic java type, and extract each
* imbricated types.
- *
+ *
* @param str string to parse
* @return set of found types
*/
@@ -701,7 +724,7 @@
return buffer.toString();
}
- /**
+ /**
* Renvoie le nom de l'attribut de classe d'association en fonction des cas:
* Si l'attribut porte le même nom que le type (extrémité inverse de
* l'association), on lui ajoute le nom de la classe d'association
@@ -721,4 +744,16 @@
return result;
}
+ /**
+ * Check if the given attribute has the
+ * {@link EugeneStereoTypes#STEREOTYPE_INDEXED} stereotype.
+ *
+ * @param attribute attribute to test
+ * @return {@code true} if stereotype was found, {@code false otherwise}
+ * @see EugeneStereoTypes#STEREOTYPE_INDEXED
+ */
+ public static boolean hasIndexedStereotype(ObjectModelAttribute attribute) {
+ return attribute.hasStereotype(EugeneStereoTypes.STEREOTYPE_INDEXED);
+ }
+
} // GeneratorUtil
Added: trunk/eugene/src/main/java/org/nuiton/eugene/StereotypeDefinition.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/StereotypeDefinition.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/StereotypeDefinition.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -0,0 +1,57 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+package org.nuiton.eugene;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * To define a stereotype.
+ * <p/>
+ * Place this annotation on the constant defining your stereotype.
+ * <p/>
+ * <br/>
+ * Example for stereotype named mystereotype which can be only put on a attribute :
+ * <pre>
+ * String STEREOTYPE_MYSTEREOTYPE = "mystereotype";
+ * \@StereotypeDefinition(target = ObjectModelAttribute.class)
+ * </pre
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @see EugeneTagValues
+ * @since 2.3
+ */
+(a)Target(ElementType.FIELD)
+(a)Retention(RetentionPolicy.RUNTIME)
+public @interface StereotypeDefinition {
+ /**
+ * Define the types of object model api which can use this tag value.
+ *
+ * @return the array of target object model element which can accept the tag value.
+ */
+ Class<?>[] target();
+}
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/StereotypeDefinition.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Added: trunk/eugene/src/main/java/org/nuiton/eugene/TagValueDefinition.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/TagValueDefinition.java (rev 0)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/TagValueDefinition.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -0,0 +1,56 @@
+/*
+ * #%L
+ * EUGene :: EUGene
+ *
+ * $Id$
+ * $HeadURL$
+ * %%
+ * Copyright (C) 2004 - 2010 CodeLutin
+ * %%
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Lesser Public License for more details.
+ *
+ * You should have received a copy of the GNU General Lesser Public
+ * License along with this program. If not, see
+ * <http://www.gnu.org/licenses/lgpl-3.0.html>.
+ * #L%
+ */
+package org.nuiton.eugene;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+
+/**
+ * To define a tag value.
+ * <p/>
+ * Place this annotation on the constant defining your tag-value.
+ * <p/>
+ * Example for tag value named mytagvalut which can be only put on a attribute :
+ * <pre>
+ * String TAG_VALUE_MYTAGVALUE = "mytagvalue";
+ * \@TagValueDefinition(target = ObjectModelAttribute.class)
+ * </pre
+ *
+ * @author tchemit <chemit(a)codelutin.com>
+ * @see EugeneTagValues
+ * @since 2.3
+ */
+(a)Target(ElementType.FIELD)
+(a)Retention(RetentionPolicy.RUNTIME)
+public @interface TagValueDefinition {
+ /**
+ * Define the types of object model api which can use this tag value.
+ *
+ * @return the array of target object model element which can accept the tag value.
+ */
+ Class<?>[] target();
+}
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/TagValueDefinition.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision
Added: svn:eol-style
+ native
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/Template.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/Template.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/Template.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -37,7 +37,7 @@
import java.util.Properties;
/**
- * Generator. TODO javadoc
+ * Template. TODO javadoc
* <p/>
* Created: 5 août 2004
*
@@ -140,17 +140,6 @@
}
}
- /**
- * Set the properties configuration.
- *
- * @param p the configuration
- * @deprecated since 2.0.2, prefer use the {@link TemplateConfiguration} api.
- */
- @Deprecated
- public void setProperties(Properties p) {
- getConfiguration().getProperties().putAll(p);
- }
-
protected List<String> getGeneratedPackages() {
if (generatedPackages == null) {
generatedPackages = new ArrayList<String>();
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/Transformer.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/Transformer.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/Transformer.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -133,11 +133,6 @@
*/
protected abstract O initOutputModel();
- @Override
- public void setProperties(Properties outputProperties) {
- this.outputProperties = outputProperties;
- }
-
/**
* Output properties for output generator. Initially set from build configuration.
*
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBeanTransformer.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBeanTransformer.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBeanTransformer.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -27,7 +27,6 @@
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.nuiton.eugene.EugeneStereoTypes;
import org.nuiton.eugene.EugeneTagValues;
import org.nuiton.eugene.models.object.ObjectModelAttribute;
import org.nuiton.eugene.models.object.ObjectModelClass;
@@ -85,14 +84,14 @@
log.debug("will generate " + output.getQualifiedName());
}
- String i18nPrefix = JavaGeneratorUtil.getI18nPrefix(input, model);
+ String i18nPrefix = JavaGeneratorUtil.getI18nPrefixTagValue(input, model);
if (!StringUtils.isEmpty(i18nPrefix)) {
generateI18nBlock(input, output, i18nPrefix);
}
ObjectModelClass ouputImpl = generateImpl(input, output);
- String noPCSTagValue = input.getTagValue(EugeneTagValues.TAG_NO_PCS);
+ String noPCSTagValue = JavaGeneratorUtil.getNoPCSTagValue(model, input);
boolean usePCS = StringUtils.isEmpty(noPCSTagValue) ||
!"true".equals(noPCSTagValue.trim());
@@ -560,7 +559,7 @@
}
protected boolean canGenerate(ObjectModelClass input) {
- return input.hasStereotype(EugeneStereoTypes.STEREOTYPE_BEAN);
+ return JavaGeneratorUtil.hasBeanStereotype(input);
}
protected void createPropertyChangeSupport(ObjectModelClass output) {
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGeneratorUtil.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGeneratorUtil.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGeneratorUtil.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -24,6 +24,7 @@
*/
package org.nuiton.eugene.java;
+import org.nuiton.eugene.EugeneStereoTypes;
import org.nuiton.eugene.EugeneTagValues;
import org.nuiton.eugene.GeneratorUtil;
import org.nuiton.eugene.models.object.ObjectModel;
@@ -47,9 +48,10 @@
/**
* dependency to add constants in interfaces via an enumeration.
- *
+ * <p/>
* The literals of enumeration will be the value, and constant names will
* be generated by transformers.
+ *
* @since 2.0.2
*/
public static final String DEPENDENCIES_CONSTANTS = "constants";
@@ -58,18 +60,18 @@
* Duplicates in the {@code target} classifier the given {@code operations}
* using a {@code transformer} to modify model.
*
- * @param transformer the transformer to use
- * @param operations operations to duplicate
- * @param target where to duplicate operations
- * @param useVisibility flag to use operation visibilty to compute his
- * modifiers
- * @param extraModifiers scopes to apply to all operations
+ * @param transformer the transformer to use
+ * @param operations operations to duplicate
+ * @param target where to duplicate operations
+ * @param useVisibility flag to use operation visibilty to compute his
+ * modifiers
+ * @param extraModifiers scopes to apply to all operations
*/
public static void cloneOperations(ObjectModelTransformerToJava transformer,
- Iterable<ObjectModelOperation> operations,
- ObjectModelClassifier target,
- boolean useVisibility,
- ObjectModelModifier... extraModifiers) {
+ Iterable<ObjectModelOperation> operations,
+ ObjectModelClassifier target,
+ boolean useVisibility,
+ ObjectModelModifier... extraModifiers) {
for (ObjectModelOperation op : operations) {
ObjectModelOperation resultOp;
@@ -113,16 +115,63 @@
}
/**
+ * Check if the given classifier has the
+ * {@link EugeneStereoTypes#STEREOTYPE_BEAN} stereotype.
+ *
+ * @param classifier classifier to test
+ * @return {@code true} if stereotype was found, {@code false otherwise}
+ * @see EugeneStereoTypes#STEREOTYPE_BEAN
+ */
+ public static boolean hasBeanStereotype(ObjectModelClassifier classifier) {
+ return classifier.hasStereotype(EugeneStereoTypes.STEREOTYPE_BEAN);
+ }
+
+ /**
* Cherche et renvoie le prefixe i18n à utiliser sur cet element, sinon sur
* le model.
*
* @param element l'élément à tester
* @param model le modele utilisé
* @return le prefix i18n ou <code>null</code> si non spécifié
- * @since 2.2.1
+ * @since 2.3
*/
- public static String getI18nPrefix(ObjectModelElement element,
- ObjectModel model) {
+ public static String getI18nPrefixTagValue(ObjectModelElement element,
+ ObjectModel model) {
return findTagValue(EugeneTagValues.TAG_I18N_PREFIX, element, model);
}
+
+ /**
+ * Obtain the value of the {@link EugeneTagValues#TAG_NO_PCS}
+ * tag value on the given model or classifier.
+ * <p/>
+ * It will first look on the model, and then in the given classifier.
+ *
+ * @param model model to seek
+ * @param classifier classifier to seek
+ * @return the none empty value of the found tag value or {@code null} if not found nor empty.
+ * @see EugeneTagValues#TAG_NO_PCS
+ * @since 2.3
+ */
+ public static String getNoPCSTagValue(ObjectModel model, ObjectModelClassifier classifier) {
+ String value = findTagValue(EugeneTagValues.TAG_NO_PCS, classifier, model);
+ return value;
+ }
+
+ /**
+ * Obtain the value of the {@link EugeneTagValues#TAG_CONSTANT_PREFIX}
+ * tag value on the given model or classifier.
+ * <p/>
+ * It will first look on the model, and then in the given classifier.
+ *
+ * @param model model to seek
+ * @param classifier classifier to seek
+ * @return the none empty value of the found tag value or {@code null} if not found nor empty.
+ * @see EugeneTagValues#TAG_CONSTANT_PREFIX
+ * @since 2.3
+ */
+ public static String getConstantPrefixTagValue(ObjectModel model,
+ ObjectModelClassifier classifier) {
+ String value = findTagValue(EugeneTagValues.TAG_CONSTANT_PREFIX, classifier, model);
+ return value;
+ }
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/ObjectModelTransformerToJava.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/ObjectModelTransformerToJava.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/ObjectModelTransformerToJava.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -194,10 +194,9 @@
String defaultPrefix) {
// look if there is a constant_prefix tag value
- String prefix = JavaGeneratorUtil.findTagValue(
- EugeneTagValues.TAG_CONSTANT_PREFIX,
- input,
- getModel()
+ String prefix = JavaGeneratorUtil.getConstantPrefixTagValue(
+ getModel(),
+ input
);
if (StringUtils.isEmpty(prefix)) {
@@ -375,7 +374,7 @@
*
* @param attribute the attribute on which the navigable flag will be setted
* @param navigable the navigable flag to set
- * @since 2.2.1
+ * @since 2.3
*/
public void setNavigable(ObjectModelAttribute attribute, boolean navigable) {
builder.setNavigable(attribute, navigable);
@@ -538,7 +537,7 @@
*
* @param source the source element
* @param destination the destination element
- * @since 2.2.1
+ * @since 2.3
*/
protected void cloneTagValues(ObjectModelElement source,
ObjectModelElement destination) {
@@ -552,7 +551,7 @@
*
* @param source
* @param destination
- * @since 2.2.1
+ * @since 2.3
*/
protected void cloneStereotypes(ObjectModelClassifier source,
ObjectModelClassifier destination) {
@@ -576,7 +575,7 @@
* @param destination where to clone the given source one
* @param copyDocumentation flag to add documentation if some found in model
* @since 2.1.2
- * @deprecated since 2.2.1, prefer use the {@link #cloneClass(ObjectModelClass, boolean)} method
+ * @deprecated since 2.3, prefer use the {@link #cloneClass(ObjectModelClass, boolean)} method
*/
@Deprecated
protected void copyClassifier(ObjectModelClassifier source,
@@ -598,7 +597,7 @@
* @param source the classifier to clone from the source model
* @param destination where to clone the given source one
* @param copyDocumentation flag to add documentation if some found in model
- * @since 2.2.1
+ * @since 2.3
*/
protected void cloneClassifier(ObjectModelClassifier source,
ObjectModelClassifier destination,
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 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelAttribute.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -124,11 +124,7 @@
*/
boolean isFinal();
/**
- * @return {@code true} if this attribute is navigable
+ * @return {@code true} if this attribute is navigable.
*/
boolean isNavigable();
- /**
- * @return {@code true} if this attribute is isIndexed
- */
- boolean isIndexed();
} //ObjectModelAttribute
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 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelBuilder.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -692,7 +692,7 @@
*
* @param attribute where the navigable flag will be setted
* @param navigable navigable flag value to set
- * @since 2.2.1
+ * @since 2.3
*/
public void setNavigable(ObjectModelAttribute attribute,
boolean navigable) {
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelElement.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelElement.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelElement.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -120,17 +120,6 @@
*/
boolean hasTagValue(String tagValue);
-// /**
-// * Adds the given {@code value} associated to the {@code tagValue}.
-// *
-// * Note: If a previous tag value was definied, then it will be replaced.
-// *
-// * @param tagValue the name of the tag value
-// * @param value the value to associate
-// * @since 2.1.2
-// */
-// void addTagValue(String tagValue, String value);
-
/**
* Return if this element has static declaration, only valid when
* getDeclaringElement is classifier. Not possible for the moment
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelParameter.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelParameter.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelParameter.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -26,18 +26,18 @@
package org.nuiton.eugene.models.object;
/**
-* Abstraction for the parameter node of object model trees.
-* This object presents all information concerning the given parameter.
-*
-* Created: 14 janv. 2004
-*
-* @author Cédric Pineau <pineau(a)codelutin.com>
-* Copyright Code Lutin
-* @version $Revision$
-*
-* Last update : $Date$
-* by : $Author$
-*/
+ * Abstraction for the parameter node of object model trees.
+ * This object presents all information concerning the given parameter.
+ * <p/>
+ * Created: 14 janv. 2004
+ *
+ * @author Cédric Pineau <pineau(a)codelutin.com>
+ * Copyright Code Lutin
+ * @version $Revision$
+ * <p/>
+ * Last update : $Date$
+ * by : $Author$
+ */
public interface ObjectModelParameter extends ObjectModelElement {
/**
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -101,7 +101,7 @@
* Pattern to define tag values authorized at model level in the model
* properties file.
*
- * @since 2.2.1
+ * @since 2.3
*/
protected Pattern modelTagValuePattern = Pattern.compile(
"^model\\.(?:(tagvalue|tagValue)?)\\.((?:.+))$");
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 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAttributeImpl.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -26,6 +26,7 @@
package org.nuiton.eugene.models.object.xml;
import org.nuiton.eugene.GeneratorUtil;
+import org.nuiton.eugene.java.JavaGeneratorUtil;
import org.nuiton.eugene.models.object.ObjectModelAttribute;
import org.nuiton.eugene.models.object.ObjectModelClass;
import org.nuiton.eugene.models.object.ObjectModelClassifier;
@@ -51,7 +52,7 @@
protected String associationClassName;
protected boolean isStatic;
protected boolean isFinal;
- protected boolean isNavigable = true;
+ protected boolean navigable = true;
public ObjectModelAttributeImpl() {
}
@@ -88,8 +89,8 @@
this.isStatic = isStatic;
}
- public void setNavigable(boolean isNavigable) {
- this.isNavigable = isNavigable;
+ public void setNavigable(boolean navigable) {
+ this.navigable = navigable;
}
/**
@@ -183,11 +184,6 @@
return name;
}
- /*
- * (non-Javadoc)
- *
- * @see org.nuiton.eugene.models.object.ObjectModelAttribute#getReverseMaxMultiplicity()
- */
@Override
public int getReverseMaxMultiplicity() {
return reverseMaxMultiplicity;
@@ -237,28 +233,17 @@
return isFinal;
}
- /*
- * @see org.nuiton.eugene.models.object.ObjectModelAttribute#isNavigable()
- */
@Override
public boolean isNavigable() {
- return isNavigable;
+ return navigable;
}
- /*
- * @see org.nuiton.eugene.models.object.ObjectModelAttribute#isOrdered()
+ /**
+ * FIXME tchemit 2010-11-28 Why the ordered flag may be indexed ? This is two distinct concepts ?
*/
@Override
public boolean isOrdered() {
- return isIndexed() || super.isOrdered();
+ return JavaGeneratorUtil.hasIndexedStereotype(this) || super.isOrdered();
}
- /*
- * @see org.nuiton.eugene.models.object.ObjectModelAttribute#isIndexed()
- */
- @Deprecated
- @Override
- public boolean isIndexed() {
- return hasStereotype("indexed");
- }
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelParameterImpl.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelParameterImpl.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelParameterImpl.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -43,10 +43,17 @@
protected String type;
protected int minMultiplicity = 1;
protected int maxMultiplicity = 1;
- protected String ordering = "unspecified";
- protected boolean isUnique = true;
+// protected String ordering = "unspecified";
+
+ /**
+ * FIXME tchemit 2010-11-28 Why the default value is true ?
+ */
+ protected boolean unique = true;
+ protected boolean ordered;
protected String defaultValue;
+ public static final String PROPERTY_ORDERED = "ordered";
+
public ObjectModelParameterImpl() {
}
@@ -62,12 +69,17 @@
this.maxMultiplicity = maxMultiplicity;
}
+ /**
+ *
+ * @param ordering
+ */
public void setOrdering(String ordering) {
- this.ordering = ordering;
+ setOrdered(PROPERTY_ORDERED.equals(ordering));
+// this.ordering = ordering;
}
- public void setUnique(boolean isUnique) {
- this.isUnique = isUnique;
+ public void setUnique(boolean unique) {
+ this.unique = unique;
}
public void setDefaultValue(String defaultValue) {
@@ -96,12 +108,17 @@
@Override
public boolean isOrdered() {
- return "ordered".equals(ordering);
+ return ordered;
+// return "ordered".equals(ordering);
}
+ public void setOrdered(boolean ordered) {
+ this.ordered = ordered;
+ }
+
@Override
public boolean isUnique() {
- return isUnique;
+ return unique;
}
@Override
Modified: trunk/eugene/src/test/java/org/nuiton/eugene/TestHelper.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/TestHelper.java 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/TestHelper.java 2010-11-28 20:13:58 UTC (rev 1014)
@@ -34,7 +34,7 @@
* Helper for all eugene tests.
*
* @author tchemit <chemit(a)codelutin.com>
- * @since 2.2.1
+ * @since 2.3
*/
@Ignore
// this is not a test :)
Modified: trunk/maven-eugene-plugin/pom.xml
===================================================================
--- trunk/maven-eugene-plugin/pom.xml 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/maven-eugene-plugin/pom.xml 2010-11-28 20:13:58 UTC (rev 1014)
@@ -36,7 +36,7 @@
<parent>
<groupId>org.nuiton</groupId>
<artifactId>eugene</artifactId>
- <version>2.2.1-SNAPSHOT</version>
+ <version>2.3-SNAPSHOT</version>
</parent>
<groupId>org.nuiton.eugene</groupId>
@@ -219,6 +219,7 @@
</property>
</activation>
<build>
+ <defaultGoal>integration-test</defaultGoal>
<plugins>
<plugin>
<artifactId>maven-invoker-plugin</artifactId>
@@ -226,12 +227,13 @@
<pomIncludes>
<pomInclude>evol-879/zargo/pom.xml</pomInclude>
<pomInclude>evol-879/xmi/pom.xml</pomInclude>
- <pomInclude>evol-879/model/pom.xml</pomInclude>
<pomInclude>copyVersionFiles/anomalie163/pom.xml</pomInclude>
<pomInclude>smart-generate/only-zargo/pom.xml</pomInclude>
<pomInclude>smart-generate/only-zargo-xmi/pom.xml</pomInclude>
<pomInclude>smart-generate/all/pom.xml</pomInclude>
<pomInclude>smart-generate/generators/pom.xml</pomInclude>
+ <!-- this test used topia and must be move in topia not here -->
+ <!--<pomInclude>evol-879/model/pom.xml</pomInclude>-->
</pomIncludes>
<postBuildHookScript>verify</postBuildHookScript>
<localRepositoryPath>${basedir}/target/local-repo
Modified: trunk/pom.xml
===================================================================
--- trunk/pom.xml 2010-11-28 12:33:19 UTC (rev 1013)
+++ trunk/pom.xml 2010-11-28 20:13:58 UTC (rev 1014)
@@ -37,7 +37,7 @@
</parent>
<artifactId>eugene</artifactId>
- <version>2.2.1-SNAPSHOT</version>
+ <version>2.3-SNAPSHOT</version>
<modules>
<module>eugene</module>
1
0
r1013 - in trunk: eugene/src/main/java/org/nuiton/eugene/java eugene/src/main/java/org/nuiton/eugene/writer eugene/src/test/java/org/nuiton/eugene/java maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer
by tchemit@users.nuiton.org 28 Nov '10
by tchemit@users.nuiton.org 28 Nov '10
28 Nov '10
Author: tchemit
Date: 2010-11-28 13:33:19 +0100 (Sun, 28 Nov 2010)
New Revision: 1013
Url: http://nuiton.org/repositories/revision/eugene/1013
Log:
Evolution #1116: Remove deprecated in ChainedFileWriter api from 2.1.3
remove redundant initializer
Modified:
trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGeneratorUtil.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/AbstractChainedFileWriter.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriter.java
trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/XmiChainedFileWriter.java
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ZargoChainedFileWriter.java
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGeneratorUtil.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGeneratorUtil.java 2010-11-28 11:24:27 UTC (rev 1012)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGeneratorUtil.java 2010-11-28 12:33:19 UTC (rev 1013)
@@ -73,7 +73,7 @@
for (ObjectModelOperation op : operations) {
ObjectModelOperation resultOp;
- ObjectModelModifier[] modifiers = null;
+ ObjectModelModifier[] modifiers;
if (useVisibility) {
// compute visibility modifer
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/writer/AbstractChainedFileWriter.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/writer/AbstractChainedFileWriter.java 2010-11-28 11:24:27 UTC (rev 1012)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/writer/AbstractChainedFileWriter.java 2010-11-28 12:33:19 UTC (rev 1013)
@@ -27,14 +27,12 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import org.nuiton.util.StringUtil;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
-import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
@@ -114,23 +112,6 @@
Collections.unmodifiableMap(authorizedPropertyDescriptions);
}
- /**
- * Generates some files for a given input, output and include pattern.
- *
- * @param configuration the shared configuration for all writers
- * @param outputDir where to generate files
- * @param inputDirectory where to pick up files
- * @param includePattern pattern of files to include
- * @throws IOException for any IO pb.
- * @deprecated since 2.1.3, prefer use {@link #generate(ChainedFileWriterConfiguration, ChainedFileWriterData}
- */
- @Deprecated
- protected abstract void generate(
- ChainedFileWriterConfiguration configuration,
- File outputDir,
- File inputDirectory,
- String includePattern) throws IOException;
-
@Override
public Map<String, String> getAuthorizedPropertyDescriptions() {
return authorizedPropertyDescriptions;
@@ -181,98 +162,7 @@
}
}
- @Deprecated
@Override
- public void generate(ChainedFileWriterConfiguration configuration)
- throws IOException {
-
- long t0 = System.nanoTime();
-
- initWriter(configuration);
-
- try {
- File outputDir = getOutputDirectory(
- configuration.getOutputDirectory(),
- configuration.isTestPhase()
- );
-
- if (!outputDir.exists()) {
- if (log.isDebugEnabled()) {
- log.debug("[" + getInputProtocol() +
- "] Create output directory " + outputDir);
- }
- boolean b = outputDir.mkdirs();
- if (!b) {
- throw new IOException("Could not creat directory " +
- outputDir);
- }
- }
-
- Map<File, List<String>> mergeEntries = mergeEntries(entries);
-
- generateEntries(configuration, outputDir, mergeEntries);
-
- } finally {
- clear();
- }
- }
-
- /**
- *
- * @param entries
- * @return
- * @deprecated since 2.1.3, will not be replaced.
- */
- @Deprecated
- protected Map<File, List<String>> mergeEntries(List<ChainedFileWriterEntry> entries) {
- // merge entries if required
- Map<File, List<String>> merge = new HashMap<File, List<String>>();
-
- for (ChainedFileWriterEntry e : entries) {
- File input = e.getInputDirectory();
- List<String> includes = merge.get(input);
- if (includes == null) {
- includes = new ArrayList<String>();
- merge.put(input, includes);
- }
- includes.add(e.getIncludePattern());
- }
- return merge;
- }
-
-
- /**
- *
- * @param configuration
- * @param outputDir
- * @param entries
- * @throws IOException
- * @deprecated since 2.1.3, will not be replaced.
- */
- @Deprecated
- protected void generateEntries(ChainedFileWriterConfiguration configuration,
- File outputDir,
- Map<File, List<String>> entries) throws IOException {
-
- // apply from merge entries
- for (Map.Entry<File, List<String>> e : entries.entrySet()) {
- File input = e.getKey();
- List<String> includes = e.getValue();
- String includePattern = StringUtil.join(includes, ",", true);
- if (log.isDebugEnabled()) {
- log.debug("[" + getInputProtocol() +
- "] Will generate entry " + input
- + " : " + includePattern);
- }
- generate(configuration,
- outputDir,
- input,
- includePattern
- );
- }
- }
-
- @Override
public String getInputProtocol(String modelType) {
// input protocol is the same for all model
return acceptModel(modelType) ? getInputProtocol() : null;
@@ -329,12 +219,19 @@
protected void initWriter(ChainedFileWriterConfiguration configuration) {
Map<String, Object> map = configuration.getProperties();
+ boolean verbose = configuration.isVerbose();
for (String key : getAuthorizedPropertyNames()) {
//TODO-TC-20091217, should prefix keys by the inputProtocol to
//TODO-TC-20091217 avoid collisions ?
+
if (map.containsKey(key)) {
// keep this property
- properties.put(key, map.get(key));
+ Object value = map.get(key);
+ if (verbose) {
+ log.info("[" + getClass().getName() + "] add configuration property " + key + " = " + value);
+ }
+ properties.put(key, value);
+
}
}
}
Modified: trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriter.java
===================================================================
--- trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriter.java 2010-11-28 11:24:27 UTC (rev 1012)
+++ trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriter.java 2010-11-28 12:33:19 UTC (rev 1013)
@@ -130,18 +130,6 @@
File getExtractDirectory(File outputBasedir, boolean testPhase);
/**
- * Launch the generation for this writer.
- *
- * @param configuration the share configuration of all writers.
- * @throws IOException if any io pb.
- * @deprecated since 2.1.3, use now the class-path capable
- * {@link #generate(ChainedFileWriterConfiguration, ChainedFileWriterData)}
- */
- @Deprecated
- void generate(ChainedFileWriterConfiguration configuration)
- throws IOException;
-
- /**
* Launch the generation for this writer with all pre-computed data to
* treate and resources to copy.
*
Modified: trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java
===================================================================
--- trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java 2010-11-28 11:24:27 UTC (rev 1012)
+++ trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java 2010-11-28 12:33:19 UTC (rev 1013)
@@ -301,12 +301,12 @@
ObjectModelClassifier classifier = builder.createClass("Person", "org.chorem.bonzoms");
- ObjectModelOperation result = builder.addOperation(classifier,
- "methodName", "java.util.List<java.lang.String>", ObjectModelModifier.PUBLIC);
+ builder.addOperation(classifier,
+ "methodName", "java.util.List<java.lang.String>", ObjectModelModifier.PUBLIC);
- result = builder.addOperation(classifier,
- "addPropertyChangeListener", null,
- ObjectModelModifier.PUBLIC, ObjectModelModifier.ABSTRACT);
+ builder.addOperation(classifier,
+ "addPropertyChangeListener", null,
+ ObjectModelModifier.PUBLIC, ObjectModelModifier.ABSTRACT);
// Check imports
ImportsManagerExtension ext = builder.getModel().getExtension(
Modified: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java
===================================================================
--- trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java 2010-11-28 11:24:27 UTC (rev 1012)
+++ trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java 2010-11-28 12:33:19 UTC (rev 1013)
@@ -32,13 +32,10 @@
import org.nuiton.eugene.TemplateConfiguration;
import org.nuiton.eugene.models.Model;
import org.nuiton.eugene.writer.ChainedFileWriterConfiguration;
-import org.nuiton.plugin.PluginHelper;
-import org.nuiton.plugin.PluginIOContext;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
-import java.util.Arrays;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
@@ -314,86 +311,4 @@
}
}
- @Override
- @Deprecated
- public void generate(ChainedFileWriterConfiguration configuration,
- File outputDir,
- File inputDirectory,
- String includePattern) throws IOException {
-
- PluginIOContext ioContext = new PluginIOContext();
- ioContext.setInput(inputDirectory);
- ioContext.setOutput(outputDir);
-
- // obtain files
-
- List<File> modelFiles = new ArrayList<File>();
- String[] includePatterns = includePattern.split(",");
-
- if (configuration.isVerbose()) {
- getLog().info("Generating from " + inputDirectory + " : " +
- includePattern);
- }
-
- if (configuration.isVerbose()) {
- getLog().info("Will use classLoader " + configuration.getClassLoader());
- }
-
- for (File srcDirGen : ioContext.getInputs()) {
-
- if (configuration.isVerbose()) {
- getLog().info("Search for " + Arrays.toString(includePatterns)
- + " in " + srcDirGen.getAbsolutePath());
- }
- List<File> currentFiles = PluginHelper.getIncludedFiles(
- srcDirGen, includePatterns, null);
-
- if (currentFiles.isEmpty()) {
- getLog().info("No model to use.");
- return;
- }
-
- if (currentFiles.size() == 1) {
- getLog().info("Using one model :");
- } else {
- getLog().info("Using " + currentFiles.size() + " models :");
- }
- for (File currentFile : currentFiles) {
- getLog().info(" " + currentFile.getAbsolutePath());
- }
- modelFiles.addAll(currentFiles);
- }
-
- // read the model
-
- File[] filesToRead = modelFiles.toArray(new File[modelFiles.size()]);
-
- Model model = getModelReader().read(filesToRead);
-
- // get the last modified source timestamp from reader
- long lastModifiedSource = getModelReader().getLastModifiedSource();
-
- // apply all templates to the model
-
- for (Template<Model> template : getTemplatesList()) {
- getLog().info("Apply generator " + template.getClass().getSimpleName());
-
- // set the lastModified source property
- template.setProperty(Template.PROP_LAST_MODIFIED_SOURCE, lastModifiedSource);
-
- template.setProperty(Template.PROP_WRITER_REPORT, getWriterReport());
-
- if (configuration.isVerbose()) {
- getLog().info(" overwrite = " + template.isOverwrite());
- getLog().info(" encoding = " + template.getEncoding());
- getLog().info(" lastModifiedSource = " + template.getLastModifiedSource());
- getLog().info(" exclude = " + template.getExcludeTemplates());
- }
-
- // apply template
- template.applyTemplate(model, ioContext.getOutput());
- }
-
- }
-
}
Modified: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/XmiChainedFileWriter.java
===================================================================
--- trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/XmiChainedFileWriter.java 2010-11-28 11:24:27 UTC (rev 1012)
+++ trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/XmiChainedFileWriter.java 2010-11-28 12:33:19 UTC (rev 1013)
@@ -30,7 +30,6 @@
import org.nuiton.eugene.writer.ChainedFileWriterConfiguration;
import org.nuiton.eugene.writer.WriterReport;
import org.nuiton.plugin.PluginHelper;
-import org.nuiton.plugin.PluginIOContext;
import org.nuiton.util.FasterCachedResourceResolver;
import org.nuiton.util.FileUtil;
import org.nuiton.util.Resource;
@@ -210,10 +209,6 @@
getStyleSheet(configuration.getModelType(), file);
URL xsl = Resource.getURL(styleSheet);
- //TC-20090820 : using recursive for xmi
-// File result = new File(destDirModel, FileUtil.basename(file,
-// acceptedSuffixes).concat(".").concat(getExtension()));
-
String newExtension = configuration.getModelType();
// get the mirror file in the ouput root directory
@@ -225,16 +220,6 @@
// change the extension name to the modeltype
File result = FileUtil.changeExtension(mirrorFile, newExtension);
-// String filename = FileUtil.basename(file, extension).
-// concat(".").concat(configuration.getModelType());
-// String relatifPath = file.getParentFile().getAbsolutePath().
-// substring(inputDirectory.getAbsolutePath().length());
-// File dstDir = outputDir;
-// if (!relatifPath.isEmpty()) {
-// dstDir = new File(dstDir, relatifPath);
-// PluginHelper.createDirectoryIfNecessary(dstDir);
-// }
-// File result = new File(dstDir, filename);
if (!configuration.isOverwrite() &&
file.lastModified() < result.lastModified()) {
@@ -283,127 +268,6 @@
}
}
- @Override
- @Deprecated
- public void generate(ChainedFileWriterConfiguration configuration,
- File outputDir,
- File inputDirectory,
- String includePattern) throws IOException {
-
- getLog().info("Processing XSL tranformation on " +
- inputDirectory + " for " + includePattern);
-
- if (configuration.isVerbose()) {
- getLog().info(" with fullPackagePath : " + getFullPackagePath());
- getLog().info(" with resolver : " + getResolver());
- }
- // recuperation des fichiers a traiter
- List<File> files = PluginHelper.getIncludedFiles(
- inputDirectory, new String[]{includePattern}, null);
-
- // lancement des traitements xsl sur les fichiers trouvés
- // dans le repertoire
- actionXsl(configuration,
- outputDir,
- inputDirectory,
- files
- );
-
- if (configuration.isVerbose()) {
- getLog().info("Copy resources files.");
- }
-
- PluginIOContext ioContext = new PluginIOContext();
- ioContext.setInput(inputDirectory);
- ioContext.setOutput(outputDir);
- PluginHelper.copyFiles(ioContext,
- null,
- new String[]{includePattern},
- configuration.isOverwrite()
- );
- }
-
- @Deprecated
- protected void actionXsl(ChainedFileWriterConfiguration configuration,
- File outputDir,
- File dir,
- List<File> files) throws IOException {
-
- for (File file : files) {
- try {
- if (getLog().isDebugEnabled()) {
- getLog().debug("treate file : " + file);
- }
- // Prepare resolver, stylesheet
- URIResolver fileResolver = getUriResolver(configuration, file);
- String styleSheet =
- getStyleSheet(configuration.getModelType(), file);
- URL xsl = Resource.getURL(styleSheet);
-
- //TC-20090820 : using recursive for xmi
-// File result = new File(destDirModel, FileUtil.basename(file,
-// acceptedSuffixes).concat(".").concat(getExtension()));
-
- String extension = "." + FileUtil.extension(file);
- String filename = FileUtil.basename(file, extension).
- concat(".").concat(configuration.getModelType());
- String relatifPath = file.getParentFile().getAbsolutePath().
- substring(dir.getAbsolutePath().length());
- File dstDir = outputDir;
- if (!relatifPath.isEmpty()) {
- dstDir = new File(dstDir, relatifPath);
- PluginHelper.createDirectoryIfNecessary(dstDir);
- }
- File result = new File(dstDir, filename);
- if (!configuration.isOverwrite() && file.lastModified() < result.lastModified()) {
-
- if (configuration.isVerbose()) {
- getLog().info("Will not generate " + result +
- " (up-to-date).");
- }
- continue;
- }
-
- WriterReport writerReport = getWriterReport();
- if (writerReport != null) {
-
- writerReport.addFile(
- getClass().getName(),
- result,
- true
- );
- }
-
- // Create the xsl transformer and set parameters
- Transformer transformer = getTransformerFactory().
- newTransformer(new StreamSource(xsl.openStream()));
-
- transformer.setParameter(PROP_FULL_PACKAGE_PATH,
- getFullPackagePath()
- );
- transformer.setParameter(PROP_EXTRACTED_PACKAGES,
- getExtractedPackages()
- );
-
- transformer.setURIResolver(fileResolver);
- FileOutputStream output = new FileOutputStream(result);
- try {
- transformer.transform(
- new StreamSource(file),
- new StreamResult(output)
- );
- } finally {
- output.close();
- }
-
- } catch (IOException e) {
- throw e;
- } catch (Exception e) {
- throw new IOException(e.getMessage(), e);
- }
- }
- }
-
protected URIResolver getUriResolver(
ChainedFileWriterConfiguration configuration, File model) {
URIResolver result = null;
Modified: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ZargoChainedFileWriter.java
===================================================================
--- trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ZargoChainedFileWriter.java 2010-11-28 11:24:27 UTC (rev 1012)
+++ trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ZargoChainedFileWriter.java 2010-11-28 12:33:19 UTC (rev 1013)
@@ -30,7 +30,6 @@
import org.nuiton.eugene.writer.ChainedFileWriterConfiguration;
import org.nuiton.eugene.writer.WriterReport;
import org.nuiton.plugin.PluginHelper;
-import org.nuiton.plugin.PluginIOContext;
import org.nuiton.util.FileUtil;
import java.io.File;
@@ -124,7 +123,6 @@
);
expandFile(file, mirrorDirectory, XMI_FILE_FILTER, configuration);
-// expandFile(file, outputDirectory, XMI_FILE_FILTER, configuration);
// copy resources associated with the file
copyResources(configuration,
@@ -137,67 +135,6 @@
}
}
- @Override
- @Deprecated
- public void generate(ChainedFileWriterConfiguration configuration,
- File outputDir,
- File inputDirectory,
- String includePattern) throws IOException {
-
- boolean overwrite = configuration.isOverwrite();
-
- PluginIOContext ioContext = new PluginIOContext();
- ioContext.setInput(inputDirectory);
- ioContext.setOutput(outputDir);
-
- getLog().info("Expanding xmi from " + inputDirectory + " : " +
- includePattern);
-
- expandFiles(ioContext,
- new String[]{includePattern},
- null,
- XMI_FILE_FILTER,
- configuration
- );
-
- getLog().info("Copying resources from " + inputDirectory + " : " +
- includePattern);
-
- PluginHelper.copyFiles(ioContext,
- null,
- new String[]{includePattern},
- overwrite
- );
- }
-
- @Deprecated
- public void expandFiles(PluginIOContext p,
- String[] includes,
- String[] excludes,
- String[] zipIncludes,
- ChainedFileWriterConfiguration configuration) throws IOException {
-
- DirectoryScanner ds = new DirectoryScanner();
-
- for (File input : p.getInputs()) {
- ds.setBasedir(input);
- if (includes != null) {
- ds.setIncludes(includes);
- }
- if (excludes != null) {
-
- ds.setExcludes(excludes);
- }
- ds.addDefaultExcludes();
- ds.scan();
- for (String file : ds.getIncludedFiles()) {
- File in = new File(input, file);
- File out = new File(p.getOutput(), file).getParentFile();
- expandFile(in, out, zipIncludes, configuration);
- }
- }
- }
-
public void expandFile(File src,
File dst,
String[] includes,
@@ -209,10 +146,10 @@
String name = nextElement.getName();
for (String include : includes) {
if (DirectoryScanner.match(include, name)) {
-// if (configuration.isVerbose()) {
+ if (configuration.isVerbose()) {
getLog().info("matching name : " + name +
" with pattern " + include);
-// }
+ }
File dstFile = new File(dst, name);
if (configuration.isOverwrite() ||
!dstFile.exists() ||
1
0
Author: tchemit
Date: 2010-11-28 12:24:27 +0100 (Sun, 28 Nov 2010)
New Revision: 1012
Url: http://nuiton.org/repositories/revision/eugene/1012
Log:
fix svn-keywords AGAIN...
Modified:
trunk/LICENSE.txt
trunk/README.txt
trunk/ant-eugene-task/LICENSE.txt
trunk/ant-eugene-task/README.txt
trunk/ant-eugene-task/changelog.txt
trunk/ant-eugene-task/pom.xml
trunk/ant-eugene-task/src/main/java/org/nuiton/eugene/GeneratorTask.java
trunk/ant-eugene-task/src/site/fr/rst/index.rst
trunk/ant-eugene-task/src/site/resources/build.xml
trunk/ant-eugene-task/src/site/rst/index.rst
trunk/ant-eugene-task/src/site/site_en.xml
trunk/ant-eugene-task/src/site/site_fr.xml
trunk/ant-eugene-task/src/test/java/org/nuiton/eugene/BasicObjectModelGenerator.java
trunk/ant-eugene-task/src/test/java/org/nuiton/eugene/GeneratorTaskTest.java
trunk/ant-eugene-task/src/test/resources/log4j.properties
trunk/ant-eugene-task/src/test/resources/models/objectmodel/security1.objectmodel
trunk/ant-eugene-task/src/test/resources/models/objectmodel/security1.properties
trunk/ant-eugene-task/src/test/resources/models/objectmodel/security2.objectmodel
trunk/ant-eugene-task/src/test/resources/models/objectmodel/security3.objectmodel
trunk/ant-eugene-task/src/test/resources/models/objectmodel/security4.objectmodel
trunk/ant-eugene-task/src/test/resources/models/objectmodel/security5.objectmodel
trunk/ant-eugene-task/src/test/resources/models/objectmodel/security6.objectmodel
trunk/ant-eugene-task/src/test/resources/models/objectmodel/security6.properties
trunk/ant-eugene-task/src/test/resources/uml/Acceleo.Business.profile.uml
trunk/ant-eugene-task/src/test/resources/xmi/1.2/dependency.xmi
trunk/ant-eugene-task/src/test/resources/xmi/1.2/enumeration.xmi
trunk/ant-eugene-task/src/test/resources/xmi/1.2/isis-fish.xmi
trunk/ant-eugene-task/src/test/resources/xmi/1.2/topiatest.xmi
trunk/ant-eugene-task/src/test/resources/xmi/2.1/TestXMI21.properties
trunk/ant-eugene-task/src/test/resources/xmi/2.1/TestXMI21.uml
trunk/ant-eugene-task/src/test/resources/xmi/2.1/TestXMI21.umldi
trunk/ant-eugene-task/src/test/resources/xmi/2.1/cmsCore.uml
trunk/ant-eugene-task/src/test/resources/xmi/2.1/cmsLink.uml
trunk/ant-eugene-task/src/test/resources/xmi/2.1/http-storage-api/src/main/uml/conception.uml
trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.properties
trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.uml
trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.umldi
trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception-helper.uml
trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception-helper.umldi
trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.properties
trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.uml
trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.umldi
trunk/ant-eugene-task/src/test/resources/xmi/2.1/vpod.uml
trunk/changelog.txt
trunk/eugene/LICENSE.txt
trunk/eugene/README.txt
trunk/eugene/TODO
trunk/eugene/changelog.txt
trunk/eugene/doc/1-javamodel/Etude_JavaModel_EUGene.pdf
trunk/eugene/doc/1-javamodel/Metamodel_Java_04-02-02.pdf
trunk/eugene/doc/1-javamodel/sources/JavaModel.png
trunk/eugene/doc/1-javamodel/sources/ObjectModel.png
trunk/eugene/doc/1-javamodel/sources/ObjectModel_Interfaces.png
trunk/eugene/doc/1-javamodel/sources/Todo.rst
trunk/eugene/doc/1-javamodel/sources/description_metamodel_java
trunk/eugene/doc/1-javamodel/sources/eugen_java.zargo
trunk/eugene/doc/1-javamodel/sources/eugene_objectmodel.zargo
trunk/eugene/doc/2-javabuilder/JavaBuilder.pdf
trunk/eugene/doc/2-javabuilder/sources.tar.gz
trunk/eugene/doc/2-javabuilder/sources/JavaBuilder.png
trunk/eugene/doc/2-javabuilder/sources/ObjectModel.png
trunk/eugene/doc/2-javabuilder/sources/ObjectModelBuilderHelper.png
trunk/eugene/doc/2-javabuilder/sources/description_javabuilder
trunk/eugene/doc/2-javabuilder/sources/eugene_javabuilder.zargo
trunk/eugene/doc/3-v2.0/eugene2.0.pdf
trunk/eugene/doc/3-v2.0/sources/DiagActivite_EUGene1.0.1_Generation.png
trunk/eugene/doc/3-v2.0/sources/DiagActivite_EUGene2.0_Generation.png
trunk/eugene/doc/3-v2.0/sources/DiagActivite_EUGene2.0_GenerationJava.png
trunk/eugene/doc/3-v2.0/sources/DiagClasses_Generators.png
trunk/eugene/doc/3-v2.0/sources/EUGene-generate.vpp
trunk/eugene/doc/3-v2.0/sources/eugene2.0
trunk/eugene/doc/3-v2.0/sources/eugene_v2.0.zargo
trunk/eugene/pom.xml
trunk/eugene/src/main/java/org/nuiton/eugene/AbstractGenerator.java
trunk/eugene/src/main/java/org/nuiton/eugene/AbstractMetaTransformer.java
trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java
trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java
trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorException.java
trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorUtil.java
trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java
trunk/eugene/src/main/java/org/nuiton/eugene/MonitorWriter.java
trunk/eugene/src/main/java/org/nuiton/eugene/PackageValidator.java
trunk/eugene/src/main/java/org/nuiton/eugene/Template.java
trunk/eugene/src/main/java/org/nuiton/eugene/Transformer.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManager.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManagerExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBeanTransformer.java
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/java/JavaGeneratorUtil.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaInterfaceTransformer.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/ObjectModelTransformerToJava.java
trunk/eugene/src/main/java/org/nuiton/eugene/java/package-info.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/Model.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModel.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelAssociationClass.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/ObjectModelClass.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelClassifier.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelDependency.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelElement.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelEnumeration.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelGenerator.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelInterface.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelModifier.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelOperation.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelParameter.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelTransformer.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelType.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/validator/AttributeNamesValidator.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/validator/ClassNamesValidator.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/validator/NameBasedValidator.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/validator/ObjectModelValidator.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/DigesterObjectModelRuleSet.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ExternalCacheExtension.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModeImplAssociationClassParticipant.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAssociationClassImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAttributeImpl.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/ObjectModelClassifierImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelDependencyImpl.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/ObjectModelImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImplRef.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImplSuperClassRef.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImplTagValue.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelInterfaceImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelOperationImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelParameterImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModel.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelComplexState.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelGenerator.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelReader.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelSimpleState.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelState.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelStateChart.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelTransition.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/DigesterStateModelRuleSet.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelComplexeStateImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelSimpleStateImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelStateChartImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelStateImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelTransitionImpl.java
trunk/eugene/src/main/java/org/nuiton/eugene/package-info.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/AbstractChainedFileWriter.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriter.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriterConfiguration.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriterData.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriterEntry.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedWriterEngine.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/DefaultChainedWriterEngine.java
trunk/eugene/src/main/java/org/nuiton/eugene/writer/package-info.java
trunk/eugene/src/main/resolver-cache/META-INF/cache/argouml.org/profiles/um…
trunk/eugene/src/main/resolver-cache/META-INF/cache/argouml.org/profiles/um…
trunk/eugene/src/main/resources/dtd/objectmodel.dtd
trunk/eugene/src/main/resources/dtd/statemodel.dtd
trunk/eugene/src/main/resources/xmi/default-java.xmi
trunk/eugene/src/main/resources/xmi/default-uml14.xmi
trunk/eugene/src/main/resources/xsd/objectmodel.xsd
trunk/eugene/src/main/resources/xsd/todo.txt
trunk/eugene/src/main/xsl/poseidon2argouml.xsl
trunk/eugene/src/main/xsl/xmi1.2ToObjectModel.xsl
trunk/eugene/src/main/xsl/xmi1.2ToStateModel.xsl
trunk/eugene/src/main/xsl/xmi2.1ToObjectModel.xsl
trunk/eugene/src/site/fr/rst/DevUIDoc.rst
trunk/eugene/src/site/fr/rst/DiscussionSurTypeDeGeneration.rst
trunk/eugene/src/site/fr/rst/Todo.rst
trunk/eugene/src/site/fr/rst/index.rst
trunk/eugene/src/site/fr/rst/plugineclipse.rst
trunk/eugene/src/site/resources/images/StateModel.png
trunk/eugene/src/site/resources/images/plugin_choix.png
trunk/eugene/src/site/resources/images/plugin_menu.png
trunk/eugene/src/site/resources/images/plugin_newdepot.png
trunk/eugene/src/site/resources/images/plugin_typeinstall.png
trunk/eugene/src/site/resources/images/plugin_utilisation_editeur.png
trunk/eugene/src/site/resources/models/buix.guix
trunk/eugene/src/site/resources/models/exemple.topiaModel
trunk/eugene/src/site/resources/xmi/ObjectModel.zuml
trunk/eugene/src/site/resources/xmi/objectmodel.zargo
trunk/eugene/src/site/rst/LutinGenerator.rst
trunk/eugene/src/site/rst/generatorHelp.rst
trunk/eugene/src/site/rst/index.rst
trunk/eugene/src/site/site_en.xml
trunk/eugene/src/site/site_fr.xml
trunk/eugene/src/test/java/org/nuiton/eugene/GeneratorUtilTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/TestHelper.java
trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerExtensionTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/object/ModelMergeTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/object/ObjectModelGeneratorTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/object/XMI12ToObjectModelTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/object/XMI21ToObjectModelTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ExternalCacheExtensionTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelBuilderTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelImplTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/state/StateModelDTDTest.java
trunk/eugene/src/test/java/org/nuiton/eugene/models/state/StateModelTest.java
trunk/eugene/src/test/resources/log4j.properties
trunk/eugene/src/test/resources/models/objectmodel/security1.objectmodel
trunk/eugene/src/test/resources/models/objectmodel/security1.properties
trunk/eugene/src/test/resources/models/objectmodel/security2.objectmodel
trunk/eugene/src/test/resources/models/objectmodel/security3.objectmodel
trunk/eugene/src/test/resources/models/objectmodel/security4.objectmodel
trunk/eugene/src/test/resources/models/objectmodel/security5.objectmodel
trunk/eugene/src/test/resources/models/objectmodel/security6.objectmodel
trunk/eugene/src/test/resources/models/objectmodel/security6.properties
trunk/eugene/src/test/resources/models/statemodel/contact.properties
trunk/eugene/src/test/resources/models/statemodel/contact.statemodel
trunk/eugene/src/test/resources/models/statemodel/project.statemodel
trunk/eugene/src/test/resources/models/uimodel/test.javaxml
trunk/eugene/src/test/resources/models/uimodel/test1.javaxml
trunk/eugene/src/test/resources/models/uimodel/test2.javaxml
trunk/eugene/src/test/resources/uml/Acceleo.Business.profile.uml
trunk/eugene/src/test/resources/xmi/1.2/dependency.xmi
trunk/eugene/src/test/resources/xmi/1.2/enumeration.xmi
trunk/eugene/src/test/resources/xmi/1.2/isis-fish.xmi
trunk/eugene/src/test/resources/xmi/1.2/topiatest.xmi
trunk/eugene/src/test/resources/xmi/1.2/topiatest.zargo
trunk/eugene/src/test/resources/xmi/2.1/TestXMI21.properties
trunk/eugene/src/test/resources/xmi/2.1/TestXMI21.uml
trunk/eugene/src/test/resources/xmi/2.1/TestXMI21.umldi
trunk/eugene/src/test/resources/xmi/2.1/cmsCore.uml
trunk/eugene/src/test/resources/xmi/2.1/cmsLink.uml
trunk/eugene/src/test/resources/xmi/2.1/http-storage-api/src/main/uml/conception.uml
trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.properties
trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.uml
trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.umldi
trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception-helper.uml
trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception-helper.umldi
trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.properties
trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.uml
trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.umldi
trunk/eugene/src/test/resources/xmi/2.1/vpod.uml
trunk/maven-eugene-plugin/LICENSE.txt
trunk/maven-eugene-plugin/README.txt
trunk/maven-eugene-plugin/changelog.txt
trunk/maven-eugene-plugin/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/model/README.txt
trunk/maven-eugene-plugin/src/it/evol-879/model/invoker.properties
trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/src/main/resources/models/topiatest.objectmodel
trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/src/main/resources/models/topiatest.properties
trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/src/main/resources/models2/topiatest2.objectmodel
trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/src/main/resources/topiatest3.objectmodel
trunk/maven-eugene-plugin/src/it/evol-879/model/model-impl/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/model/model-impl/src/main/models/topiatest.properties
trunk/maven-eugene-plugin/src/it/evol-879/model/model-impl/src/main/models/topiatest4.objectmodel
trunk/maven-eugene-plugin/src/it/evol-879/model/model-impl/src/test/java/org/nuiton/eugne/plugin/GenerationTest.java
trunk/maven-eugene-plugin/src/it/evol-879/model/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/model/verify.groovy
trunk/maven-eugene-plugin/src/it/evol-879/xmi/README.txt
trunk/maven-eugene-plugin/src/it/evol-879/xmi/invoker.properties
trunk/maven-eugene-plugin/src/it/evol-879/xmi/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/xmi/verify.groovy
trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/topiatest3.xmi
trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi/topiatest.properties
trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi/topiatest.xmi
trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi2/topiatest2.xmi
trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/src/main/xmi/topiatest4.properties
trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/src/main/xmi/topiatest4.xmi
trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/src/test/java/org/nuiton/eugne/plugin/GenerationTest.java
trunk/maven-eugene-plugin/src/it/evol-879/zargo/README.txt
trunk/maven-eugene-plugin/src/it/evol-879/zargo/invoker.properties
trunk/maven-eugene-plugin/src/it/evol-879/zargo/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/zargo/verify.groovy
trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/src/main/resources/topiatest3.zargo
trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/src/main/resources/xmi/topiatest.properties
trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/src/main/resources/xmi/topiatest.zargo
trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/src/main/resources/xmi2/topiatest2.zargo
trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-impl/pom.xml
trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-impl/src/main/xmi/topiatest4.properties
trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-impl/src/main/xmi/topiatest4.zargo
trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-impl/src/test/java/org/nuiton/eugne/plugin/GenerationTest.java
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/README.txt
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/invoker.properties
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/pom.xml
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/src/main/xmi/topiatest.properties
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/src/main/xmi/topiatest.xmi
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/src/main/zargo/topiatest.properties
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/src/main/zargo/topiatest.zargo
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/verify.groovy
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/README.txt
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/invoker.properties
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/pom.xml
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/main/xmi/topiatest.properties
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/main/xmi/topiatest.xmi
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/main/xmi/topiatest.zargo
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/test/xmi/topiatest.properties
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/test/xmi/topiatest.xmi
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/test/xmi/topiatest.zargo
trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/verify.groovy
trunk/maven-eugene-plugin/src/it/settings.xml
trunk/maven-eugene-plugin/src/it/smart-generate/all/LICENSE.txt
trunk/maven-eugene-plugin/src/it/smart-generate/all/README.txt
trunk/maven-eugene-plugin/src/it/smart-generate/all/changelog.txt
trunk/maven-eugene-plugin/src/it/smart-generate/all/invoker.properties
trunk/maven-eugene-plugin/src/it/smart-generate/all/pom.xml
trunk/maven-eugene-plugin/src/it/smart-generate/all/src/main/xmi/topiatest.properties
trunk/maven-eugene-plugin/src/it/smart-generate/all/src/main/xmi/topiatest.xmi
trunk/maven-eugene-plugin/src/it/smart-generate/all/src/main/zargo/topiatest.properties
trunk/maven-eugene-plugin/src/it/smart-generate/all/src/main/zargo/topiatest.zargo
trunk/maven-eugene-plugin/src/it/smart-generate/all/verify.groovy
trunk/maven-eugene-plugin/src/it/smart-generate/generators/LICENSE.txt
trunk/maven-eugene-plugin/src/it/smart-generate/generators/README.txt
trunk/maven-eugene-plugin/src/it/smart-generate/generators/changelog.txt
trunk/maven-eugene-plugin/src/it/smart-generate/generators/invoker.properties
trunk/maven-eugene-plugin/src/it/smart-generate/generators/pom.xml
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/BeanGenerator.java
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/BeanTransformer.java
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/Megatron.java
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/TestBuilder.java
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/TestReader.java
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/resources/log4j.properties
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/test/java/org/nuiton/eugene/test/generator/TestBuilderTest.java
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/test/models/dtotest.objectmodel
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/test/models/dtotest2.objectmodel
trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/test/resources/log4j.properties
trunk/maven-eugene-plugin/src/it/smart-generate/generators/verify.groovy
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/README.txt
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/invoker.properties
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/pom.xml
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/src/main/xmi/topiatest.properties
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/src/main/xmi/topiatest.xmi
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/src/main/zargo/topiatest.properties
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/src/main/zargo/topiatest.zargo
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/verify.groovy
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/README.txt
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/invoker.properties
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/pom.xml
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/src/main/xmi/topiatest.properties
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/src/main/xmi/topiatest.zargo
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/src/main/zargo/topiatest.properties
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/src/main/zargo/topiatest.zargo
trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/verify.groovy
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/AvailableDataMojo.java
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/SmartGenerateMojo.java
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/BaseChainedFileWriter.java
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/XmiChainedFileWriter.java
trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ZargoChainedFileWriter.java
trunk/maven-eugene-plugin/src/main/resources/log4j.properties
trunk/maven-eugene-plugin/src/site/fr/rst/example.rst
trunk/maven-eugene-plugin/src/site/fr/rst/index.rst
trunk/maven-eugene-plugin/src/site/fr/rst/usage.rst
trunk/maven-eugene-plugin/src/site/rst/example.rst
trunk/maven-eugene-plugin/src/site/rst/index.rst
trunk/maven-eugene-plugin/src/site/rst/usage.rst
trunk/maven-eugene-plugin/src/site/site_en.xml
trunk/maven-eugene-plugin/src/site/site_fr.xml
trunk/maven-eugene-plugin/src/xmi/.dummy
trunk/maven-eugene-plugin/src/xmi/chorem_diagram.zuml
trunk/pom.xml
trunk/src/site/fr/rst/01-introduction.rst
trunk/src/site/fr/rst/02-objectmodel.rst
trunk/src/site/fr/rst/03-generation.rst
trunk/src/site/fr/rst/04-templates.rst
trunk/src/site/fr/rst/05-execution.rst
trunk/src/site/fr/rst/06-fonctionnalites-avancees.rst
trunk/src/site/fr/rst/07-glossaire.rst
trunk/src/site/fr/rst/08-FAQ.rst
trunk/src/site/fr/rst/09-tutoriel-index.rst
trunk/src/site/fr/rst/eugene-plan.rst
trunk/src/site/fr/rst/index.rst
trunk/src/site/resources/binaries/EUGene-generate.vpp
trunk/src/site/resources/binaries/eugene_v2.0.zargo
trunk/src/site/resources/binaries/eugene_v2.0_simplify.zargo
trunk/src/site/resources/objectmodel/Hotel.objectmodel.png
trunk/src/site/resources/objectmodel/Hotel.png
trunk/src/site/resources/objectmodel/ObjectModel.png
trunk/src/site/resources/objectmodel/ObjectModel_Generator.png
trunk/src/site/resources/objectmodel/ObjectModel_Interfaces.png
trunk/src/site/resources/schemas/03-generation-complete.png
trunk/src/site/resources/schemas/03-generation-java.png
trunk/src/site/resources/schemas/03-generation-simple.png
trunk/src/site/resources/schemas/04-templates-hierarchy.png
trunk/src/site/rst/01-introduction.rst
trunk/src/site/rst/02-objectmodel.rst
trunk/src/site/rst/03-generation.rst
trunk/src/site/rst/04-templates.rst
trunk/src/site/rst/05-execution.rst
trunk/src/site/rst/06-fonctionnalites-avancees.rst
trunk/src/site/rst/07-glossaire.rst
trunk/src/site/rst/08-FAQ.rst
trunk/src/site/rst/09-tutoriel-index.rst
trunk/src/site/rst/index.rst
trunk/src/site/site_en.xml
trunk/src/site/site_fr.xml
Property changes on: trunk/LICENSE.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/LICENSE.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/changelog.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/main/java/org/nuiton/eugene/GeneratorTask.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/site/fr/rst/index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/site/resources/build.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/site/rst/index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/site/site_en.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/site/site_fr.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/java/org/nuiton/eugene/BasicObjectModelGenerator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/java/org/nuiton/eugene/GeneratorTaskTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/log4j.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/models/objectmodel/security1.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/models/objectmodel/security1.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/models/objectmodel/security2.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/models/objectmodel/security3.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/models/objectmodel/security4.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/models/objectmodel/security5.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/models/objectmodel/security6.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/models/objectmodel/security6.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/uml/Acceleo.Business.profile.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/1.2/dependency.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/1.2/enumeration.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/1.2/isis-fish.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/1.2/topiatest.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/TestXMI21.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/TestXMI21.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/TestXMI21.umldi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/cmsCore.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/cmsLink.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/http-storage-api/src/main/uml/conception.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.umldi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception-helper.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception-helper.umldi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.umldi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/ant-eugene-task/src/test/resources/xmi/2.1/vpod.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/changelog.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/LICENSE.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/TODO
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/changelog.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/1-javamodel/Etude_JavaModel_EUGene.pdf
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/1-javamodel/Metamodel_Java_04-02-02.pdf
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/1-javamodel/sources/JavaModel.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/1-javamodel/sources/ObjectModel.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/1-javamodel/sources/ObjectModel_Interfaces.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/1-javamodel/sources/Todo.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/1-javamodel/sources/description_metamodel_java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/1-javamodel/sources/eugen_java.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/1-javamodel/sources/eugene_objectmodel.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/2-javabuilder/JavaBuilder.pdf
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/2-javabuilder/sources/JavaBuilder.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/2-javabuilder/sources/ObjectModel.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/2-javabuilder/sources/ObjectModelBuilderHelper.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/2-javabuilder/sources/description_javabuilder
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/2-javabuilder/sources/eugene_javabuilder.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/2-javabuilder/sources.tar.gz
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/3-v2.0/eugene2.0.pdf
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/3-v2.0/sources/DiagActivite_EUGene1.0.1_Generation.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/3-v2.0/sources/DiagActivite_EUGene2.0_Generation.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/3-v2.0/sources/DiagActivite_EUGene2.0_GenerationJava.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/3-v2.0/sources/DiagClasses_Generators.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/3-v2.0/sources/EUGene-generate.vpp
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/3-v2.0/sources/eugene2.0
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/doc/3-v2.0/sources/eugene_v2.0.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/AbstractGenerator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/AbstractMetaTransformer.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneStereoTypes.java
___________________________________________________________________
Modified: svn:keywords
- Author Date Id Revision
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/EugeneTagValues.java
___________________________________________________________________
Modified: svn:keywords
- Author Date Id Revision
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorException.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/GeneratorUtil.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/ModelReader.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/MonitorWriter.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/PackageValidator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/Template.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/Transformer.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManager.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/AnnotationsManagerExtension.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManager.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/ConstantsManagerExtension.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManager.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/ImportsManagerExtension.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBeanTransformer.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaBuilder.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGenerator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaGeneratorUtil.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/JavaInterfaceTransformer.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/ObjectModelTransformerToJava.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/java/package-info.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/Model.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModel.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelAssociationClass.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelAttribute.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelBuilder.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelClass.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelClassifier.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelDependency.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelElement.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelEnumeration.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelGenerator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelInterface.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelModifier.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelOperation.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelParameter.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelReader.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelTransformer.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/ObjectModelType.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/validator/AttributeNamesValidator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/validator/ClassNamesValidator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/validator/NameBasedValidator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/validator/ObjectModelValidator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/DigesterObjectModelRuleSet.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ExternalCacheExtension.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModeImplAssociationClassParticipant.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAssociationClassImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelAttributeImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelClassImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelClassifierImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelDependencyImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelElementImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelEnumerationImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImplRef.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImplSuperClassRef.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelImplTagValue.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelInterfaceImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelOperationImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/object/xml/ObjectModelParameterImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModel.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelComplexState.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelGenerator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelReader.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelSimpleState.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelState.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelStateChart.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/StateModelTransition.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/DigesterStateModelRuleSet.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelComplexeStateImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelSimpleStateImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelStateChartImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelStateImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/models/state/xml/StateModelTransitionImpl.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/package-info.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/writer/AbstractChainedFileWriter.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriter.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriterConfiguration.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriterData.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedFileWriterEntry.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/writer/ChainedWriterEngine.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/writer/DefaultChainedWriterEngine.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/java/org/nuiton/eugene/writer/package-info.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/resolver-cache/META-INF/cache/argouml.org/profiles/um…
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/resolver-cache/META-INF/cache/argouml.org/profiles/um…
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/resources/dtd/objectmodel.dtd
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/resources/dtd/statemodel.dtd
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/resources/xmi/default-java.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/resources/xmi/default-uml14.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/resources/xsd/objectmodel.xsd
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/resources/xsd/todo.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/xsl/poseidon2argouml.xsl
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/xsl/xmi1.2ToObjectModel.xsl
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/xsl/xmi1.2ToStateModel.xsl
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/main/xsl/xmi2.1ToObjectModel.xsl
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/fr/rst/DevUIDoc.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/fr/rst/DiscussionSurTypeDeGeneration.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/fr/rst/Todo.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/fr/rst/index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/fr/rst/plugineclipse.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/images/StateModel.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/images/plugin_choix.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/images/plugin_menu.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/images/plugin_newdepot.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/images/plugin_typeinstall.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/images/plugin_utilisation_editeur.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/models/buix.guix
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/models/exemple.topiaModel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/xmi/ObjectModel.zuml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/resources/xmi/objectmodel.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/rst/LutinGenerator.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/rst/generatorHelp.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/rst/index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/site_en.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/site/site_fr.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/GeneratorUtilTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/TestHelper.java
___________________________________________________________________
Modified: svn:keywords
- Author Date Id Revision
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerExtensionTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/java/ImportsManagerTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/java/JavaBuilderTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/ModelMergeTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/ObjectModelGeneratorTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/XMI12ToObjectModelTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/XMI21ToObjectModelTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ExternalCacheExtensionTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelBuilderTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/models/object/xml/ObjectModelImplTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/models/state/StateModelDTDTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/java/org/nuiton/eugene/models/state/StateModelTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/log4j.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/objectmodel/security1.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/objectmodel/security1.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/objectmodel/security2.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/objectmodel/security3.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/objectmodel/security4.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/objectmodel/security5.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/objectmodel/security6.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/objectmodel/security6.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/statemodel/contact.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/statemodel/contact.statemodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/statemodel/project.statemodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/uimodel/test.javaxml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/uimodel/test1.javaxml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/models/uimodel/test2.javaxml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/uml/Acceleo.Business.profile.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/1.2/dependency.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/1.2/enumeration.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/1.2/isis-fish.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/1.2/topiatest.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/1.2/topiatest.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/TestXMI21.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/TestXMI21.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/TestXMI21.umldi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/cmsCore.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/cmsLink.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/http-storage-api/src/main/uml/conception.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.container.nomenclature/src/main/uml/conception.umldi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception-helper.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception-helper.umldi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/org.sharengo.utils.utils/src/main/uml/conception.umldi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/eugene/src/test/resources/xmi/2.1/vpod.uml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/LICENSE.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/changelog.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/README.txt
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/invoker.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/pom.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/src/main/resources/models/topiatest.objectmodel
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/src/main/resources/models/topiatest.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/src/main/resources/models2/topiatest2.objectmodel
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/model-api/src/main/resources/topiatest3.objectmodel
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/model-impl/pom.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/model-impl/src/main/models/topiatest.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/model-impl/src/main/models/topiatest4.objectmodel
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/model-impl/src/test/java/org/nuiton/eugne/plugin/GenerationTest.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/pom.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/model/verify.groovy
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/README.txt
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/invoker.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/pom.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/verify.groovy
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/pom.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Modified: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/topiatest3.xmi
===================================================================
--- trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/topiatest3.xmi 2010-11-28 11:22:01 UTC (rev 1011)
+++ trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/topiatest3.xmi 2010-11-28 11:24:27 UTC (rev 1012)
@@ -2,7 +2,7 @@
<XMI xmi.version = '1.2' xmlns:UML = 'org.omg.xmi.namespace.UML' timestamp = 'Mon Oct 19 15:56:54 CEST 2009'>
<XMI.header> <XMI.documentation>
<XMI.exporter>ArgoUML (using Netbeans XMI Writer version 1.0)</XMI.exporter>
- <XMI.exporterVersion>0.28.1(6) revised on $Date: 2010-04-10 00:56:51 +0200 (sam., 10 avr. 2010) $ </XMI.exporterVersion>
+ <XMI.exporterVersion>0.28.1(6) revised on $Date$ </XMI.exporterVersion>
</XMI.documentation>
<XMI.metamodel xmi.name="UML" xmi.version="1.4"/></XMI.header>
<XMI.content>
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/topiatest3.xmi
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi/topiatest.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Modified: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi/topiatest.xmi
===================================================================
--- trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi/topiatest.xmi 2010-11-28 11:22:01 UTC (rev 1011)
+++ trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi/topiatest.xmi 2010-11-28 11:24:27 UTC (rev 1012)
@@ -2,7 +2,7 @@
<XMI xmi.version = '1.2' xmlns:UML = 'org.omg.xmi.namespace.UML' timestamp = 'Mon Oct 19 15:56:54 CEST 2009'>
<XMI.header> <XMI.documentation>
<XMI.exporter>ArgoUML (using Netbeans XMI Writer version 1.0)</XMI.exporter>
- <XMI.exporterVersion>0.28.1(6) revised on $Date: 2010-04-10 00:56:51 +0200 (sam., 10 avr. 2010) $ </XMI.exporterVersion>
+ <XMI.exporterVersion>0.28.1(6) revised on $Date$ </XMI.exporterVersion>
</XMI.documentation>
<XMI.metamodel xmi.name="UML" xmi.version="1.4"/></XMI.header>
<XMI.content>
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi/topiatest.xmi
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Modified: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi2/topiatest2.xmi
===================================================================
--- trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi2/topiatest2.xmi 2010-11-28 11:22:01 UTC (rev 1011)
+++ trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi2/topiatest2.xmi 2010-11-28 11:24:27 UTC (rev 1012)
@@ -2,7 +2,7 @@
<XMI xmi.version = '1.2' xmlns:UML = 'org.omg.xmi.namespace.UML' timestamp = 'Mon Oct 19 15:56:54 CEST 2009'>
<XMI.header> <XMI.documentation>
<XMI.exporter>ArgoUML (using Netbeans XMI Writer version 1.0)</XMI.exporter>
- <XMI.exporterVersion>0.28.1(6) revised on $Date: 2010-04-10 00:56:51 +0200 (sam., 10 avr. 2010) $ </XMI.exporterVersion>
+ <XMI.exporterVersion>0.28.1(6) revised on $Date$ </XMI.exporterVersion>
</XMI.documentation>
<XMI.metamodel xmi.name="UML" xmi.version="1.4"/></XMI.header>
<XMI.content>
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-api/src/main/resources/xmi2/topiatest2.xmi
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/pom.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/src/main/xmi/topiatest4.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Modified: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/src/main/xmi/topiatest4.xmi
===================================================================
--- trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/src/main/xmi/topiatest4.xmi 2010-11-28 11:22:01 UTC (rev 1011)
+++ trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/src/main/xmi/topiatest4.xmi 2010-11-28 11:24:27 UTC (rev 1012)
@@ -2,7 +2,7 @@
<XMI xmi.version = '1.2' xmlns:UML = 'org.omg.xmi.namespace.UML' timestamp = 'Mon Oct 19 15:56:54 CEST 2009'>
<XMI.header> <XMI.documentation>
<XMI.exporter>ArgoUML (using Netbeans XMI Writer version 1.0)</XMI.exporter>
- <XMI.exporterVersion>0.28.1(6) revised on $Date: 2010-04-10 00:56:51 +0200 (sam., 10 avr. 2010) $ </XMI.exporterVersion>
+ <XMI.exporterVersion>0.28.1(6) revised on $Date$ </XMI.exporterVersion>
</XMI.documentation>
<XMI.metamodel xmi.name="UML" xmi.version="1.4"/></XMI.header>
<XMI.content>
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/src/main/xmi/topiatest4.xmi
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/xmi/xmi-impl/src/test/java/org/nuiton/eugne/plugin/GenerationTest.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/README.txt
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/invoker.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/pom.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/verify.groovy
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/pom.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/src/main/resources/topiatest3.zargo
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/src/main/resources/xmi/topiatest.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/src/main/resources/xmi/topiatest.zargo
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-api/src/main/resources/xmi2/topiatest2.zargo
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-impl/pom.xml
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-impl/src/main/xmi/topiatest4.properties
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-impl/src/main/xmi/topiatest4.zargo
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/evol-879/zargo/zargo-impl/src/test/java/org/nuiton/eugne/plugin/GenerationTest.java
___________________________________________________________________
Added: svn:keywords
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/invoker.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/src/main/xmi/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/src/main/xmi/topiatest.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/src/main/zargo/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/src/main/zargo/topiatest.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithNoProtocol/verify.groovy
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/invoker.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/main/xmi/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/main/xmi/topiatest.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/main/xmi/topiatest.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/test/xmi/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/test/xmi/topiatest.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/src/test/xmi/topiatest.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/generate-model-files/testIncludeWithOnlyProtocol/verify.groovy
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/settings.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/LICENSE.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/changelog.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/invoker.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/src/main/xmi/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/src/main/xmi/topiatest.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/src/main/zargo/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/src/main/zargo/topiatest.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/all/verify.groovy
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/LICENSE.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/changelog.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/invoker.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/BeanGenerator.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/BeanTransformer.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/Megatron.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/TestBuilder.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/java/org/nuiton/eugene/test/generator/TestReader.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/main/resources/log4j.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/test/java/org/nuiton/eugene/test/generator/TestBuilderTest.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/test/models/dtotest.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/test/models/dtotest2.objectmodel
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/src/test/resources/log4j.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/generators/verify.groovy
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/invoker.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/src/main/xmi/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/src/main/xmi/topiatest.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/src/main/zargo/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/src/main/zargo/topiatest.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo/verify.groovy
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/README.txt
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/invoker.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/src/main/xmi/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/src/main/xmi/topiatest.xmi
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/src/main/zargo/topiatest.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/src/main/zargo/topiatest.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/it/smart-generate/only-zargo-xmi/verify.groovy
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/AvailableDataMojo.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/SmartGenerateMojo.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/BaseChainedFileWriter.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ModelChainedFileWriter.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/XmiChainedFileWriter.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/main/java/org/nuiton/eugene/plugin/writer/ZargoChainedFileWriter.java
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/main/resources/log4j.properties
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/site/fr/rst/example.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/site/fr/rst/index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/site/fr/rst/usage.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/site/rst/example.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/site/rst/index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/site/rst/usage.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/site/site_en.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/site/site_fr.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/xmi/.dummy
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/maven-eugene-plugin/src/xmi/chorem_diagram.zuml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/pom.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/01-introduction.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/02-objectmodel.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/03-generation.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/04-templates.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/05-execution.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/06-fonctionnalites-avancees.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/07-glossaire.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/08-FAQ.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/09-tutoriel-index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/eugene-plan.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/fr/rst/index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/binaries/EUGene-generate.vpp
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/binaries/eugene_v2.0.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/binaries/eugene_v2.0_simplify.zargo
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/objectmodel/Hotel.objectmodel.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/objectmodel/Hotel.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/objectmodel/ObjectModel.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/objectmodel/ObjectModel_Generator.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/objectmodel/ObjectModel_Interfaces.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/schemas/03-generation-complete.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/schemas/03-generation-java.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/schemas/03-generation-simple.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/resources/schemas/04-templates-hierarchy.png
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/01-introduction.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/02-objectmodel.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/03-generation.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/04-templates.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/05-execution.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/06-fonctionnalites-avancees.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/07-glossaire.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/08-FAQ.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/09-tutoriel-index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/rst/index.rst
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/site_en.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
Property changes on: trunk/src/site/site_fr.xml
___________________________________________________________________
Modified: svn:keywords
- HeadURL Id Date Revision Author
+ Author Date Id Revision HeadURL
1
0