Class AbstractTemplateClassGenerator

java.lang.Object
org.apache.tiles.autotag.generate.AbstractTemplateClassGenerator
All Implemented Interfaces:
TemplateClassGenerator
Direct Known Subclasses:
FMModelGenerator, TagClassGenerator, VelocityDirectiveGenerator

public abstract class AbstractTemplateClassGenerator extends Object implements TemplateClassGenerator
A base template class generator.
  • Constructor Details

    • AbstractTemplateClassGenerator

      public AbstractTemplateClassGenerator(org.apache.velocity.app.VelocityEngine velocityEngine)
      Constructor.
      Parameters:
      velocityEngine - The Velocity engine.
  • Method Details

    • generate

      public void generate(File directory, String packageName, TemplateSuite suite, TemplateClass clazz, Map<String,String> parameters, String runtimeClass, String requestClass)
      Description copied from interface: TemplateClassGenerator
      Generates the code.
      Specified by:
      generate in interface TemplateClassGenerator
      Parameters:
      directory - The base directory where the code will be put.
      packageName - The package name.
      suite - The template suite.
      clazz - The template class.
      parameters - Configuration parameters.
      runtimeClass - The RequestBuilder implementation.
    • getTemplatePath

      protected abstract String getTemplatePath(File directory, String packageName, TemplateSuite suite, TemplateClass clazz, Map<String,String> parameters, String runtimeClass, String requestClass)
      Calculates and returns the template path.
      Parameters:
      directory - The directory where the file will be written.
      packageName - The name of the package.
      suite - The template suite.
      clazz - The template class.
      parameters - The map of parameters.
      Returns:
      The template path.
    • getFilename

      protected abstract String getFilename(File directory, String packageName, TemplateSuite suite, TemplateClass clazz, Map<String,String> parameters, String runtimeClass, String requestClass)
      Calculates and returns the filename of the generated file.
      Parameters:
      directory - The directory where the file will be written.
      packageName - The name of the package.
      suite - The template suite.
      clazz - The template class.
      parameters - The map of parameters.
      Returns:
      The template path.
    • getDirectoryName

      protected abstract String getDirectoryName(File directory, String packageName, TemplateSuite suite, TemplateClass clazz, Map<String,String> parameters, String runtimeClass, String requestClass)
      Calculates and returns the directory where the file will be written..
      Parameters:
      directory - The directory where the file will be written.
      packageName - The name of the package.
      suite - The template suite.
      clazz - The template class.
      parameters - The map of parameters.
      Returns:
      The template path.