org.nuiton.eugene.models.object
Class ObjectModelTransformer<O extends Model>

java.lang.Object
  extended by org.nuiton.eugene.Template<I>
      extended by org.nuiton.eugene.Transformer<ObjectModel,O>
          extended by org.nuiton.eugene.models.object.ObjectModelTransformer<O>
Type Parameters:
O - Created: 28 oct. 2009
All Implemented Interfaces:
TemplateConfiguration
Direct Known Subclasses:
ObjectModelTransformerToJava

public abstract class ObjectModelTransformer<O extends Model>
extends Transformer<ObjectModel,O>

L'initialisation du modèle de sortie et du générateur de sortie associée, se fait dans la superclass grâce à la méthode init.

Author:
fdesbois

Field Summary
 
Fields inherited from class org.nuiton.eugene.Transformer
outputModel, outputProperties, outputTemplate, previousTransformer
 
Fields inherited from class org.nuiton.eugene.Template
configuration, excludeTemplates, generatedPackages, model
 
Fields inherited from interface org.nuiton.eugene.TemplateConfiguration
PROP_CLASS_LOADER, PROP_DEFAULT_PACKAGE, PROP_ENCODING, PROP_EXCLUDE_TEMPLATES, PROP_GENERATED_PACKAGES, PROP_LAST_MODIFIED_SOURCE, PROP_OVERWRITE, PROP_VERBOSE, PROP_WRITER_REPORT
 
Constructor Summary
ObjectModelTransformer()
           
 
Method Summary
protected abstract  void debugOutputModel()
           
 void transform()
          Le model associé au transformer est le model d'entree.
 void transformFromClass(ObjectModelClass clazz)
           
 void transformFromClassifier(ObjectModelClassifier clazz)
           
protected  void transformFromElement(Object element, ObjectModelType type)
          Génération pour un élément du modèle (ou le modèle lui-même).
 void transformFromEnumeration(ObjectModelEnumeration enumeration)
           
 void transformFromInterface(ObjectModelInterface interfacez)
           
 void transformFromModel(ObjectModel model)
           
 
Methods inherited from class org.nuiton.eugene.Transformer
applyTemplate, getOutputModel, getOutputProperties, getOutputTemplate, init, initOutputModel, initOutputTemplate, initPreviousTransformer, transform
 
Methods inherited from class org.nuiton.eugene.Template
getClassLoader, getConfiguration, getEncoding, getExcludeTemplates, getGeneratedPackages, getLastModifiedSource, getModel, getOverwrite, getProperties, getProperty, getProperty, getWriterReport, isOverwrite, isVerbose, setConfiguration, setProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ObjectModelTransformer

public ObjectModelTransformer()
Method Detail

transform

public void transform()
Le model associé au transformer est le model d'entree. Le modele de sortie peut etre initialiser via la methode Transformer.initOutputModel(). Il est également possible de surcharger la methode debugOutputModel() pour verifier le resultat de la transformation. Par defaut la methode appelle la methode transformFromModel(ObjectModel) puis boucle sur chaque class en appelant la methode transformFromClass(ObjectModelClass) puis boucle sur chaque interface en appelant a methode transformFromInterface(ObjectModelInterface) et enfin sur chaque enumeration en appelant la methode transformFromEnumeration(ObjectModelEnumeration)

Specified by:
transform in class Transformer<ObjectModel,O extends Model>

debugOutputModel

protected abstract void debugOutputModel()

transformFromElement

protected void transformFromElement(Object element,
                                    ObjectModelType type)
Génération pour un élément du modèle (ou le modèle lui-même). Types possibles : ObjectModel, ObjectModelClassifier, ObjectModelClass, ObjectModelInterface et ObjectModelEnumeration. La méthode transformFromXXX dépend du type d'élément et peut être surchargée.

Parameters:
element - element à généré
type - type d'ObjectModel
See Also:
ObjectModelType

transformFromModel

public void transformFromModel(ObjectModel model)

transformFromInterface

public void transformFromInterface(ObjectModelInterface interfacez)

transformFromClass

public void transformFromClass(ObjectModelClass clazz)

transformFromClassifier

public void transformFromClassifier(ObjectModelClassifier clazz)

transformFromEnumeration

public void transformFromEnumeration(ObjectModelEnumeration enumeration)


Copyright © 2004-2012 CodeLutin. All Rights Reserved.