org.apache.commons.jelly.expression.jexl
Class JexlExpressionFactory

java.lang.Object
  extended by org.apache.commons.jelly.expression.jexl.JexlExpressionFactory
All Implemented Interfaces:
ExpressionFactory

public class JexlExpressionFactory
extends java.lang.Object
implements ExpressionFactory

Represents a factory of Jexl expression which fully supports the Expression Language in JSTL and JSP. In addition this ExpressionFactory can also support Ant style variable names, where '.' is used inside variable names.

Version:
$Revision: 1807798 $
Author:
James Strachan

Nested Class Summary
private  class JexlExpressionFactory.ExpressionSupportLocal
           
 
Field Summary
private  boolean supportAntVariables
          whether we should allow Ant-style expresssions, using dots as part of variable name
 
Constructor Summary
JexlExpressionFactory()
           
 
Method Summary
 Expression createExpression(java.lang.String text)
          Creates a new expression for the given text
 boolean isSupportAntVariables()
           
protected  boolean isValidAntVariableName(java.lang.String text)
           
 void setSupportAntVariables(boolean supportAntVariables)
          Sets whether we should allow Ant-style expresssions, using dots as part of variable name
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

supportAntVariables

private boolean supportAntVariables
whether we should allow Ant-style expresssions, using dots as part of variable name

Constructor Detail

JexlExpressionFactory

public JexlExpressionFactory()
Method Detail

createExpression

public Expression createExpression(java.lang.String text)
                            throws JellyException
Description copied from interface: ExpressionFactory
Creates a new expression for the given text

Specified by:
createExpression in interface ExpressionFactory
Throws:
JellyException

isSupportAntVariables

public boolean isSupportAntVariables()
Returns:
whether we should allow Ant-style expresssions, using dots as part of variable name

setSupportAntVariables

public void setSupportAntVariables(boolean supportAntVariables)
Sets whether we should allow Ant-style expresssions, using dots as part of variable name


isValidAntVariableName

protected boolean isValidAntVariableName(java.lang.String text)
Returns:
true if the given string is a valid Ant variable name, typically thats alphanumeric text with '.' etc.