Class BshScriptEvaluator
- java.lang.Object
- org.springframework.scripting.bsh.BshScriptEvaluator
- All Implemented Interfaces:
Aware,BeanClassLoaderAware,ScriptEvaluator
public class BshScriptEvaluator extends Object implements ScriptEvaluator, BeanClassLoaderAware
BeanShell-based implementation of Spring'sScriptEvaluatorstrategy interface.- Since:
- 4.0
- Author:
- Juergen Hoeller
- See Also:
Interpreter.eval(String)
Constructor Summary
Constructors Constructor Description BshScriptEvaluator()Construct a new BshScriptEvaluator.BshScriptEvaluator(ClassLoader classLoader)Construct a new BshScriptEvaluator.
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectevaluate(ScriptSource script)Evaluate the given script.Objectevaluate(ScriptSource script, Map<String,Object> arguments)Evaluate the given script with the given arguments.voidsetBeanClassLoader(ClassLoader classLoader)Callback that supplies the beanclass loaderto a bean instance.
Constructor Detail
BshScriptEvaluator
public BshScriptEvaluator()
Construct a new BshScriptEvaluator.
BshScriptEvaluator
public BshScriptEvaluator(ClassLoader classLoader)
Construct a new BshScriptEvaluator.- Parameters:
classLoader- the ClassLoader to use for theInterpreter
Method Detail
setBeanClassLoader
public void setBeanClassLoader(ClassLoader classLoader)
Description copied from interface:BeanClassLoaderAwareCallback that supplies the beanclass loaderto a bean instance.Invoked after the population of normal bean properties but before an initialization callback such as
InitializingBean'sInitializingBean.afterPropertiesSet()method or a custom init-method.- Specified by:
setBeanClassLoaderin interfaceBeanClassLoaderAware- Parameters:
classLoader- the owning class loader; may benullin which case a defaultClassLoadermust be used, for example theClassLoaderobtained viaClassUtils.getDefaultClassLoader()
evaluate
public Object evaluate(ScriptSource script)
Description copied from interface:ScriptEvaluatorEvaluate the given script.- Specified by:
evaluatein interfaceScriptEvaluator- Parameters:
script- the ScriptSource for the script to evaluate- Returns:
- the return value of the script, if any
evaluate
public Object evaluate(ScriptSource script, Map<String,Object> arguments)
Description copied from interface:ScriptEvaluatorEvaluate the given script with the given arguments.- Specified by:
evaluatein interfaceScriptEvaluator- Parameters:
script- the ScriptSource for the script to evaluatearguments- the key-value pairs to expose to the script, typically as script variables (may benullor empty)- Returns:
- the return value of the script, if any