Class VelocityOutlet

All Implemented Interfaces:
Outlet, TemplateOutlet

public class VelocityOutlet extends TemplateOutletImpl
A Outlet which uses a velocity template for generation.
  • Field Details

    • TORQUE_GEN_CONTEXT_NAME

      public static final String TORQUE_GEN_CONTEXT_NAME
      The name under which the Torque generator interface will be put into the context.
      See Also:
    • STRING_UTILS_CONTEXT_NAME

      public static final String STRING_UTILS_CONTEXT_NAME
      The name under which the velocity StringUtils will be put into the context.
      See Also:
    • NULL_KEY_CONTEXT_NAME

      public static final String NULL_KEY_CONTEXT_NAME
      The key under which the null attribute of a source element is put into the context.
      See Also:
  • Constructor Details

    • VelocityOutlet

      public VelocityOutlet(QualifiedName name, ConfigurationProvider configurationProvider, String path, String encoding) throws ConfigurationException
      Constructs a new VelocityTemplateOutlet.
      Parameters:
      name - the name of this outlet, not null.
      configurationProvider - the provider for reading the templates, not null.
      path - the path to the templates, not null. May contain tokens of the form ${....}, these are parsed.
      encoding - the encoding of the file, or null if the system's default encoding should be used.
      Throws:
      NullPointerException - if name, path or directories are null.
      ConfigurationException - if an error occurs while reading the template.
  • Method Details

    • setOptionsInContext

      public void setOptionsInContext(boolean optionsInContext)
      Tells the outlet to put all options which name space is visible to the namespace of this outlet into the context. Only the variable names are used as keys in the context, the namespaces are stripped.
      Parameters:
      optionsInContext - whether to put the options into the context.
    • isOptionsInContext

      public boolean isOptionsInContext()
      Returns whether all options which namespaces are visible to the name space of this outlet are put into the context.
      Returns:
      whether the outlet puts the options into the context.
    • setVariablesInContext

      public void setVariablesInContext(boolean variablesInContext)
      Tells the outlet to put all variables which are visible to this outlet into the context. Only the variable names are used as keys in the context, the namespaces are stripped.
      Parameters:
      variablesInContext - whether to put the variables into the context.
    • isVariablesInContext

      public boolean isVariablesInContext()
      Returns whether all variables which are visible to this outlet are put into the context.
      Returns:
      whether the outlet puts the variables into the context.
    • setSourceAttributesInContext

      public void setSourceAttributesInContext(boolean sourceAttributesInContext)
      Tells the outlet to put the attributes of the current source element into the context or not.
      Parameters:
      sourceAttributesInContext - whether to put the source attributes into the context.
    • isSourceAttributesInContext

      public boolean isSourceAttributesInContext()
      Returns whether the attributes of the current source element are put into the context.
      Returns:
      whether the outlet puts the attributes of the current source element into the context.
    • execute

      public OutletResult execute(ControllerState controllerState) throws GeneratorException
      Executes the generation process; the result is returned.
      Specified by:
      execute in interface Outlet
      Specified by:
      execute in class OutletImpl
      Parameters:
      controllerState - the current controller state.
      Returns:
      the result of the generation, not null.
      Throws:
      GeneratorException - if generation fails.
      See Also: