org.eclipse.xtext.generator.validation
Class JavaValidatorFragment

java.lang.Object
  extended by org.eclipse.xtext.generator.DefaultGeneratorFragment
      extended by org.eclipse.xtext.generator.AbstractGeneratorFragment
          extended by org.eclipse.xtext.generator.AbstractInheritingGeneratorFragment
              extended by org.eclipse.xtext.generator.validation.JavaValidatorFragment
All Implemented Interfaces:
IGeneratorFragment, NamingAware

public class JavaValidatorFragment
extends AbstractInheritingGeneratorFragment

IGeneratorFragment to generate a java based validity checker for a given grammar.

Author:
Michael Clay - Initial contribution and API

Constructor Summary
JavaValidatorFragment()
           
 
Method Summary
 void addComposedCheck(java.lang.String composedCheckValidator)
          Adds a validator that is to be executed additionally.
 void generate(Grammar grammar, org.eclipse.xpand2.XpandExecutionContext ctx)
          can be used to generate whatever necessary
 java.lang.String getBasePackage(Grammar g, Naming n)
           
protected  java.lang.String getDefaultValidatorSuperClassName()
           
 java.lang.String[] getExportedPackagesRt(Grammar grammar)
          return the exported packages for the runtime bundle
 java.lang.String getGeneratedEPackageName(Grammar g, Naming n, org.eclipse.emf.ecore.EPackage pack)
           
 java.util.Set<Binding> getGuiceBindingsRt(Grammar grammar)
          return a map containing the contributed guice bindings created in this generator fragment
protected  java.util.List<java.lang.Object> getParameters(Grammar grammar)
           
static java.lang.String getValidationPackage(Grammar grammar, Naming n)
           
static java.lang.String getValidatorName(Grammar g, java.lang.String prefix, Naming n)
           
protected  java.lang.String getValidatorSuperClassName(Grammar grammar)
           
 void setBasePackage(java.lang.String basePackage)
           
 
Methods inherited from class org.eclipse.xtext.generator.AbstractInheritingGeneratorFragment
getSuperClassName, getSuperGrammar, isClassExists, isInheritImplementation, setInheritImplementation
 
Methods inherited from class org.eclipse.xtext.generator.AbstractGeneratorFragment
addToPluginXmlRt, addToPluginXmlUi, addToStandaloneSetup, getExportedPackagesUi, getGuiceBindingsUi, getNaming, getRequiredBundlesRt, getRequiredBundlesUi, getTemplate, registerNaming
 
Methods inherited from class org.eclipse.xtext.generator.DefaultGeneratorFragment
checkConfiguration, getImportedPackagesRt, getImportedPackagesUi
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JavaValidatorFragment

public JavaValidatorFragment()
Method Detail

getGeneratedEPackageName

public java.lang.String getGeneratedEPackageName(Grammar g,
                                                 Naming n,
                                                 org.eclipse.emf.ecore.EPackage pack)

getValidationPackage

public static java.lang.String getValidationPackage(Grammar grammar,
                                                    Naming n)

getExportedPackagesRt

public java.lang.String[] getExportedPackagesRt(Grammar grammar)
Description copied from interface: IGeneratorFragment
return the exported packages for the runtime bundle

Specified by:
getExportedPackagesRt in interface IGeneratorFragment
Overrides:
getExportedPackagesRt in class AbstractGeneratorFragment

setBasePackage

public void setBasePackage(java.lang.String basePackage)

getBasePackage

public java.lang.String getBasePackage(Grammar g,
                                       Naming n)

addComposedCheck

public void addComposedCheck(java.lang.String composedCheckValidator)
Adds a validator that is to be executed additionally.

Parameters:
composedCheckValidator - name of a class extending AbstractDeclarativeValidator.

generate

public void generate(Grammar grammar,
                     org.eclipse.xpand2.XpandExecutionContext ctx)
Description copied from interface: IGeneratorFragment
can be used to generate whatever necessary

Specified by:
generate in interface IGeneratorFragment
Overrides:
generate in class AbstractGeneratorFragment
ctx - - the execution context to use

getGuiceBindingsRt

public java.util.Set<Binding> getGuiceBindingsRt(Grammar grammar)
Description copied from interface: IGeneratorFragment
return a map containing the contributed guice bindings created in this generator fragment

Specified by:
getGuiceBindingsRt in interface IGeneratorFragment
Overrides:
getGuiceBindingsRt in class AbstractGeneratorFragment

getValidatorName

public static java.lang.String getValidatorName(Grammar g,
                                                java.lang.String prefix,
                                                Naming n)

getValidatorSuperClassName

protected java.lang.String getValidatorSuperClassName(Grammar grammar)

getDefaultValidatorSuperClassName

protected java.lang.String getDefaultValidatorSuperClassName()

getParameters

protected java.util.List<java.lang.Object> getParameters(Grammar grammar)
Overrides:
getParameters in class AbstractGeneratorFragment