diff options
author | sundar <none@none> | 2014-03-07 22:12:18 +0530 |
---|---|---|
committer | sundar <none@none> | 2014-03-07 22:12:18 +0530 |
commit | cae0f24fc05fa44d0e15a93ba5995d3111df3a5b (patch) | |
tree | 5ddbc5943158c3a1273eb71f33e14ba12c14c5d3 /src/share/classes/javax | |
parent | be19ec74f1a49ca4814be2b8a3875689cb4258bc (diff) |
8036794: Collect more Collector Lambdas
Reviewed-by: attila, ahgross
Diffstat (limited to 'src/share/classes/javax')
-rw-r--r-- | src/share/classes/javax/script/ScriptEngineManager.java | 29 |
1 files changed, 17 insertions, 12 deletions
diff --git a/src/share/classes/javax/script/ScriptEngineManager.java b/src/share/classes/javax/script/ScriptEngineManager.java index 83cb9f013..b2af53e5b 100644 --- a/src/share/classes/javax/script/ScriptEngineManager.java +++ b/src/share/classes/javax/script/ScriptEngineManager.java @@ -81,23 +81,28 @@ public class ScriptEngineManager { nameAssociations = new HashMap<String, ScriptEngineFactory>(); extensionAssociations = new HashMap<String, ScriptEngineFactory>(); mimeTypeAssociations = new HashMap<String, ScriptEngineFactory>(); - AccessController.doPrivileged(new PrivilegedAction<Object>() { - public Object run() { - initEngines(loader); - return null; - } - }); + initEngines(loader); + } + + private ServiceLoader<ScriptEngineFactory> getServiceLoader(final ClassLoader loader) { + if (loader != null) { + return ServiceLoader.load(ScriptEngineFactory.class, loader); + } else { + return ServiceLoader.loadInstalled(ScriptEngineFactory.class); + } } private void initEngines(final ClassLoader loader) { Iterator<ScriptEngineFactory> itr = null; try { - ServiceLoader<ScriptEngineFactory> sl; - if (loader != null) { - sl = ServiceLoader.load(ScriptEngineFactory.class, loader); - } else { - sl = ServiceLoader.loadInstalled(ScriptEngineFactory.class); - } + ServiceLoader<ScriptEngineFactory> sl = AccessController.doPrivileged( + new PrivilegedAction<ServiceLoader<ScriptEngineFactory>>() { + @Override + public ServiceLoader<ScriptEngineFactory> run() { + return getServiceLoader(loader); + } + }); + itr = sl.iterator(); } catch (ServiceConfigurationError err) { System.err.println("Can't find ScriptEngineFactory providers: " + |