public class ScriptRegistryImpl extends Object implements ScriptRegistry, ScriptEngineFactoryObserver
Modifier and Type | Field and Description |
---|---|
protected AtomicReference<Bindings> |
globalScope
This is the global scope bindings.
|
static String |
SCRIPT_CACHE_DIR |
Constructor and Description |
---|
ScriptRegistryImpl() |
ScriptRegistryImpl(Map<String,Object> properties,
Iterable<ScriptEngineFactory> engine,
Bindings globalScope) |
ScriptRegistryImpl(Map<String,Object> properties,
Iterable<ScriptEngineFactory> engine,
Bindings globalScope,
ClassLoader registryLevelScriptClassLoader) |
Modifier and Type | Method and Description |
---|---|
void |
addingEntries(ScriptEngineFactory factory)
Called when a
ScriptEngineFactory gets started. |
void |
addScriptListener(ScriptName name,
ScriptListener hook) |
void |
addSourceUnit(SourceUnit unit)
Called when a
SourceUnit gets started. |
Bindings |
createBindings() |
void |
deleteScriptListener(ScriptName name,
ScriptListener hook) |
Object |
get(String key) |
Bindings |
getBindings() |
ScriptEngine |
getEngineByName(String shortName)
Looks up and creates a
ScriptEngine for a given name. |
ClassLoader |
getRegistryLevelScriptClassLoader() |
Set<ScriptName> |
listScripts()
Lists all
ScriptName s available in the registry. |
void |
put(String key,
Object value) |
void |
removeSourceUnit(SourceUnit unit)
Called when a
SourceUnit gets stopped. |
void |
removingEntries(ScriptEngineFactory factory)
Called when a
ScriptEngineFactory gets stopped. |
void |
setBindings(Bindings bindings) |
protected void |
setConfiguration(Map<String,Object> configuration) |
void |
setRegistryLevelScriptClassLoader(ClassLoader registryLevelScriptClassLoader) |
ScriptEntry |
takeScript(JsonValue script)
Takes a
ScriptEntry from this ScriptRegistry . |
ScriptEntry |
takeScript(ScriptName name)
Takes a
ScriptEntry from this ScriptRegistry . |
ScriptEntry |
takeScript(String name) |
public static final String SCRIPT_CACHE_DIR
protected final AtomicReference<Bindings> globalScope
public ScriptRegistryImpl()
public ScriptRegistryImpl(Map<String,Object> properties, Iterable<ScriptEngineFactory> engine, Bindings globalScope)
public ScriptRegistryImpl(Map<String,Object> properties, Iterable<ScriptEngineFactory> engine, Bindings globalScope, ClassLoader registryLevelScriptClassLoader)
public ClassLoader getRegistryLevelScriptClassLoader()
getRegistryLevelScriptClassLoader
in interface ScriptRegistry
public void setRegistryLevelScriptClassLoader(ClassLoader registryLevelScriptClassLoader)
setRegistryLevelScriptClassLoader
in interface ScriptRegistry
public Bindings getBindings()
public void setBindings(Bindings bindings)
public Bindings createBindings()
public Set<ScriptName> listScripts()
ScriptRegistry
ScriptName
s available in the registry.listScripts
in interface ScriptRegistry
public ScriptEntry takeScript(String name) throws ScriptException
ScriptException
public ScriptEngine getEngineByName(String shortName)
ScriptRegistry
ScriptEngine
for a given name. The
algorithm first searches for a ScriptEngineFactory
that has
been registered as a handler for the specified name using the
registerEngineName
method. ScriptEngineFactory
instances stored by the constructor for
one with the specified name. If a ScriptEngineFactory
is
found by either method, it is used to create instance of
ScriptEngine
.getEngineByName
in interface ScriptRegistry
shortName
- The short name of the ScriptEngine
implementation. returned by the getNames
method
of its ScriptEngineFactory
.ScriptEngine
created by the factory located in the
search. Returns null if no such factory was found. The
ScriptEngineManager
sets its own
globalScope
Bindings
as the
GLOBAL_SCOPE
Bindings
of the newly
created ScriptEngine
.public ScriptEntry takeScript(JsonValue script) throws ScriptException
ScriptRegistry
ScriptEntry
from this ScriptRegistry
.takeScript
in interface ScriptRegistry
script
- The identifier of the ScriptEntry
.ScriptEntry
instance.ScriptException
public ScriptEntry takeScript(ScriptName name) throws ScriptException
ScriptRegistry
ScriptEntry
from this ScriptRegistry
.takeScript
in interface ScriptRegistry
name
- The identifier of the ScriptEntry
.ScriptEntry
instance.ScriptException
public void addScriptListener(ScriptName name, ScriptListener hook)
addScriptListener
in interface ScriptRegistry
public void deleteScriptListener(ScriptName name, ScriptListener hook)
deleteScriptListener
in interface ScriptRegistry
public void addingEntries(ScriptEngineFactory factory) throws ScriptException
ScriptEngineFactoryObserver
ScriptEngineFactory
gets started.addingEntries
in interface ScriptEngineFactoryObserver
factory
- started ScriptEngineFactoryScriptException
public void removingEntries(ScriptEngineFactory factory) throws ScriptException
ScriptEngineFactoryObserver
ScriptEngineFactory
gets stopped.removingEntries
in interface ScriptEngineFactoryObserver
factory
- stopped ScriptEngineFactoryScriptException
public void addSourceUnit(SourceUnit unit) throws ScriptException
SourceUnitObserver
SourceUnit
gets started.addSourceUnit
in interface SourceUnitObserver
unit
- started ScriptEngineFactoryScriptException
public void removeSourceUnit(SourceUnit unit) throws ScriptException
SourceUnitObserver
SourceUnit
gets stopped.removeSourceUnit
in interface SourceUnitObserver
unit
- stopped ScriptEngineFactoryScriptException
Copyright © 2025 Open Identity Platform Community. All rights reserved.