Package org.apache.velocity.runtime
Class VelocimacroFactory
- java.lang.Object
-
- org.apache.velocity.runtime.VelocimacroFactory
-
public class VelocimacroFactory extends java.lang.Object
VelocimacroFactory.java manages the set of VMs in a running Velocity engine.- Version:
- $Id: VelocimacroFactory.java 894953 2009-12-31 22:48:19Z nbubna $
- Author:
- Geir Magnusson Jr.
-
-
Constructor Summary
Constructors Constructor Description VelocimacroFactory(RuntimeServices rsvc)
C'tor for the VelociMacro factory.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
addVelocimacro(java.lang.String name, java.lang.String macroBody, java.lang.String[] argArray, java.lang.String sourceTemplate)
Adds a macro to the factory.boolean
addVelocimacro(java.lang.String name, Node macroBody, java.lang.String[] argArray, java.lang.String sourceTemplate)
Adds a macro to the factory.boolean
dumpVMNamespace(java.lang.String namespace)
tells the vmManager to dump the specified namespaceDirective
getVelocimacro(java.lang.String vmName, java.lang.String sourceTemplate)
actual factory : creates a Directive that will behave correctly wrt getting the framework to dig out the correct # of argsDirective
getVelocimacro(java.lang.String vmName, java.lang.String sourceTemplate, java.lang.String renderingTemplate)
void
initVelocimacro()
initialize the factory - setup all permissions load all global libraries.boolean
isVelocimacro(java.lang.String vm, java.lang.String sourceTemplate)
Tells the world if a given directive string is a Velocimacro
-
-
-
Constructor Detail
-
VelocimacroFactory
public VelocimacroFactory(RuntimeServices rsvc)
C'tor for the VelociMacro factory.- Parameters:
rsvc
- Reference to a runtime services object.
-
-
Method Detail
-
initVelocimacro
public void initVelocimacro()
initialize the factory - setup all permissions load all global libraries.
-
addVelocimacro
public boolean addVelocimacro(java.lang.String name, java.lang.String macroBody, java.lang.String[] argArray, java.lang.String sourceTemplate)
Adds a macro to the factory. addVelocimacro(String, Node, String[] argArray, String) should be used internally instead of this.- Parameters:
name
- Name of the Macro to add.macroBody
- String representation of the macro.argArray
- Macro arguments. First element is the macro name.sourceTemplate
- Source template from which the macro gets registered.- Returns:
- true if Macro was registered successfully.
-
addVelocimacro
public boolean addVelocimacro(java.lang.String name, Node macroBody, java.lang.String[] argArray, java.lang.String sourceTemplate)
Adds a macro to the factory.- Parameters:
name
- Name of the Macro to add.macroBody
- root node of the parsed macro ASTargArray
- Name of the macro arguments. First element is the macro name.sourceTemplate
- Source template from which the macro gets registered.- Returns:
- true if Macro was registered successfully.
- Since:
- 1.6
-
isVelocimacro
public boolean isVelocimacro(java.lang.String vm, java.lang.String sourceTemplate)
Tells the world if a given directive string is a Velocimacro- Parameters:
vm
- Name of the Macro.sourceTemplate
- Source template from which the macro should be loaded.- Returns:
- True if the given name is a macro.
-
getVelocimacro
public Directive getVelocimacro(java.lang.String vmName, java.lang.String sourceTemplate)
actual factory : creates a Directive that will behave correctly wrt getting the framework to dig out the correct # of args- Parameters:
vmName
- Name of the Macro.sourceTemplate
- Source template from which the macro should be loaded.- Returns:
- A directive representing the Macro.
-
getVelocimacro
public Directive getVelocimacro(java.lang.String vmName, java.lang.String sourceTemplate, java.lang.String renderingTemplate)
- Since:
- 1.6
-
dumpVMNamespace
public boolean dumpVMNamespace(java.lang.String namespace)
tells the vmManager to dump the specified namespace- Parameters:
namespace
- Namespace to dump.- Returns:
- True if namespace has been dumped successfully.
-
-