|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.red5.server.script.groovy.GroovyScriptFactory
public class GroovyScriptFactory
ScriptFactory implementation
for a Groovy script.
Typically used in combination with a
ScriptFactoryPostProcessor;
see the latter's
Javadoc
for a configuration example.
ScriptFactoryPostProcessor,
GroovyClassLoader| Constructor Summary | |
|---|---|
GroovyScriptFactory(String scriptSourceLocator)
Create a new GroovyScriptFactory for the given script source. |
|
GroovyScriptFactory(String scriptSourceLocator,
Class[] scriptInterfaces)
|
|
GroovyScriptFactory(String scriptSourceLocator,
GroovyObjectCustomizer groovyObjectCustomizer)
Create a new GroovyScriptFactory for the given script source, specifying a strategy interface that can create a custom MetaClass to supply missing methods and otherwise change the behavior of the object. |
|
| Method Summary | |
|---|---|
protected Object |
executeScript(Class<?> scriptClass)
Instantiate the given Groovy script class and run it if necessary. |
Object |
getScriptedObject(ScriptSource scriptSource,
Class[] actualInterfaces)
Loads and parses the Groovy script via the GroovyClassLoader. |
Class<?> |
getScriptedObjectType(ScriptSource scriptSource)
|
Class[] |
getScriptInterfaces()
Groovy scripts determine their interfaces themselves, hence we don't need to explicitly expose interfaces here. |
String |
getScriptSourceLocator()
|
boolean |
requiresConfigInterface()
Groovy scripts do not need a config interface, since they expose their setters as public methods. |
boolean |
requiresScriptedObjectRefresh(ScriptSource src)
|
void |
setBeanClassLoader(ClassLoader classLoader)
|
String |
toString()
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public GroovyScriptFactory(String scriptSourceLocator)
We don't need to specify script interfaces here, since a Groovy script defines its Java interfaces itself.
scriptSourceLocator - a locator that points to the source of the script.
Interpreted by the post-processor that actually creates the script.
public GroovyScriptFactory(String scriptSourceLocator,
GroovyObjectCustomizer groovyObjectCustomizer)
We don't need to specify script interfaces here, since a Groovy script defines its Java interfaces itself.
scriptSourceLocator - a locator that points to the source of the script.
Interpreted by the post-processor that actually creates the script.groovyObjectCustomizer - a customizer that can set a custom metaclass
or make other changes to the GroovyObject created by this factory
(may be null)
public GroovyScriptFactory(String scriptSourceLocator,
Class[] scriptInterfaces)
| Method Detail |
|---|
public void setBeanClassLoader(ClassLoader classLoader)
setBeanClassLoader in interface BeanClassLoaderAwarepublic String getScriptSourceLocator()
getScriptSourceLocator in interface ScriptFactorypublic Class[] getScriptInterfaces()
getScriptInterfaces in interface ScriptFactorynull alwayspublic boolean requiresConfigInterface()
requiresConfigInterface in interface ScriptFactory
public Object getScriptedObject(ScriptSource scriptSource,
Class[] actualInterfaces)
throws IOException,
ScriptCompilationException
getScriptedObject in interface ScriptFactoryIOException
ScriptCompilationExceptionGroovyClassLoader
public Class<?> getScriptedObjectType(ScriptSource scriptSource)
throws IOException,
ScriptCompilationException
getScriptedObjectType in interface ScriptFactoryIOException
ScriptCompilationException
protected Object executeScript(Class<?> scriptClass)
throws ScriptCompilationException
scriptClass - the Groovy script class
ScriptCompilationException - in case of instantiation failurepublic boolean requiresScriptedObjectRefresh(ScriptSource src)
requiresScriptedObjectRefresh in interface ScriptFactorypublic String toString()
toString in class Object
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||