org.apache.tiles.autotag.generate
Class AbstractTemplateClassGenerator

Package class diagram package AbstractTemplateClassGenerator
java.lang.Object
  extended by 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.

Version:
$Rev: 1349964 $ $Date: 2012-06-13 13:18:51 -0400 (Wed, 13 Jun 2012) $

Constructor Summary
AbstractTemplateClassGenerator(org.apache.velocity.app.VelocityEngine velocityEngine)
          Constructor.
 
Method Summary
 void generate(File directory, String packageName, TemplateSuite suite, TemplateClass clazz, Map<String,String> parameters, String runtimeClass, String requestClass)
          Generates the code.
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..
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.
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.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AbstractTemplateClassGenerator

public AbstractTemplateClassGenerator(org.apache.velocity.app.VelocityEngine velocityEngine)
Constructor.

Parameters:
velocityEngine - The Velocity engine.
Method Detail

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.


Copyright © 2001-2012 Apache Software Foundation. All Rights Reserved.