org.nuiton.eugene.models.state
Class StateModelGenerator

java.lang.Object
  extended by org.nuiton.eugene.Template<M>
      extended by org.nuiton.eugene.AbstractGenerator<StateModel>
          extended by org.nuiton.eugene.models.state.StateModelGenerator
All Implemented Interfaces:
TemplateConfiguration

public class StateModelGenerator
extends AbstractGenerator<StateModel>

StateModelGenerator.

Pour utiliser ce type de générateur, il faut implanter au moins une des méthodes generateFrom... et le getFilenameFor... associé si l'on souhaite un nom de fichier convenable. Si dans une méthode generateFrom... on utilise pas le writer (output) alors aucun fichier n'est généré.

Le nom de l'argument writer doit absolument etre output et pas autre chose si vous souhaitez utiliser le processeur org.nuiton.processor.filters.GeneratorTemplatesFilter pour vous s'implifier l'écriture des templates.

Version:
$Revision: 1012 $

Last update : $Date: 2010-11-28 12:24:27 +0100 (Sun, 28 Nov 2010) $ By :

Author:
chatellier

Field Summary
 
Fields inherited from class org.nuiton.eugene.AbstractGenerator
parent
 
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
StateModelGenerator()
          Empty constructor
StateModelGenerator(AbstractGenerator<StateModel> parent)
          Constructor with parent generator.
 
Method Summary
 void applyTemplate(StateModel stateModel, File destDir)
          Par défaut, appel generateFromModel(MonitorWriter , StateModel) pour le model et generateFromState(Writer,StateModelState) pour tous les etats du modele.
protected  boolean canGenerateElement(StateModelStateChart chart)
          Test if given element can be generated.
protected  void generateFromModel(MonitorWriter monitorOut, StateModel stateModel)
          Generate model code
 void generateFromState(Writer monitorOut, StateModelState state)
          Generate a state code
protected  String getFilenameFromModel(StateModel stateModel)
          Return filename from model
 String getFilenameFromState(StateModelState state, String packageName)
          Return filename from state
 
Methods inherited from class org.nuiton.eugene.AbstractGenerator
canGeneratePackage, getDestinationFile, getEncoding, getLastModifiedSource, getProperty, getProperty, getWriter, isNewerThanSource, isOverwrite, setParent, write
 
Methods inherited from class org.nuiton.eugene.Template
getClassLoader, getConfiguration, getExcludeTemplates, getGeneratedPackages, getModel, getOverwrite, getProperties, getWriterReport, isVerbose, setConfiguration, setProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StateModelGenerator

public StateModelGenerator()
Empty constructor


StateModelGenerator

public StateModelGenerator(AbstractGenerator<StateModel> parent)
Constructor with parent generator.

Parameters:
parent - parent generator
Method Detail

applyTemplate

public void applyTemplate(StateModel stateModel,
                          File destDir)
                   throws IOException
Par défaut, appel generateFromModel(MonitorWriter , StateModel) pour le model et generateFromState(Writer,StateModelState) pour tous les etats du modele.

Specified by:
applyTemplate in class Template<StateModel>
Parameters:
stateModel - Le modele d'état
destDir - le dossier de destination
Throws:
IOException

canGenerateElement

protected boolean canGenerateElement(StateModelStateChart chart)
Test if given element can be generated.

Parameters:
chart - chart to test
Returns:
generation allowed

generateFromModel

protected void generateFromModel(MonitorWriter monitorOut,
                                 StateModel stateModel)
Generate model code

Parameters:
monitorOut -
stateModel -

getFilenameFromModel

protected String getFilenameFromModel(StateModel stateModel)
Return filename from model

Parameters:
stateModel -
Returns:
model file name

getFilenameFromState

public String getFilenameFromState(StateModelState state,
                                   String packageName)
Return filename from state

Parameters:
state - the state
packageName -
Returns:
the filename

generateFromState

public void generateFromState(Writer monitorOut,
                              StateModelState state)
                       throws IOException
Generate a state code

Parameters:
monitorOut - the output writer
state - the state
Throws:
IOException


Copyright © 2004-2012 CodeLutin. All Rights Reserved.