ch.sahits.codegen.java.generator.ast
Class JETASTGenerator

java.lang.Object
  extended by ch.sahits.codegen.generator.AbstractGenerator
      extended by ch.sahits.codegen.generator.JETGateway
          extended by ch.sahits.codegen.java.generator.jettemplate.AbstractJETTemplateGenerator
              extended by ch.sahits.codegen.java.generator.ast.AbstractJETASTGenerator
                  extended by ch.sahits.codegen.java.generator.ast.JETASTGenerator
All Implemented Interfaces:
IBaseGenerator, IGenerator, IASTGenerator, IJETASTGenerator

public final class JETASTGenerator
extends AbstractJETASTGenerator
implements IJETASTGenerator, IBaseGenerator

Generator class to generate Code with a Jet template and improve on it with AST

Since:
0.9.0 TODO Replace IGeneratedJavaDBClass with IGeneratedJavaDBClass2
Author:
Andi Hotz

Field Summary
 
Fields inherited from class ch.sahits.codegen.java.generator.ast.AbstractJETASTGenerator
document, model, unit
 
Fields inherited from class ch.sahits.codegen.java.generator.jettemplate.AbstractJETTemplateGenerator
jetTemplateFile
 
Constructor Summary
JETASTGenerator()
          Default constructor.
 
Method Summary
protected  JETGateway createJetGenerator()
          Create a feasable JET Gegenrator
protected  void generateASTCode()
          This methods adds the AST parts to the code
 int getWorkload()
          Compute the workload for the generation
 void init()
          Initialize the monitor
 boolean isInitialized()
          Check whether all members are initialized
 void setBaseClass(java.lang.String _baseClass)
           
 void setModel(IGeneratedJavaDBClass _model)
           
 
Methods inherited from class ch.sahits.codegen.java.generator.ast.AbstractJETASTGenerator
addImports, cleanup, generate, generateTemplate
 
Methods inherited from class ch.sahits.codegen.java.generator.jettemplate.AbstractJETTemplateGenerator
addImport, addJetPluginID2Builder, append, appendLn, generate, init, writeDirective
 
Methods inherited from class ch.sahits.codegen.generator.JETGateway
getJETEmitter, setMonitor
 
Methods inherited from class ch.sahits.codegen.generator.AbstractGenerator
createIfNull, findOrCreateContainer, getConfig, save, setConfig
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface ch.sahits.codegen.java.generator.ast.IASTGenerator
generate
 
Methods inherited from interface ch.sahits.codegen.generator.IBaseGenerator
init
 
Methods inherited from interface ch.sahits.codegen.generator.IGenerator
getConfig, save
 

Constructor Detail

JETASTGenerator

public JETASTGenerator()
Default constructor. The use of this constructor is discurraged since the configuration does not get initialized.

Method Detail

createJetGenerator

protected JETGateway createJetGenerator()
Create a feasable JET Gegenrator

Specified by:
createJetGenerator in class AbstractJETASTGenerator
Returns:
JETGateway

setModel

public void setModel(IGeneratedJavaDBClass _model)
Specified by:
setModel in interface IASTGenerator
Parameters:
_model - the model to set

setBaseClass

public void setBaseClass(java.lang.String _baseClass)
Specified by:
setBaseClass in interface IASTGenerator
Specified by:
setBaseClass in class AbstractJETASTGenerator
Parameters:
_baseClass - the baseClass to set

isInitialized

public boolean isInitialized()
Check whether all members are initialized

Specified by:
isInitialized in interface IBaseGenerator
Overrides:
isInitialized in class JETGateway
Returns:
true if the model and the baseClass are initialized

getWorkload

public int getWorkload()
Compute the workload for the generation

Specified by:
getWorkload in interface IGenerator
Overrides:
getWorkload in class JETGateway
Returns:
workload

init

public void init()
Description copied from class: JETGateway
Initialize the monitor

Specified by:
init in interface IGenerator
Overrides:
init in class JETGateway
See Also:
JETGateway.init()

generateASTCode

protected void generateASTCode()
This methods adds the AST parts to the code

Specified by:
generateASTCode in class AbstractJETASTGenerator