| java.lang.Object | |
| ↳ | org.springframework.scripting.bsh.BshScriptFactory |
ScriptFactory implementation
for a BeanShell script.
Typically used in combination with a
ScriptFactoryPostProcessor;
see the latter's javadoc for a configuration example.
| Public Constructors | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Create a new BshScriptFactory for the given script source.
| |||||||||||
Create a new BshScriptFactory for the given script source.
| |||||||||||
| Public Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
Return the business interfaces that the script is supposed to implement.
| |||||||||||
Return a locator that points to the source of the script.
| |||||||||||
Load and parse the BeanShell script via
BshScriptUtils. | |||||||||||
Determine the type of the scripted Java object.
| |||||||||||
BeanShell scripts do require a config interface.
| |||||||||||
Determine whether a refresh is required (e.g.
| |||||||||||
Callback that supplies the bean
class loader to
a bean instance. | |||||||||||
|
[Expand]
Inherited Methods | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
From interface
org.springframework.beans.factory.BeanClassLoaderAware
| |||||||||||
From interface
org.springframework.scripting.ScriptFactory
| |||||||||||
Create a new BshScriptFactory for the given script source.
With this BshScriptFactory variant, the script needs to
declare a full class or return an actual instance of the scripted object.
| scriptSourceLocator | a locator that points to the source of the script. Interpreted by the post-processor that actually creates the script. |
|---|
Create a new BshScriptFactory for 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).
| scriptSourceLocator | a locator that points to the source of the script. Interpreted by the post-processor that actually creates the script. |
|---|---|
| scriptInterfaces | the Java interfaces that the scripted object
is supposed to implement (may be null)
|
Return the business interfaces that the script is supposed to implement.
Can return null if the script itself determines
its Java interfaces (such as in the case of Groovy).
Return a locator that points to the source of the script. Interpreted by the post-processor that actually creates the script.
Typical supported locators are Spring resource locations (such as "file:C:/myScript.bsh" or "classpath:myPackage/myScript.bsh") and inline scripts ("inline:myScriptText...").
Load and parse the BeanShell script via BshScriptUtils.
| scriptSource | the actual ScriptSource to retrieve
the script source text from (never null) |
|---|---|
| actualInterfaces | the actual interfaces to expose,
including script interfaces as well as a generated config interface
(if applicable; may be null) |
Determine the type of the scripted Java object.
Implementations are encouraged to cache script metadata such as a generated script class. Note that this method may be invoked concurrently and must be implemented in a thread-safe fashion.
| scriptSource | the actual ScriptSource to retrieve
the script source text from (never null) |
|---|
null
if none could be determinedBeanShell scripts do require a config interface.
Determine whether a refresh is required (e.g. through
ScriptSource's isModified() method).
| scriptSource | the actual ScriptSource to retrieve
the script source text from (never null) |
|---|
getScriptedObject(ScriptSource, Class[]) call is requiredCallback that supplies the bean class loader to
a bean instance.
Invoked after the population of normal bean properties but
before an initialization callback such as
InitializingBean's
afterPropertiesSet()
method or a custom init-method.
| classLoader | the owning class loader; may be null in
which case a default ClassLoader must be used, for example
the ClassLoader obtained via
getDefaultClassLoader()
|
|---|