org.objectweb.jonas_lib.genbase.generator
Class AbsGenerator

java.lang.Object
  extended by org.objectweb.jonas_lib.genbase.generator.AbsGenerator
Direct Known Subclasses:
Generator, Generator

public abstract class AbsGenerator
extends java.lang.Object

Generators provide a structure to be extended for specific generation mechanisms.

Author:
Guillaume Sauthier

Constructor Summary
AbsGenerator(Config config)
          Creates a new Generator with the given Config.
 
Method Summary
abstract  void addFiles(Archive archive)
          Add generated files into an Archive
protected  void addJavaSources(java.io.File src, java.util.Vector list)
          Recursively add java files into a Vector.
abstract  void compile()
          Compile generated java files into classes directory.
abstract  void generate()
          Generate files.
 java.io.File getClasses()
           
 Config getConfig()
           
static org.objectweb.util.monolog.api.Logger getLogger()
           
 java.io.File getSources()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbsGenerator

public AbsGenerator(Config config)
             throws GenBaseException
Creates a new Generator with the given Config.

Parameters:
config - internal configuration object.
Throws:
GenBaseException - When sources and target temporary directory cannot be created
Method Detail

generate

public abstract void generate()
                       throws GenBaseException
Generate files.

Throws:
GenBaseException - When generation fails.

compile

public abstract void compile()
                      throws GenBaseException
Compile generated java files into classes directory.

Throws:
GenBaseException - When compilation fails

addJavaSources

protected void addJavaSources(java.io.File src,
                              java.util.Vector list)
Recursively add java files into a Vector.

Parameters:
src - base directory
list - Vector to be filled

addFiles

public abstract void addFiles(Archive archive)
                       throws GenBaseException
Add generated files into an Archive

Parameters:
archive - the archive destination of generated files.
Throws:
GenBaseException - When files cannot be added in the given Archive.

getConfig

public Config getConfig()
Returns:
the config.

getLogger

public static org.objectweb.util.monolog.api.Logger getLogger()
Returns:
the logger.

getClasses

public java.io.File getClasses()
Returns:
the classes.

getSources

public java.io.File getSources()
Returns:
the sources.