diff --git a/akka-cluster/akka-cluster-jgroups/src/main/scala/JGroupsClusterActor.scala b/akka-cluster/src/main/scala/JGroupsClusterActor.scala similarity index 100% rename from akka-cluster/akka-cluster-jgroups/src/main/scala/JGroupsClusterActor.scala rename to akka-cluster/src/main/scala/JGroupsClusterActor.scala diff --git a/akka-patterns/src/main/scala/Patterns.scala b/akka-core/src/main/scala/routing/Patterns.scala similarity index 100% rename from akka-patterns/src/main/scala/Patterns.scala rename to akka-core/src/main/scala/routing/Patterns.scala diff --git a/akka-core/src/main/scala/stm/TransactionalState.scala b/akka-core/src/main/scala/stm/TransactionalState.scala index 9bf4859ee5..f870af75e6 100644 --- a/akka-core/src/main/scala/stm/TransactionalState.scala +++ b/akka-core/src/main/scala/stm/TransactionalState.scala @@ -100,10 +100,9 @@ class TransactionalRef[T](initialOpt: Option[T] = None) extends Transactional { implicit val txInitName = "TransactionalRef:Init" val uuid = UUID.newUuid.toString - private[this] lazy val ref = { - val r = new AlphaRef[T] - initialOpt.foreach(r.set(_)) - r + private[this] val ref = { + if (initialOpt.isDefined) new AlphaRef(initialOpt.get) + else new AlphaRef[T] } def swap(elem: T) = { @@ -220,7 +219,7 @@ object TransactionalMap { class TransactionalMap[K, V](initialOpt: Option[HashTrie[K, V]] = None) extends Transactional with scala.collection.mutable.Map[K, V] { val uuid = UUID.newUuid.toString - protected[this] lazy val ref = new TransactionalRef(initialOpt.orElse(Some(new HashTrie[K, V]))) + protected[this] val ref = new TransactionalRef(initialOpt.orElse(Some(new HashTrie[K, V]))) def -=(key: K) = { remove(key) @@ -294,7 +293,7 @@ object TransactionalVector { class TransactionalVector[T](initialOpt: Option[Vector[T]] = None) extends Transactional with IndexedSeq[T] { val uuid = UUID.newUuid.toString - private[this] lazy val ref = new TransactionalRef(initialOpt.orElse(Some(EmptyVector))) + private[this] val ref = new TransactionalRef(initialOpt.orElse(Some(EmptyVector))) def clear = ref.swap(EmptyVector) diff --git a/akka-patterns/src/test/scala/ActorPatternsTest.scala b/akka-core/src/test/scala/ActorPatternsTest.scala similarity index 100% rename from akka-patterns/src/test/scala/ActorPatternsTest.scala rename to akka-core/src/test/scala/ActorPatternsTest.scala diff --git a/akka-core/src/test/scala/TransactionalRefSpec.scala b/akka-core/src/test/scala/TransactionalRefSpec.scala index e785fb7ca4..897e9583e0 100644 --- a/akka-core/src/test/scala/TransactionalRefSpec.scala +++ b/akka-core/src/test/scala/TransactionalRefSpec.scala @@ -25,6 +25,23 @@ class TransactionalRefSpec extends Spec with ShouldMatchers { value should be(3) } + it("should keep the initial value, even if the first transaction is rolled back") { + val ref = Ref(3) + + try { + atomic { + ref.swap(5) + throw new Exception + } + } catch { + case e => {} + } + + val value = atomic { ref.get.get } + + value should be(3) + } + it("should be settable using swap") { val ref = Ref[Int] diff --git a/akka-rest/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyWriter_FIXME b/akka-http/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyWriter_FIXME similarity index 100% rename from akka-rest/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyWriter_FIXME rename to akka-http/src/main/resources/META-INF/services/javax.ws.rs.ext.MessageBodyWriter_FIXME diff --git a/akka-rest/src/main/scala/ActorComponentProvider.scala b/akka-http/src/main/scala/ActorComponentProvider.scala similarity index 100% rename from akka-rest/src/main/scala/ActorComponentProvider.scala rename to akka-http/src/main/scala/ActorComponentProvider.scala diff --git a/akka-rest/src/main/scala/ActorComponentProviderFactory.scala b/akka-http/src/main/scala/ActorComponentProviderFactory.scala similarity index 100% rename from akka-rest/src/main/scala/ActorComponentProviderFactory.scala rename to akka-http/src/main/scala/ActorComponentProviderFactory.scala diff --git a/akka-comet/src/main/scala/AkkaBroadcaster.scala b/akka-http/src/main/scala/AkkaBroadcaster.scala similarity index 100% rename from akka-comet/src/main/scala/AkkaBroadcaster.scala rename to akka-http/src/main/scala/AkkaBroadcaster.scala diff --git a/akka-comet/src/main/scala/AkkaClusterBroadcastFilter.scala b/akka-http/src/main/scala/AkkaClusterBroadcastFilter.scala similarity index 100% rename from akka-comet/src/main/scala/AkkaClusterBroadcastFilter.scala rename to akka-http/src/main/scala/AkkaClusterBroadcastFilter.scala diff --git a/akka-comet/src/main/scala/AkkaServlet.scala b/akka-http/src/main/scala/AkkaCometServlet.scala similarity index 100% rename from akka-comet/src/main/scala/AkkaServlet.scala rename to akka-http/src/main/scala/AkkaCometServlet.scala diff --git a/akka-servlet/src/main/scala/AkkaLoader.scala b/akka-http/src/main/scala/AkkaLoader.scala similarity index 100% rename from akka-servlet/src/main/scala/AkkaLoader.scala rename to akka-http/src/main/scala/AkkaLoader.scala diff --git a/akka-rest/src/main/scala/AkkaServlet.scala b/akka-http/src/main/scala/AkkaServlet.scala similarity index 100% rename from akka-rest/src/main/scala/AkkaServlet.scala rename to akka-http/src/main/scala/AkkaServlet.scala diff --git a/akka-servlet/src/main/scala/Initializer.scala b/akka-http/src/main/scala/Initializer.scala similarity index 100% rename from akka-servlet/src/main/scala/Initializer.scala rename to akka-http/src/main/scala/Initializer.scala diff --git a/akka-rest/src/main/scala/ListWriter.scala b/akka-http/src/main/scala/ListWriter.scala similarity index 100% rename from akka-rest/src/main/scala/ListWriter.scala rename to akka-http/src/main/scala/ListWriter.scala diff --git a/akka-security/src/main/scala/Security.scala b/akka-http/src/main/scala/Security.scala similarity index 100% rename from akka-security/src/main/scala/Security.scala rename to akka-http/src/main/scala/Security.scala diff --git a/akka-security/src/test/scala/AllTest.scala b/akka-http/src/test/scala/AllTest.scala similarity index 100% rename from akka-security/src/test/scala/AllTest.scala rename to akka-http/src/test/scala/AllTest.scala diff --git a/akka-security/src/test/scala/SecuritySpec.scala b/akka-http/src/test/scala/SecuritySpec.scala similarity index 100% rename from akka-security/src/test/scala/SecuritySpec.scala rename to akka-http/src/test/scala/SecuritySpec.scala diff --git a/akka-comet/src/main/scala/BootableCometActorService.scala b/akka-kernel/src/main/scala/EmbeddedAppServer.scala similarity index 94% rename from akka-comet/src/main/scala/BootableCometActorService.scala rename to akka-kernel/src/main/scala/EmbeddedAppServer.scala index 6d9444d5f7..dc52076a81 100644 --- a/akka-comet/src/main/scala/BootableCometActorService.scala +++ b/akka-kernel/src/main/scala/EmbeddedAppServer.scala @@ -2,7 +2,7 @@ * Copyright (C) 2009-2010 Scalable Solutions AB */ -package se.scalablesolutions.akka.comet +package se.scalablesolutions.akka.kernel import com.sun.grizzly.http.SelectorThread import com.sun.grizzly.http.servlet.ServletAdapter @@ -12,11 +12,12 @@ import javax.ws.rs.core.UriBuilder import se.scalablesolutions.akka.actor.BootableActorLoaderService import se.scalablesolutions.akka.util.{Bootable, Logging} +import se.scalablesolutions.akka.comet.AkkaServlet /** * Handles the Akka Comet Support (load/unload) */ -trait BootableCometActorService extends Bootable with Logging { +trait EmbeddedAppServer extends Bootable with Logging { self : BootableActorLoaderService => import se.scalablesolutions.akka.config.Config._ diff --git a/akka-kernel/src/main/scala/Kernel.scala b/akka-kernel/src/main/scala/Kernel.scala index 9243c8486f..0a10681960 100644 --- a/akka-kernel/src/main/scala/Kernel.scala +++ b/akka-kernel/src/main/scala/Kernel.scala @@ -6,7 +6,6 @@ package se.scalablesolutions.akka.kernel import se.scalablesolutions.akka.servlet.AkkaLoader import se.scalablesolutions.akka.remote.BootableRemoteActorService -import se.scalablesolutions.akka.comet.BootableCometActorService import se.scalablesolutions.akka.actor.BootableActorLoaderService import se.scalablesolutions.akka.camel.service.CamelService import se.scalablesolutions.akka.config.Config @@ -25,9 +24,8 @@ object Kernel extends AkkaLoader { * Boots up the Kernel with default bootables */ def boot: Unit = boot(true, - new BootableActorLoaderService + new EmbeddedAppServer with BootableActorLoaderService with BootableRemoteActorService - with BootableCometActorService with CamelService) //For testing purposes only diff --git a/akka-persistence/akka-persistence-common/src/main/scala/Storage.scala b/akka-persistence/akka-persistence-common/src/main/scala/Storage.scala index 379dd0b5f4..c11541accc 100644 --- a/akka-persistence/akka-persistence-common/src/main/scala/Storage.scala +++ b/akka-persistence/akka-persistence-common/src/main/scala/Storage.scala @@ -218,9 +218,9 @@ trait PersistentVector[T] extends IndexedSeq[T] with Transactional with Committa else storage.getVectorStorageEntryFor(uuid, index) } - override def slice(start: Int, count: Int): IndexedSeq[T] = slice(Some(start), None, count) + override def slice(start: Int, finish: Int): IndexedSeq[T] = slice(Some(start), Some(finish)) - def slice(start: Option[Int], finish: Option[Int], count: Int): IndexedSeq[T] = { + def slice(start: Option[Int], finish: Option[Int], count: Int = 0): IndexedSeq[T] = { val buffer = new scala.collection.mutable.ArrayBuffer[T] storage.getVectorStorageRangeFor(uuid, start, finish, count).foreach(buffer.append(_)) buffer diff --git a/akka-persistence/akka-persistence-mongo/src/main/scala/MongoStorageBackend.scala b/akka-persistence/akka-persistence-mongo/src/main/scala/MongoStorageBackend.scala index cfe996be06..97245cff02 100644 --- a/akka-persistence/akka-persistence-mongo/src/main/scala/MongoStorageBackend.scala +++ b/akka-persistence/akka-persistence-mongo/src/main/scala/MongoStorageBackend.scala @@ -248,9 +248,17 @@ private[akka] object MongoStorageBackend extends dbo.get(VALUE).asInstanceOf[JList[AnyRef]] } + val s = if (start.isDefined) start.get else 0 + val cnt = + if (finish.isDefined) { + val f = finish.get + if (f >= s) (f - s) else count + } + else count + // pick the subrange and make a Scala list val l = - List(o.subList(start.get, start.get + count).toArray: _*) + List(o.subList(s, s + cnt).toArray: _*) for(e <- l) yield serializer.in[AnyRef](e.asInstanceOf[Array[Byte]]) diff --git a/akka-persistence/akka-persistence-mongo/src/test/scala/MongoPersistentActorSpec.scala b/akka-persistence/akka-persistence-mongo/src/test/scala/MongoPersistentActorSpec.scala index cb8ed36442..2398f3d460 100644 --- a/akka-persistence/akka-persistence-mongo/src/test/scala/MongoPersistentActorSpec.scala +++ b/akka-persistence/akka-persistence-mongo/src/test/scala/MongoPersistentActorSpec.scala @@ -1,9 +1,8 @@ package se.scalablesolutions.akka.persistence.mongo -import junit.framework.TestCase - import org.junit.{Test, Before} import org.junit.Assert._ +import org.scalatest.junit.JUnitSuite import _root_.dispatch.json.{JsNumber, JsValue} import _root_.dispatch.json.Js._ @@ -28,6 +27,7 @@ case class Balance(accountNo: String) case class Debit(accountNo: String, amount: BigInt, failer: ActorID) case class MultiDebit(accountNo: String, amounts: List[BigInt], failer: ActorID) case class Credit(accountNo: String, amount: BigInt) +case class Log(start: Int, finish: Int) case object LogSize class BankAccountActor extends Transactor { @@ -89,6 +89,9 @@ class BankAccountActor extends Transactor { case LogSize => reply(txnLog.length.asInstanceOf[AnyRef]) + + case Log(start, finish) => + reply(txnLog.slice(start, finish)) } } @@ -99,7 +102,7 @@ class BankAccountActor extends Transactor { } } -class MongoPersistentActorSpec extends TestCase { +class MongoPersistentActorSpec extends JUnitSuite { @Test def testSuccessfulDebit = { val bactor = newActor[BankAccountActor] @@ -122,7 +125,14 @@ class MongoPersistentActorSpec extends TestCase { val JsNumber(b2) = (bactor !! Balance("a-123")).get.asInstanceOf[JsValue] assertEquals(BigInt(1000), BigInt(b2.intValue)) - assertEquals(7, (bactor !! LogSize).get) + assert(7 == (bactor !! LogSize).get.asInstanceOf[Int]) + + import scala.collection.mutable.ArrayBuffer + assert((bactor !! Log(0, 7)).get.asInstanceOf[ArrayBuffer[String]].size == 7) + assert((bactor !! Log(0, 0)).get.asInstanceOf[ArrayBuffer[String]].size == 0) + assert((bactor !! Log(1, 2)).get.asInstanceOf[ArrayBuffer[String]].size == 1) + assert((bactor !! Log(6, 7)).get.asInstanceOf[ArrayBuffer[String]].size == 1) + assert((bactor !! Log(0, 1)).get.asInstanceOf[ArrayBuffer[String]].size == 1) } @Test @@ -145,7 +155,7 @@ class MongoPersistentActorSpec extends TestCase { assertEquals(BigInt(5000), BigInt(b1.intValue)) // should not count the failed one - assertEquals(3, (bactor !! LogSize).get) + assert(3 == (bactor !! LogSize).get.asInstanceOf[Int]) } @Test @@ -168,6 +178,6 @@ class MongoPersistentActorSpec extends TestCase { assertEquals(BigInt(5000), BigInt(b1.intValue)) // should not count the failed one - assertEquals(3, (bactor !! LogSize).get) + assert(3 == (bactor !! LogSize).get.asInstanceOf[Int]) } } diff --git a/akka-persistence/akka-persistence-mongo/src/test/scala/MongoStorageSpec.scala b/akka-persistence/akka-persistence-mongo/src/test/scala/MongoStorageSpec.scala index 97307dde17..ae2a1e4dd4 100644 --- a/akka-persistence/akka-persistence-mongo/src/test/scala/MongoStorageSpec.scala +++ b/akka-persistence/akka-persistence-mongo/src/test/scala/MongoStorageSpec.scala @@ -1,20 +1,19 @@ package se.scalablesolutions.akka.persistence.mongo -import junit.framework.TestCase - import org.junit.{Test, Before} import org.junit.Assert._ +import org.scalatest.junit.JUnitSuite import _root_.dispatch.json._ import _root_.dispatch.json.Js._ import java.util.NoSuchElementException @scala.reflect.BeanInfo case class Foo(no: Int, name: String) -class MongoStorageSpec extends TestCase { +class MongoStorageSpec extends JUnitSuite { val changeSetV = new scala.collection.mutable.ArrayBuffer[AnyRef] val changeSetM = new scala.collection.mutable.HashMap[AnyRef, AnyRef] - override def setUp = { + @Before def initialize() = { MongoStorageBackend.coll.drop } diff --git a/akka-persistence/akka-persistence-redis/src/main/scala/RedisStorageBackend.scala b/akka-persistence/akka-persistence-redis/src/main/scala/RedisStorageBackend.scala index 79aae70fd1..8e2adaa5c3 100644 --- a/akka-persistence/akka-persistence-redis/src/main/scala/RedisStorageBackend.scala +++ b/akka-persistence/akka-persistence-redis/src/main/scala/RedisStorageBackend.scala @@ -228,17 +228,21 @@ private [akka] object RedisStorageBackend extends def getVectorStorageRangeFor(name: String, start: Option[Int], finish: Option[Int], count: Int): List[Array[Byte]] = withErrorHandling { /** - * count is the max number of results to return. Start with - * start or 0 (if start is not defined) and go until - * you hit finish or count. + * if start and finish both are defined, ignore count and + * report the range [start, finish) + * if start is not defined, assume start = 0 + * if start == 0 and finish == 0, return an empty collection */ val s = if (start.isDefined) start.get else 0 val cnt = if (finish.isDefined) { val f = finish.get - if (f >= s) Math.min(count, (f - s)) else count + // if (f >= s) Math.min(count, (f - s)) else count + if (f >= s) (f - s) else count } else count + if (s == 0 && cnt == 0) List() + else db.lrange(new String(encode(name.getBytes)), s, s + cnt - 1) match { case None => throw new NoSuchElementException(name + " does not have elements in the range specified") diff --git a/akka-persistence/akka-persistence-redis/src/test/scala/RedisPersistentActorSpec.scala b/akka-persistence/akka-persistence-redis/src/test/scala/RedisPersistentActorSpec.scala index c0516e7883..e46eb74d52 100644 --- a/akka-persistence/akka-persistence-redis/src/test/scala/RedisPersistentActorSpec.scala +++ b/akka-persistence/akka-persistence-redis/src/test/scala/RedisPersistentActorSpec.scala @@ -1,7 +1,5 @@ package se.scalablesolutions.akka.persistence.redis -import junit.framework.TestCase - import org.junit.{Test, Before} import org.junit.Assert._ @@ -25,6 +23,7 @@ case class Balance(accountNo: String) case class Debit(accountNo: String, amount: BigInt, failer: ActorID) case class MultiDebit(accountNo: String, amounts: List[BigInt], failer: ActorID) case class Credit(accountNo: String, amount: BigInt) +case class Log(start: Int, finish: Int) case object LogSize class AccountActor extends Transactor { @@ -84,6 +83,9 @@ class AccountActor extends Transactor { case LogSize => reply(txnLog.length.asInstanceOf[AnyRef]) + + case Log(start, finish) => + reply(txnLog.slice(start, finish)) } } @@ -95,7 +97,8 @@ class AccountActor extends Transactor { } } -class RedisPersistentActorSpec extends TestCase { +import org.scalatest.junit.JUnitSuite +class RedisPersistentActorSpec extends JUnitSuite { @Test def testSuccessfulDebit = { val bactor = newActor[AccountActor] @@ -114,6 +117,12 @@ class RedisPersistentActorSpec extends TestCase { val c: Int = (bactor !! LogSize).get assertTrue(7 == c) + import scala.collection.mutable.ArrayBuffer + assert((bactor !! Log(0, 7)).get.asInstanceOf[ArrayBuffer[String]].size == 7) + assert((bactor !! Log(0, 0)).get.asInstanceOf[ArrayBuffer[String]].size == 0) + assert((bactor !! Log(1, 2)).get.asInstanceOf[ArrayBuffer[String]].size == 1) + assert((bactor !! Log(6, 7)).get.asInstanceOf[ArrayBuffer[String]].size == 1) + assert((bactor !! Log(0, 1)).get.asInstanceOf[ArrayBuffer[String]].size == 1) } @Test diff --git a/akka-persistence/akka-persistence-redis/src/test/scala/RedisPersistentQSpec.scala b/akka-persistence/akka-persistence-redis/src/test/scala/RedisPersistentQSpec.scala index 23b62f2963..af1049cf95 100644 --- a/akka-persistence/akka-persistence-redis/src/test/scala/RedisPersistentQSpec.scala +++ b/akka-persistence/akka-persistence-redis/src/test/scala/RedisPersistentQSpec.scala @@ -1,7 +1,5 @@ package se.scalablesolutions.akka.persistence.redis -import junit.framework.TestCase - import org.junit.{Test, Before} import org.junit.Assert._ @@ -51,7 +49,8 @@ class QueueActor extends Transactor { } } -class RedisPersistentQSpec extends TestCase { +import org.scalatest.junit.JUnitSuite +class RedisPersistentQSpec extends JUnitSuite { @Test def testSuccessfulNQ = { val qa = newActor[QueueActor] diff --git a/project/build/AkkaProject.scala b/project/build/AkkaProject.scala index cf1e9c3e68..b78926e482 100644 --- a/project/build/AkkaProject.scala +++ b/project/build/AkkaProject.scala @@ -53,20 +53,15 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) { lazy val akka_util = project("akka-util", "akka-util", new AkkaUtilProject(_)) lazy val akka_core = project("akka-core", "akka-core", new AkkaCoreProject(_), akka_util, akka_java_util) lazy val akka_amqp = project("akka-amqp", "akka-amqp", new AkkaAMQPProject(_), akka_core) - lazy val akka_rest = project("akka-rest", "akka-rest", new AkkaRestProject(_), akka_core) - lazy val akka_comet = project("akka-comet", "akka-comet", new AkkaCometProject(_), akka_rest) + lazy val akka_http = project("akka-http", "akka-http", new AkkaHttpProject(_), akka_core, akka_camel) lazy val akka_camel = project("akka-camel", "akka-camel", new AkkaCamelProject(_), akka_core) - lazy val akka_patterns = project("akka-patterns", "akka-patterns", new AkkaPatternsProject(_), akka_core) - lazy val akka_security = project("akka-security", "akka-security", new AkkaSecurityProject(_), akka_core) lazy val akka_persistence = project("akka-persistence", "akka-persistence", new AkkaPersistenceParentProject(_)) - lazy val akka_cluster = project("akka-cluster", "akka-cluster", new AkkaClusterParentProject(_)) + lazy val akka_cluster = project("akka-cluster", "akka-cluster", new AkkaClusterProject(_), akka_core) lazy val akka_spring = project("akka-spring", "akka-spring", new AkkaSpringProject(_), akka_core) lazy val akka_jta = project("akka-jta", "akka-jta", new AkkaJTAProject(_), akka_core) - lazy val akka_servlet = project("akka-servlet", "akka-servlet", new AkkaServletProject(_), - akka_core, akka_rest, akka_camel) lazy val akka_kernel = project("akka-kernel", "akka-kernel", new AkkaKernelProject(_), - akka_core, akka_rest, akka_spring, akka_camel, akka_persistence, - akka_cluster, akka_amqp, akka_security, akka_comet, akka_patterns, akka_servlet) + akka_core, akka_http, akka_spring, akka_camel, akka_persistence, + akka_cluster, akka_amqp) // functional tests in java lazy val akka_fun_test = project("akka-fun-test-java", "akka-fun-test-java", new AkkaFunTestProject(_), akka_kernel) @@ -96,19 +91,14 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) { " dist/akka-util_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-util-java_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-core_%s-%s.jar".format(buildScalaVersion, version) + - " dist/akka-cluster-shoal_%s-%s.jar".format(buildScalaVersion, version) + - " dist/akka-cluster-jgroups_%s-%s.jar".format(buildScalaVersion, version) + - " dist/akka-rest_%s-%s.jar".format(buildScalaVersion, version) + - " dist/akka-comet_%s-%s.jar".format(buildScalaVersion, version) + + " dist/akka-cluster%s-%s.jar".format(buildScalaVersion, version) + + " dist/akka-http_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-camel_%s-%s.jar".format(buildScalaVersion, version) + - " dist/akka-security_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-amqp_%s-%s.jar".format(buildScalaVersion, version) + - " dist/akka-patterns_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-persistence-common_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-persistence-redis_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-persistence-mongo_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-persistence-cassandra_%s-%s.jar".format(buildScalaVersion, version) + - " dist/akka-servlet_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-kernel_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-spring_%s-%s.jar".format(buildScalaVersion, version) + " dist/akka-jta_%s-%s.jar".format(buildScalaVersion, version) @@ -181,7 +171,7 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) { val rabbit = "com.rabbitmq" % "amqp-client" % "1.7.2" % "compile" } - class AkkaRestProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { + class AkkaHttpProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { val jackson_core_asl = "org.codehaus.jackson" % "jackson-core-asl" % "1.2.1" % "compile" val stax_api = "javax.xml.stream" % "stax-api" % "1.0-2" % "compile" val servlet = "javax.servlet" % "servlet-api" % "2.5" % "compile" @@ -190,39 +180,25 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) { val jersey_json = "com.sun.jersey" % "jersey-json" % JERSEY_VERSION % "compile" val jersey_contrib = "com.sun.jersey.contribs" % "jersey-scala" % JERSEY_VERSION % "compile" val jsr311 = "javax.ws.rs" % "jsr311-api" % "1.1" % "compile" - } - - class AkkaCometProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { val grizzly = "com.sun.grizzly" % "grizzly-comet-webserver" % "1.9.18-i" % "compile" - val servlet = "javax.servlet" % "servlet-api" % "2.5" % "compile" val atmo = "org.atmosphere" % "atmosphere-annotations" % ATMO_VERSION % "compile" val atmo_jersey = "org.atmosphere" % "atmosphere-jersey" % ATMO_VERSION % "compile" val atmo_runtime = "org.atmosphere" % "atmosphere-runtime" % ATMO_VERSION % "compile" - } - - class AkkaCamelProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { - val camel_core = "org.apache.camel" % "camel-core" % "2.2.0" % "compile" - } - - class AkkaPatternsProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { - // testing - val scalatest = "org.scalatest" % "scalatest" % SCALATEST_VERSION % "test" - val junit = "junit" % "junit" % "4.5" % "test" - } - - class AkkaSecurityProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { val commons_logging = "commons-logging" % "commons-logging" % "1.1.1" % "compile" val annotation = "javax.annotation" % "jsr250-api" % "1.0" % "compile" - val jersey_server = "com.sun.jersey" % "jersey-server" % JERSEY_VERSION % "compile" - val jsr311 = "javax.ws.rs" % "jsr311-api" % "1.1" % "compile" val lift_common = "net.liftweb" % "lift-common" % LIFT_VERSION % "compile" val lift_util = "net.liftweb" % "lift-util" % LIFT_VERSION % "compile" + // testing val scalatest = "org.scalatest" % "scalatest" % SCALATEST_VERSION % "test" val junit = "junit" % "junit" % "4.5" % "test" val mockito = "org.mockito" % "mockito-all" % "1.8.1" % "test" } + class AkkaCamelProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { + val camel_core = "org.apache.camel" % "camel-core" % "2.2.0" % "compile" + } + class AkkaPersistenceCommonProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { val thrift = "com.facebook" % "thrift" % "1.0" % "compile" val commons_pool = "commons-pool" % "commons-pool" % "1.5.4" % "compile" @@ -262,24 +238,10 @@ class AkkaParent(info: ProjectInfo) extends DefaultProject(info) { new AkkaCassandraProject(_), akka_persistence_common) } - class AkkaJgroupsProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { + class AkkaClusterProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { val jgroups = "jgroups" % "jgroups" % "2.8.0.CR7" % "compile" } - class AkkaShoalProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { - val shoal = "shoal-jxta" % "shoal" % "1.1-20090818" % "compile" - val shoal_extra = "shoal-jxta" % "jxta" % "1.1-20090818" % "compile" - } - - class AkkaClusterParentProject(info: ProjectInfo) extends ParentProject(info) { - lazy val akka_cluster_jgroups = project("akka-cluster-jgroups", "akka-cluster-jgroups", - new AkkaJgroupsProject(_), akka_core) - lazy val akka_cluster_shoal = project("akka-cluster-shoal", "akka-cluster-shoal", - new AkkaShoalProject(_), akka_core) - } - - class AkkaServletProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) - class AkkaKernelProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) class AkkaSpringProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) {