public static CompiledScript compileScriptString(String language, String script) throws ScriptException {
Assert.notNull("language", language, "script", script);
String cacheKey = language.concat("://").concat(script);
CompiledScript compiledScript = parsedScripts.get(cacheKey);
if (compiledScript == null) {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName(language);
if (engine == null) {
throw new IllegalArgumentException("The script type is not supported for language: " + language);
}
try {
Compilable compilableEngine = (Compilable) engine;