diff --git a/project/build/AkkaProject.scala b/project/build/AkkaProject.scala new file mode 100644 index 0000000000..4eaef68963 --- /dev/null +++ b/project/build/AkkaProject.scala @@ -0,0 +1,131 @@ +import sbt._ + +class AkkaParent(info: ProjectInfo) extends ParentProject(info) { + //repos + val sunjdmk = "sunjdmk" at "http://wp5.e-taxonomy.eu/cdmlib/mavenrepo" + val databinder = "DataBinder" at "http://databinder.net/repo" + val configgy = "Configgy" at "http://www.lag.net/repo" + val multiverse = "Multiverse" at "http://multiverse.googlecode.com/svn/maven-repository/releases" + val jboss = "jBoss" at "http://repository.jboss.org/maven2" + val guiceyfruit = "GuiceyFruit" at "http://guiceyfruit.googlecode.com/svn/repo/releases/" + val embeddedrepo = "embedded repo" at "http://guice-maven.googlecode.com/svn/trunk" + val google = "google" at "http://google-maven-repository.googlecode.com/svn/repository" + val m2 = "m2" at "http://download.java.net/maven/2" + + //project versions + val JERSEYVERSION = "1.1.5" + val ATMOVERSION = "0.6-SNAPSHOT" + val CASSANDRAVERSION = "0.5.0" + + //project defintions + lazy val javautil = project("akka-util-java", "akka-java-util", new AkkaJavaUtilProject(_)) + lazy val util = project("akka-util", "akka-util",new AkkaUtilProject(_)) + lazy val core = project("akka-core", "akka-core", new AkkaCoreProject(_), util, javautil) + lazy val amqp = project("akka-amqp", "akka-amqp", new AkkaAMQPProject(_), core) + lazy val rest = project("akka-rest", "akka-rest", new AkkaRestProject(_), core) + lazy val comet = project("akka-comet", "akka-comet",new AkkaCometProject(_), rest) + lazy val patterns = project("akka-patterns", "akka-patterns", new AkkaPatternsProject(_), core) + lazy val security = project("akka-security", "akka-security", new AkkaSecurityProject(_), core) + lazy val persitence = project("akka-persistence", "akka-persistence", new AkkaPersistenceParentProject(_)) + + // subprojects + class AkkaCoreProject(info: ProjectInfo) extends DefaultProject(info) { + val sjson = "sjson.json" % "sjson" % "0.4" % "compile" + val aspec = "org.codehaus.aspectwerkz" % "aspectwerkz-nodeps-jdk5" % "2.1" % "compile" + val apsec_core = "org.codehaus.aspectwerkz" % "aspectwerkz-jdk5" % "2.1" % "compile" + val commonsio = "commons-io" % "commons-io" % "1.4" % "compile" + val netdatabinder = "net.databinder" % "dispatch-json_2.7.7" % "0.6.4" % "compile" + val netdatabinderhttp = "net.databinder" % "dispatch-http_2.7.7" % "0.6.4" % "compile" + val sbinary = "sbinary" % "sbinary" % "0.3" % "compile" + val jack = "org.codehaus.jackson" % "jackson-mapper-asl" % "1.2.1" % "compile" + val jackcore = "org.codehaus.jackson" % "jackson-core-asl" % "1.2.1" % "compile" + val volde = "voldemort.store.compress" % "h2-lzf" % "1.0" % "compile" + val scalajavautil = "org.scala-tools" % "javautils" % "2.7.4-0.1" % "compile" + val netty = "org.jboss.netty" % "netty" % "3.2.0.ALPHA3" % "compile" + //testing + val scalatest= "org.scalatest" % "scalatest" % "1.0" % "test" + val junit = "junit" % "junit" % "4.5" % "test" + } + + class AkkaUtilProject(info: ProjectInfo) extends DefaultProject(info) { + val aspec = "org.codehaus.aspectwerkz" % "aspectwerkz-nodeps-jdk5" % "2.1" % "compile" + val apsec_core = "org.codehaus.aspectwerkz" % "aspectwerkz-jdk5" % "2.1" % "compile" + val configgy = "net.lag" % "configgy" % "1.4.7" % "compile" + } + + class AkkaJavaUtilProject(info: ProjectInfo) extends DefaultProject(info) { + val guicey = "org.guiceyfruit" % "guice-core" % "2.0-beta-4" % "compile" + val proto = "com.google.protobuf" % "protobuf-java" % "2.2.0" % "compile" + val multi = "org.multiverse" % "multiverse-alpha" % "0.3" % "compile" + } + + class AkkaAMQPProject(info:ProjectInfo) extends DefaultProject(info) { + val rabbit = "com.rabbitmq" % "amqp-client" % "1.7.2" + } + + class AkkaRestProject(info:ProjectInfo) extends DefaultProject(info) { + val servlet = "javax.servlet" % "servlet-api" % "2.5" % "provided" + val jersey = "com.sun.jersey" % "jersey-core" % JERSEYVERSION % "compile" + val jerseyserver = "com.sun.jersey" % "jersey-server" % JERSEYVERSION % "compile" + val jerseyjson = "com.sun.jersey" % "jersey-json" % JERSEYVERSION % "compile" + val jerseycontrib = "com.sun.jersey.contribs" % "jersey-scala" % JERSEYVERSION % "compile" + val jsr = "javax.ws.rs" % "jsr311-api" % "1.1" % "compile" + } + + class AkkaCometProject(info:ProjectInfo) extends DefaultProject(info) { + val grizzly = "com.sun.grizzly" % "grizzly-comet-webserver" % "1.9.18-i" % "compile" + val servlet = "javax.servlet" % "servlet-api" % "2.5" % "provided" + val atmo = "org.atmosphere" % "atmosphere-annotations" % ATMOVERSION % "compile" + val atmojersey = "org.atmosphere" % "atmosphere-jersey" % ATMOVERSION % "compile" + val atmoruntime = "org.atmosphere" % "atmosphere-runtime" % ATMOVERSION % "compile" + } + + class AkkaPatternsProject(info:ProjectInfo) extends DefaultProject(info) { + //testing + val scalatest= "org.scalatest" % "scalatest" % "1.0" % "test" + val junit = "junit" % "junit" % "4.5" % "test" + } + + class AkkaSecurityProject(info:ProjectInfo) extends DefaultProject(info) { + val annotation = "javax.annotation" % "jsr250-api" % "1.0" + val jerseyserver = "com.sun.jersey" % "jersey-server" % JERSEYVERSION % "compile" + val jsr = "javax.ws.rs" % "jsr311-api" % "1.1" % "compile" + val lift = "net.liftweb" % "lift-util" % "1.1-M6" % "compile" + //testing + val scalatest= "org.scalatest" % "scalatest" % "1.0" % "test" + val junit = "junit" % "junit" % "4.5" % "test" + val mockito = "org.mockito" % "mockito-all" % "1.8.1" % "test" + } + + + class AkkaPersistenceCommonProject(info:ProjectInfo) extends DefaultProject(info) { + val facebook = "com.facebook" % "thrift" % "1.0" % "compile" + val commonspool = "commons-pool" % "commons-pool" % "1.5.1" % "compile" + } + class AkkaRedisProject(info:ProjectInfo) extends DefaultProject(info) { + val redis = "com.redis" % "redisclient" % "1.0.1" % "compile" + } + + class AkkaMongoProject(info:ProjectInfo) extends DefaultProject(info) { + val mongo = "org.mongodb" % "mongo-java-driver" % "1.1" % "compile" + } + + class AkkaCassandraProject(info:ProjectInfo) extends DefaultProject(info) { + val cassandra = "org.apache.cassandra" % "cassandra" % CASSANDRAVERSION % "compile" + val cassandralib = "org.apache.cassandra" % "high-scale-lib" % CASSANDRAVERSION % "test" + val cassandraclhm = "org.apache.cassandra" % "clhm-production" % CASSANDRAVERSION % "test" + val commonscoll = "commons-collections" % "commons-collections" % "3.2.1" % "test" + val googlecoll = "com.google.collections" % "google-collections" % "1.0" % "test" + val slf4j = "org.slf4j" % "slf4j-api" % "1.5.8" % "test" + val slf4jlog4j = "org.slf4j" % "slf4j-log4j12" % "1.5.8" % "test" + val log4j = "log4j" % "log4j" % "1.2.15" % "test" + } + + class AkkaPersistenceParentProject(info:ProjectInfo) extends ParentProject(info) { + lazy val akkapersistencecommon = project ("akka-persistence-common", "akka-persistence-common", new AkkaPersistenceCommonProject(_)) + lazy val redis = project("akka-persistence-redis","akka-persistence-redis", new AkkaRedisProject(_),akkapersistencecommon) + lazy val mongo = project("akka-persistence-mongo","akka-persistence-mongo", new AkkaMongoProject(_),akkapersistencecommon) + lazy val cassandra = project("akka-persistence-cassandra","akka-persistence-cassandra", new AkkaCassandraProject(_),akkapersistencecommon) + + } +}