public abstract class AbstractFreeMarkerDirective extends Object implements freemarker.template.TemplateDirectiveModel
Should be extended to take advantage of the helper methods it provides for retrieving properties required for the directive represented by the subclass. Extending this class and using the helper methods will prevent unnecessary duplication of code.
The helper methods provided are initially for finding properties and ensuring that they are of the expected type, although more methods could be provided in the future.
| Constructor and Description |
|---|
AbstractFreeMarkerDirective(String directiveName)
This constructor will need to invoked by subclasses and ensures that a directive name is provided.
|
| Modifier and Type | Method and Description |
|---|---|
protected boolean |
getBooleanProperty(Map<String,Object> params,
String targetProp,
boolean required)
Attempts to retrieve a boolean property from the map of parameters supplied using the key
provided.
|
String |
getDirectiveName() |
protected String |
getStringProperty(Map<String,Object> params,
String targetProp,
boolean required)
Attempts to retrieve a String property from the map of parameters supplied using the key
provided.
|
public AbstractFreeMarkerDirective(String directiveName)
This constructor will need to invoked by subclasses and ensures that a directive name is provided. The directive name is used in exception messages to assist debugging.
directiveName - The name of the directive represented by the subclass.public String getDirectiveName()
protected String getStringProperty(Map<String,Object> params, String targetProp, boolean required) throws freemarker.template.TemplateModelException
Attempts to retrieve a String property from the map of parameters supplied using the key provided.
null will be returned.params - A map of parameters (this is supplied to the execute method that must
be implemented by subclasses.targetProp - The name of the property to attempt to retrieve.required - Indicates whether or not the property is required for the directive to process successfully.null if it could not be found)freemarker.template.TemplateModelException - When a property matching the supplied name is found but is not a String.protected boolean getBooleanProperty(Map<String,Object> params, String targetProp, boolean required) throws freemarker.template.TemplateModelException
Attempts to retrieve a boolean property from the map of parameters supplied using the key provided.
false will be returned.params - A map of parameters (this is supplied to the execute method that must
be implemented by subclasses.targetProp - The name of the property to attempt to retrieve.required - Indicates whether or not the property is required for the directive to process successfully.false if it could not be found)freemarker.template.TemplateModelException - When a property matching the supplied name is found but is not a boolean.Copyright © 2005–2021 Alfresco Software. All rights reserved.