org.eigenbase.resgen
Class AbstractGenerator

java.lang.Object
  extended by org.eigenbase.resgen.AbstractGenerator
All Implemented Interfaces:
Generator
Direct Known Subclasses:
AbstractJavaGenerator, CppGenerator

abstract class AbstractGenerator
extends Object
implements Generator

Abstract base for all generators.

Since:
19 September, 2005
Author:
jhyde
 

Constructor Summary
AbstractGenerator(File srcFile, File file)
           
 
Method Summary
protected  void generateDoNotModifyHeader(PrintWriter pw)
           
protected  void generateGeneratedByBlock(PrintWriter pw)
           
protected abstract  void generateResource(ResourceDef.Resource resource, PrintWriter pw)
          Generates code for a particular resource.
protected abstract  String[] getArgTypes(String message)
          Returns the number and types of parameters in the given error message, expressed as an array of Strings (legal values are currently "String", "Number", "java.util.Date", and null) ordered by parameter number.
protected  String getArgumentList(String message)
           
protected abstract  String getBaseClassName()
          Returns the fully-qualified name of the base class.
protected abstract  String getClassName()
          Returns the fully-qualified name of the class being generated, for example "happy.BirthdayResource_en_US".
protected  File getFile()
          Returns the generator's output file.
protected  String getParameterList(String message)
          Returns a parameter list string, e.g.
protected  String getSrcFileForComment()
          Returns the XML or .properties source file, in a manner suitable for use in source code comments.
 void setScmSafeComments(boolean enabled)
          Configures whether this generator will output comments that may be submitted to a source code management system.
protected  boolean useScmSafeComments()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.eigenbase.resgen.Generator
generateModule
 

Constructor Detail

AbstractGenerator

public AbstractGenerator(File srcFile,
                         File file)
Method Detail

setScmSafeComments

public void setScmSafeComments(boolean enabled)
Description copied from interface: Generator
Configures whether this generator will output comments that may be submitted to a source code management system. In general, it squelches comments indicating the file should not be checked in as well as comments change with each generation of the file (thereby avoiding merge conflicts).

Specified by:
setScmSafeComments in interface Generator

useScmSafeComments

protected boolean useScmSafeComments()

generateResource

protected abstract void generateResource(ResourceDef.Resource resource,
                                         PrintWriter pw)
Generates code for a particular resource.


generateDoNotModifyHeader

protected void generateDoNotModifyHeader(PrintWriter pw)

generateGeneratedByBlock

protected void generateGeneratedByBlock(PrintWriter pw)

getFile

protected File getFile()
Returns the generator's output file. e.g., "BirthdayResource.java"


getSrcFileForComment

protected String getSrcFileForComment()
Returns the XML or .properties source file, in a manner suitable for use in source code comments. Path information is stripped if SCM-safe comment style is enabled.

See Also:
setScmSafeComments(boolean)

getClassName

protected abstract String getClassName()
Returns the fully-qualified name of the class being generated, for example "happy.BirthdayResource_en_US".


getBaseClassName

protected abstract String getBaseClassName()
Returns the fully-qualified name of the base class.


getParameterList

protected String getParameterList(String message)
Returns a parameter list string, e.g. "String p0, int p1".


getArgTypes

protected abstract String[] getArgTypes(String message)
Returns the number and types of parameters in the given error message, expressed as an array of Strings (legal values are currently "String", "Number", "java.util.Date", and null) ordered by parameter number.


getArgumentList

protected String getArgumentList(String message)

SourceForge.net_Logo