Author: mduerig
Date: Fri Mar 11 10:06:40 2011
New Revision: 1080503
URL: http://svn.apache.org/viewvc?rev=1080503&view=rev
Log:
SLING-2012 Sling Scala Hello World example concurrent access fails
Remove Java 6 class
Modified:
sling/trunk/contrib/scripting/scala/script/src/test/scala/org/apache/sling/scripting/scala/ScriptEngineTest.scala
Modified:
sling/trunk/contrib/scripting/scala/script/src/test/scala/org/apache/sling/scripting/scala/ScriptEngineTest.scala
URL:
http://svn.apache.org/viewvc/sling/trunk/contrib/scripting/scala/script/src/test/scala/org/apache/sling/scripting/scala/ScriptEngineTest.scala?rev=1080503&r1=1080502&r2=1080503&view=diff
==============================================================================
---
sling/trunk/contrib/scripting/scala/script/src/test/scala/org/apache/sling/scripting/scala/ScriptEngineTest.scala
(original)
+++
sling/trunk/contrib/scripting/scala/script/src/test/scala/org/apache/sling/scripting/scala/ScriptEngineTest.scala
Fri Mar 11 10:06:40 2011
@@ -16,14 +16,11 @@
*/
package org.apache.sling.scripting.scala
-import javax.script.{ ScriptEngineFactory, ScriptEngine, ScriptContext,
Bindings }
+import javax.script.{ ScriptEngineFactory, ScriptEngine, ScriptContext }
import java.io.StringWriter
-import java.util.ServiceLoader
import java.util.concurrent.{ TimeUnit, Executors, Callable, Future }
-import junit.framework.TestCase
import junit.framework.Assert._
-
-import scala.collection.JavaConversions._
+import junit.framework.TestCase
/**
* JSR 223 compliance test
@@ -38,16 +35,14 @@ class ScriptEngineTest extends TestCase
implicit def fun2Call[R](f: () => R) = new Callable[R] { def call: R = f() }
def getScriptEngine(): ScriptEngine = {
+ import scala.collection.JavaConversions._
- var scriptEngine: ScriptEngine = null;
-
- for (val load <- ServiceLoader.load(classOf[ScriptEngineFactory])) yield
load.getEngineName match {
- case "Scala Scripting Engine" => scriptEngine = load.getScriptEngine;
- case _ => ; //ignore other script engines
- };
+ val factories =
javax.imageio.spi.ServiceRegistry.lookupProviders(classOf[ScriptEngineFactory])
+ val scalaEngineFactory = factories.find(_.getEngineName == "Scala
Scripting Engine")
- assertNotNull(scriptEngine)
- scriptEngine
+ scalaEngineFactory.map(_.getScriptEngine).getOrElse(
+ throw new AssertionError("Scala Scripting Engine not found")
+ )
}
/**