Class ScriptManager
- java.lang.Object
-
- org.apache.logging.log4j.core.script.ScriptManager
-
- All Implemented Interfaces:
FileWatcher
public class ScriptManager extends java.lang.Object implements FileWatcher
Manages the scripts use by the Configuration.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classScriptManager.AbstractScriptRunnerprivate classScriptManager.MainScriptRunnerprivate static interfaceScriptManager.ScriptRunnerprivate classScriptManager.ThreadLocalScriptRunner
-
Field Summary
Fields Modifier and Type Field Description private java.util.Set<java.lang.String>allowedLanguagesprivate Configurationconfigurationprivate static java.lang.StringKEY_THREADINGprivate java.lang.Stringlanguagesprivate static Loggerloggerprivate javax.script.ScriptEngineManagermanagerprivate java.util.concurrent.ConcurrentMap<java.lang.String,ScriptManager.ScriptRunner>scriptRunnersprivate WatchManagerwatchManager
-
Constructor Summary
Constructors Constructor Description ScriptManager(Configuration configuration, WatchManager watchManager, java.lang.String scriptLanguages)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaddScript(AbstractScript script)javax.script.BindingscreateBindings(AbstractScript script)java.lang.Objectexecute(java.lang.String name, javax.script.Bindings bindings)voidfileModified(java.io.File file)Called when aWatchManagerdetects that the givenFilechanged.java.util.Set<java.lang.String>getAllowedLanguages()AbstractScriptgetScript(java.lang.String name)private ScriptManager.ScriptRunnergetScriptRunner(AbstractScript script)
-
-
-
Field Detail
-
KEY_THREADING
private static final java.lang.String KEY_THREADING
- See Also:
- Constant Field Values
-
logger
private static final Logger logger
-
configuration
private final Configuration configuration
-
manager
private final javax.script.ScriptEngineManager manager
-
scriptRunners
private final java.util.concurrent.ConcurrentMap<java.lang.String,ScriptManager.ScriptRunner> scriptRunners
-
languages
private final java.lang.String languages
-
allowedLanguages
private final java.util.Set<java.lang.String> allowedLanguages
-
watchManager
private final WatchManager watchManager
-
-
Constructor Detail
-
ScriptManager
public ScriptManager(Configuration configuration, WatchManager watchManager, java.lang.String scriptLanguages)
-
-
Method Detail
-
getAllowedLanguages
public java.util.Set<java.lang.String> getAllowedLanguages()
-
addScript
public boolean addScript(AbstractScript script)
-
createBindings
public javax.script.Bindings createBindings(AbstractScript script)
-
getScript
public AbstractScript getScript(java.lang.String name)
-
fileModified
public void fileModified(java.io.File file)
Description copied from interface:FileWatcherCalled when aWatchManagerdetects that the givenFilechanged.- Specified by:
fileModifiedin interfaceFileWatcher- Parameters:
file- the file that changed.- See Also:
WatchManager
-
execute
public java.lang.Object execute(java.lang.String name, javax.script.Bindings bindings)
-
getScriptRunner
private ScriptManager.ScriptRunner getScriptRunner(AbstractScript script)
-
-