Package org.nuiton.eugene.models.object
Class ObjectModelTransformer<O extends Model>
- java.lang.Object
-
- org.nuiton.eugene.Template<I>
-
- org.nuiton.eugene.Transformer<ObjectModel,O>
-
- 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:
- Florian Desbois - desbois@codelutin.com
-
-
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, resourcesHelper
-
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
Constructors Constructor Description ObjectModelTransformer()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description 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
addOutputProperty, applyTemplate, getDefaultPackageName, 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, getResourcesHelper, getWriterReport, isOverwrite, isVerbose, setConfiguration, setProperty
-
-
-
-
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 methodeTransformer.initOutputModel()
. Il est également possible de surcharger la methodedebugOutputModel()
pour verifier le resultat de la transformation. Par defaut la methode appelle la methodetransformFromModel(ObjectModel)
puis boucle sur chaque class en appelant la methodetransformFromClass(ObjectModelClass)
puis boucle sur chaque interface en appelant a methodetransformFromInterface(ObjectModelInterface)
et enfin sur chaque enumeration en appelant la methodetransformFromEnumeration(ObjectModelEnumeration)
- Specified by:
transform
in classTransformer<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)
-
-