|
The Spring Framework | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.springframework.scripting.jruby.JRubyScriptFactory
public class JRubyScriptFactory
ScriptFactory implementation
for a JRuby script.
Typically used in combination with a
ScriptFactoryPostProcessor;
see the latter's javadoc for a configuration example.
JRubyScriptUtils,
ScriptFactoryPostProcessor| Constructor Summary | |
|---|---|
JRubyScriptFactory(String scriptSourceLocator,
Class[] scriptInterfaces)
Create a new JRubyScriptFactory for the given script source. |
|
| Method Summary | |
|---|---|
Object |
getScriptedObject(ScriptSource scriptSource,
Class[] actualInterfaces)
Load and parse the JRuby script via JRubyScriptUtils. |
Class |
getScriptedObjectType(ScriptSource scriptSource)
Determine the type of the scripted Java object. |
Class[] |
getScriptInterfaces()
Return the business interfaces that the script is supposed to implement. |
String |
getScriptSourceLocator()
Return a locator that points to the source of the script. |
boolean |
requiresConfigInterface()
JRuby scripts do require a config interface. |
void |
setBeanClassLoader(ClassLoader classLoader)
Callback that supplies the bean class loader to
a bean instance. |
String |
toString()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public JRubyScriptFactory(String scriptSourceLocator, Class[] scriptInterfaces)
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| Method Detail |
|---|
public void setBeanClassLoader(ClassLoader classLoader)
BeanClassLoaderAwareclass loader to
a bean instance.
Invoked after the population of normal bean properties but
before an initialization callback such as
InitializingBean's
InitializingBean.afterPropertiesSet()
method or a custom init-method.
setBeanClassLoader in interface BeanClassLoaderAwareclassLoader - the owning class loader; may be null in
which case a default ClassLoader must be used, for example
the ClassLoader obtained via
ClassUtils.getDefaultClassLoader()public String getScriptSourceLocator()
ScriptFactoryTypical supported locators are Spring resource locations (such as "file:C:/myScript.bsh" or "classpath:myPackage/myScript.bsh") and inline scripts ("inline:myScriptText...").
getScriptSourceLocator in interface ScriptFactoryScriptFactoryPostProcessor.convertToScriptSource(java.lang.String, org.springframework.core.io.ResourceLoader),
ResourceLoaderpublic Class[] getScriptInterfaces()
ScriptFactoryCan return null if the script itself determines
its Java interfaces (such as in the case of Groovy).
getScriptInterfaces in interface ScriptFactorypublic boolean requiresConfigInterface()
requiresConfigInterface in interface ScriptFactoryScriptFactory.getScriptInterfaces()public Object getScriptedObject(ScriptSource scriptSource, Class[] actualInterfaces) throws IOException, ScriptCompilationException
getScriptedObject in interface ScriptFactoryscriptSource - 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)
IOException - if script retrieval failed
ScriptCompilationException - if script compilation failedJRubyScriptUtils.createJRubyObject(String, Class[], ClassLoader)public Class getScriptedObjectType(ScriptSource scriptSource) throws IOException, ScriptCompilationException
ScriptFactoryImplementations 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.
getScriptedObjectType in interface ScriptFactoryscriptSource - the actual ScriptSource to retrieve
the script source text from (never null)
null
if none could be determined
IOException - if script retrieval failed
ScriptCompilationException - if script compilation failedpublic String toString()
|
The Spring Framework | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||