org.broadleafcommerce.cms.page.service
Class AbstractPageRuleProcessor

java.lang.Object
  extended by org.broadleafcommerce.cms.page.service.AbstractPageRuleProcessor
All Implemented Interfaces:
PageRuleProcessor
Direct Known Subclasses:
PageDefaultRuleProcessor

public abstract class AbstractPageRuleProcessor
extends Object
implements PageRuleProcessor

This class is useful as a starting point for rule processors that need to execute MVEL rules. Sets up an LRU cache for rule processing and a convenience method for executing MVEL rules.

Author:
bpolster

Constructor Summary
AbstractPageRuleProcessor()
           
 
Method Summary
protected  Boolean executeExpression(String expression, Map<String,Object> vars)
          Helpful method for processing a boolean MVEL expression and associated arguments.
 Map<String,String> getContextClassNames()
          List of class names to add to the MVEL ParserContext.
protected  org.mvel2.ParserContext getParserContext()
          Having a parser context that imports the classes speeds MVEL by up to 60%.
 void setContextClassNames(Map<String,String> contextClassNames)
          List of class names to add to the MVEL ParserContext.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.broadleafcommerce.cms.page.service.PageRuleProcessor
checkForMatch
 

Constructor Detail

AbstractPageRuleProcessor

public AbstractPageRuleProcessor()
Method Detail

getParserContext

protected org.mvel2.ParserContext getParserContext()
Having a parser context that imports the classes speeds MVEL by up to 60%.

Returns:

executeExpression

protected Boolean executeExpression(String expression,
                                    Map<String,Object> vars)
Helpful method for processing a boolean MVEL expression and associated arguments. Caches the expression in an LRUCache.

Parameters:
expression -
vars -
Returns:
the result of the expression

getContextClassNames

public Map<String,String> getContextClassNames()
List of class names to add to the MVEL ParserContext.

Returns:
See Also:
ParserContext}

setContextClassNames

public void setContextClassNames(Map<String,String> contextClassNames)
List of class names to add to the MVEL ParserContext.

See Also:
ParserContext}


Copyright © 2013. All Rights Reserved.