Author: fdesbois Date: 2009-10-26 19:10:59 +0100 (Mon, 26 Oct 2009) New Revision: 658 Removed: branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/AbstractObjectModelGenerator.java branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/ChildGenerator.java Modified: branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/Generator.java branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/ObjectModelGenerator.java branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/StateModelGenerator.java branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/UIModelGenerator.java Log: - Fusion Generator and ChildGenerator - Refactor inheritance - Suppress unused (even in ToPIA) AbstractObjectModelGenerator Deleted: branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/AbstractObjectModelGenerator.java =================================================================== --- branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/AbstractObjectModelGenerator.java 2009-10-26 17:57:23 UTC (rev 657) +++ branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/AbstractObjectModelGenerator.java 2009-10-26 18:10:59 UTC (rev 658) @@ -1,54 +0,0 @@ -/* *##% Eugene - * Copyright (C) 2004 - 2009 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>. ##%*/ - -package org.nuiton.eugene; - -import org.nuiton.eugene.models.object.ObjectModelElement; - -/** - * AbstractObjectModelGenerator. - * - * Created: Jun 25, 2004 - * - * @author Benjamin Poussin <poussin@codelutin.com> - * Copyright Code Lutin - * @version $Revision$ - * - * Mise a jour: $Date$ - * par : $Author$ - */ -public class AbstractObjectModelGenerator extends ObjectModelGenerator { // AbstractObjectModelGenerator - - public AbstractObjectModelGenerator() { - super(); - } - - public AbstractObjectModelGenerator(Generator parent) { - super(parent); - } - - public String capitalizeName(ObjectModelElement e) { - String name = e.getName(); - if (name == null) { - throw new GeneratorException("Element " + e - + " must have an valid name"); - } - return GeneratorUtil.capitalize(name); - } - -} // AbstractObjectModelGenerator - Deleted: branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/ChildGenerator.java =================================================================== --- branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/ChildGenerator.java 2009-10-26 17:57:23 UTC (rev 657) +++ branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/ChildGenerator.java 2009-10-26 18:10:59 UTC (rev 658) @@ -1,94 +0,0 @@ -/* *##% Eugene - * Copyright (C) 2004 - 2009 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>. ##%*/ - -package org.nuiton.eugene; - -/** - * ChildGenerator. - * - * Created: 5 août 2004 - * - * @author Benjamin Poussin <poussin@codelutin.com> - * @version $Revision$ - * - * Mise a jour: $Date$ - * par : $Author$ - */ -public abstract class ChildGenerator extends Generator { // ChildGenerator - - protected Generator parent = null; - - public ChildGenerator() { - super(); - } - - public ChildGenerator(Generator parent) { - setParent(parent); - } - - @Override - public String getProperty(String name) { - String propName = null; - if (parent == null) { - propName = super.getProperty(name); - } else { - propName = parent.getProperty(name); - } - return propName; - } - - @Override - public boolean getOverwrite() { - boolean result; - if (parent == null) { - result = super.getOverwrite(); - } else { - result = parent.getOverwrite(); - } - return result; - } - - @Override - protected long getLastModifiedSource() { - long lastModified = 0; - if (parent == null) { - lastModified = super.getLastModifiedSource(); - } else { - lastModified = parent.getLastModifiedSource(); - } - return lastModified; - } - - @Override - protected boolean canGeneratePackage(String packageName) { - boolean canGenerate = true; - - if (parent == null) { - canGenerate = super.canGeneratePackage(packageName); - } else { - canGenerate = parent.canGeneratePackage(packageName); - } - - return canGenerate; - } - - public void setParent(Generator parent) { - this.parent = parent; - setEncoding(parent.getEncoding()); - } - -} // ChildGenerator Modified: branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/Generator.java =================================================================== --- branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/Generator.java 2009-10-26 17:57:23 UTC (rev 657) +++ branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/Generator.java 2009-10-26 18:10:59 UTC (rev 658) @@ -60,9 +60,21 @@ protected String encoding; + + protected Generator parent = null; + public Generator() { } + public Generator(Generator parent) { + setParent(parent); + } + + public void setParent(Generator parent) { + this.parent = parent; + setEncoding(parent.getEncoding()); + } + public void generate(File file, File destDir) { generate(new File[] { file }, destDir); } @@ -80,6 +92,9 @@ } public boolean getOverwrite() { + if (parent != null) { + return getOverwrite(); + } return overwrite; } @@ -109,6 +124,9 @@ * @return la valeur de la propriété */ public String getProperty(String name) { + if (parent != null) { + return parent.getProperty(name); + } return properties.getProperty(name); } @@ -124,7 +142,9 @@ } protected long getLastModifiedSource() { - + if (parent != null) { + return parent.getLastModifiedSource(); + } return lastModifiedSource; } @@ -199,7 +219,9 @@ */ protected boolean canGeneratePackage(String packageName) { boolean canGenerate = true; - + if (parent != null) { + return parent.canGeneratePackage(packageName); + } // if not generation restriction, generate everything if (generatedPackages != null && !generatedPackages.isEmpty()) { canGenerate = false; Modified: branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/ObjectModelGenerator.java =================================================================== --- branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/ObjectModelGenerator.java 2009-10-26 17:57:23 UTC (rev 657) +++ branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/ObjectModelGenerator.java 2009-10-26 18:10:59 UTC (rev 658) @@ -84,7 +84,7 @@ * * Mise a jour: $Date$ par : $Author$ */ -public class ObjectModelGenerator extends ChildGenerator { +public class ObjectModelGenerator extends Generator { /** Logger for this class. */ private static Log log = LogFactory.getLog(ObjectModelGenerator.class); Modified: branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/StateModelGenerator.java =================================================================== --- branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/StateModelGenerator.java 2009-10-26 17:57:23 UTC (rev 657) +++ branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/StateModelGenerator.java 2009-10-26 18:10:59 UTC (rev 658) @@ -55,7 +55,7 @@ * * Last update : $Date$ By : $Author$ */ -public class StateModelGenerator extends ChildGenerator { +public class StateModelGenerator extends Generator { /** Logger for this class */ private static Log log = LogFactory.getLog(StateModelGenerator.class); Modified: branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/UIModelGenerator.java =================================================================== --- branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/UIModelGenerator.java 2009-10-26 17:57:23 UTC (rev 657) +++ branches/1.1.0-Javabuilder/eugene/src/main/java/org/nuiton/eugene/UIModelGenerator.java 2009-10-26 18:10:59 UTC (rev 658) @@ -45,7 +45,7 @@ * Last update : $Date$ * By : $Author$ */ -public class UIModelGenerator extends ChildGenerator { +public class UIModelGenerator extends Generator { protected UIModel model = null;