org.springframework.scripting.bsh
Class BshScriptUtils

java.lang.Object
  extended by org.springframework.scripting.bsh.BshScriptUtils

public abstract class BshScriptUtils
extends Object

Utility methods for handling BeanShell-scripted objects.

Since:
2.0
Author:
Rob Harrop, Juergen Hoeller

Nested Class Summary
static class BshScriptUtils.BshExecutionException
          Exception to be thrown on script execution failure.
 
Constructor Summary
BshScriptUtils()
           
 
Method Summary
static Object createBshObject(String scriptSource)
          Create a new BeanShell-scripted object from the given script source.
static Object createBshObject(String scriptSource, Class[] scriptInterfaces)
          Create a new BeanShell-scripted object from the given script source, using the default ClassLoader.
static Object createBshObject(String scriptSource, Class[] scriptInterfaces, ClassLoader classLoader)
          Create a new BeanShell-scripted object from the given script source.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BshScriptUtils

public BshScriptUtils()
Method Detail

createBshObject

public static Object createBshObject(String scriptSource)
                              throws bsh.EvalError
Create a new BeanShell-scripted object from the given script source.

With this createBshObject variant, the script needs to declare a full class or return an actual instance of the scripted object.

Parameters:
scriptSource - the script source text
Returns:
the scripted Java object
Throws:
bsh.EvalError - in case of BeanShell parsing failure

createBshObject

public static Object createBshObject(String scriptSource,
                                     Class[] scriptInterfaces)
                              throws bsh.EvalError
Create a new BeanShell-scripted object from the given script source, using the default ClassLoader.

The script may either be a simple script that needs a corresponding proxy generated (implementing the specified interfaces), or declare a full class or return an actual instance of the scripted object (in which case the specified interfaces, if any, need to be implemented by that class/instance).

Parameters:
scriptSource - the script source text
scriptInterfaces - the interfaces that the scripted Java object is supposed to implement (may be null or empty if the script itself declares a full class or returns an actual instance of the scripted object)
Returns:
the scripted Java object
Throws:
bsh.EvalError - in case of BeanShell parsing failure
See Also:
createBshObject(String, Class[], ClassLoader)

createBshObject

public static Object createBshObject(String scriptSource,
                                     Class[] scriptInterfaces,
                                     ClassLoader classLoader)
                              throws bsh.EvalError
Create a new BeanShell-scripted object from the given script source.

The script may either be a simple script that needs a corresponding proxy generated (implementing the specified interfaces), or declare a full class or return an actual instance of the scripted object (in which case the specified interfaces, if any, need to be implemented by that class/instance).

Parameters:
scriptSource - the script source text
scriptInterfaces - the interfaces that the scripted Java object is supposed to implement (may be null or empty if the script itself declares a full class or returns an actual instance of the scripted object)
classLoader - the ClassLoader to create the script proxy with
Returns:
the scripted Java object
Throws:
bsh.EvalError - in case of BeanShell parsing failure