Class 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.
    Author:
    chatellier
    • Constructor Detail

      • StateModelGenerator

        public StateModelGenerator()
        Empty constructor
      • StateModelGenerator

        public StateModelGenerator​(AbstractGenerator<StateModel> parent)
        Constructor with parent generator.
        Parameters:
        parent - parent generator
    • Method Detail

      • 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 - the output writer
        stateModel - the model
      • getFilenameFromModel

        protected String getFilenameFromModel​(StateModel stateModel)
        Return filename from model
        Parameters:
        stateModel - the model
        Returns:
        model file name
      • getFilenameFromState

        public String getFilenameFromState​(StateModelState state,
                                           String packageName)
        Return filename from state
        Parameters:
        state - the state
        packageName - the package name
        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 - if any IO problem while generating