From ef16b6c73a8a1997f40a0c8ed640dc089e1d769b Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Thu, 12 Aug 2010 16:41:54 +0200 Subject: [PATCH 1/2] Adding first support for config dispatchers --- akka-http/src/main/scala/AkkaBroadcaster.scala | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/akka-http/src/main/scala/AkkaBroadcaster.scala b/akka-http/src/main/scala/AkkaBroadcaster.scala index 57d8ccd549..ac15c18da0 100644 --- a/akka-http/src/main/scala/AkkaBroadcaster.scala +++ b/akka-http/src/main/scala/AkkaBroadcaster.scala @@ -6,11 +6,21 @@ package se.scalablesolutions.akka.comet import org.atmosphere.cpr.{AtmosphereResourceEvent, AtmosphereResource} import se.scalablesolutions.akka.actor.Actor._ +import se.scalablesolutions.akka.actor.Actor +import se.scalablesolutions.akka.dispatch.Dispatchers class AkkaBroadcaster extends org.atmosphere.jersey.JerseyBroadcaster { name = classOf[AkkaBroadcaster].getName - val caster = actor { case f : Function0[_] => f() } + val broadcasterDispatcher = Dispatchers.fromConfig("akka.rest.comet-dispatcher") + + //FIXME should be supervised + val caster = actorOf(new Actor { + self.dispatcher = broadcasterDispatcher + def receive = { + case f : Function0[_] => f() + } + }) override def destroy { super.destroy From fb99a87c25e37d5416966739fbdaa4af5946af21 Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Fri, 13 Aug 2010 15:31:17 +0200 Subject: [PATCH 2/2] Fix Atmosphere integration for the new dispatchers --- akka-http/src/main/scala/AkkaBroadcaster.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/akka-http/src/main/scala/AkkaBroadcaster.scala b/akka-http/src/main/scala/AkkaBroadcaster.scala index ac15c18da0..8f724ff445 100644 --- a/akka-http/src/main/scala/AkkaBroadcaster.scala +++ b/akka-http/src/main/scala/AkkaBroadcaster.scala @@ -20,7 +20,7 @@ class AkkaBroadcaster extends org.atmosphere.jersey.JerseyBroadcaster { def receive = { case f : Function0[_] => f() } - }) + }).start override def destroy { super.destroy