From bf227926cf73deabab8050b3a71fae465d904530 Mon Sep 17 00:00:00 2001 From: ticktock Date: Sat, 9 Oct 2010 22:24:31 -0400 Subject: [PATCH 01/17] Initial Scaffold of Riak Module --- .../src/main/scala/RiakStorage.scala | 51 +++++++++++++++++++ .../src/main/scala/RiakStorageBackend.scala | 11 ++++ project/build/AkkaProject.scala | 21 ++++++++ 3 files changed, 83 insertions(+) create mode 100644 akka-persistence/akka-persistence-riak/src/main/scala/RiakStorage.scala create mode 100644 akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala diff --git a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorage.scala b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorage.scala new file mode 100644 index 0000000000..446311f715 --- /dev/null +++ b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorage.scala @@ -0,0 +1,51 @@ +/** + * Copyright (C) 2009-2010 Scalable Solutions AB + */ + +package se.scalablesolutions.akka.persistence.riak + +import se.scalablesolutions.akka.actor.{newUuid} +import se.scalablesolutions.akka.stm._ +import se.scalablesolutions.akka.persistence.common._ + + +object RiakStorage extends Storage { + + type ElementType = Array[Byte] + def newMap: PersistentMap[ElementType, ElementType] = newMap(newUuid.toString) + def newVector: PersistentVector[ElementType] = newVector(newUuid.toString) + def newRef: PersistentRef[ElementType] = newRef(newUuid.toString) + override def newQueue: PersistentQueue[ElementType] = newQueue(newUuid.toString) + + def getMap(id: String): PersistentMap[ElementType, ElementType] = newMap(id) + def getVector(id: String): PersistentVector[ElementType] = newVector(id) + def getRef(id: String): PersistentRef[ElementType] = newRef(id) + override def getQueue(id: String): PersistentQueue[ElementType] = newQueue(id) + + def newMap(id: String): PersistentMap[ElementType, ElementType] = new RiakPersistentMap(id) + def newVector(id: String): PersistentVector[ElementType] = new RiakPersistentVector(id) + def newRef(id: String): PersistentRef[ElementType] = new RiakPersistentRef(id) + override def newQueue(id:String): PersistentQueue[ElementType] = new RiakPersistentQueue(id) +} + + +class RiakPersistentMap(id: String) extends PersistentMapBinary { + val uuid = id + val storage = RiakStorageBackend +} + + +class RiakPersistentVector(id: String) extends PersistentVector[Array[Byte]] { + val uuid = id + val storage = RiakStorageBackend +} + +class RiakPersistentRef(id: String) extends PersistentRef[Array[Byte]] { + val uuid = id + val storage = RiakStorageBackend +} + +class RiakPersistentQueue(id: String) extends PersistentQueue[Array[Byte]] { + val uuid = id + val storage = RiakStorageBackend +} diff --git a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala new file mode 100644 index 0000000000..534d9888eb --- /dev/null +++ b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala @@ -0,0 +1,11 @@ +/** + * Copyright (C) 2009-2010 Scalable Solutions AB + */ + +package se.scalablesolutions.akka.persistence.riak + +import se.scalablesolutions.akka.actor.{newUuid} +import se.scalablesolutions.akka.stm._ +import se.scalablesolutions.akka.persistence.common._ + +class RiakStorageBackend \ No newline at end of file diff --git a/project/build/AkkaProject.scala b/project/build/AkkaProject.scala index 81688ccf82..44655aab6b 100644 --- a/project/build/AkkaProject.scala +++ b/project/build/AkkaProject.scala @@ -86,6 +86,7 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { lazy val casbahModuleConfig = ModuleConfiguration("com.novus", CasbahRepo) lazy val timeModuleConfig = ModuleConfiguration("org.scala-tools", "time", CasbahSnapshotRepo) lazy val voldemortModuleConfig = ModuleConfiguration("voldemort", ClojarsRepo) + lazy val riakPBModuleConfig = ModuleConfiguration("org.clojars.mmcgrana", ClojarsRepo) lazy val embeddedRepo = EmbeddedRepo // This is the only exception, because the embedded repo is fast! // ------------------------------------------------------------------------------------------------------------------- @@ -248,6 +249,9 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { lazy val vold_jetty = "org.mortbay.jetty" % "jetty" % "6.1.18" % "test" lazy val velocity = "org.apache.velocity" % "velocity" % "1.6.2" % "test" lazy val dbcp = "commons-dbcp" % "commons-dbcp" % "1.2.2" % "test" + + //Riak PB Client + lazy val riak_pb_client = "org.clojars.mmcgrana" % "riak-java-pb-client" % "0.1.0-SNAPSHOT" % "compile" } // ------------------------------------------------------------------------------------------------------------------- @@ -302,6 +306,9 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { " 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-persistence-voldemort_%s-%s.jar".format(buildScalaVersion, version) + + " dist/akka-persistence-riak_%s-%s.jar".format(buildScalaVersion, version) + + " dist/akka-persistence-hbase_%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) @@ -502,6 +509,8 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { new AkkaHbaseProject(_), akka_persistence_common) lazy val akka_persistence_voldemort = project("akka-persistence-voldemort", "akka-persistence-voldemort", new AkkaVoldemortProject(_), akka_persistence_common) + lazy val akka_persistence_riak = project("akka-persistence-riak", "akka-persistence-riak", + new AkkaRiakProject(_), akka_persistence_common) } // ------------------------------------------------------------------------------------------------------------------- @@ -601,6 +610,18 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { override def testOptions = createTestFilter({ s:String=> s.endsWith("Suite") || s.endsWith("Test")}) } +// akka-persistence-riak subproject + // ------------------------------------------------------------------------------------------------------------------- + + class AkkaRiakProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { + val riak_pb = Dependencies.riak_pb_client + //testing + val scalatest = Dependencies.scalatest + + + override def testOptions = createTestFilter(_.endsWith("Test")) + } + // ------------------------------------------------------------------------------------------------------------------- // akka-kernel subproject From 6ae5abf114da0113d35d615bdb50a41a69f1570a Mon Sep 17 00:00:00 2001 From: ticktock Date: Tue, 12 Oct 2010 15:07:02 -0400 Subject: [PATCH 02/17] First pass at Riak Backend --- .../src/main/scala/RiakStorageBackend.scala | 579 +++++++++++++++++- .../RiakStorageBackendCompatibilityTest.scala | 49 ++ .../RiakStorageBackendTestIntegration.scala | 24 + .../scala/RiakTicket343TestIntegration.scala | 22 + 4 files changed, 671 insertions(+), 3 deletions(-) create mode 100644 akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendCompatibilityTest.scala create mode 100644 akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala create mode 100644 akka-persistence/akka-persistence-riak/src/test/scala/RiakTicket343TestIntegration.scala diff --git a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala index 534d9888eb..bf3a5c169f 100644 --- a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala +++ b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala @@ -1,11 +1,584 @@ /** - * Copyright (C) 2009-2010 Scalable Solutions AB + * Copyright (C) 2009-2010 Scalable Solutions AB */ package se.scalablesolutions.akka.persistence.riak -import se.scalablesolutions.akka.actor.{newUuid} import se.scalablesolutions.akka.stm._ import se.scalablesolutions.akka.persistence.common._ +import se.scalablesolutions.akka.util.Logging +import se.scalablesolutions.akka.util.Helpers._ +import se.scalablesolutions.akka.config.Config.config -class RiakStorageBackend \ No newline at end of file +import java.lang.String +import collection.JavaConversions +import java.nio.ByteBuffer +import collection.Map +import collection.mutable.ArrayBuffer +import java.util.{Properties, Map => JMap} +import se.scalablesolutions.akka.persistence.common.PersistentMapBinary.COrdering._ +import collection.immutable._ +import com.trifork.riak.{RiakObject, RiakClient} +import com.google.protobuf.ByteString +import com.google.protobuf.ByteString._ +/* + RequiredReads + RequiredWrites should be > ReplicationFactor for all Voldemort Stores + In this case all VoldemortBackend operations can be retried until successful, and data should remain consistent + */ + +private[akka] object RiakStorageBackend extends +MapStorageBackend[Array[Byte], Array[Byte]] with + VectorStorageBackend[Array[Byte]] with + RefStorageBackend[Array[Byte]] with + QueueStorageBackend[Array[Byte]] with + Logging { + val bootstrapUrlsProp = "bootstrap_urls" + val clientConfig = config.getConfigMap("akka.storage.riak.client") match { + case Some(configMap) => getClientConfig(configMap.asMap) + case None => getClientConfig(new HashMap[String, String] + (bootstrapUrlsProp -> "tcp://localhost:6666")) + } + val refBucket = config.getString("akka.storage.riak.bucket.ref", "Refs") + val mapBucket = config.getString("akka.storage.riak.bucket.map", "Maps") + val vectorBucket = config.getString("akka.storage.riak.bucket.vector", "Vectors") + val queueBucket = config.getString("akka.storage.riak.bucket.queue", "Queues") + + var riakClient: RiakClient = new RiakClient("localhost"); + + val nullMapValueHeader = 0x00.byteValue + val nullMapValue: Array[Byte] = Array(nullMapValueHeader) + val notNullMapValueHeader: Byte = 0xff.byteValue + val underscoreBytesUTF8 = "_".getBytes("UTF-8") + val mapKeysIndex = getIndexedBytes(-1) + val vectorSizeIndex = getIndexedBytes(-1) + val queueHeadIndex = getIndexedBytes(-1) + val queueTailIndex = getIndexedBytes(-2) + //explicit implicit :) + implicit val ordering = ArrayOrdering + import RiakAccess._ + + def getRefStorageFor(name: String): Option[Array[Byte]] = { + val result: Array[Byte] = RefClient.getValue(name) + Option(result) + } + + def insertRefStorageFor(name: String, element: Array[Byte]) = { + element match { + case null => RefClient.delete(name) + case _ => RefClient.put(name, element) + } + } + + def getMapStorageRangeFor(name: String, start: Option[Array[Byte]], finish: Option[Array[Byte]], count: Int): List[(Array[Byte], Array[Byte])] = { + val allkeys: SortedSet[Array[Byte]] = getMapKeys(name) + val range = allkeys.rangeImpl(start, finish).take(count) + getKeyValues(name, range) + } + + def getMapStorageFor(name: String): List[(Array[Byte], Array[Byte])] = { + val keys = getMapKeys(name) + getKeyValues(name, keys) + } + + private def getKeyValues(name: String, keys: SortedSet[Array[Byte]]): List[(Array[Byte], Array[Byte])] = { + val all: Map[Array[Byte], Array[Byte]] = + MapClient.getAll(keys.map { + mapKey => getKey(name, mapKey) + }) + + var returned = new TreeMap[Array[Byte], Array[Byte]]()(ordering) + all.foreach { + (entry) => { + entry match { + case (namePlusKey: Array[Byte], value: Array[Byte]) => { + returned += getMapKeyFromKey(name, namePlusKey) -> getMapValueFromStored(value) + } + } + } + } + returned.toList + } + + def getMapStorageSizeFor(name: String): Int = { + val keys = getMapKeys(name) + keys.size + } + + def getMapStorageEntryFor(name: String, key: Array[Byte]): Option[Array[Byte]] = { + val result: Array[Byte] = MapClient.getValue(getKey(name, key)) + result match { + case null => None + case _ => Some(getMapValueFromStored(result)) + } + } + + def removeMapStorageFor(name: String, key: Array[Byte]) = { + var keys = getMapKeys(name) + keys -= key + putMapKeys(name, keys) + MapClient.delete(getKey(name, key)) + } + + + def removeMapStorageFor(name: String) = { + val keys = getMapKeys(name) + keys.foreach { + key => + MapClient.delete(getKey(name, key)) + } + MapClient.delete(getKey(name, mapKeysIndex)) + } + + def insertMapStorageEntryFor(name: String, key: Array[Byte], value: Array[Byte]) = { + MapClient.put(getKey(name, key), getStoredMapValue(value)) + var keys = getMapKeys(name) + keys += key + putMapKeys(name, keys) + } + + def insertMapStorageEntriesFor(name: String, entries: List[(Array[Byte], Array[Byte])]) = { + val newKeys = entries.map { + case (key, value) => { + MapClient.put(getKey(name, key), getStoredMapValue(value)) + key + } + } + var keys = getMapKeys(name) + keys ++= newKeys + putMapKeys(name, keys) + } + + def putMapKeys(name: String, keys: SortedSet[Array[Byte]]) = { + MapClient.put(getKey(name, mapKeysIndex), SortedSetSerializer.toBytes(keys)) + } + + def getMapKeys(name: String): SortedSet[Array[Byte]] = { + SortedSetSerializer.fromBytes(MapClient.getValue(getKey(name, mapKeysIndex), Array.empty[Byte])) + } + + + def getVectorStorageSizeFor(name: String): Int = { + IntSerializer.fromBytes(VectorClient.getValue(getKey(name, vectorSizeIndex), IntSerializer.toBytes(0))) + } + + + def getVectorStorageRangeFor(name: String, start: Option[Int], finish: Option[Int], count: Int): List[Array[Byte]] = { + val size = getVectorStorageSizeFor(name) + val st = start.getOrElse(0) + var cnt = + if (finish.isDefined) { + val f = finish.get + if (f >= st) (f - st) else count + } else { + count + } + if (cnt > (size - st)) { + cnt = size - st + } + + + val seq: IndexedSeq[Array[Byte]] = (st until st + cnt).map { + index => getIndexedKey(name, (size - 1) - index) + } //read backwards + + val all: Map[Array[Byte], Array[Byte]] = VectorClient.getAll(seq) + + var storage = new ArrayBuffer[Array[Byte]](seq.size) + storage = storage.padTo(seq.size, Array.empty[Byte]) + var idx = 0; + seq.foreach { + key => { + if (all.isDefinedAt(key)) { + storage.update(idx, all.get(key).get) + } + idx += 1 + } + } + + storage.toList + } + + + def getVectorStorageEntryFor(name: String, index: Int): Array[Byte] = { + val size = getVectorStorageSizeFor(name) + if (size > 0 && index < size) { + VectorClient.getValue(getIndexedKey(name, /*read backwards*/ (size - 1) - index)) + } else { + throw new StorageException("In Vector:" + name + " No such Index:" + index) + } + } + + def updateVectorStorageEntryFor(name: String, index: Int, elem: Array[Byte]) = { + val size = getVectorStorageSizeFor(name) + if (size > 0 && index < size) { + elem match { + case null => VectorClient.delete(getIndexedKey(name, /*read backwards*/ (size - 1) - index)) + case _ => VectorClient.put(getIndexedKey(name, /*read backwards*/ (size - 1) - index), elem) + } + } else { + throw new StorageException("In Vector:" + name + " No such Index:" + index) + } + } + + def insertVectorStorageEntriesFor(name: String, elements: List[Array[Byte]]) = { + var size = getVectorStorageSizeFor(name) + elements.foreach { + element => + if (element != null) { + VectorClient.put(getIndexedKey(name, size), element) + } + size += 1 + } + VectorClient.put(getKey(name, vectorSizeIndex), IntSerializer.toBytes(size)) + } + + def insertVectorStorageEntryFor(name: String, element: Array[Byte]) = { + insertVectorStorageEntriesFor(name, List(element)) + } + + + def remove(name: String): Boolean = { + val mdata = getQueueMetadata(name) + mdata.getActiveIndexes foreach { + index => + QueueClient.delete(getIndexedKey(name, index)) + } + QueueClient.delete(getKey(name, queueHeadIndex)) + QueueClient.delete(getKey(name, queueTailIndex)) + true + } + + def peek(name: String, start: Int, count: Int): List[Array[Byte]] = { + val mdata = getQueueMetadata(name) + val ret = mdata.getPeekIndexes(start, count).toList map { + index: Int => { + log.debug("peeking:" + index) + QueueClient.getValue(getIndexedKey(name, index)) + } + } + ret + } + + def size(name: String): Int = { + getQueueMetadata(name).size + } + + def dequeue(name: String): Option[Array[Byte]] = { + val mdata = getQueueMetadata(name) + if (mdata.canDequeue) { + val key = getIndexedKey(name, mdata.head) + try { + val dequeued = QueueClient.getValue(key) + QueueClient.put(getKey(name, queueHeadIndex), IntSerializer.toBytes(mdata.nextDequeue)) + Some(dequeued) + } + finally { + try { + QueueClient.delete(key) + } catch { + //a failure to delete is ok, just leaves a K-V in Voldemort that will be overwritten if the queue ever wraps around + case e: Exception => log.warn(e, "caught an exception while deleting a dequeued element, however this will not cause any inconsistency in the queue") + } + } + } else { + None + } + } + + def enqueue(name: String, item: Array[Byte]): Option[Int] = { + val mdata = getQueueMetadata(name) + if (mdata.canEnqueue) { + val key = getIndexedKey(name, mdata.tail) + item match { + case null => QueueClient.delete(key) + case _ => QueueClient.put(key, item) + } + QueueClient.put(getKey(name, queueTailIndex), IntSerializer.toBytes(mdata.nextEnqueue)) + Some(mdata.size + 1) + } else { + None + } + } + + + def getQueueMetadata(name: String): QueueMetadata = { + val keys = List(getKey(name, queueHeadIndex), getKey(name, queueTailIndex)) + val qdata = QueueClient.getAll(keys) + val values = keys.map { + qdata.get(_) match { + case Some(value) => IntSerializer.fromBytes(value) + case None => 0 + } + } + QueueMetadata(values.head, values.tail.head) + } + + /** + * Concat the ownerlenght+owner+key+ of owner so owned data will be colocated + * Store the length of owner as first byte to work around the rare case + * where ownerbytes1 + keybytes1 == ownerbytes2 + keybytes2 but ownerbytes1 != ownerbytes2 + */ + + + def getKey(owner: String, key: Array[Byte]): Array[Byte] = { + val ownerBytes: Array[Byte] = owner.getBytes("UTF-8") + val ownerLenghtBytes: Array[Byte] = IntSerializer.toBytes(owner.length) + val theKey = new Array[Byte](ownerLenghtBytes.length + ownerBytes.length + key.length) + System.arraycopy(ownerLenghtBytes, 0, theKey, 0, ownerLenghtBytes.length) + System.arraycopy(ownerBytes, 0, theKey, ownerLenghtBytes.length, ownerBytes.length) + System.arraycopy(key, 0, theKey, ownerLenghtBytes.length + ownerBytes.length, key.length) + theKey + } + + def getIndexedBytes(index: Int): Array[Byte] = { + val indexbytes = IntSerializer.toBytes(index) + val theIndexKey = new Array[Byte](underscoreBytesUTF8.length + indexbytes.length) + System.arraycopy(underscoreBytesUTF8, 0, theIndexKey, 0, underscoreBytesUTF8.length) + System.arraycopy(indexbytes, 0, theIndexKey, underscoreBytesUTF8.length, indexbytes.length) + theIndexKey + } + + def getIndexedKey(owner: String, index: Int): Array[Byte] = { + getKey(owner, getIndexedBytes(index)) + } + + def getIndexFromVectorValueKey(owner: String, key: Array[Byte]): Int = { + val indexBytes = new Array[Byte](IntSerializer.bytesPerInt) + System.arraycopy(key, key.length - IntSerializer.bytesPerInt, indexBytes, 0, IntSerializer.bytesPerInt) + IntSerializer.fromBytes(indexBytes) + } + + def getMapKeyFromKey(owner: String, key: Array[Byte]): Array[Byte] = { + val mapKeyLength = key.length - IntSerializer.bytesPerInt - owner.getBytes("UTF-8").length + val mapkey = new Array[Byte](mapKeyLength) + System.arraycopy(key, key.length - mapKeyLength, mapkey, 0, mapKeyLength) + mapkey + } + + //wrapper for null + def getStoredMapValue(value: Array[Byte]): Array[Byte] = { + value match { + case null => nullMapValue + case value => { + val stored = new Array[Byte](value.length + 1) + stored(0) = notNullMapValueHeader + System.arraycopy(value, 0, stored, 1, value.length) + stored + } + } + } + + def getMapValueFromStored(value: Array[Byte]): Array[Byte] = { + + if (value(0) == nullMapValueHeader) { + null + } else if (value(0) == notNullMapValueHeader) { + val returned = new Array[Byte](value.length - 1) + System.arraycopy(value, 1, returned, 0, value.length - 1) + returned + } else { + throw new StorageException("unknown header byte on map value:" + value(0)) + } + } + + + def getClientConfig(configMap: Map[String, String]): Properties = { + val properites = new Properties + configMap.foreach { + keyval => keyval match { + case (key, value) => properites.setProperty(key.asInstanceOf[java.lang.String], value.asInstanceOf[java.lang.String]) + } + } + properites + } + + + + + case class QueueMetadata(head: Int, tail: Int) { + //queue is an sequence with indexes from 0 to Int.MAX_VALUE + //wraps around when one pointer gets to max value + //head has an element in it. + //tail is the next slot to write to. + def size = { + if (tail >= head) { + tail - head + } else { + //queue has wrapped + (Integer.MAX_VALUE - head) + (tail + 1) + } + } + + def canEnqueue = { + //the -1 stops the tail from catching the head on a wrap around + size < Integer.MAX_VALUE - 1 + } + + def canDequeue = {size > 0} + + def getActiveIndexes(): IndexedSeq[Int] = { + if (tail >= head) { + Range(head, tail) + } else { + //queue has wrapped + val headRange = Range.inclusive(head, Integer.MAX_VALUE) + (if (tail > 0) {headRange ++ Range(0, tail)} else {headRange}) + } + } + + def getPeekIndexes(start: Int, count: Int): IndexedSeq[Int] = { + val indexes = getActiveIndexes + if (indexes.size < start) + {IndexedSeq.empty[Int]} else + {indexes.drop(start).take(count)} + } + + def nextEnqueue = { + tail match { + case Integer.MAX_VALUE => 0 + case _ => tail + 1 + } + } + + def nextDequeue = { + head match { + case Integer.MAX_VALUE => 0 + case _ => head + 1 + } + } + } + + + + object RiakAccess { + implicit def byteArrayToByteString(ary: Array[Byte]): ByteString = { + ByteString.copyFrom(ary) + } + + implicit def byteStringToByteArray(bs: ByteString): Array[Byte] = { + bs.toByteArray + } + + implicit def stringToByteString(bucket: String): ByteString = { + ByteString.copyFromUtf8(bucket) + } + + implicit def stringToByteArray(st: String): Array[Byte] = { + st.getBytes("UTF-8") + } + } + + trait RiakAccess { + def bucket: String + + + def put(key: Array[Byte], value: Array[Byte]) = { + riakClient.store(new RiakObject(bucket, key, value)) + } + + def getValue(key: Array[Byte]): Array[Byte] = { + val objs = riakClient.fetch(bucket, key) + objs.size match { + case 0 => null; + case _ => objs.last.getValue + } + } + + def getValue(key: Array[Byte], default: Array[Byte]): Array[Byte] = { + Option(getValue(key)) match { + case Some(value) => value + case None => default + } + } + + def getAll(keys: Traversable[Array[Byte]]): Map[Array[Byte], Array[Byte]] = { + var result = new HashMap[Array[Byte], Array[Byte]] + keys.foreach { + key => result += key -> getValue(key) + } + result + } + + def delete(key: Array[Byte]) = { + riakClient.delete(bucket, key) + } + + def drop() { + JavaConversions.asIterable(riakClient.listKeys(bucket)) foreach { + delete(_) + } + } + } + + object RefClient extends RiakAccess { + def bucket: String = refBucket + } + + object MapClient extends RiakAccess { + def bucket = mapBucket + } + + object VectorClient extends RiakAccess { + def bucket = vectorBucket + } + + object QueueClient extends RiakAccess { + def bucket = queueBucket + } + + + + object IntSerializer { + val bytesPerInt = java.lang.Integer.SIZE / java.lang.Byte.SIZE + + def toBytes(i: Int) = ByteBuffer.wrap(new Array[Byte](bytesPerInt)).putInt(i).array() + + def fromBytes(bytes: Array[Byte]) = ByteBuffer.wrap(bytes).getInt() + + def toString(obj: Int) = obj.toString + + def fromString(str: String) = str.toInt + } + + object SortedSetSerializer { + def toBytes(set: SortedSet[Array[Byte]]): Array[Byte] = { + val length = set.foldLeft(0) { + (total, bytes) => { + total + bytes.length + IntSerializer.bytesPerInt + } + } + val allBytes = new Array[Byte](length) + val written = set.foldLeft(0) { + (total, bytes) => { + val sizeBytes = IntSerializer.toBytes(bytes.length) + System.arraycopy(sizeBytes, 0, allBytes, total, sizeBytes.length) + System.arraycopy(bytes, 0, allBytes, total + sizeBytes.length, bytes.length) + total + sizeBytes.length + bytes.length + } + } + require(length == written, "Bytes Written Did not equal Calculated Length, written %d, length %d".format(written, length)) + allBytes + } + + def fromBytes(bytes: Array[Byte]): SortedSet[Array[Byte]] = { + import se.scalablesolutions.akka.persistence.common.PersistentMapBinary.COrdering._ + + var set = new TreeSet[Array[Byte]] + if (bytes.length > IntSerializer.bytesPerInt) { + var pos = 0 + while (pos < bytes.length) { + val lengthBytes = new Array[Byte](IntSerializer.bytesPerInt) + System.arraycopy(bytes, pos, lengthBytes, 0, IntSerializer.bytesPerInt) + pos += IntSerializer.bytesPerInt + val length = IntSerializer.fromBytes(lengthBytes) + val item = new Array[Byte](length) + System.arraycopy(bytes, pos, item, 0, length) + set = set + item + pos += length + } + } + set + } + + } + +} \ No newline at end of file diff --git a/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendCompatibilityTest.scala b/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendCompatibilityTest.scala new file mode 100644 index 0000000000..473931104a --- /dev/null +++ b/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendCompatibilityTest.scala @@ -0,0 +1,49 @@ +package se.scalablesolutions.akka.persistence.riak + + +import org.junit.runner.RunWith +import org.scalatest.junit.JUnitRunner +import se.scalablesolutions.akka.persistence.common.{QueueStorageBackendTest, VectorStorageBackendTest, MapStorageBackendTest, RefStorageBackendTest} + +@RunWith(classOf[JUnitRunner]) +class RiakRefStorageBackendTestIntegration extends RefStorageBackendTest { + def dropRefs = { + RiakStorageBackend.RefClient.drop + } + + + def storage = RiakStorageBackend +} + +@RunWith(classOf[JUnitRunner]) +class RiakMapStorageBackendTestIntegration extends MapStorageBackendTest { + def dropMaps = { + RiakStorageBackend.MapClient.drop + } + + + def storage = RiakStorageBackend +} + +@RunWith(classOf[JUnitRunner]) +class RiakVectorStorageBackendTestIntegration extends VectorStorageBackendTest { + def dropVectors = { + RiakStorageBackend.VectorClient.drop + } + + + def storage = RiakStorageBackend +} + + +@RunWith(classOf[JUnitRunner]) +class RiakQueueStorageBackendTestIntegration extends QueueStorageBackendTest { + def dropQueues = { + RiakStorageBackend.QueueClient.drop + } + + + def storage = RiakStorageBackend +} + + diff --git a/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala b/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala new file mode 100644 index 0000000000..b26903c708 --- /dev/null +++ b/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala @@ -0,0 +1,24 @@ +package se.scalablesolutions.akka.persistence.riak + +import org.scalatest.matchers.ShouldMatchers +import org.junit.runner.RunWith +import org.scalatest.junit.JUnitRunner +import se.scalablesolutions.akka.persistence.riak.RiakStorageBackend._ +import se.scalablesolutions.akka.util.{Logging} +import collection.immutable.TreeSet +import scala.None +import org.scalatest.{Spec, FunSuite} +import com.trifork.riak.RiakClient + +@RunWith(classOf[JUnitRunner]) +class RiakStorageBackendTestIntegration extends Spec with ShouldMatchers with Logging { + + + describe("successfuly configuring the riak pb client"){ + it("should connect to riak, if riak is running"){ + val riakClient = new RiakClient("localhost"); + riakClient.listBuckets should not be (null) + } + } + +} \ No newline at end of file diff --git a/akka-persistence/akka-persistence-riak/src/test/scala/RiakTicket343TestIntegration.scala b/akka-persistence/akka-persistence-riak/src/test/scala/RiakTicket343TestIntegration.scala new file mode 100644 index 0000000000..9782730803 --- /dev/null +++ b/akka-persistence/akka-persistence-riak/src/test/scala/RiakTicket343TestIntegration.scala @@ -0,0 +1,22 @@ +/** + * Copyright (C) 2009-2010 Scalable Solutions AB + */ + +package se.scalablesolutions.akka.persistence.riak + + +import org.junit.runner.RunWith +import org.scalatest.junit.JUnitRunner +import se.scalablesolutions.akka.persistence.common._ + +@RunWith(classOf[JUnitRunner]) +class RiakTicket343Test extends Ticket343Test { + def dropMapsAndVectors: Unit = { + RiakStorageBackend.VectorClient.drop + RiakStorageBackend.MapClient.drop + } + + def getVector: (String) => PersistentVector[Array[Byte]] = RiakStorage.getVector + + def getMap: (String) => PersistentMap[Array[Byte], Array[Byte]] = RiakStorage.getMap +} \ No newline at end of file From 75ecbb55987eb73107d1c9898feb776353a8dcbc Mon Sep 17 00:00:00 2001 From: ticktock Date: Wed, 13 Oct 2010 17:03:27 -0400 Subject: [PATCH 03/17] Initial Port of the Voldemort Backend to Riak this is using the protobuf interface now, but may have to try to the http interface, since there seems to be some race conditions internally to riak during rapid updates/deletes, which may not happen with http Basically single threaded tests that involve rapid updates/deletes fail. When the same tests are run in a debugger, and breakpoints are set such that there is time in between riak requests, the tests pass. :( --- .../src/main/scala/RiakStorageBackend.scala | 46 +++++++++++-------- .../RiakStorageBackendTestIntegration.scala | 31 ++++++++++++- 2 files changed, 57 insertions(+), 20 deletions(-) diff --git a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala index bf3a5c169f..12f28a4990 100644 --- a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala +++ b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala @@ -18,13 +18,10 @@ import collection.mutable.ArrayBuffer import java.util.{Properties, Map => JMap} import se.scalablesolutions.akka.persistence.common.PersistentMapBinary.COrdering._ import collection.immutable._ -import com.trifork.riak.{RiakObject, RiakClient} import com.google.protobuf.ByteString import com.google.protobuf.ByteString._ -/* - RequiredReads + RequiredWrites should be > ReplicationFactor for all Voldemort Stores - In this case all VoldemortBackend operations can be retried until successful, and data should remain consistent - */ +import com.trifork.riak.{RequestMeta, RiakObject, RiakClient} + private[akka] object RiakStorageBackend extends MapStorageBackend[Array[Byte], Array[Byte]] with @@ -32,17 +29,13 @@ MapStorageBackend[Array[Byte], Array[Byte]] with RefStorageBackend[Array[Byte]] with QueueStorageBackend[Array[Byte]] with Logging { - val bootstrapUrlsProp = "bootstrap_urls" - val clientConfig = config.getConfigMap("akka.storage.riak.client") match { - case Some(configMap) => getClientConfig(configMap.asMap) - case None => getClientConfig(new HashMap[String, String] + (bootstrapUrlsProp -> "tcp://localhost:6666")) - } val refBucket = config.getString("akka.storage.riak.bucket.ref", "Refs") val mapBucket = config.getString("akka.storage.riak.bucket.map", "Maps") val vectorBucket = config.getString("akka.storage.riak.bucket.vector", "Vectors") val queueBucket = config.getString("akka.storage.riak.bucket.queue", "Queues") - - var riakClient: RiakClient = new RiakClient("localhost"); + val clientHost = config.getString("akka.storage.riak.client.host", "localhost") + val clientPort = config.getInt("akka.storage.riak.client.port", 8087) + var riakClient: RiakClient = new RiakClient(clientHost, clientPort); val nullMapValueHeader = 0x00.byteValue val nullMapValue: Array[Byte] = Array(nullMapValueHeader) @@ -124,6 +117,7 @@ MapStorageBackend[Array[Byte], Array[Byte]] with keys.foreach { key => MapClient.delete(getKey(name, key)) + log.debug("deleted key %s for %s", key, name) } MapClient.delete(getKey(name, mapKeysIndex)) } @@ -469,17 +463,24 @@ MapStorageBackend[Array[Byte], Array[Byte]] with trait RiakAccess { def bucket: String - + //http://www.mail-archive.com/riak-users@lists.basho.com/msg01013.html + val quorum: Int = 0xfffffffd + val one: Int = 0xfffffffe + val all: Int = 0xfffffffc + val default: Int = 0xfffffffb def put(key: Array[Byte], value: Array[Byte]) = { - riakClient.store(new RiakObject(bucket, key, value)) + riakClient.store(new RiakObject(bucket, key, value), new RequestMeta().w(quorum).dw(quorum)) } def getValue(key: Array[Byte]): Array[Byte] = { - val objs = riakClient.fetch(bucket, key) + val objs = riakClient.fetch(bucket, key, quorum) objs.size match { case 0 => null; - case _ => objs.last.getValue + case _ => objs.last.getValue.isEmpty match { + case true => null + case false => objs(0).getValue + } } } @@ -493,19 +494,26 @@ MapStorageBackend[Array[Byte], Array[Byte]] with def getAll(keys: Traversable[Array[Byte]]): Map[Array[Byte], Array[Byte]] = { var result = new HashMap[Array[Byte], Array[Byte]] keys.foreach { - key => result += key -> getValue(key) + key => + val value = getValue(key) + Option(value) match { + case Some(value) => result += key -> value + case None => () + } } result } def delete(key: Array[Byte]) = { - riakClient.delete(bucket, key) + riakClient.delete(bucket, key, quorum) } def drop() { - JavaConversions.asIterable(riakClient.listKeys(bucket)) foreach { + val keys = riakClient.listKeys(bucket) + JavaConversions.asIterable(keys) foreach { delete(_) } + keys.close } } diff --git a/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala b/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala index b26903c708..e72cc28ba4 100644 --- a/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala +++ b/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala @@ -8,17 +8,46 @@ import se.scalablesolutions.akka.util.{Logging} import collection.immutable.TreeSet import scala.None import org.scalatest.{Spec, FunSuite} -import com.trifork.riak.RiakClient +import com.trifork.riak.{RiakObject, RiakClient} +import collection.JavaConversions @RunWith(classOf[JUnitRunner]) class RiakStorageBackendTestIntegration extends Spec with ShouldMatchers with Logging { + import se.scalablesolutions.akka.persistence.riak.RiakStorageBackend.RiakAccess._ describe("successfuly configuring the riak pb client"){ it("should connect to riak, if riak is running"){ val riakClient = new RiakClient("localhost"); + val props = riakClient.getServerInfo + JavaConversions.asMap(props) foreach { + _ match { + case (k,v) => log.info("%s -> %s",k,v) + } + } + val maps = riakClient.getBucketProperties("Maps") + debug(maps) riakClient.listBuckets should not be (null) + riakClient.store(new RiakObject("Maps", "testkey", "testvalue")) + riakClient.fetch("Maps", "testkey").isEmpty should be (false) + riakClient.fetch("Maps", "testkey")(0).getValue.toStringUtf8 should be("testvalue") + //riakClient.delete("Maps","testkey") + RiakStorageBackend.MapClient.delete("testkey") + RiakStorageBackend.VectorClient.quorum + riakClient.fetch("Maps", "testkey").isEmpty should be (true) + riakClient.store(new RiakObject("Maps", "testkey", "testvalue")) + riakClient.fetch("Maps", "testkey").isEmpty should be (false) + riakClient.fetch("Maps", "testkey")(0).getValue.toStringUtf8 should be("testvalue") + //riakClient.delete("Maps","testkey") + RiakStorageBackend.MapClient.delete("testkey") + + riakClient.fetch("Maps", "testkey").isEmpty should be (true) } } + + def debug(ani:Any){ + log.debug("ani") + } + } \ No newline at end of file From 38ed24ad34c87b5d7dfa055ca3c865a9ea166d66 Mon Sep 17 00:00:00 2001 From: ticktock Date: Wed, 13 Oct 2010 19:02:25 -0400 Subject: [PATCH 04/17] fix an inconsistency --- .../src/main/scala/RiakStorageBackend.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala index 12f28a4990..940056cbfb 100644 --- a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala +++ b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala @@ -477,7 +477,7 @@ MapStorageBackend[Array[Byte], Array[Byte]] with val objs = riakClient.fetch(bucket, key, quorum) objs.size match { case 0 => null; - case _ => objs.last.getValue.isEmpty match { + case _ => objs(0).getValue.isEmpty match { case true => null case false => objs(0).getValue } From 7b465bc46fef1b06bd5c3d3a36508d3427bda9be Mon Sep 17 00:00:00 2001 From: ticktock Date: Thu, 14 Oct 2010 19:50:17 -0400 Subject: [PATCH 05/17] added fork of riak-java-pb-client to embedded repo, udpated backend to use new code therein, and all tests pass --- .../src/main/scala/RiakStorageBackend.scala | 10 +++- .../RiakStorageBackendTestIntegration.scala | 53 ------------------ .../scala/RiakTicket343TestIntegration.scala | 2 +- ...ava-pb-client-1.0-for-akka-by-ticktock.jar | Bin 0 -> 226905 bytes project/build/AkkaProject.scala | 4 +- 5 files changed, 10 insertions(+), 59 deletions(-) delete mode 100644 akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala create mode 100644 embedded-repo/com/trifork/riak-java-pb-client/1.0-for-akka-by-ticktock/riak-java-pb-client-1.0-for-akka-by-ticktock.jar diff --git a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala index 940056cbfb..3a4a436e26 100644 --- a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala +++ b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala @@ -470,16 +470,20 @@ MapStorageBackend[Array[Byte], Array[Byte]] with val default: Int = 0xfffffffb def put(key: Array[Byte], value: Array[Byte]) = { - riakClient.store(new RiakObject(bucket, key, value), new RequestMeta().w(quorum).dw(quorum)) + val objs: Array[RiakObject] = riakClient.fetch(bucket, key, quorum) + objs.size match { + case 0 => riakClient.store(new RiakObject(bucket, key, value), new RequestMeta().w(quorum).dw(quorum)) + case _ => riakClient.store(new RiakObject(objs(0).getVclock, bucket, key, value),new RequestMeta().w(quorum).dw(quorum)) + } } def getValue(key: Array[Byte]): Array[Byte] = { val objs = riakClient.fetch(bucket, key, quorum) objs.size match { case 0 => null; - case _ => objs(0).getValue.isEmpty match { + case _ => objs.last.getValue.isEmpty match { case true => null - case false => objs(0).getValue + case false => objs.last.getValue } } } diff --git a/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala b/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala deleted file mode 100644 index e72cc28ba4..0000000000 --- a/akka-persistence/akka-persistence-riak/src/test/scala/RiakStorageBackendTestIntegration.scala +++ /dev/null @@ -1,53 +0,0 @@ -package se.scalablesolutions.akka.persistence.riak - -import org.scalatest.matchers.ShouldMatchers -import org.junit.runner.RunWith -import org.scalatest.junit.JUnitRunner -import se.scalablesolutions.akka.persistence.riak.RiakStorageBackend._ -import se.scalablesolutions.akka.util.{Logging} -import collection.immutable.TreeSet -import scala.None -import org.scalatest.{Spec, FunSuite} -import com.trifork.riak.{RiakObject, RiakClient} -import collection.JavaConversions - -@RunWith(classOf[JUnitRunner]) -class RiakStorageBackendTestIntegration extends Spec with ShouldMatchers with Logging { - - import se.scalablesolutions.akka.persistence.riak.RiakStorageBackend.RiakAccess._ - - describe("successfuly configuring the riak pb client"){ - it("should connect to riak, if riak is running"){ - val riakClient = new RiakClient("localhost"); - val props = riakClient.getServerInfo - JavaConversions.asMap(props) foreach { - _ match { - case (k,v) => log.info("%s -> %s",k,v) - } - } - val maps = riakClient.getBucketProperties("Maps") - debug(maps) - riakClient.listBuckets should not be (null) - riakClient.store(new RiakObject("Maps", "testkey", "testvalue")) - riakClient.fetch("Maps", "testkey").isEmpty should be (false) - riakClient.fetch("Maps", "testkey")(0).getValue.toStringUtf8 should be("testvalue") - //riakClient.delete("Maps","testkey") - RiakStorageBackend.MapClient.delete("testkey") - RiakStorageBackend.VectorClient.quorum - riakClient.fetch("Maps", "testkey").isEmpty should be (true) - riakClient.store(new RiakObject("Maps", "testkey", "testvalue")) - riakClient.fetch("Maps", "testkey").isEmpty should be (false) - riakClient.fetch("Maps", "testkey")(0).getValue.toStringUtf8 should be("testvalue") - //riakClient.delete("Maps","testkey") - RiakStorageBackend.MapClient.delete("testkey") - - riakClient.fetch("Maps", "testkey").isEmpty should be (true) - } - } - - - def debug(ani:Any){ - log.debug("ani") - } - -} \ No newline at end of file diff --git a/akka-persistence/akka-persistence-riak/src/test/scala/RiakTicket343TestIntegration.scala b/akka-persistence/akka-persistence-riak/src/test/scala/RiakTicket343TestIntegration.scala index 9782730803..5fe32e9424 100644 --- a/akka-persistence/akka-persistence-riak/src/test/scala/RiakTicket343TestIntegration.scala +++ b/akka-persistence/akka-persistence-riak/src/test/scala/RiakTicket343TestIntegration.scala @@ -10,7 +10,7 @@ import org.scalatest.junit.JUnitRunner import se.scalablesolutions.akka.persistence.common._ @RunWith(classOf[JUnitRunner]) -class RiakTicket343Test extends Ticket343Test { +class RiakTicket343TestIntegration extends Ticket343Test { def dropMapsAndVectors: Unit = { RiakStorageBackend.VectorClient.drop RiakStorageBackend.MapClient.drop diff --git a/embedded-repo/com/trifork/riak-java-pb-client/1.0-for-akka-by-ticktock/riak-java-pb-client-1.0-for-akka-by-ticktock.jar b/embedded-repo/com/trifork/riak-java-pb-client/1.0-for-akka-by-ticktock/riak-java-pb-client-1.0-for-akka-by-ticktock.jar new file mode 100644 index 0000000000000000000000000000000000000000..053eb397c74e35bdaa0ede46305db153b57e569b GIT binary patch literal 226905 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
9M`?o(epG3r5ZbAZ(2&m!sfi$r98 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

L^w74>G;vVY`nPezJBv@R z)dCB6DoejRS+WH_w`_Cz^~PFj=k5+Y2gV20QgK^ZTwgg&SuI^K?Y-oW+VhKMKieuI zw#~CQ@|@_hIde@u1w>DE_KR{;{p5M9*i7=g=buv|ZJp=$%59pMWLiT1V_yDMOS^cg_bl7<^Tlz#-BUb8ZZ28z^N3-?>bF5^ z3vVu6!573LerHQpnbjGoj##|$O&mrSd_%74Xo!55ZO8VA|^ z7Q{Rdcov+#?t$#f7}Lfs>xuKrpL|$(d~Z&~JdwaNYhD$FtTv5UIZxMBcVYh3Cp)SI z6C5 zUe{3ml|_qxe$}L~xuqOY3iGW(g=hGmZ92g6$6eP~Jn%rHl*7JVT&J&Gh)&5jbtd@_piy^DNg&kC4c z7kR20n15up&wg!|pD{C=%x|;!-#l{fwBVX1mhyE;tHUNe3GJKoeex5-Gl9o7f5+vw zYCqcAv&NwJ%cT9A`Q~lmds-%YtZ?&Z%d3|8uNiM!-kntHmv8t{&+xpb@p;V$4Q0W{ z&Sk1eec#0YGVIQ@xp%{FZvK7Ng+EH$c+>Bs-A|%rHd%Y`y!#~ApnS2xR_WDm|7=hD zApU4=n%bVjljfdlnH-UvZZ~5tr?Oh_TGaMTS)+rVfA@C1TX%|^fk8n9U+2IGPv;;wwZy43IXe~G zzCX?ynNZ39`_m@h%vrXxY?jHFsD(>2x8?RtWAcrDared+-`QqcJyuRWo3i_DnfaS@ z-yD{-b1d@MyY;KX&Mu}Xk!@2?t&~}`V8wz4t|oQ`j$groD<6D6>zAfJ`)0|ur8Dm9 zzn}H}@BYuV@2h`*h%Udwy1=#P^TFoVJ9i#zziFZH&~0A8e_wg8f?!SGylDm9;`cu- z6uJMbpZ(|QwRdXTXTSe6>*AebXW!Z_DLm1AxaYg=y#jV~_aC>vSC*)omw)_{CwKSo z;_96XFV_BO9ca7d7>Jg87D(R z#8*UIy?%G)%g;dz&(7NCwL8EeulwkhBY#%R^2zdSynNgFqi%1N(j{sCoID?wD`$IG zTRrPNub8cRB64Dc%Y5a45c`$h2aN6SEf%b+R#~R&pZoHf(CVx2G}eY}Kkl5h#amTl z*6eP%+T@lQo}YszX7o=JnDMIXZAG#DW`0$ZQ1undetEWD^1AysXSI@HtoM;CFOu#} zHVoYB?ZBkP=W04Np{@K?R>o(et>;7fuRS(=HFd)>{R@*8x-9YUR~I`fyt@2LrqDd$ z52@2VD<>yg$nm>xJ+{v!roVi7mGtK7Nsl)tKZ;I&@NJb!ezeZY)f*?IHBHu;m?CYd zw#ZFcJkz$V`kZnn&s5e^J^P$}ResLSfB0>}wdL-QHZEy-t||6wztPSH^Mx;0y5vYM zoR)V{C^0usX`gFC}*mx_hz3y8M*%9!a6F1*`APjpq_e*uL3G=Av!x z#(h)ntqk6fn^}5iYr*byM<=Bm3XQUubVbJ8x4((Y?Tx;g(dFmy;KrmWk}nsguN!8 zUb}5VO<=2IjV@4BBw=%3Pt zzjuvpCj3<6)19CDyy>yw(}Wq9+tM;P^dE{gcHd83{DE)woP)`yGrNC>v+Dh|KU&*& z=klG_48EyOA+xWn%}NgGZIuo$$-m@eweqXfRhujg7nR4eqti@Gcj_5&ok?9=W|wX> z|I#@Ri)BHTt|#9#HEp`E<`B!A!$)1yZKf`eGCXv2<@7TD)aVlx`qNHX@SjdSbGWAQ zWGjRBkJ$$*%tdp^ifrV9Ph=3i8o%W zvtEhQy3Bk`H^4qqi}_#hF}9YJKit_Vd(LUCIr=;0k97Wti2kQS|CAs5$}CmM4`O|> zi+4pJ*Ts3Vjd{M^k}_N7IoOCjxbAV_O12hrylS%c;oQSzlGX(id%P=l3GYscX|px@ z*S$SukFP(cVv3=Ui02{Y?xaAaWZ7Clp`Xzet}AtFS{$TLafF`OB%yaI(yr-duPsyZ z=4TP}y4U!&aIF>zV*-D5LVUa?5s+3(E~HOFlG(G?C|UrIjMi1eTH{`&2f$ v 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 JF*7hQ004zUa*O}~ literal 0 HcmV?d00001 diff --git a/project/build/AkkaProject.scala b/project/build/AkkaProject.scala index 44655aab6b..2fb0b11e26 100644 --- a/project/build/AkkaProject.scala +++ b/project/build/AkkaProject.scala @@ -86,7 +86,6 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { lazy val casbahModuleConfig = ModuleConfiguration("com.novus", CasbahRepo) lazy val timeModuleConfig = ModuleConfiguration("org.scala-tools", "time", CasbahSnapshotRepo) lazy val voldemortModuleConfig = ModuleConfiguration("voldemort", ClojarsRepo) - lazy val riakPBModuleConfig = ModuleConfiguration("org.clojars.mmcgrana", ClojarsRepo) lazy val embeddedRepo = EmbeddedRepo // This is the only exception, because the embedded repo is fast! // ------------------------------------------------------------------------------------------------------------------- @@ -251,7 +250,7 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { lazy val dbcp = "commons-dbcp" % "commons-dbcp" % "1.2.2" % "test" //Riak PB Client - lazy val riak_pb_client = "org.clojars.mmcgrana" % "riak-java-pb-client" % "0.1.0-SNAPSHOT" % "compile" + lazy val riak_pb_client = "com.trifork" % "riak-java-pb-client" % "1.0-for-akka-by-ticktock" % "compile" } // ------------------------------------------------------------------------------------------------------------------- @@ -615,6 +614,7 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { class AkkaRiakProject(info: ProjectInfo) extends AkkaDefaultProject(info, distPath) { val riak_pb = Dependencies.riak_pb_client + val protobuf = Dependencies.protobuf //testing val scalatest = Dependencies.scalatest From b8acb06681813e990b734007954c96777264f80f Mon Sep 17 00:00:00 2001 From: ticktock Date: Fri, 15 Oct 2010 10:28:20 -0400 Subject: [PATCH 06/17] final tweaks before pushing to master --- .../src/main/scala/RiakStorageBackend.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala index 7f15cf3112..dbe2ce9548 100644 --- a/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala +++ b/akka-persistence/akka-persistence-riak/src/main/scala/RiakStorageBackend.scala @@ -35,7 +35,7 @@ MapStorageBackend[Array[Byte], Array[Byte]] with val queueBucket = config.getString("akka.storage.riak.bucket.queue", "Queues") val clientHost = config.getString("akka.storage.riak.client.host", "localhost") val clientPort = config.getInt("akka.storage.riak.client.port", 8087) - var riakClient: RiakClient = new RiakClient(clientHost, clientPort); + val riakClient: RiakClient = new RiakClient(clientHost, clientPort); val nullMapValueHeader = 0x00.byteValue val nullMapValue: Array[Byte] = Array(nullMapValueHeader) From b4ef7059585d69fa32a511f6b9b03ad143a8697a Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Fri, 15 Oct 2010 17:24:15 +0200 Subject: [PATCH 07/17] Closing #456 --- .../src/main/scala/dispatch/Future.scala | 18 +++++++++ .../src/test/scala/dispatch/FutureSpec.scala | 40 +++++++++++++++++++ 2 files changed, 58 insertions(+) diff --git a/akka-actor/src/main/scala/dispatch/Future.scala b/akka-actor/src/main/scala/dispatch/Future.scala index 3fd1c708e4..ea06ebb4ec 100644 --- a/akka-actor/src/main/scala/dispatch/Future.scala +++ b/akka-actor/src/main/scala/dispatch/Future.scala @@ -45,6 +45,12 @@ object Futures { future.get } + /** + * Applies the supplied function to the specified collection of Futures after awaiting each future to be completed + */ + def awaitMap[A,B](in: Traversable[Future[A]])(fun: (Future[A]) => B): Traversable[B] = + in map { f => fun(f.await) } + /* def awaitEither[T](f1: Future[T], f2: Future[T]): Option[T] = { import Actor.Sender.Self @@ -83,6 +89,18 @@ sealed trait Future[T] { def timeoutInNanos: Long def result: Option[T] def exception: Option[Throwable] + def map[O](f: (T) => O): Future[O] = { + val wrapped = this + new Future[O] { + def await = { wrapped.await; this } + def awaitBlocking = { wrapped.awaitBlocking; this } + def isCompleted = wrapped.isCompleted + def isExpired = wrapped.isExpired + def timeoutInNanos = wrapped.timeoutInNanos + def result: Option[O] = { wrapped.result map f } + def exception: Option[Throwable] = wrapped.exception + } + } } trait CompletableFuture[T] extends Future[T] { diff --git a/akka-actor/src/test/scala/dispatch/FutureSpec.scala b/akka-actor/src/test/scala/dispatch/FutureSpec.scala index f740763fdf..04316f8a3d 100644 --- a/akka-actor/src/test/scala/dispatch/FutureSpec.scala +++ b/akka-actor/src/test/scala/dispatch/FutureSpec.scala @@ -4,6 +4,7 @@ import org.scalatest.junit.JUnitSuite import org.junit.Test import se.scalablesolutions.akka.dispatch.Futures import Actor._ +import org.multiverse.api.latches.StandardLatch object FutureSpec { class TestActor extends Actor { @@ -15,6 +16,18 @@ object FutureSpec { throw new RuntimeException("Expected exception; to test fault-tolerance") } } + + class TestDelayActor(await: StandardLatch) extends Actor { + def receive = { + case "Hello" => + await.await + self.reply("World") + case "NoReply" => { await.await } + case "Failure" => + await.await + throw new RuntimeException("Expected exception; to test fault-tolerance") + } + } } class FutureSpec extends JUnitSuite { @@ -103,4 +116,31 @@ class FutureSpec extends JUnitSuite { actor1.stop actor2.stop } + + @Test def shouldFutureMapBeDeferred { + val latch = new StandardLatch + val actor1 = actorOf(new TestDelayActor(latch)).start + + val mappedFuture = (actor1.!!![String]("Hello")).map(x => 5) + assert(mappedFuture.isCompleted === false) + assert(mappedFuture.isExpired === false) + latch.open + mappedFuture.await + assert(mappedFuture.isCompleted === true) + assert(mappedFuture.isExpired === false) + assert(mappedFuture.result === Some(5)) + } + + @Test def shouldFuturesAwaitMapHandleEmptySequence { + assert(Futures.awaitMap[Nothing,Unit](Nil)(x => ()) === Nil) + } + + @Test def shouldFuturesAwaitMapHandleNonEmptySequence { + val latches = (1 to 3) map (_ => new StandardLatch) + val actors = latches map (latch => actorOf(new TestDelayActor(latch)).start) + val futures = actors map (actor => (actor.!!![String]("Hello"))) + latches foreach { _.open } + + assert(Futures.awaitMap(futures)(_.result.map(_.length).getOrElse(0)).sum === (latches.size * "World".length)) + } } From 31620a4fd04da0da687dca4475c751efcad70ddc Mon Sep 17 00:00:00 2001 From: ticktock Date: Fri, 15 Oct 2010 12:26:31 -0400 Subject: [PATCH 08/17] adding default riak config to akka-reference.conf --- config/akka-reference.conf | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/config/akka-reference.conf b/config/akka-reference.conf index 5d3ff387f0..0ca834b8d4 100644 --- a/config/akka-reference.conf +++ b/config/akka-reference.conf @@ -186,6 +186,20 @@ akka { bootstrap_urls = "tcp://localhost:6666" # All Valid Voldemort Client properties are valid here, in string form } } + + riak { + bucket { + ref = "Refs" + maps = "Maps" + vector = "Vectors" + queue = "Queues" + } + + client{ + host = "localhost" + port = 8087 #Default Riak Protobuf port + } + } } camel { From 66975789cf9ee38e90ccb8c23a365688984f704a Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Mon, 18 Oct 2010 14:04:17 +0200 Subject: [PATCH 09/17] Removing local caching of actor self fields --- .../src/main/scala/actor/ActorRef.scala | 52 ++++++++++--------- 1 file changed, 28 insertions(+), 24 deletions(-) diff --git a/akka-actor/src/main/scala/actor/ActorRef.scala b/akka-actor/src/main/scala/actor/ActorRef.scala index 5548d030ff..c49777a978 100644 --- a/akka-actor/src/main/scala/actor/ActorRef.scala +++ b/akka-actor/src/main/scala/actor/ActorRef.scala @@ -28,6 +28,7 @@ import java.lang.reflect.Field import scala.reflect.BeanProperty import scala.collection.immutable.Stack import java.util.concurrent.atomic.{AtomicInteger, AtomicReference} +import annotation.tailrec private[akka] object ActorRefInternals { @@ -653,10 +654,6 @@ class LocalActorRef private[akka] ( protected[akka] val actorInstance = guard.withGuard { new AtomicReference[Actor](newActor) } - // Needed to be able to null out the 'val self: ActorRef' member variables to make the Actor - // instance elegible for garbage collection - private val actorSelfFields = findActorSelfField(actor.getClass) - //If it was started inside "newActor", initialize it if (isRunning) initializeActorInstance @@ -685,8 +682,7 @@ class LocalActorRef private[akka] ( lifeCycle = __lifeCycle _supervisor = __supervisor hotswap = __hotswap - actorSelfFields._1.set(actor, this) - actorSelfFields._2.set(actor, Some(this)) + setActorSelfFields(actor,this) start ActorRegistry.register(this) } @@ -821,7 +817,7 @@ class LocalActorRef private[akka] ( RemoteClientModule.unregister(remoteAddress.get, uuid) RemoteServerModule.unregister(this) } - nullOutActorRefReferencesFor(actorInstance.get) + setActorSelfFields(actorInstance.get,null) } //else if (isBeingRestarted) throw new ActorKilledException("Actor [" + toString + "] is being restarted.") } @@ -1142,7 +1138,7 @@ class LocalActorRef private[akka] ( private def restartActor(failedActor: Actor, reason: Throwable) = { failedActor.preRestart(reason) - nullOutActorRefReferencesFor(failedActor) + setActorSelfFields(failedActor,null) val freshActor = newActor freshActor.preStart actorInstance.set(freshActor) @@ -1289,25 +1285,33 @@ class LocalActorRef private[akka] ( } } - private def nullOutActorRefReferencesFor(actor: Actor) = { - actorSelfFields._1.set(actor, null) - actorSelfFields._2.set(actor, null) - } + private def setActorSelfFields(actor: Actor, value: ActorRef) { - private def findActorSelfField(clazz: Class[_]): Tuple2[Field, Field] = { - try { - val selfField = clazz.getDeclaredField("self") - val someSelfField = clazz.getDeclaredField("someSelf") - selfField.setAccessible(true) - someSelfField.setAccessible(true) - (selfField, someSelfField) - } catch { - case e: NoSuchFieldException => + @tailrec def lookupAndSetSelfFields(clazz: Class[_],actor: Actor, value: ActorRef): Boolean = { + val success = try { + val selfField = clazz.getDeclaredField("self") + val someSelfField = clazz.getDeclaredField("someSelf") + selfField.setAccessible(true) + someSelfField.setAccessible(true) + selfField.set(actor,value) + someSelfField.set(actor, if (value ne null) Some(value) else null) + true + } catch { + case e: NoSuchFieldException => false + } + + if (success) { + true + } + else { val parent = clazz.getSuperclass - if (parent ne null) findActorSelfField(parent) - else throw new IllegalActorStateException( - toString + " is not an Actor since it have not mixed in the 'Actor' trait") + if (parent eq null) + throw new IllegalActorStateException(toString + " is not an Actor since it have not mixed in the 'Actor' trait") + lookupAndSetSelfFields(parent,actor,value) + } } + + lookupAndSetSelfFields(actor.getClass,actor,value) } private def initializeActorInstance = { From 31aa8f7b812462f2d9c07a34916fcc893cde0b7a Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Mon, 18 Oct 2010 19:30:43 +0200 Subject: [PATCH 10/17] Refactored declarative supervision, removed ScalaConfig and JavaConfig, moved things around --- akka-actor/src/main/scala/actor/Actor.scala | 2 +- .../src/main/scala/actor/ActorRef.scala | 4 +- .../src/main/scala/actor/Supervisor.scala | 8 +- .../src/main/scala/actor/UntypedActor.scala | 2 +- .../src/main/scala/config/Configurator.scala | 4 +- .../main/scala/config/SupervisionConfig.scala | 212 +++++------------- .../akka/config/SupervisionConfig.java | 20 ++ .../ActorFireForgetRequestReplySpec.scala | 2 +- .../supervisor/RestartStrategySpec.scala | 2 +- .../actor/supervisor/SupervisorMiscSpec.scala | 5 +- .../actor/supervisor/SupervisorSpec.scala | 6 +- .../src/test/scala/misc/SchedulerSpec.scala | 6 +- .../amqp/FaultTolerantConnectionActor.scala | 3 +- akka-http/src/test/scala/SecuritySpec.scala | 2 +- .../src/test/scala/Ticket343Test.scala | 3 +- .../HbaseTicket343SpecTestIntegration.scala | 3 +- .../src/test/scala/MongoTicket343Spec.scala | 3 +- .../scala/RedisInconsistentSizeBugTest.scala | 3 +- .../src/test/scala/RedisTicket343Spec.scala | 3 +- .../src/main/scala/remote/Cluster.scala | 3 +- .../serialization/SerializationProtocol.scala | 3 +- .../scala/remote/RemoteSupervisorSpec.scala | 3 +- .../scala/remote/RemoteTypedActorSpec.scala | 16 +- .../src/main/scala/Boot.scala | 2 +- .../src/main/scala/ChatServer.scala | 3 +- .../src/main/java/sample/rest/java/Boot.java | 12 +- .../src/main/scala/SimpleService.scala | 3 +- .../src/main/scala/SimpleService.scala | 3 +- .../main/scala/DispatcherFactoryBean.scala | 2 +- .../SupervisionBeanDefinitionParser.scala | 6 +- .../main/scala/SupervisionFactoryBean.scala | 28 ++- .../scala/DispatcherFactoryBeanTest.scala | 2 +- .../SupervisionBeanDefinitionParserTest.scala | 5 +- .../scala/SupervisionFactoryBeanTest.scala | 4 +- .../src/main/scala/actor/TypedActor.scala | 2 +- .../scala/config/TypedActorConfigurator.scala | 8 +- .../config/TypedActorGuiceConfigurator.scala | 20 +- ...artNestedTransactionalTypedActorSpec.scala | 2 +- .../RestartTransactionalTypedActorSpec.scala | 16 +- .../TypedActorGuiceConfiguratorSpec.scala | 15 +- .../typed-actor/TypedActorLifecycleSpec.scala | 10 +- 41 files changed, 186 insertions(+), 275 deletions(-) create mode 100644 akka-actor/src/test/java/se/scalablesolutions/akka/config/SupervisionConfig.java diff --git a/akka-actor/src/main/scala/actor/Actor.scala b/akka-actor/src/main/scala/actor/Actor.scala index c939e8b62a..57b3dae38e 100644 --- a/akka-actor/src/main/scala/actor/Actor.scala +++ b/akka-actor/src/main/scala/actor/Actor.scala @@ -6,7 +6,7 @@ package se.scalablesolutions.akka.actor import se.scalablesolutions.akka.dispatch._ import se.scalablesolutions.akka.config.Config._ -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.util.Helpers.{narrow, narrowSilently} import se.scalablesolutions.akka.util.{Logging, Duration} import se.scalablesolutions.akka.AkkaException diff --git a/akka-actor/src/main/scala/actor/ActorRef.scala b/akka-actor/src/main/scala/actor/ActorRef.scala index c49777a978..1127da8a2e 100644 --- a/akka-actor/src/main/scala/actor/ActorRef.scala +++ b/akka-actor/src/main/scala/actor/ActorRef.scala @@ -6,8 +6,8 @@ package se.scalablesolutions.akka.actor import se.scalablesolutions.akka.dispatch._ import se.scalablesolutions.akka.config.Config._ -import se.scalablesolutions.akka.config.ScalaConfig._ -import se.scalablesolutions.akka.config.{NoFaultHandlingStrategy, AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy} +import se.scalablesolutions.akka.config.{NoFaultHandlingStrategy, AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy, + LifeCycle, Temporary, Permanent, UndefinedLifeCycle} import se.scalablesolutions.akka.stm.global._ import se.scalablesolutions.akka.stm.TransactionManagement._ import se.scalablesolutions.akka.stm.{ TransactionManagement, TransactionSetAbortedException } diff --git a/akka-actor/src/main/scala/actor/Supervisor.scala b/akka-actor/src/main/scala/actor/Supervisor.scala index ba559e6945..bed8848b21 100644 --- a/akka-actor/src/main/scala/actor/Supervisor.scala +++ b/akka-actor/src/main/scala/actor/Supervisor.scala @@ -4,8 +4,7 @@ package se.scalablesolutions.akka.actor -import se.scalablesolutions.akka.config.ScalaConfig._ -import se.scalablesolutions.akka.config.{AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy} +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.AkkaException import se.scalablesolutions.akka.util._ import ReflectiveAccess._ @@ -13,6 +12,7 @@ import Actor._ import java.util.concurrent.{CopyOnWriteArrayList, ConcurrentHashMap} import java.net.InetSocketAddress +import se.scalablesolutions.akka.config. {Supervision, AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy} class SupervisorException private[akka](message: String) extends AkkaException(message) @@ -83,8 +83,8 @@ object SupervisorFactory { config match { case SupervisorConfig(RestartStrategy(scheme, maxNrOfRetries, timeRange, trapExceptions), _) => scheme match { - case AllForOne => AllForOneStrategy(trapExceptions,maxNrOfRetries, timeRange) - case OneForOne => OneForOneStrategy(trapExceptions,maxNrOfRetries, timeRange) + case a:AllForOne => AllForOneStrategy(trapExceptions.toList,maxNrOfRetries, timeRange) + case o:OneForOne => OneForOneStrategy(trapExceptions.toList,maxNrOfRetries, timeRange) } } } diff --git a/akka-actor/src/main/scala/actor/UntypedActor.scala b/akka-actor/src/main/scala/actor/UntypedActor.scala index cf16b7f064..fa53344c5f 100644 --- a/akka-actor/src/main/scala/actor/UntypedActor.scala +++ b/akka-actor/src/main/scala/actor/UntypedActor.scala @@ -7,7 +7,7 @@ package se.scalablesolutions.akka.actor import se.scalablesolutions.akka.dispatch._ import se.scalablesolutions.akka.stm.global._ import se.scalablesolutions.akka.config.{AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy} -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import java.net.InetSocketAddress diff --git a/akka-actor/src/main/scala/config/Configurator.scala b/akka-actor/src/main/scala/config/Configurator.scala index ba7e1f35f2..eabb57ab51 100644 --- a/akka-actor/src/main/scala/config/Configurator.scala +++ b/akka-actor/src/main/scala/config/Configurator.scala @@ -4,12 +4,12 @@ package se.scalablesolutions.akka.config -import ScalaConfig.{RestartStrategy, Component} +import se.scalablesolutions.akka.config.Supervision. {SuperviseTypedActor, RestartStrategy} private[akka] trait TypedActorConfiguratorBase { def getExternalDependency[T](clazz: Class[T]): T - def configure(restartStrategy: RestartStrategy, components: List[Component]): TypedActorConfiguratorBase + def configure(restartStrategy: RestartStrategy, components: List[SuperviseTypedActor]): TypedActorConfiguratorBase def inject: TypedActorConfiguratorBase diff --git a/akka-actor/src/main/scala/config/SupervisionConfig.scala b/akka-actor/src/main/scala/config/SupervisionConfig.scala index c74820818b..1f30472b05 100644 --- a/akka-actor/src/main/scala/config/SupervisionConfig.scala +++ b/akka-actor/src/main/scala/config/SupervisionConfig.scala @@ -47,17 +47,24 @@ case object NoFaultHandlingStrategy extends FaultHandlingStrategy { def trapExit: List[Class[_ <: Throwable]] = Nil } +sealed abstract class LifeCycle + +case object Permanent extends LifeCycle +case object Temporary extends LifeCycle +case object UndefinedLifeCycle extends LifeCycle + +case class RemoteAddress(val hostname: String, val port: Int) + /** * Configuration classes - not to be used as messages. * * @author Jonas Bonér */ -object ScalaConfig { +object Supervision { sealed abstract class ConfigElement abstract class Server extends ConfigElement abstract class FailOverScheme extends ConfigElement - abstract class LifeCycle extends ConfigElement case class SupervisorConfig(restartStrategy: RestartStrategy, worker: List[Server]) extends Server { //Java API @@ -65,7 +72,7 @@ object ScalaConfig { } class Supervise(val actorRef: ActorRef, val lifeCycle: LifeCycle, _remoteAddress: RemoteAddress) extends Server { - val remoteAddress: Option[RemoteAddress] = if (_remoteAddress eq null) None else Some(_remoteAddress) + val remoteAddress: Option[RemoteAddress] = Option(_remoteAddress) } object Supervise { @@ -74,22 +81,27 @@ object ScalaConfig { def unapply(supervise: Supervise) = Some((supervise.actorRef, supervise.lifeCycle, supervise.remoteAddress)) } - case class RestartStrategy( - scheme: FailOverScheme, - maxNrOfRetries: Int, - withinTimeRange: Int, - trapExceptions: List[Class[_ <: Throwable]]) extends ConfigElement + case class RestartStrategy(scheme: FailOverScheme, maxNrOfRetries: Int, withinTimeRange: Int, trapExceptions: Array[Class[_ <: Throwable]]) extends ConfigElement - case object AllForOne extends FailOverScheme - case object OneForOne extends FailOverScheme + object RestartStrategy { + def apply(scheme: FailOverScheme, maxNrOfRetries: Int, withinTimeRange: Int, trapExceptions: List[Class[_ <: Throwable]]) = + new RestartStrategy(scheme,maxNrOfRetries,withinTimeRange,trapExceptions.toArray) + } - case object Permanent extends LifeCycle - case object Temporary extends LifeCycle - case object UndefinedLifeCycle extends LifeCycle + //Java API + class AllForOne extends FailOverScheme + class OneForOne extends FailOverScheme - case class RemoteAddress(val hostname: String, val port: Int) extends ConfigElement + //Java API (& Scala if you fancy) + def permanent() = se.scalablesolutions.akka.config.Permanent + def temporary() = se.scalablesolutions.akka.config.Temporary + def undefinedLifeCycle = se.scalablesolutions.akka.config.UndefinedLifeCycle - class Component(_intf: Class[_], + //Scala API + object AllForOne extends AllForOne { def apply() = this } + object OneForOne extends OneForOne { def apply() = this } + + case class SuperviseTypedActor(_intf: Class[_], val target: Class[_], val lifeCycle: LifeCycle, val timeout: Long, @@ -97,165 +109,53 @@ object ScalaConfig { _dispatcher: MessageDispatcher, // optional _remoteAddress: RemoteAddress // optional ) extends Server { - val intf: Option[Class[_]] = if (_intf eq null) None else Some(_intf) - val dispatcher: Option[MessageDispatcher] = if (_dispatcher eq null) None else Some(_dispatcher) - val remoteAddress: Option[RemoteAddress] = if (_remoteAddress eq null) None else Some(_remoteAddress) - } - object Component { - def apply(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long) = - new Component(intf, target, lifeCycle, timeout, false, null, null) - - def apply(target: Class[_], lifeCycle: LifeCycle, timeout: Long) = - new Component(null, target, lifeCycle, timeout, false, null, null) - - def apply(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, dispatcher: MessageDispatcher) = - new Component(intf, target, lifeCycle, timeout, false, dispatcher, null) - - def apply(target: Class[_], lifeCycle: LifeCycle, timeout: Long, dispatcher: MessageDispatcher) = - new Component(null, target, lifeCycle, timeout, false, dispatcher, null) - - def apply(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, remoteAddress: RemoteAddress) = - new Component(intf, target, lifeCycle, timeout, false, null, remoteAddress) - - def apply(target: Class[_], lifeCycle: LifeCycle, timeout: Long, remoteAddress: RemoteAddress) = - new Component(null, target, lifeCycle, timeout, false, null, remoteAddress) - - def apply(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, dispatcher: MessageDispatcher, remoteAddress: RemoteAddress) = - new Component(intf, target, lifeCycle, timeout, false, dispatcher, remoteAddress) - - def apply(target: Class[_], lifeCycle: LifeCycle, timeout: Long, dispatcher: MessageDispatcher, remoteAddress: RemoteAddress) = - new Component(null, target, lifeCycle, timeout, false, dispatcher, remoteAddress) - - def apply(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean) = - new Component(intf, target, lifeCycle, timeout, transactionRequired, null, null) - - def apply(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean) = - new Component(null, target, lifeCycle, timeout, transactionRequired, null, null) - - def apply(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, dispatcher: MessageDispatcher) = - new Component(intf, target, lifeCycle, timeout, transactionRequired, dispatcher, null) - - def apply(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, dispatcher: MessageDispatcher) = - new Component(null, target, lifeCycle, timeout, transactionRequired, dispatcher, null) - - def apply(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, remoteAddress: RemoteAddress) = - new Component(intf, target, lifeCycle, timeout, transactionRequired, null, remoteAddress) - - def apply(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, remoteAddress: RemoteAddress) = - new Component(null, target, lifeCycle, timeout, transactionRequired, null, remoteAddress) - - def apply(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, dispatcher: MessageDispatcher, remoteAddress: RemoteAddress) = - new Component(intf, target, lifeCycle, timeout, transactionRequired, dispatcher, remoteAddress) - - def apply(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, dispatcher: MessageDispatcher, remoteAddress: RemoteAddress) = - new Component(null, target, lifeCycle, timeout, transactionRequired, dispatcher, remoteAddress) - } -} - -/** - * @author Jonas Bonér - */ -object JavaConfig { - import scala.reflect.BeanProperty - - sealed abstract class ConfigElement - - class RestartStrategy( - @BeanProperty val scheme: FailOverScheme, - @BeanProperty val maxNrOfRetries: Int, - @BeanProperty val withinTimeRange: Int, - @BeanProperty val trapExceptions: Array[Class[_ <: Throwable]]) extends ConfigElement { - def transform = se.scalablesolutions.akka.config.ScalaConfig.RestartStrategy( - scheme.transform, maxNrOfRetries, withinTimeRange, trapExceptions.toList) - } - - abstract class LifeCycle extends ConfigElement { - def transform: se.scalablesolutions.akka.config.ScalaConfig.LifeCycle - } - - class Permanent extends LifeCycle { - override def transform = se.scalablesolutions.akka.config.ScalaConfig.Permanent - } - - class Temporary extends LifeCycle { - override def transform = se.scalablesolutions.akka.config.ScalaConfig.Temporary - } - - class UndefinedLifeCycle extends LifeCycle { - override def transform = se.scalablesolutions.akka.config.ScalaConfig.UndefinedLifeCycle - } - - abstract class FailOverScheme extends ConfigElement { - def transform: se.scalablesolutions.akka.config.ScalaConfig.FailOverScheme - } - class AllForOne extends FailOverScheme { - override def transform = se.scalablesolutions.akka.config.ScalaConfig.AllForOne - } - class OneForOne extends FailOverScheme { - override def transform = se.scalablesolutions.akka.config.ScalaConfig.OneForOne - } - - class RemoteAddress(@BeanProperty val hostname: String, @BeanProperty val port: Int) - - abstract class Server extends ConfigElement - class Component(@BeanProperty val intf: Class[_], - @BeanProperty val target: Class[_], - @BeanProperty val lifeCycle: LifeCycle, - @BeanProperty val timeout: Long, - @BeanProperty val transactionRequired: Boolean, // optional - @BeanProperty val dispatcher: MessageDispatcher, // optional - @BeanProperty val remoteAddress: RemoteAddress // optional - ) extends Server { - - def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long) = - this(intf, target, lifeCycle, timeout, false, null, null) + val intf: Option[Class[_]] = Option(_intf) + val dispatcher: Option[MessageDispatcher] = Option(_dispatcher) + val remoteAddress: Option[RemoteAddress] = Option(_remoteAddress) def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long) = - this(null, target, lifeCycle, timeout, false, null, null) + this(null: Class[_], target, lifeCycle, timeout, false, null.asInstanceOf[MessageDispatcher], null: RemoteAddress) - def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, remoteAddress: RemoteAddress) = - this(intf, target, lifeCycle, timeout, false, null, remoteAddress) - - def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, remoteAddress: RemoteAddress) = - this(null, target, lifeCycle, timeout, false, null, remoteAddress) + def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long) = + this(intf, target, lifeCycle, timeout, false, null.asInstanceOf[MessageDispatcher], null: RemoteAddress) def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, dispatcher: MessageDispatcher) = this(intf, target, lifeCycle, timeout, false, dispatcher, null) def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, dispatcher: MessageDispatcher) = - this(null, target, lifeCycle, timeout, false, dispatcher, null) + this(null: Class[_], target, lifeCycle, timeout, false, dispatcher, null:RemoteAddress) + + def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, remoteAddress: RemoteAddress) = + this(intf, target, lifeCycle, timeout, false, null: MessageDispatcher, remoteAddress) + + def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, remoteAddress: RemoteAddress) = + this(null: Class[_], target, lifeCycle, timeout, false, null, remoteAddress) + + def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, dispatcher: MessageDispatcher, remoteAddress: RemoteAddress) = + this(intf, target, lifeCycle, timeout, false, dispatcher, remoteAddress) def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, dispatcher: MessageDispatcher, remoteAddress: RemoteAddress) = - this(null, target, lifeCycle, timeout, false, dispatcher, remoteAddress) + this(null: Class[_], target, lifeCycle, timeout, false, dispatcher, remoteAddress) def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean) = - this(intf, target, lifeCycle, timeout, transactionRequired, null, null) + this(intf, target, lifeCycle, timeout, transactionRequired, null: MessageDispatcher, null: RemoteAddress) def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean) = - this(null, target, lifeCycle, timeout, transactionRequired, null, null) - - def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, remoteAddress: RemoteAddress) = - this(intf, target, lifeCycle, timeout, transactionRequired, null, remoteAddress) - - def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, remoteAddress: RemoteAddress) = - this(null, target, lifeCycle, timeout, transactionRequired, null, remoteAddress) + this(null: Class[_], target, lifeCycle, timeout, transactionRequired, null: MessageDispatcher, null: RemoteAddress) def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, dispatcher: MessageDispatcher) = - this(intf, target, lifeCycle, timeout, transactionRequired, dispatcher, null) + this(intf, target, lifeCycle, timeout, transactionRequired, dispatcher, null: RemoteAddress) def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, dispatcher: MessageDispatcher) = - this(null, target, lifeCycle, timeout, transactionRequired, dispatcher, null) + this(null: Class[_], target, lifeCycle, timeout, transactionRequired, dispatcher, null: RemoteAddress) + + def this(intf: Class[_], target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, remoteAddress: RemoteAddress) = + this(intf, target, lifeCycle, timeout, transactionRequired, null: MessageDispatcher, remoteAddress) + + def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, remoteAddress: RemoteAddress) = + this(null: Class[_], target, lifeCycle, timeout, transactionRequired, null: MessageDispatcher, remoteAddress) def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, dispatcher: MessageDispatcher, remoteAddress: RemoteAddress) = - this(null, target, lifeCycle, timeout, transactionRequired, dispatcher, remoteAddress) - - def transform = - se.scalablesolutions.akka.config.ScalaConfig.Component( - intf, target, lifeCycle.transform, timeout, transactionRequired, dispatcher, - if (remoteAddress ne null) se.scalablesolutions.akka.config.ScalaConfig.RemoteAddress(remoteAddress.hostname, remoteAddress.port) else null) - - def newSupervised(actorRef: ActorRef) = - se.scalablesolutions.akka.config.ScalaConfig.Supervise(actorRef, lifeCycle.transform) + this(null: Class[_], target, lifeCycle, timeout, transactionRequired, dispatcher, remoteAddress) } - -} +} \ No newline at end of file diff --git a/akka-actor/src/test/java/se/scalablesolutions/akka/config/SupervisionConfig.java b/akka-actor/src/test/java/se/scalablesolutions/akka/config/SupervisionConfig.java new file mode 100644 index 0000000000..d8de22eb59 --- /dev/null +++ b/akka-actor/src/test/java/se/scalablesolutions/akka/config/SupervisionConfig.java @@ -0,0 +1,20 @@ +package se.scalablesolutions.akka.config; + +import se.scalablesolutions.akka.actor.ActorRef; + +import java.util.ArrayList; +import java.util.List; + +import static se.scalablesolutions.akka.config.Supervision.*; + +public class SupervisionConfig { + /*Just some sample code to demonstrate the declarative supervision configuration for Java */ + public SupervisorConfig createSupervisorConfig(List toSupervise) { + ArrayList targets = new ArrayList(toSupervise.size()); + for(ActorRef ref : toSupervise) { + targets.add(new Supervise(ref, permanent(), new RemoteAddress("localhost",9999))); + } + + return new SupervisorConfig(new RestartStrategy(new OneForOne(),50,1000,new Class[]{ Exception.class}), targets.toArray(new Server[0])); + } +} diff --git a/akka-actor/src/test/scala/actor/actor/ActorFireForgetRequestReplySpec.scala b/akka-actor/src/test/scala/actor/actor/ActorFireForgetRequestReplySpec.scala index 7741b79cea..f04d8016d2 100644 --- a/akka-actor/src/test/scala/actor/actor/ActorFireForgetRequestReplySpec.scala +++ b/akka-actor/src/test/scala/actor/actor/ActorFireForgetRequestReplySpec.scala @@ -1,7 +1,7 @@ package se.scalablesolutions.akka.actor import java.util.concurrent.{TimeUnit, CyclicBarrier, TimeoutException} -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config._ import org.scalatest.junit.JUnitSuite import org.junit.Test diff --git a/akka-actor/src/test/scala/actor/supervisor/RestartStrategySpec.scala b/akka-actor/src/test/scala/actor/supervisor/RestartStrategySpec.scala index 887785f568..6b105061a7 100644 --- a/akka-actor/src/test/scala/actor/supervisor/RestartStrategySpec.scala +++ b/akka-actor/src/test/scala/actor/supervisor/RestartStrategySpec.scala @@ -12,7 +12,7 @@ import org.junit.Test import Actor._ import se.scalablesolutions.akka.config.OneForOneStrategy import java.util.concurrent.{TimeUnit, CountDownLatch} -import se.scalablesolutions.akka.config.ScalaConfig.{Permanent, LifeCycle} +import se.scalablesolutions.akka.config.{Permanent, LifeCycle} import org.multiverse.api.latches.StandardLatch class RestartStrategySpec extends JUnitSuite { diff --git a/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala b/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala index 2805a8675d..933d9643f7 100644 --- a/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala +++ b/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala @@ -6,8 +6,9 @@ package se.scalablesolutions.akka.actor import org.scalatest.WordSpec import org.scalatest.matchers.MustMatchers import se.scalablesolutions.akka.dispatch.Dispatchers -import se.scalablesolutions.akka.config.ScalaConfig.{RestartStrategy, SupervisorConfig, LifeCycle, Permanent, OneForOne, Supervise} +import se.scalablesolutions.akka.config.Supervision.{RestartStrategy, SupervisorConfig, OneForOne, Supervise} import java.util.concurrent.CountDownLatch +import se.scalablesolutions.akka.config.Permanent class SupervisorMiscSpec extends WordSpec with MustMatchers { "A Supervisor" should { @@ -57,7 +58,7 @@ class SupervisorMiscSpec extends WordSpec with MustMatchers { val sup = Supervisor( SupervisorConfig( - RestartStrategy(OneForOne, 3, 5000, List(classOf[Exception])), + RestartStrategy(new OneForOne, 3, 5000, List(classOf[Exception])), Supervise(actor1, Permanent) :: Supervise(actor2, Permanent) :: Supervise(actor3, Permanent) :: diff --git a/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala b/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala index d7390a0d43..ee32ca7f3a 100644 --- a/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala +++ b/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala @@ -4,14 +4,14 @@ package se.scalablesolutions.akka.actor -import se.scalablesolutions.akka.config.ScalaConfig._ -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.{OneWay, Die, Ping} import Actor._ import org.scalatest.junit.JUnitSuite import org.junit.Test import java.util.concurrent.{TimeUnit, LinkedBlockingQueue} +import se.scalablesolutions.akka.config.{Temporary, Permanent, OneForOneStrategy} object SupervisorSpec { var messageLog = new LinkedBlockingQueue[String] @@ -78,7 +78,7 @@ object SupervisorSpec { class TemporaryActor extends Actor { import self._ - lifeCycle = Temporary + lifeCycle = se.scalablesolutions.akka.config.Temporary def receive = { case Ping => messageLog.put("ping") diff --git a/akka-actor/src/test/scala/misc/SchedulerSpec.scala b/akka-actor/src/test/scala/misc/SchedulerSpec.scala index 2c7d43896c..9f0e127e56 100644 --- a/akka-actor/src/test/scala/misc/SchedulerSpec.scala +++ b/akka-actor/src/test/scala/misc/SchedulerSpec.scala @@ -3,9 +3,10 @@ package se.scalablesolutions.akka.actor import org.scalatest.junit.JUnitSuite import Actor._ import java.util.concurrent.{CountDownLatch, TimeUnit} -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import org.multiverse.api.latches.StandardLatch import org.junit.Test +import se.scalablesolutions.akka.config.Permanent class SchedulerSpec extends JUnitSuite { @@ -98,7 +99,7 @@ class SchedulerSpec extends JUnitSuite { val pingLatch = new CountDownLatch(6) val actor = actorOf(new Actor { - self.lifeCycle = Permanent + self.lifeCycle = se.scalablesolutions.akka.config.Permanent def receive = { case Ping => pingLatch.countDown @@ -107,6 +108,7 @@ class SchedulerSpec extends JUnitSuite { override def postRestart(reason: Throwable) = restartLatch.open }) + Supervisor( SupervisorConfig( RestartStrategy(AllForOne, 3, 1000, diff --git a/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/FaultTolerantConnectionActor.scala b/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/FaultTolerantConnectionActor.scala index 16ec8db389..acb61f02e3 100644 --- a/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/FaultTolerantConnectionActor.scala +++ b/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/FaultTolerantConnectionActor.scala @@ -8,8 +8,7 @@ import java.util.{TimerTask, Timer} import java.io.IOException import com.rabbitmq.client._ import se.scalablesolutions.akka.amqp.AMQP.ConnectionParameters -import se.scalablesolutions.akka.config.ScalaConfig.{Permanent} -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.{ Permanent, OneForOneStrategy } import se.scalablesolutions.akka.actor.{Exit, Actor} private[amqp] class FaultTolerantConnectionActor(connectionParameters: ConnectionParameters) extends Actor { diff --git a/akka-http/src/test/scala/SecuritySpec.scala b/akka-http/src/test/scala/SecuritySpec.scala index 6a3cf4f803..5931df69d0 100644 --- a/akka-http/src/test/scala/SecuritySpec.scala +++ b/akka-http/src/test/scala/SecuritySpec.scala @@ -4,7 +4,7 @@ package se.scalablesolutions.akka.security -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.actor.Actor._ import org.scalatest.Suite diff --git a/akka-persistence/akka-persistence-common/src/test/scala/Ticket343Test.scala b/akka-persistence/akka-persistence-common/src/test/scala/Ticket343Test.scala index 14eba7d4e3..db7d96876a 100644 --- a/akka-persistence/akka-persistence-common/src/test/scala/Ticket343Test.scala +++ b/akka-persistence/akka-persistence-common/src/test/scala/Ticket343Test.scala @@ -11,10 +11,9 @@ import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith import se.scalablesolutions.akka.actor.{Actor, ActorRef} -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.{OneForOneStrategy, Permanent} import Actor._ import se.scalablesolutions.akka.stm.global._ -import se.scalablesolutions.akka.config.ScalaConfig._ import se.scalablesolutions.akka.util.Logging import StorageObj._ diff --git a/akka-persistence/akka-persistence-hbase/src/test/scala/HbaseTicket343SpecTestIntegration.scala b/akka-persistence/akka-persistence-hbase/src/test/scala/HbaseTicket343SpecTestIntegration.scala index 930a3b25a7..9c1c91d01e 100644 --- a/akka-persistence/akka-persistence-hbase/src/test/scala/HbaseTicket343SpecTestIntegration.scala +++ b/akka-persistence/akka-persistence-hbase/src/test/scala/HbaseTicket343SpecTestIntegration.scala @@ -7,10 +7,9 @@ import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith import se.scalablesolutions.akka.actor.{Actor, ActorRef} -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.{OneForOneStrategy,Permanent} import Actor._ import se.scalablesolutions.akka.stm.global._ -import se.scalablesolutions.akka.config.ScalaConfig._ import se.scalablesolutions.akka.util.Logging import HbaseStorageBackend._ diff --git a/akka-persistence/akka-persistence-mongo/src/test/scala/MongoTicket343Spec.scala b/akka-persistence/akka-persistence-mongo/src/test/scala/MongoTicket343Spec.scala index a614fbc78d..c34f237566 100644 --- a/akka-persistence/akka-persistence-mongo/src/test/scala/MongoTicket343Spec.scala +++ b/akka-persistence/akka-persistence-mongo/src/test/scala/MongoTicket343Spec.scala @@ -7,10 +7,9 @@ import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith import se.scalablesolutions.akka.actor.{Actor, ActorRef} -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.{OneForOneStrategy,Permanent} import Actor._ import se.scalablesolutions.akka.stm.global._ -import se.scalablesolutions.akka.config.ScalaConfig._ import se.scalablesolutions.akka.util.Logging import MongoStorageBackend._ diff --git a/akka-persistence/akka-persistence-redis/src/test/scala/RedisInconsistentSizeBugTest.scala b/akka-persistence/akka-persistence-redis/src/test/scala/RedisInconsistentSizeBugTest.scala index 1bd2c34d86..a51d4150b1 100644 --- a/akka-persistence/akka-persistence-redis/src/test/scala/RedisInconsistentSizeBugTest.scala +++ b/akka-persistence/akka-persistence-redis/src/test/scala/RedisInconsistentSizeBugTest.scala @@ -5,11 +5,10 @@ import sbinary.Operations._ import sbinary.DefaultProtocol._ import se.scalablesolutions.akka.actor.{Actor, ActorRef} -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.{OneForOneStrategy, Permanent} import Actor._ import se.scalablesolutions.akka.persistence.common.PersistentVector import se.scalablesolutions.akka.stm.global._ -import se.scalablesolutions.akka.config.ScalaConfig._ import se.scalablesolutions.akka.util.Logging import java.util.{Calendar, Date} diff --git a/akka-persistence/akka-persistence-redis/src/test/scala/RedisTicket343Spec.scala b/akka-persistence/akka-persistence-redis/src/test/scala/RedisTicket343Spec.scala index f46aa9f224..46f233ecf9 100644 --- a/akka-persistence/akka-persistence-redis/src/test/scala/RedisTicket343Spec.scala +++ b/akka-persistence/akka-persistence-redis/src/test/scala/RedisTicket343Spec.scala @@ -7,11 +7,10 @@ import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith import se.scalablesolutions.akka.actor.{Actor} -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.{OneForOneStrategy,Permanent} import Actor._ import se.scalablesolutions.akka.persistence.common.PersistentVector import se.scalablesolutions.akka.stm.global._ -import se.scalablesolutions.akka.config.ScalaConfig._ import se.scalablesolutions.akka.util.Logging import RedisStorageBackend._ diff --git a/akka-remote/src/main/scala/remote/Cluster.scala b/akka-remote/src/main/scala/remote/Cluster.scala index c668228291..71354e8e77 100644 --- a/akka-remote/src/main/scala/remote/Cluster.scala +++ b/akka-remote/src/main/scala/remote/Cluster.scala @@ -5,11 +5,12 @@ package se.scalablesolutions.akka.remote import se.scalablesolutions.akka.config.Config.config -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.serialization.Serializer import se.scalablesolutions.akka.actor.{Supervisor, SupervisorFactory, Actor, ActorRef, ActorRegistry} import se.scalablesolutions.akka.util.Logging import scala.collection.immutable.{Map, HashMap} +import se.scalablesolutions.akka.config. {Permanent, RemoteAddress} /** * Interface for interacting with the Cluster Membership API. diff --git a/akka-remote/src/main/scala/serialization/SerializationProtocol.scala b/akka-remote/src/main/scala/serialization/SerializationProtocol.scala index 6ebc624e62..2343608607 100644 --- a/akka-remote/src/main/scala/serialization/SerializationProtocol.scala +++ b/akka-remote/src/main/scala/serialization/SerializationProtocol.scala @@ -11,8 +11,7 @@ import se.scalablesolutions.akka.dispatch.MessageInvocation import se.scalablesolutions.akka.remote.{RemoteServer, MessageSerializer} import se.scalablesolutions.akka.remote.protocol.RemoteProtocol.{ActorType => ActorTypeProtocol, _} import ActorTypeProtocol._ -import se.scalablesolutions.akka.config.{AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy} -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.{AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy, Permanent, Temporary, UndefinedLifeCycle} import se.scalablesolutions.akka.actor.{uuidFrom,newUuid} import se.scalablesolutions.akka.actor._ diff --git a/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala b/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala index 40f0d27640..e815231509 100644 --- a/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala +++ b/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala @@ -6,13 +6,14 @@ package se.scalablesolutions.akka.actor.remote import java.util.concurrent.{LinkedBlockingQueue, TimeUnit, BlockingQueue} import se.scalablesolutions.akka.serialization.BinaryString -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.remote.{RemoteServer, RemoteClient} import se.scalablesolutions.akka.OneWay import org.scalatest.junit.JUnitSuite import org.junit.{Test, Before, After} import se.scalablesolutions.akka.actor.{SupervisorFactory, Supervisor, ActorRef, Actor} import Actor._ +import se.scalablesolutions.akka.config.Permanent object Log { val messageLog: BlockingQueue[String] = new LinkedBlockingQueue[String] diff --git a/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala b/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala index 5a3a5bc2c4..9b5f407a27 100644 --- a/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala +++ b/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala @@ -8,15 +8,13 @@ import org.scalatest.matchers.ShouldMatchers import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith -import se.scalablesolutions.akka.config.Config -import se.scalablesolutions.akka.config._ -import se.scalablesolutions.akka.config.TypedActorConfigurator -import se.scalablesolutions.akka.config.JavaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.actor._ import se.scalablesolutions.akka.remote.{RemoteServer, RemoteClient} import java.util.concurrent.{LinkedBlockingQueue, TimeUnit, BlockingQueue} import org.scalatest.{BeforeAndAfterEach, Spec, Assertions, BeforeAndAfterAll} +import se.scalablesolutions.akka.config. {Permanent, Config, TypedActorConfigurator, RemoteAddress} object RemoteTypedActorSpec { val HOSTNAME = "localhost" @@ -50,18 +48,18 @@ class RemoteTypedActorSpec extends server.start("localhost", 9995) Config.config conf.configure( - new RestartStrategy(new AllForOne, 3, 5000, List(classOf[Exception]).toArray), + new RestartStrategy(AllForOne(), 3, 5000, List(classOf[Exception]).toArray), List( - new Component( + new SuperviseTypedActor( classOf[RemoteTypedActorOne], classOf[RemoteTypedActorOneImpl], - new Permanent, + Permanent, 10000, new RemoteAddress("localhost", 9995)), - new Component( + new SuperviseTypedActor( classOf[RemoteTypedActorTwo], classOf[RemoteTypedActorTwoImpl], - new Permanent, + Permanent, 10000, new RemoteAddress("localhost", 9995)) ).toArray).supervise diff --git a/akka-samples/akka-sample-camel/src/main/scala/Boot.scala b/akka-samples/akka-sample-camel/src/main/scala/Boot.scala index fc6afc856a..3892583026 100644 --- a/akka-samples/akka-sample-camel/src/main/scala/Boot.scala +++ b/akka-samples/akka-sample-camel/src/main/scala/Boot.scala @@ -9,7 +9,7 @@ import org.springframework.context.support.ClassPathXmlApplicationContext import se.scalablesolutions.akka.actor.Actor._ import se.scalablesolutions.akka.actor.{TypedActor, Supervisor} import se.scalablesolutions.akka.camel.CamelContextManager -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ /** * @author Martin Krasser diff --git a/akka-samples/akka-sample-chat/src/main/scala/ChatServer.scala b/akka-samples/akka-sample-chat/src/main/scala/ChatServer.scala index b65f833763..d2d09fc22e 100644 --- a/akka-samples/akka-sample-chat/src/main/scala/ChatServer.scala +++ b/akka-samples/akka-sample-chat/src/main/scala/ChatServer.scala @@ -11,8 +11,7 @@ import se.scalablesolutions.akka.remote.{RemoteNode, RemoteClient} import se.scalablesolutions.akka.persistence.common.PersistentVector import se.scalablesolutions.akka.persistence.redis.RedisStorage import se.scalablesolutions.akka.stm.global._ -import se.scalablesolutions.akka.config.ScalaConfig._ -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.{OneForOneStrategy,Permanent} import se.scalablesolutions.akka.util.Logging import Actor._ diff --git a/akka-samples/akka-sample-rest-java/src/main/java/sample/rest/java/Boot.java b/akka-samples/akka-sample-rest-java/src/main/java/sample/rest/java/Boot.java index 4702eead02..4775e0e7a8 100644 --- a/akka-samples/akka-sample-rest-java/src/main/java/sample/rest/java/Boot.java +++ b/akka-samples/akka-sample-rest-java/src/main/java/sample/rest/java/Boot.java @@ -5,23 +5,23 @@ package sample.rest.java; import se.scalablesolutions.akka.config.TypedActorConfigurator; -import static se.scalablesolutions.akka.config.JavaConfig.*; +import static se.scalablesolutions.akka.config.Supervision.*; public class Boot { public final static TypedActorConfigurator configurator = new TypedActorConfigurator(); static { configurator.configure( new RestartStrategy(new OneForOne(), 3, 5000, new Class[]{Exception.class}), - new Component[] { - new Component( + new SuperviseTypedActor[] { + new SuperviseTypedActor( SimpleService.class, SimpleServiceImpl.class, - new Permanent(), + permanent(), 1000), - new Component( + new SuperviseTypedActor( PersistentSimpleService.class, PersistentSimpleServiceImpl.class, - new Permanent(), + permanent(), 1000) }).supervise(); } diff --git a/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala b/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala index fb8bd7c381..31547e85a7 100644 --- a/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala +++ b/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala @@ -8,7 +8,7 @@ import se.scalablesolutions.akka.actor.{Transactor, SupervisorFactory, Actor} import se.scalablesolutions.akka.actor.Actor._ import se.scalablesolutions.akka.stm.TransactionalMap import se.scalablesolutions.akka.persistence.cassandra.CassandraStorage -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.util.Logging import se.scalablesolutions.akka.comet.AkkaClusterBroadcastFilter import scala.xml.NodeSeq @@ -21,6 +21,7 @@ import org.atmosphere.annotation.{Broadcast, Suspend,Cluster} import org.atmosphere.util.XSSHtmlFilter import org.atmosphere.cpr.{Broadcaster, BroadcastFilter} import org.atmosphere.jersey.Broadcastable +import se.scalablesolutions.akka.config.Permanent class Boot { val factory = SupervisorFactory( diff --git a/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala b/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala index 3f2b76a359..5af3a7ff69 100644 --- a/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala +++ b/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala @@ -6,11 +6,12 @@ package sample.security import se.scalablesolutions.akka.actor.{SupervisorFactory, Transactor, Actor} import se.scalablesolutions.akka.actor.Actor._ -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.util.Logging import se.scalablesolutions.akka.security.{BasicAuthenticationActor,BasicCredentials,SpnegoAuthenticationActor,DigestAuthenticationActor, UserInfo} import se.scalablesolutions.akka.stm.TransactionalMap import se.scalablesolutions.akka.actor.ActorRegistry.actorFor +import se.scalablesolutions.akka.config.Permanent class Boot { val factory = SupervisorFactory( diff --git a/akka-spring/src/main/scala/DispatcherFactoryBean.scala b/akka-spring/src/main/scala/DispatcherFactoryBean.scala index 34a3a012ea..893b44e24d 100644 --- a/akka-spring/src/main/scala/DispatcherFactoryBean.scala +++ b/akka-spring/src/main/scala/DispatcherFactoryBean.scala @@ -4,7 +4,7 @@ package se.scalablesolutions.akka.spring import org.springframework.beans.factory.config.AbstractFactoryBean -import se.scalablesolutions.akka.config.JavaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import AkkaSpringConfigurationTags._ import reflect.BeanProperty import se.scalablesolutions.akka.actor.ActorRef diff --git a/akka-spring/src/main/scala/SupervisionBeanDefinitionParser.scala b/akka-spring/src/main/scala/SupervisionBeanDefinitionParser.scala index 164018f588..cb797ba29a 100644 --- a/akka-spring/src/main/scala/SupervisionBeanDefinitionParser.scala +++ b/akka-spring/src/main/scala/SupervisionBeanDefinitionParser.scala @@ -6,7 +6,7 @@ package se.scalablesolutions.akka.spring import se.scalablesolutions.akka.util.Logging import org.springframework.beans.factory.support.BeanDefinitionBuilder import org.springframework.beans.factory.xml.{ParserContext, AbstractSingleBeanDefinitionParser} -import se.scalablesolutions.akka.config.JavaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import AkkaSpringConfigurationTags._ @@ -47,7 +47,7 @@ class SupervisionBeanDefinitionParser extends AbstractSingleBeanDefinitionParser } private[akka] def parseRestartStrategy(element: Element, builder: BeanDefinitionBuilder) { - val failover = if (mandatory(element, FAILOVER) == "AllForOne") new AllForOne() else new OneForOne() + val failover = if (mandatory(element, FAILOVER) == "AllForOne") AllForOne else OneForOne val timeRange = mandatory(element, TIME_RANGE).toInt val retries = mandatory(element, RETRIES).toInt val trapExitsElement = mandatoryElement(element, TRAP_EXISTS_TAG) @@ -71,7 +71,7 @@ class SupervisionBeanDefinitionParser extends AbstractSingleBeanDefinitionParser private def parseTrapExits(element: Element): Array[Class[_ <: Throwable]] = { import StringReflect._ val trapExits = DomUtils.getChildElementsByTagName(element, TRAP_EXIT_TAG).toArray.toList.asInstanceOf[List[Element]] - trapExits.map(DomUtils.getTextValue(_).toClass).toArray + trapExits.map(DomUtils.getTextValue(_).toClass.asInstanceOf[Class[_ <: Throwable]]).toArray } /* diff --git a/akka-spring/src/main/scala/SupervisionFactoryBean.scala b/akka-spring/src/main/scala/SupervisionFactoryBean.scala index c6d1e7ddc0..b11117ee35 100644 --- a/akka-spring/src/main/scala/SupervisionFactoryBean.scala +++ b/akka-spring/src/main/scala/SupervisionFactoryBean.scala @@ -4,13 +4,11 @@ package se.scalablesolutions.akka.spring import org.springframework.beans.factory.config.AbstractFactoryBean -import se.scalablesolutions.akka.config.TypedActorConfigurator -import se.scalablesolutions.akka.config.JavaConfig._ -import se.scalablesolutions.akka.config.ScalaConfig.{Supervise, Server, SupervisorConfig, RemoteAddress => SRemoteAddress} +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.actor.{Supervisor, SupervisorFactory, Actor} import AkkaSpringConfigurationTags._ import reflect.BeanProperty - +import se.scalablesolutions.akka.config.{Temporary, Permanent, TypedActorConfigurator, RemoteAddress} /** * Factory bean for supervisor configuration. @@ -46,7 +44,7 @@ class SupervisionFactoryBean extends AbstractFactoryBean[AnyRef] { private def createInstanceForUntypedActors() : Supervisor = { val factory = new SupervisorFactory( new SupervisorConfig( - restartStrategy.transform, + restartStrategy, supervised.map(createSupervise(_)))) factory.newInstance } @@ -54,24 +52,24 @@ class SupervisionFactoryBean extends AbstractFactoryBean[AnyRef] { /** * Create configuration for TypedActor */ - private[akka] def createComponent(props: ActorProperties): Component = { + private[akka] def createComponent(props: ActorProperties): SuperviseTypedActor = { import StringReflect._ - val lifeCycle = if (!props.lifecycle.isEmpty && props.lifecycle.equalsIgnoreCase(VAL_LIFECYCYLE_TEMPORARY)) new Temporary() else new Permanent() + val lifeCycle = if (!props.lifecycle.isEmpty && props.lifecycle.equalsIgnoreCase(VAL_LIFECYCYLE_TEMPORARY)) Temporary else Permanent val isRemote = (props.host ne null) && (!props.host.isEmpty) val withInterface = (props.interface ne null) && (!props.interface.isEmpty) if (isRemote) { //val remote = new RemoteAddress(props.host, props.port) val remote = new RemoteAddress(props.host, props.port.toInt) if (withInterface) { - new Component(props.interface.toClass, props.target.toClass, lifeCycle, props.timeout, props.transactional, remote) + new SuperviseTypedActor(props.interface.toClass, props.target.toClass, lifeCycle, props.timeout, props.transactional, remote) } else { - new Component(props.target.toClass, lifeCycle, props.timeout, props.transactional, remote) + new SuperviseTypedActor(props.target.toClass, lifeCycle, props.timeout, props.transactional, remote) } } else { if (withInterface) { - new Component(props.interface.toClass, props.target.toClass, lifeCycle, props.timeout, props.transactional) + new SuperviseTypedActor(props.interface.toClass, props.target.toClass, lifeCycle, props.timeout, props.transactional) } else { - new Component(props.target.toClass, lifeCycle, props.timeout, props.transactional) + new SuperviseTypedActor(props.target.toClass, lifeCycle, props.timeout, props.transactional) } } } @@ -81,7 +79,7 @@ class SupervisionFactoryBean extends AbstractFactoryBean[AnyRef] { */ private[akka] def createSupervise(props: ActorProperties): Server = { import StringReflect._ - val lifeCycle = if (!props.lifecycle.isEmpty && props.lifecycle.equalsIgnoreCase(VAL_LIFECYCYLE_TEMPORARY)) new Temporary() else new Permanent() + val lifeCycle = if (!props.lifecycle.isEmpty && props.lifecycle.equalsIgnoreCase(VAL_LIFECYCYLE_TEMPORARY)) Temporary else Permanent val isRemote = (props.host ne null) && (!props.host.isEmpty) val actorRef = Actor.actorOf(props.target.toClass) if (props.timeout > 0) { @@ -92,10 +90,10 @@ class SupervisionFactoryBean extends AbstractFactoryBean[AnyRef] { } val supervise = if (isRemote) { - val remote = new SRemoteAddress(props.host, props.port.toInt) - Supervise(actorRef, lifeCycle.transform, remote) + val remote = new RemoteAddress(props.host, props.port.toInt) + Supervise(actorRef, lifeCycle, remote) } else { - Supervise(actorRef, lifeCycle.transform) + Supervise(actorRef, lifeCycle) } supervise } diff --git a/akka-spring/src/test/scala/DispatcherFactoryBeanTest.scala b/akka-spring/src/test/scala/DispatcherFactoryBeanTest.scala index 3453fb5200..f4e9f640a4 100644 --- a/akka-spring/src/test/scala/DispatcherFactoryBeanTest.scala +++ b/akka-spring/src/test/scala/DispatcherFactoryBeanTest.scala @@ -7,7 +7,7 @@ import org.scalatest.Spec import org.scalatest.matchers.ShouldMatchers import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith -import se.scalablesolutions.akka.config.JavaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.dispatch.MessageDispatcher @RunWith(classOf[JUnitRunner]) diff --git a/akka-spring/src/test/scala/SupervisionBeanDefinitionParserTest.scala b/akka-spring/src/test/scala/SupervisionBeanDefinitionParserTest.scala index 15734fc9fa..45effd28e5 100644 --- a/akka-spring/src/test/scala/SupervisionBeanDefinitionParserTest.scala +++ b/akka-spring/src/test/scala/SupervisionBeanDefinitionParserTest.scala @@ -9,10 +9,9 @@ import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith import ScalaDom._ -import se.scalablesolutions.akka.config.JavaConfig._ - import org.w3c.dom.Element import org.springframework.beans.factory.support.BeanDefinitionBuilder +import se.scalablesolutions.akka.config.Supervision. {RestartStrategy, AllForOne} /** * Test for SupervisionBeanDefinitionParser @@ -39,7 +38,7 @@ class SupervisionBeanDefinitionParserTest extends Spec with ShouldMatchers { val strategy = builder.getBeanDefinition.getPropertyValues.getPropertyValue("restartStrategy").getValue.asInstanceOf[RestartStrategy] assert(strategy ne null) assert(strategy.scheme match { - case x:AllForOne => true + case AllForOne => true case _ => false }) expect(3) { strategy.maxNrOfRetries } expect(1000) { strategy.withinTimeRange } diff --git a/akka-spring/src/test/scala/SupervisionFactoryBeanTest.scala b/akka-spring/src/test/scala/SupervisionFactoryBeanTest.scala index 79872b18d4..d85cfff942 100644 --- a/akka-spring/src/test/scala/SupervisionFactoryBeanTest.scala +++ b/akka-spring/src/test/scala/SupervisionFactoryBeanTest.scala @@ -7,7 +7,7 @@ import org.scalatest.Spec import org.scalatest.matchers.ShouldMatchers import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith -import se.scalablesolutions.akka.config.JavaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.config.TypedActorConfigurator private[akka] class Foo @@ -15,7 +15,7 @@ private[akka] class Foo @RunWith(classOf[JUnitRunner]) class SupervisionFactoryBeanTest extends Spec with ShouldMatchers { - val restartStrategy = new RestartStrategy(new AllForOne(), 3, 1000, Array(classOf[Throwable])) + val restartStrategy = new RestartStrategy(AllForOne(), 3, 1000, Array(classOf[Throwable])) val typedActors = List(createTypedActorProperties("se.scalablesolutions.akka.spring.Foo", "1000")) private def createTypedActorProperties(target: String, timeout: String) : ActorProperties = { diff --git a/akka-typed-actor/src/main/scala/actor/TypedActor.scala b/akka-typed-actor/src/main/scala/actor/TypedActor.scala index 8b9cc2034a..12c3c4d9de 100644 --- a/akka-typed-actor/src/main/scala/actor/TypedActor.scala +++ b/akka-typed-actor/src/main/scala/actor/TypedActor.scala @@ -7,7 +7,7 @@ package se.scalablesolutions.akka.actor import Actor._ import se.scalablesolutions.akka.config.FaultHandlingStrategy import se.scalablesolutions.akka.dispatch.{MessageDispatcher, Future, CompletableFuture, Dispatchers} -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.util._ import ReflectiveAccess._ diff --git a/akka-typed-actor/src/main/scala/config/TypedActorConfigurator.scala b/akka-typed-actor/src/main/scala/config/TypedActorConfigurator.scala index d639d21f5f..995640f979 100644 --- a/akka-typed-actor/src/main/scala/config/TypedActorConfigurator.scala +++ b/akka-typed-actor/src/main/scala/config/TypedActorConfigurator.scala @@ -4,7 +4,7 @@ package se.scalablesolutions.akka.config -import JavaConfig._ +import Supervision._ import java.util.{List => JList} import java.util.{ArrayList} @@ -43,10 +43,10 @@ class TypedActorConfigurator { */ def getInstance[T](clazz: Class[T]): T = INSTANCE.getInstance(clazz).head - def configure(restartStrategy: RestartStrategy, components: Array[Component]): TypedActorConfigurator = { + def configure(restartStrategy: RestartStrategy, components: Array[SuperviseTypedActor]): TypedActorConfigurator = { INSTANCE.configure( - restartStrategy.transform, - components.toList.asInstanceOf[scala.List[Component]].map(_.transform)) + restartStrategy, + components.toList.asInstanceOf[scala.List[SuperviseTypedActor]]) this } diff --git a/akka-typed-actor/src/main/scala/config/TypedActorGuiceConfigurator.scala b/akka-typed-actor/src/main/scala/config/TypedActorGuiceConfigurator.scala index 5ca249a3ec..4cd71ab060 100644 --- a/akka-typed-actor/src/main/scala/config/TypedActorGuiceConfigurator.scala +++ b/akka-typed-actor/src/main/scala/config/TypedActorGuiceConfigurator.scala @@ -5,7 +5,7 @@ package se.scalablesolutions.akka.config import se.scalablesolutions.akka.actor._ -import se.scalablesolutions.akka.config.ScalaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.util._ import ReflectiveAccess._ @@ -28,11 +28,11 @@ private[akka] class TypedActorGuiceConfigurator extends TypedActorConfiguratorBa private var injector: Injector = _ private var supervisor: Option[Supervisor] = None private var restartStrategy: RestartStrategy = _ - private var components: List[Component] = _ + private var components: List[SuperviseTypedActor] = _ private var supervised: List[Supervise] = Nil private var bindings: List[DependencyBinding] = Nil - private var configRegistry = new HashMap[Class[_], Component] // TODO is configRegistry needed? - private var typedActorRegistry = new HashMap[Class[_], Tuple3[AnyRef, AnyRef, Component]] + private var configRegistry = new HashMap[Class[_], SuperviseTypedActor] // TODO is configRegistry needed? + private var typedActorRegistry = new HashMap[Class[_], Tuple3[AnyRef, AnyRef, SuperviseTypedActor]] private var modules = new java.util.ArrayList[Module] private var methodToUriRegistry = new HashMap[Method, String] @@ -68,10 +68,10 @@ private[akka] class TypedActorGuiceConfigurator extends TypedActorConfiguratorBa else c.target } - override def configure(restartStrategy: RestartStrategy, components: List[Component]): + override def configure(restartStrategy: RestartStrategy, components: List[SuperviseTypedActor]): TypedActorConfiguratorBase = synchronized { this.restartStrategy = restartStrategy - this.components = components.toArray.toList.asInstanceOf[List[Component]] + this.components = components.toArray.toList.asInstanceOf[List[SuperviseTypedActor]] bindings = for (component <- this.components) yield { newDelegatingProxy(component) // if (component.intf.isDefined) newDelegatingProxy(component) @@ -84,7 +84,7 @@ private[akka] class TypedActorGuiceConfigurator extends TypedActorConfiguratorBa } /* - private def newSubclassingProxy(component: Component): DependencyBinding = { + private def newSubclassingProxy(component: SuperviseTypedActor): DependencyBinding = { val targetClass = if (component.target.isInstanceOf[Class[_ <: TypedActor]]) component.target.asInstanceOf[Class[_ <: TypedActor]] else throw new IllegalArgumentException("TypedActor [" + component.target.getName + "] must be a subclass of TypedActor") @@ -101,7 +101,7 @@ private[akka] class TypedActorGuiceConfigurator extends TypedActorConfiguratorBa new DependencyBinding(targetClass, proxy) } */ - private def newDelegatingProxy(component: Component): DependencyBinding = { + private def newDelegatingProxy(component: SuperviseTypedActor): DependencyBinding = { component.target.getConstructor(Array[Class[_]](): _*).setAccessible(true) val interfaceClass = if (component.intf.isDefined) component.intf.get else throw new IllegalActorStateException("No interface for TypedActor specified") @@ -169,8 +169,8 @@ private[akka] class TypedActorGuiceConfigurator extends TypedActorConfiguratorBa def reset = synchronized { modules = new java.util.ArrayList[Module] - configRegistry = new HashMap[Class[_], Component] - typedActorRegistry = new HashMap[Class[_], Tuple3[AnyRef, AnyRef, Component]] + configRegistry = new HashMap[Class[_], SuperviseTypedActor] + typedActorRegistry = new HashMap[Class[_], Tuple3[AnyRef, AnyRef, SuperviseTypedActor]] methodToUriRegistry = new HashMap[Method, String] injector = null restartStrategy = null diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/RestartNestedTransactionalTypedActorSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/RestartNestedTransactionalTypedActorSpec.scala index ea5db11531..63c8856075 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/RestartNestedTransactionalTypedActorSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/RestartNestedTransactionalTypedActorSpec.scala @@ -14,7 +14,7 @@ import org.junit.runner.RunWith import se.scalablesolutions.akka.config.Config import se.scalablesolutions.akka.config._ import se.scalablesolutions.akka.config.TypedActorConfigurator -import se.scalablesolutions.akka.config.JavaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.actor._ @RunWith(classOf[JUnitRunner]) diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala index 8f80fbcd1b..87dd31fe0f 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala @@ -11,11 +11,9 @@ import org.scalatest.BeforeAndAfterAll import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith -import se.scalablesolutions.akka.config.Config -import se.scalablesolutions.akka.config._ -import se.scalablesolutions.akka.config.TypedActorConfigurator -import se.scalablesolutions.akka.config.JavaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.actor._ +import se.scalablesolutions.akka.config. {Temporary, Config, TypedActorConfigurator} @RunWith(classOf[JUnitRunner]) class RestartTransactionalTypedActorSpec extends @@ -29,15 +27,15 @@ class RestartTransactionalTypedActorSpec extends def before { Config.config conf.configure( - new RestartStrategy(new AllForOne, 3, 5000, List(classOf[Exception]).toArray), + new RestartStrategy(AllForOne, 3, 5000, Array(classOf[Exception])), List( - new Component( + new SuperviseTypedActor( classOf[TransactionalTypedActor], - new Temporary, + Temporary, 10000), - new Component( + new SuperviseTypedActor( classOf[TypedActorFailer], - new Temporary, + Temporary, 10000) ).toArray).supervise } diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala index 814cd299d9..88eb5f28ef 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala @@ -14,11 +14,10 @@ import org.scalatest.BeforeAndAfterAll import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith -import se.scalablesolutions.akka.config.Config -import se.scalablesolutions.akka.config.TypedActorConfigurator -import se.scalablesolutions.akka.config.JavaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.dispatch._ import se.scalablesolutions.akka.dispatch.FutureTimeoutException +import se.scalablesolutions.akka.config. {Permanent, Config, TypedActorConfigurator} @RunWith(classOf[JUnitRunner]) class TypedActorGuiceConfiguratorSpec extends @@ -36,18 +35,18 @@ class TypedActorGuiceConfiguratorSpec extends conf.addExternalGuiceModule(new AbstractModule { def configure = bind(classOf[Ext]).to(classOf[ExtImpl]).in(Scopes.SINGLETON) }).configure( - new RestartStrategy(new AllForOne, 3, 5000, List(classOf[Exception]).toArray), + new RestartStrategy(AllForOne(), 3, 5000, Array(classOf[Exception])), List( - new Component( + new SuperviseTypedActor( classOf[Foo], classOf[FooImpl], - new Permanent, + Permanent, 1000, dispatcher), - new Component( + new SuperviseTypedActor( classOf[Bar], classOf[BarImpl], - new Permanent, + Permanent, 1000, dispatcher) ).toArray).inject.supervise diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala index f2903adf03..f737fb25eb 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala @@ -7,10 +7,10 @@ import org.scalatest.matchers.ShouldMatchers import se.scalablesolutions.akka.actor.TypedActor._ -import se.scalablesolutions.akka.config.{OneForOneStrategy, TypedActorConfigurator} -import se.scalablesolutions.akka.config.JavaConfig._ +import se.scalablesolutions.akka.config.Supervision._ import java.util.concurrent.CountDownLatch +import se.scalablesolutions.akka.config. {OneForOneStrategy, TypedActorConfigurator} /** * @author Martin Krasser @@ -21,9 +21,9 @@ class TypedActorLifecycleSpec extends Spec with ShouldMatchers with BeforeAndAft var conf2: TypedActorConfigurator = _ override protected def beforeAll() = { - val strategy = new RestartStrategy(new AllForOne(), 3, 1000, Array(classOf[Exception])) - val comp3 = new Component(classOf[SamplePojo], classOf[SamplePojoImpl], new Permanent(), 1000) - val comp4 = new Component(classOf[SamplePojo], classOf[SamplePojoImpl], new Temporary(), 1000) + val strategy = new RestartStrategy(AllForOne(), 3, 1000, Array(classOf[Exception])) + val comp3 = new SuperviseTypedActor(classOf[SamplePojo], classOf[SamplePojoImpl], permanent(), 1000) + val comp4 = new SuperviseTypedActor(classOf[SamplePojo], classOf[SamplePojoImpl], temporary(), 1000) conf1 = new TypedActorConfigurator().configure(strategy, Array(comp3)).supervise conf2 = new TypedActorConfigurator().configure(strategy, Array(comp4)).supervise } From 3af056f137326bc0f94d79cc46e03273b10af7ee Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Tue, 19 Oct 2010 10:44:27 +0200 Subject: [PATCH 11/17] Moved Faulthandling into Supvervision --- .../src/main/scala/actor/ActorRef.scala | 3 +- .../src/main/scala/actor/Supervisor.scala | 2 +- .../src/main/scala/actor/UntypedActor.scala | 1 - .../main/scala/config/SupervisionConfig.scala | 98 +++++++++---------- .../ActorFireForgetRequestReplySpec.scala | 2 +- .../supervisor/RestartStrategySpec.scala | 3 +- .../supervisor/SupervisorHierarchySpec.scala | 2 +- .../actor/supervisor/SupervisorMiscSpec.scala | 3 +- .../actor/supervisor/SupervisorSpec.scala | 3 +- .../src/test/scala/misc/SchedulerSpec.scala | 3 +- .../se/scalablesolutions/akka/amqp/AMQP.scala | 2 +- .../amqp/FaultTolerantConnectionActor.scala | 2 +- .../src/test/scala/Ticket343Test.scala | 2 +- .../HbaseTicket343SpecTestIntegration.scala | 2 +- .../src/test/scala/MongoTicket343Spec.scala | 2 +- .../scala/RedisInconsistentSizeBugTest.scala | 2 +- .../src/test/scala/RedisTicket343Spec.scala | 2 +- .../src/main/scala/remote/Cluster.scala | 3 +- .../serialization/SerializationProtocol.scala | 2 +- .../scala/remote/RemoteSupervisorSpec.scala | 1 - .../scala/remote/RemoteTypedActorSpec.scala | 2 +- .../src/main/scala/ChatServer.scala | 2 +- .../src/main/scala/SimpleService.scala | 1 - .../src/main/scala/SimpleService.scala | 1 - .../main/scala/SupervisionFactoryBean.scala | 2 +- .../src/main/scala/actor/TypedActor.scala | 1 - .../RestartTransactionalTypedActorSpec.scala | 2 +- .../TypedActorGuiceConfiguratorSpec.scala | 2 +- .../typed-actor/TypedActorLifecycleSpec.scala | 2 +- 29 files changed, 73 insertions(+), 82 deletions(-) diff --git a/akka-actor/src/main/scala/actor/ActorRef.scala b/akka-actor/src/main/scala/actor/ActorRef.scala index 1127da8a2e..e4c8d58cc1 100644 --- a/akka-actor/src/main/scala/actor/ActorRef.scala +++ b/akka-actor/src/main/scala/actor/ActorRef.scala @@ -6,8 +6,7 @@ package se.scalablesolutions.akka.actor import se.scalablesolutions.akka.dispatch._ import se.scalablesolutions.akka.config.Config._ -import se.scalablesolutions.akka.config.{NoFaultHandlingStrategy, AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy, - LifeCycle, Temporary, Permanent, UndefinedLifeCycle} +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.stm.global._ import se.scalablesolutions.akka.stm.TransactionManagement._ import se.scalablesolutions.akka.stm.{ TransactionManagement, TransactionSetAbortedException } diff --git a/akka-actor/src/main/scala/actor/Supervisor.scala b/akka-actor/src/main/scala/actor/Supervisor.scala index bed8848b21..8655c9de14 100644 --- a/akka-actor/src/main/scala/actor/Supervisor.scala +++ b/akka-actor/src/main/scala/actor/Supervisor.scala @@ -12,7 +12,7 @@ import Actor._ import java.util.concurrent.{CopyOnWriteArrayList, ConcurrentHashMap} import java.net.InetSocketAddress -import se.scalablesolutions.akka.config. {Supervision, AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy} +import se.scalablesolutions.akka.config.Supervision._ class SupervisorException private[akka](message: String) extends AkkaException(message) diff --git a/akka-actor/src/main/scala/actor/UntypedActor.scala b/akka-actor/src/main/scala/actor/UntypedActor.scala index fa53344c5f..a1d724a566 100644 --- a/akka-actor/src/main/scala/actor/UntypedActor.scala +++ b/akka-actor/src/main/scala/actor/UntypedActor.scala @@ -6,7 +6,6 @@ package se.scalablesolutions.akka.actor import se.scalablesolutions.akka.dispatch._ import se.scalablesolutions.akka.stm.global._ -import se.scalablesolutions.akka.config.{AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy} import se.scalablesolutions.akka.config.Supervision._ import java.net.InetSocketAddress diff --git a/akka-actor/src/main/scala/config/SupervisionConfig.scala b/akka-actor/src/main/scala/config/SupervisionConfig.scala index 1f30472b05..6585e1b921 100644 --- a/akka-actor/src/main/scala/config/SupervisionConfig.scala +++ b/akka-actor/src/main/scala/config/SupervisionConfig.scala @@ -7,52 +7,6 @@ package se.scalablesolutions.akka.config import se.scalablesolutions.akka.actor.{ActorRef} import se.scalablesolutions.akka.dispatch.MessageDispatcher -sealed abstract class FaultHandlingStrategy { - def trapExit: List[Class[_ <: Throwable]] -} - -object AllForOneStrategy { - def apply(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = - new AllForOneStrategy(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) - def apply(trapExit: Array[Class[Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = - new AllForOneStrategy(trapExit.toList,maxNrOfRetries,withinTimeRange) -} - -case class AllForOneStrategy(trapExit: List[Class[_ <: Throwable]], - maxNrOfRetries: Option[Int] = None, - withinTimeRange: Option[Int] = None) extends FaultHandlingStrategy { - def this(trapExit: List[Class[_ <: Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = - this(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) - def this(trapExit: Array[Class[Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = - this(trapExit.toList,maxNrOfRetries,withinTimeRange) -} - -object OneForOneStrategy { - def apply(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = - new OneForOneStrategy(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) - def apply(trapExit: Array[Class[Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = - new OneForOneStrategy(trapExit.toList,maxNrOfRetries,withinTimeRange) -} - -case class OneForOneStrategy(trapExit: List[Class[_ <: Throwable]], - maxNrOfRetries: Option[Int] = None, - withinTimeRange: Option[Int] = None) extends FaultHandlingStrategy { - def this(trapExit: List[Class[_ <: Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = - this(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) - def this(trapExit: Array[Class[Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = - this(trapExit.toList,maxNrOfRetries,withinTimeRange) -} - -case object NoFaultHandlingStrategy extends FaultHandlingStrategy { - def trapExit: List[Class[_ <: Throwable]] = Nil -} - -sealed abstract class LifeCycle - -case object Permanent extends LifeCycle -case object Temporary extends LifeCycle -case object UndefinedLifeCycle extends LifeCycle - case class RemoteAddress(val hostname: String, val port: Int) /** @@ -65,6 +19,7 @@ object Supervision { abstract class Server extends ConfigElement abstract class FailOverScheme extends ConfigElement + sealed abstract class LifeCycle extends ConfigElement case class SupervisorConfig(restartStrategy: RestartStrategy, worker: List[Server]) extends Server { //Java API @@ -92,10 +47,15 @@ object Supervision { class AllForOne extends FailOverScheme class OneForOne extends FailOverScheme + //Scala API + case object Permanent extends LifeCycle + case object Temporary extends LifeCycle + case object UndefinedLifeCycle extends LifeCycle + //Java API (& Scala if you fancy) - def permanent() = se.scalablesolutions.akka.config.Permanent - def temporary() = se.scalablesolutions.akka.config.Temporary - def undefinedLifeCycle = se.scalablesolutions.akka.config.UndefinedLifeCycle + def permanent() = Permanent + def temporary() = Temporary + def undefinedLifeCycle = UndefinedLifeCycle //Scala API object AllForOne extends AllForOne { def apply() = this } @@ -158,4 +118,44 @@ object Supervision { def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, dispatcher: MessageDispatcher, remoteAddress: RemoteAddress) = this(null: Class[_], target, lifeCycle, timeout, transactionRequired, dispatcher, remoteAddress) } + + sealed abstract class FaultHandlingStrategy { + def trapExit: List[Class[_ <: Throwable]] + } + + object AllForOneStrategy { + def apply(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + new AllForOneStrategy(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + def apply(trapExit: Array[Class[Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + new AllForOneStrategy(trapExit.toList,maxNrOfRetries,withinTimeRange) + } + + case class AllForOneStrategy(trapExit: List[Class[_ <: Throwable]], + maxNrOfRetries: Option[Int] = None, + withinTimeRange: Option[Int] = None) extends FaultHandlingStrategy { + def this(trapExit: List[Class[_ <: Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + def this(trapExit: Array[Class[Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit.toList,maxNrOfRetries,withinTimeRange) + } + + object OneForOneStrategy { + def apply(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + new OneForOneStrategy(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + def apply(trapExit: Array[Class[Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + new OneForOneStrategy(trapExit.toList,maxNrOfRetries,withinTimeRange) + } + + case class OneForOneStrategy(trapExit: List[Class[_ <: Throwable]], + maxNrOfRetries: Option[Int] = None, + withinTimeRange: Option[Int] = None) extends FaultHandlingStrategy { + def this(trapExit: List[Class[_ <: Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + def this(trapExit: Array[Class[Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit.toList,maxNrOfRetries,withinTimeRange) + } + + case object NoFaultHandlingStrategy extends FaultHandlingStrategy { + def trapExit: List[Class[_ <: Throwable]] = Nil + } } \ No newline at end of file diff --git a/akka-actor/src/test/scala/actor/actor/ActorFireForgetRequestReplySpec.scala b/akka-actor/src/test/scala/actor/actor/ActorFireForgetRequestReplySpec.scala index f04d8016d2..0bff02a1a9 100644 --- a/akka-actor/src/test/scala/actor/actor/ActorFireForgetRequestReplySpec.scala +++ b/akka-actor/src/test/scala/actor/actor/ActorFireForgetRequestReplySpec.scala @@ -1,7 +1,7 @@ package se.scalablesolutions.akka.actor import java.util.concurrent.{TimeUnit, CyclicBarrier, TimeoutException} -import se.scalablesolutions.akka.config._ +import se.scalablesolutions.akka.config.Supervision._ import org.scalatest.junit.JUnitSuite import org.junit.Test diff --git a/akka-actor/src/test/scala/actor/supervisor/RestartStrategySpec.scala b/akka-actor/src/test/scala/actor/supervisor/RestartStrategySpec.scala index 6b105061a7..ba88ccd842 100644 --- a/akka-actor/src/test/scala/actor/supervisor/RestartStrategySpec.scala +++ b/akka-actor/src/test/scala/actor/supervisor/RestartStrategySpec.scala @@ -10,9 +10,8 @@ import org.scalatest.junit.JUnitSuite import org.junit.Test import Actor._ -import se.scalablesolutions.akka.config.OneForOneStrategy import java.util.concurrent.{TimeUnit, CountDownLatch} -import se.scalablesolutions.akka.config.{Permanent, LifeCycle} +import se.scalablesolutions.akka.config.Supervision.{Permanent, LifeCycle, OneForOneStrategy} import org.multiverse.api.latches.StandardLatch class RestartStrategySpec extends JUnitSuite { diff --git a/akka-actor/src/test/scala/actor/supervisor/SupervisorHierarchySpec.scala b/akka-actor/src/test/scala/actor/supervisor/SupervisorHierarchySpec.scala index b1f8af27c0..4091215571 100644 --- a/akka-actor/src/test/scala/actor/supervisor/SupervisorHierarchySpec.scala +++ b/akka-actor/src/test/scala/actor/supervisor/SupervisorHierarchySpec.scala @@ -8,7 +8,7 @@ import org.scalatest.junit.JUnitSuite import org.junit.Test import Actor._ -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.Supervision.OneForOneStrategy import java.util.concurrent.{TimeUnit, CountDownLatch} diff --git a/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala b/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala index 933d9643f7..261df68eab 100644 --- a/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala +++ b/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala @@ -6,9 +6,8 @@ package se.scalablesolutions.akka.actor import org.scalatest.WordSpec import org.scalatest.matchers.MustMatchers import se.scalablesolutions.akka.dispatch.Dispatchers -import se.scalablesolutions.akka.config.Supervision.{RestartStrategy, SupervisorConfig, OneForOne, Supervise} +import se.scalablesolutions.akka.config.Supervision.{RestartStrategy, SupervisorConfig, OneForOne, Supervise, Permanent} import java.util.concurrent.CountDownLatch -import se.scalablesolutions.akka.config.Permanent class SupervisorMiscSpec extends WordSpec with MustMatchers { "A Supervisor" should { diff --git a/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala b/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala index ee32ca7f3a..3a1758d7c6 100644 --- a/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala +++ b/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala @@ -11,7 +11,6 @@ import Actor._ import org.scalatest.junit.JUnitSuite import org.junit.Test import java.util.concurrent.{TimeUnit, LinkedBlockingQueue} -import se.scalablesolutions.akka.config.{Temporary, Permanent, OneForOneStrategy} object SupervisorSpec { var messageLog = new LinkedBlockingQueue[String] @@ -78,7 +77,7 @@ object SupervisorSpec { class TemporaryActor extends Actor { import self._ - lifeCycle = se.scalablesolutions.akka.config.Temporary + lifeCycle = Temporary def receive = { case Ping => messageLog.put("ping") diff --git a/akka-actor/src/test/scala/misc/SchedulerSpec.scala b/akka-actor/src/test/scala/misc/SchedulerSpec.scala index 9f0e127e56..c1f1071161 100644 --- a/akka-actor/src/test/scala/misc/SchedulerSpec.scala +++ b/akka-actor/src/test/scala/misc/SchedulerSpec.scala @@ -6,7 +6,6 @@ import java.util.concurrent.{CountDownLatch, TimeUnit} import se.scalablesolutions.akka.config.Supervision._ import org.multiverse.api.latches.StandardLatch import org.junit.Test -import se.scalablesolutions.akka.config.Permanent class SchedulerSpec extends JUnitSuite { @@ -99,7 +98,7 @@ class SchedulerSpec extends JUnitSuite { val pingLatch = new CountDownLatch(6) val actor = actorOf(new Actor { - self.lifeCycle = se.scalablesolutions.akka.config.Permanent + self.lifeCycle = Permanent def receive = { case Ping => pingLatch.countDown diff --git a/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/AMQP.scala b/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/AMQP.scala index 9553aebf20..662f2b6a24 100644 --- a/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/AMQP.scala +++ b/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/AMQP.scala @@ -6,7 +6,7 @@ package se.scalablesolutions.akka.amqp import se.scalablesolutions.akka.actor.{Actor, ActorRef} import se.scalablesolutions.akka.actor.Actor._ -import se.scalablesolutions.akka.config.OneForOneStrategy +import se.scalablesolutions.akka.config.Supervision.OneForOneStrategy import com.rabbitmq.client.{ReturnListener, ShutdownListener, ConnectionFactory} import ConnectionFactory._ import com.rabbitmq.client.AMQP.BasicProperties diff --git a/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/FaultTolerantConnectionActor.scala b/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/FaultTolerantConnectionActor.scala index acb61f02e3..066075f26c 100644 --- a/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/FaultTolerantConnectionActor.scala +++ b/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/FaultTolerantConnectionActor.scala @@ -8,7 +8,7 @@ import java.util.{TimerTask, Timer} import java.io.IOException import com.rabbitmq.client._ import se.scalablesolutions.akka.amqp.AMQP.ConnectionParameters -import se.scalablesolutions.akka.config.{ Permanent, OneForOneStrategy } +import se.scalablesolutions.akka.config.Supervision.{ Permanent, OneForOneStrategy } import se.scalablesolutions.akka.actor.{Exit, Actor} private[amqp] class FaultTolerantConnectionActor(connectionParameters: ConnectionParameters) extends Actor { diff --git a/akka-persistence/akka-persistence-common/src/test/scala/Ticket343Test.scala b/akka-persistence/akka-persistence-common/src/test/scala/Ticket343Test.scala index db7d96876a..1884621aaa 100644 --- a/akka-persistence/akka-persistence-common/src/test/scala/Ticket343Test.scala +++ b/akka-persistence/akka-persistence-common/src/test/scala/Ticket343Test.scala @@ -11,7 +11,7 @@ import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith import se.scalablesolutions.akka.actor.{Actor, ActorRef} -import se.scalablesolutions.akka.config.{OneForOneStrategy, Permanent} +import se.scalablesolutions.akka.config.Supervision.{OneForOneStrategy, Permanent} import Actor._ import se.scalablesolutions.akka.stm.global._ import se.scalablesolutions.akka.util.Logging diff --git a/akka-persistence/akka-persistence-hbase/src/test/scala/HbaseTicket343SpecTestIntegration.scala b/akka-persistence/akka-persistence-hbase/src/test/scala/HbaseTicket343SpecTestIntegration.scala index 9c1c91d01e..be5429e134 100644 --- a/akka-persistence/akka-persistence-hbase/src/test/scala/HbaseTicket343SpecTestIntegration.scala +++ b/akka-persistence/akka-persistence-hbase/src/test/scala/HbaseTicket343SpecTestIntegration.scala @@ -7,7 +7,7 @@ import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith import se.scalablesolutions.akka.actor.{Actor, ActorRef} -import se.scalablesolutions.akka.config.{OneForOneStrategy,Permanent} +import se.scalablesolutions.akka.config.Supervision.{OneForOneStrategy,Permanent} import Actor._ import se.scalablesolutions.akka.stm.global._ import se.scalablesolutions.akka.util.Logging diff --git a/akka-persistence/akka-persistence-mongo/src/test/scala/MongoTicket343Spec.scala b/akka-persistence/akka-persistence-mongo/src/test/scala/MongoTicket343Spec.scala index c34f237566..cd90620cef 100644 --- a/akka-persistence/akka-persistence-mongo/src/test/scala/MongoTicket343Spec.scala +++ b/akka-persistence/akka-persistence-mongo/src/test/scala/MongoTicket343Spec.scala @@ -7,7 +7,7 @@ import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith import se.scalablesolutions.akka.actor.{Actor, ActorRef} -import se.scalablesolutions.akka.config.{OneForOneStrategy,Permanent} +import se.scalablesolutions.akka.config.Supervision.{OneForOneStrategy,Permanent} import Actor._ import se.scalablesolutions.akka.stm.global._ import se.scalablesolutions.akka.util.Logging diff --git a/akka-persistence/akka-persistence-redis/src/test/scala/RedisInconsistentSizeBugTest.scala b/akka-persistence/akka-persistence-redis/src/test/scala/RedisInconsistentSizeBugTest.scala index a51d4150b1..78c21f2082 100644 --- a/akka-persistence/akka-persistence-redis/src/test/scala/RedisInconsistentSizeBugTest.scala +++ b/akka-persistence/akka-persistence-redis/src/test/scala/RedisInconsistentSizeBugTest.scala @@ -5,7 +5,7 @@ import sbinary.Operations._ import sbinary.DefaultProtocol._ import se.scalablesolutions.akka.actor.{Actor, ActorRef} -import se.scalablesolutions.akka.config.{OneForOneStrategy, Permanent} +import se.scalablesolutions.akka.config.Supervision.{OneForOneStrategy, Permanent} import Actor._ import se.scalablesolutions.akka.persistence.common.PersistentVector import se.scalablesolutions.akka.stm.global._ diff --git a/akka-persistence/akka-persistence-redis/src/test/scala/RedisTicket343Spec.scala b/akka-persistence/akka-persistence-redis/src/test/scala/RedisTicket343Spec.scala index 46f233ecf9..f1167ef84d 100644 --- a/akka-persistence/akka-persistence-redis/src/test/scala/RedisTicket343Spec.scala +++ b/akka-persistence/akka-persistence-redis/src/test/scala/RedisTicket343Spec.scala @@ -7,7 +7,7 @@ import org.scalatest.junit.JUnitRunner import org.junit.runner.RunWith import se.scalablesolutions.akka.actor.{Actor} -import se.scalablesolutions.akka.config.{OneForOneStrategy,Permanent} +import se.scalablesolutions.akka.config.Supervision.{OneForOneStrategy,Permanent} import Actor._ import se.scalablesolutions.akka.persistence.common.PersistentVector import se.scalablesolutions.akka.stm.global._ diff --git a/akka-remote/src/main/scala/remote/Cluster.scala b/akka-remote/src/main/scala/remote/Cluster.scala index 71354e8e77..df1a79009e 100644 --- a/akka-remote/src/main/scala/remote/Cluster.scala +++ b/akka-remote/src/main/scala/remote/Cluster.scala @@ -10,7 +10,8 @@ import se.scalablesolutions.akka.serialization.Serializer import se.scalablesolutions.akka.actor.{Supervisor, SupervisorFactory, Actor, ActorRef, ActorRegistry} import se.scalablesolutions.akka.util.Logging import scala.collection.immutable.{Map, HashMap} -import se.scalablesolutions.akka.config. {Permanent, RemoteAddress} +import se.scalablesolutions.akka.config.Supervision.{Permanent} +import se.scalablesolutions.akka.config.{RemoteAddress} /** * Interface for interacting with the Cluster Membership API. diff --git a/akka-remote/src/main/scala/serialization/SerializationProtocol.scala b/akka-remote/src/main/scala/serialization/SerializationProtocol.scala index 2343608607..8c2c7f6d61 100644 --- a/akka-remote/src/main/scala/serialization/SerializationProtocol.scala +++ b/akka-remote/src/main/scala/serialization/SerializationProtocol.scala @@ -11,7 +11,7 @@ import se.scalablesolutions.akka.dispatch.MessageInvocation import se.scalablesolutions.akka.remote.{RemoteServer, MessageSerializer} import se.scalablesolutions.akka.remote.protocol.RemoteProtocol.{ActorType => ActorTypeProtocol, _} import ActorTypeProtocol._ -import se.scalablesolutions.akka.config.{AllForOneStrategy, OneForOneStrategy, FaultHandlingStrategy, Permanent, Temporary, UndefinedLifeCycle} +import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.actor.{uuidFrom,newUuid} import se.scalablesolutions.akka.actor._ diff --git a/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala b/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala index e815231509..735aba23cb 100644 --- a/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala +++ b/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala @@ -13,7 +13,6 @@ import org.scalatest.junit.JUnitSuite import org.junit.{Test, Before, After} import se.scalablesolutions.akka.actor.{SupervisorFactory, Supervisor, ActorRef, Actor} import Actor._ -import se.scalablesolutions.akka.config.Permanent object Log { val messageLog: BlockingQueue[String] = new LinkedBlockingQueue[String] diff --git a/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala b/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala index 9b5f407a27..58c977654d 100644 --- a/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala +++ b/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala @@ -14,7 +14,7 @@ import se.scalablesolutions.akka.remote.{RemoteServer, RemoteClient} import java.util.concurrent.{LinkedBlockingQueue, TimeUnit, BlockingQueue} import org.scalatest.{BeforeAndAfterEach, Spec, Assertions, BeforeAndAfterAll} -import se.scalablesolutions.akka.config. {Permanent, Config, TypedActorConfigurator, RemoteAddress} +import se.scalablesolutions.akka.config.{Config, TypedActorConfigurator, RemoteAddress} object RemoteTypedActorSpec { val HOSTNAME = "localhost" diff --git a/akka-samples/akka-sample-chat/src/main/scala/ChatServer.scala b/akka-samples/akka-sample-chat/src/main/scala/ChatServer.scala index d2d09fc22e..aa70cabeb9 100644 --- a/akka-samples/akka-sample-chat/src/main/scala/ChatServer.scala +++ b/akka-samples/akka-sample-chat/src/main/scala/ChatServer.scala @@ -11,7 +11,7 @@ import se.scalablesolutions.akka.remote.{RemoteNode, RemoteClient} import se.scalablesolutions.akka.persistence.common.PersistentVector import se.scalablesolutions.akka.persistence.redis.RedisStorage import se.scalablesolutions.akka.stm.global._ -import se.scalablesolutions.akka.config.{OneForOneStrategy,Permanent} +import se.scalablesolutions.akka.config.Supervision.{OneForOneStrategy,Permanent} import se.scalablesolutions.akka.util.Logging import Actor._ diff --git a/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala b/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala index 31547e85a7..56f977ab89 100644 --- a/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala +++ b/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala @@ -21,7 +21,6 @@ import org.atmosphere.annotation.{Broadcast, Suspend,Cluster} import org.atmosphere.util.XSSHtmlFilter import org.atmosphere.cpr.{Broadcaster, BroadcastFilter} import org.atmosphere.jersey.Broadcastable -import se.scalablesolutions.akka.config.Permanent class Boot { val factory = SupervisorFactory( diff --git a/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala b/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala index 5af3a7ff69..a382b0a40e 100644 --- a/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala +++ b/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala @@ -11,7 +11,6 @@ import se.scalablesolutions.akka.util.Logging import se.scalablesolutions.akka.security.{BasicAuthenticationActor,BasicCredentials,SpnegoAuthenticationActor,DigestAuthenticationActor, UserInfo} import se.scalablesolutions.akka.stm.TransactionalMap import se.scalablesolutions.akka.actor.ActorRegistry.actorFor -import se.scalablesolutions.akka.config.Permanent class Boot { val factory = SupervisorFactory( diff --git a/akka-spring/src/main/scala/SupervisionFactoryBean.scala b/akka-spring/src/main/scala/SupervisionFactoryBean.scala index b11117ee35..86709f06f0 100644 --- a/akka-spring/src/main/scala/SupervisionFactoryBean.scala +++ b/akka-spring/src/main/scala/SupervisionFactoryBean.scala @@ -8,7 +8,7 @@ import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.actor.{Supervisor, SupervisorFactory, Actor} import AkkaSpringConfigurationTags._ import reflect.BeanProperty -import se.scalablesolutions.akka.config.{Temporary, Permanent, TypedActorConfigurator, RemoteAddress} +import se.scalablesolutions.akka.config.{TypedActorConfigurator, RemoteAddress} /** * Factory bean for supervisor configuration. diff --git a/akka-typed-actor/src/main/scala/actor/TypedActor.scala b/akka-typed-actor/src/main/scala/actor/TypedActor.scala index 12c3c4d9de..a092f34070 100644 --- a/akka-typed-actor/src/main/scala/actor/TypedActor.scala +++ b/akka-typed-actor/src/main/scala/actor/TypedActor.scala @@ -5,7 +5,6 @@ package se.scalablesolutions.akka.actor import Actor._ -import se.scalablesolutions.akka.config.FaultHandlingStrategy import se.scalablesolutions.akka.dispatch.{MessageDispatcher, Future, CompletableFuture, Dispatchers} import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.util._ diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala index 87dd31fe0f..3dc1702593 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala @@ -13,7 +13,7 @@ import org.junit.runner.RunWith import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.actor._ -import se.scalablesolutions.akka.config. {Temporary, Config, TypedActorConfigurator} +import se.scalablesolutions.akka.config.{Config, TypedActorConfigurator} @RunWith(classOf[JUnitRunner]) class RestartTransactionalTypedActorSpec extends diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala index 88eb5f28ef..f524f96777 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala @@ -17,7 +17,7 @@ import org.junit.runner.RunWith import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.dispatch._ import se.scalablesolutions.akka.dispatch.FutureTimeoutException -import se.scalablesolutions.akka.config. {Permanent, Config, TypedActorConfigurator} +import se.scalablesolutions.akka.config.{Config, TypedActorConfigurator} @RunWith(classOf[JUnitRunner]) class TypedActorGuiceConfiguratorSpec extends diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala index f737fb25eb..715ddb8ef8 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala @@ -10,7 +10,7 @@ import se.scalablesolutions.akka.actor.TypedActor._ import se.scalablesolutions.akka.config.Supervision._ import java.util.concurrent.CountDownLatch -import se.scalablesolutions.akka.config. {OneForOneStrategy, TypedActorConfigurator} +import se.scalablesolutions.akka.config.TypedActorConfigurator /** * @author Martin Krasser From 470cd00ca6065ae78cadcb073a516c944ca1eb1d Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Tue, 19 Oct 2010 14:17:22 +0200 Subject: [PATCH 12/17] Refining Supervision API and remove AllForOne, OneForOne and replace with AllForOneStrategy, OneForOneStrategy etc --- .../src/main/scala/actor/Supervisor.scala | 6 +- .../src/main/scala/config/Configurator.scala | 4 +- .../main/scala/config/SupervisionConfig.scala | 112 +++++++++--------- .../akka/config/SupervisionConfig.java | 3 +- .../actor/supervisor/SupervisorMiscSpec.scala | 4 +- .../actor/supervisor/SupervisorSpec.scala | 14 +-- .../src/test/scala/misc/SchedulerSpec.scala | 3 +- .../src/main/scala/remote/Cluster.scala | 3 +- .../scala/remote/RemoteSupervisorSpec.scala | 12 +- .../scala/remote/RemoteTypedActorSpec.scala | 2 +- .../src/main/java/sample/rest/java/Boot.java | 2 +- .../src/main/scala/SimpleService.scala | 2 +- .../src/main/scala/SimpleService.scala | 2 +- .../SupervisionBeanDefinitionParser.scala | 9 +- .../main/scala/SupervisionFactoryBean.scala | 2 +- .../SupervisionBeanDefinitionParserTest.scala | 12 +- .../scala/SupervisionFactoryBeanTest.scala | 6 +- .../src/main/scala/actor/TypedActor.scala | 4 +- .../scala/config/TypedActorConfigurator.scala | 4 +- .../config/TypedActorGuiceConfigurator.scala | 10 +- .../RestartTransactionalTypedActorSpec.scala | 2 +- .../TypedActorGuiceConfiguratorSpec.scala | 30 ++--- .../typed-actor/TypedActorLifecycleSpec.scala | 4 +- 23 files changed, 123 insertions(+), 129 deletions(-) diff --git a/akka-actor/src/main/scala/actor/Supervisor.scala b/akka-actor/src/main/scala/actor/Supervisor.scala index 8655c9de14..74eb2fcda8 100644 --- a/akka-actor/src/main/scala/actor/Supervisor.scala +++ b/akka-actor/src/main/scala/actor/Supervisor.scala @@ -81,11 +81,7 @@ object SupervisorFactory { private[akka] def retrieveFaultHandlerAndTrapExitsFrom(config: SupervisorConfig): FaultHandlingStrategy = config match { - case SupervisorConfig(RestartStrategy(scheme, maxNrOfRetries, timeRange, trapExceptions), _) => - scheme match { - case a:AllForOne => AllForOneStrategy(trapExceptions.toList,maxNrOfRetries, timeRange) - case o:OneForOne => OneForOneStrategy(trapExceptions.toList,maxNrOfRetries, timeRange) - } + case SupervisorConfig(faultHandler, _) => faultHandler } } diff --git a/akka-actor/src/main/scala/config/Configurator.scala b/akka-actor/src/main/scala/config/Configurator.scala index eabb57ab51..8560649018 100644 --- a/akka-actor/src/main/scala/config/Configurator.scala +++ b/akka-actor/src/main/scala/config/Configurator.scala @@ -4,12 +4,12 @@ package se.scalablesolutions.akka.config -import se.scalablesolutions.akka.config.Supervision. {SuperviseTypedActor, RestartStrategy} +import se.scalablesolutions.akka.config.Supervision. {SuperviseTypedActor, FaultHandlingStrategy} private[akka] trait TypedActorConfiguratorBase { def getExternalDependency[T](clazz: Class[T]): T - def configure(restartStrategy: RestartStrategy, components: List[SuperviseTypedActor]): TypedActorConfiguratorBase + def configure(restartStrategy: FaultHandlingStrategy, components: List[SuperviseTypedActor]): TypedActorConfiguratorBase def inject: TypedActorConfiguratorBase diff --git a/akka-actor/src/main/scala/config/SupervisionConfig.scala b/akka-actor/src/main/scala/config/SupervisionConfig.scala index 6585e1b921..27abeba578 100644 --- a/akka-actor/src/main/scala/config/SupervisionConfig.scala +++ b/akka-actor/src/main/scala/config/SupervisionConfig.scala @@ -18,34 +18,71 @@ object Supervision { sealed abstract class ConfigElement abstract class Server extends ConfigElement - abstract class FailOverScheme extends ConfigElement sealed abstract class LifeCycle extends ConfigElement + sealed abstract class FaultHandlingStrategy(val trapExit: List[Class[_ <: Throwable]]) extends ConfigElement - case class SupervisorConfig(restartStrategy: RestartStrategy, worker: List[Server]) extends Server { - //Java API - def this(restartStrategy: RestartStrategy, worker: Array[Server]) = this(restartStrategy,worker.toList) + case class SupervisorConfig(restartStrategy: FaultHandlingStrategy, worker: List[Server]) extends Server { + //Java API + def this(restartStrategy: FaultHandlingStrategy, worker: Array[Server]) = this(restartStrategy,worker.toList) } - class Supervise(val actorRef: ActorRef, val lifeCycle: LifeCycle, _remoteAddress: RemoteAddress) extends Server { - val remoteAddress: Option[RemoteAddress] = Option(_remoteAddress) + class Supervise(val actorRef: ActorRef, val lifeCycle: LifeCycle, val remoteAddress: Option[RemoteAddress]) extends Server { + //Java API + def this(actorRef: ActorRef, lifeCycle: LifeCycle, remoteAddress: RemoteAddress) = + this(actorRef, lifeCycle, Option(remoteAddress)) } object Supervise { def apply(actorRef: ActorRef, lifeCycle: LifeCycle, remoteAddress: RemoteAddress) = new Supervise(actorRef, lifeCycle, remoteAddress) - def apply(actorRef: ActorRef, lifeCycle: LifeCycle) = new Supervise(actorRef, lifeCycle, null) + def apply(actorRef: ActorRef, lifeCycle: LifeCycle) = new Supervise(actorRef, lifeCycle, None) def unapply(supervise: Supervise) = Some((supervise.actorRef, supervise.lifeCycle, supervise.remoteAddress)) } - case class RestartStrategy(scheme: FailOverScheme, maxNrOfRetries: Int, withinTimeRange: Int, trapExceptions: Array[Class[_ <: Throwable]]) extends ConfigElement - - object RestartStrategy { - def apply(scheme: FailOverScheme, maxNrOfRetries: Int, withinTimeRange: Int, trapExceptions: List[Class[_ <: Throwable]]) = - new RestartStrategy(scheme,maxNrOfRetries,withinTimeRange,trapExceptions.toArray) + object AllForOneStrategy { + def apply(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int): AllForOneStrategy = + new AllForOneStrategy(trapExit, + if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) } - //Java API - class AllForOne extends FailOverScheme - class OneForOne extends FailOverScheme + case class AllForOneStrategy(override val trapExit: List[Class[_ <: Throwable]], + maxNrOfRetries: Option[Int] = None, + withinTimeRange: Option[Int] = None) extends FaultHandlingStrategy(trapExit) { + def this(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit, + if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + + def this(trapExit: Array[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit.toList, + if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + + def this(trapExit: java.util.List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit.toArray.toList.asInstanceOf[List[Class[_ <: Throwable]]], + if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + } + + object OneForOneStrategy { + def apply(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int): OneForOneStrategy = + new OneForOneStrategy(trapExit, + if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + } + + case class OneForOneStrategy(override val trapExit: List[Class[_ <: Throwable]], + maxNrOfRetries: Option[Int] = None, + withinTimeRange: Option[Int] = None) extends FaultHandlingStrategy(trapExit) { + def this(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit, + if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + + def this(trapExit: Array[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit.toList, + if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + + def this(trapExit: java.util.List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = + this(trapExit.toArray.toList.asInstanceOf[List[Class[_ <: Throwable]]], + if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) + } + + case object NoFaultHandlingStrategy extends FaultHandlingStrategy(Nil) //Scala API case object Permanent extends LifeCycle @@ -57,9 +94,8 @@ object Supervision { def temporary() = Temporary def undefinedLifeCycle = UndefinedLifeCycle - //Scala API - object AllForOne extends AllForOne { def apply() = this } - object OneForOne extends OneForOne { def apply() = this } + //Java API + def noFaultHandlingStrategy = NoFaultHandlingStrategy case class SuperviseTypedActor(_intf: Class[_], val target: Class[_], @@ -118,44 +154,4 @@ object Supervision { def this(target: Class[_], lifeCycle: LifeCycle, timeout: Long, transactionRequired: Boolean, dispatcher: MessageDispatcher, remoteAddress: RemoteAddress) = this(null: Class[_], target, lifeCycle, timeout, transactionRequired, dispatcher, remoteAddress) } - - sealed abstract class FaultHandlingStrategy { - def trapExit: List[Class[_ <: Throwable]] - } - - object AllForOneStrategy { - def apply(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = - new AllForOneStrategy(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) - def apply(trapExit: Array[Class[Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = - new AllForOneStrategy(trapExit.toList,maxNrOfRetries,withinTimeRange) - } - - case class AllForOneStrategy(trapExit: List[Class[_ <: Throwable]], - maxNrOfRetries: Option[Int] = None, - withinTimeRange: Option[Int] = None) extends FaultHandlingStrategy { - def this(trapExit: List[Class[_ <: Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = - this(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) - def this(trapExit: Array[Class[Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = - this(trapExit.toList,maxNrOfRetries,withinTimeRange) - } - - object OneForOneStrategy { - def apply(trapExit: List[Class[_ <: Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = - new OneForOneStrategy(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) - def apply(trapExit: Array[Class[Throwable]], maxNrOfRetries: Int, withinTimeRange: Int) = - new OneForOneStrategy(trapExit.toList,maxNrOfRetries,withinTimeRange) - } - - case class OneForOneStrategy(trapExit: List[Class[_ <: Throwable]], - maxNrOfRetries: Option[Int] = None, - withinTimeRange: Option[Int] = None) extends FaultHandlingStrategy { - def this(trapExit: List[Class[_ <: Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = - this(trapExit, if (maxNrOfRetries < 0) None else Some(maxNrOfRetries), if (withinTimeRange < 0) None else Some(withinTimeRange)) - def this(trapExit: Array[Class[Throwable]],maxNrOfRetries: Int, withinTimeRange: Int) = - this(trapExit.toList,maxNrOfRetries,withinTimeRange) - } - - case object NoFaultHandlingStrategy extends FaultHandlingStrategy { - def trapExit: List[Class[_ <: Throwable]] = Nil - } } \ No newline at end of file diff --git a/akka-actor/src/test/java/se/scalablesolutions/akka/config/SupervisionConfig.java b/akka-actor/src/test/java/se/scalablesolutions/akka/config/SupervisionConfig.java index d8de22eb59..dcd2001d27 100644 --- a/akka-actor/src/test/java/se/scalablesolutions/akka/config/SupervisionConfig.java +++ b/akka-actor/src/test/java/se/scalablesolutions/akka/config/SupervisionConfig.java @@ -3,6 +3,7 @@ package se.scalablesolutions.akka.config; import se.scalablesolutions.akka.actor.ActorRef; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import static se.scalablesolutions.akka.config.Supervision.*; @@ -15,6 +16,6 @@ public class SupervisionConfig { targets.add(new Supervise(ref, permanent(), new RemoteAddress("localhost",9999))); } - return new SupervisorConfig(new RestartStrategy(new OneForOne(),50,1000,new Class[]{ Exception.class}), targets.toArray(new Server[0])); + return new SupervisorConfig(new OneForOneStrategy(new Class[] { Exception.class },50,1000), targets.toArray(new Server[0])); } } diff --git a/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala b/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala index 261df68eab..5fcaf13173 100644 --- a/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala +++ b/akka-actor/src/test/scala/actor/supervisor/SupervisorMiscSpec.scala @@ -6,7 +6,7 @@ package se.scalablesolutions.akka.actor import org.scalatest.WordSpec import org.scalatest.matchers.MustMatchers import se.scalablesolutions.akka.dispatch.Dispatchers -import se.scalablesolutions.akka.config.Supervision.{RestartStrategy, SupervisorConfig, OneForOne, Supervise, Permanent} +import se.scalablesolutions.akka.config.Supervision.{SupervisorConfig, OneForOneStrategy, Supervise, Permanent} import java.util.concurrent.CountDownLatch class SupervisorMiscSpec extends WordSpec with MustMatchers { @@ -57,7 +57,7 @@ class SupervisorMiscSpec extends WordSpec with MustMatchers { val sup = Supervisor( SupervisorConfig( - RestartStrategy(new OneForOne, 3, 5000, List(classOf[Exception])), + OneForOneStrategy(List(classOf[Exception]),3, 5000), Supervise(actor1, Permanent) :: Supervise(actor2, Permanent) :: Supervise(actor3, Permanent) :: diff --git a/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala b/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala index 3a1758d7c6..5f73c4ce8e 100644 --- a/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala +++ b/akka-actor/src/test/scala/actor/supervisor/SupervisorSpec.scala @@ -501,7 +501,7 @@ class SupervisorSpec extends JUnitSuite { Supervisor( SupervisorConfig( - RestartStrategy(AllForOne, 3, 5000, List(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 5000), Supervise( temporaryActor, Temporary) @@ -513,7 +513,7 @@ class SupervisorSpec extends JUnitSuite { Supervisor( SupervisorConfig( - RestartStrategy(AllForOne, 3, 5000, List(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 5000), Supervise( pingpong1, Permanent) @@ -525,7 +525,7 @@ class SupervisorSpec extends JUnitSuite { Supervisor( SupervisorConfig( - RestartStrategy(OneForOne, 3, 5000, List(classOf[Exception])), + OneForOneStrategy(List(classOf[Exception]), 3, 5000), Supervise( pingpong1, Permanent) @@ -539,7 +539,7 @@ class SupervisorSpec extends JUnitSuite { Supervisor( SupervisorConfig( - RestartStrategy(AllForOne, 3, 5000, List(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 5000), Supervise( pingpong1, Permanent) @@ -561,7 +561,7 @@ class SupervisorSpec extends JUnitSuite { Supervisor( SupervisorConfig( - RestartStrategy(OneForOne, 3, 5000, List(classOf[Exception])), + OneForOneStrategy(List(classOf[Exception]), 3, 5000), Supervise( pingpong1, Permanent) @@ -583,13 +583,13 @@ class SupervisorSpec extends JUnitSuite { Supervisor( SupervisorConfig( - RestartStrategy(AllForOne, 3, 5000, List(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 5000), Supervise( pingpong1, Permanent) :: SupervisorConfig( - RestartStrategy(AllForOne, 3, 5000, Nil), + AllForOneStrategy(Nil, 3, 5000), Supervise( pingpong2, Permanent) diff --git a/akka-actor/src/test/scala/misc/SchedulerSpec.scala b/akka-actor/src/test/scala/misc/SchedulerSpec.scala index c1f1071161..2278536c1d 100644 --- a/akka-actor/src/test/scala/misc/SchedulerSpec.scala +++ b/akka-actor/src/test/scala/misc/SchedulerSpec.scala @@ -110,8 +110,7 @@ class SchedulerSpec extends JUnitSuite { Supervisor( SupervisorConfig( - RestartStrategy(AllForOne, 3, 1000, - List(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 1000), Supervise( actor, Permanent) diff --git a/akka-remote/src/main/scala/remote/Cluster.scala b/akka-remote/src/main/scala/remote/Cluster.scala index df1a79009e..f7ef779289 100644 --- a/akka-remote/src/main/scala/remote/Cluster.scala +++ b/akka-remote/src/main/scala/remote/Cluster.scala @@ -241,8 +241,7 @@ object Cluster extends Cluster with Logging { private[akka] def createSupervisor(actor: ActorRef): Option[Supervisor] = Some(Supervisor( - SupervisorConfig( - RestartStrategy(OneForOne, 5, 1000, List(classOf[Exception])), + SupervisorConfig(OneForOneStrategy(List(classOf[Exception]), 5, 1000), Supervise(actor, Permanent) :: Nil))) private[this] def clusterActor = if (clusterActorRef.isEmpty) None else Some(clusterActorRef.get.actor.asInstanceOf[ClusterActor]) diff --git a/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala b/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala index 735aba23cb..9834b035af 100644 --- a/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala +++ b/akka-remote/src/test/scala/remote/RemoteSupervisorSpec.scala @@ -480,7 +480,7 @@ class RemoteSupervisorSpec extends JUnitSuite { val factory = SupervisorFactory( SupervisorConfig( - RestartStrategy(AllForOne, 3, 100, List(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 100), Supervise( pingpong1, Permanent) @@ -496,7 +496,7 @@ class RemoteSupervisorSpec extends JUnitSuite { val factory = SupervisorFactory( SupervisorConfig( - RestartStrategy(OneForOne, 3, 100, List(classOf[Exception])), + OneForOneStrategy(List(classOf[Exception]), 3, 100), Supervise( pingpong1, Permanent) @@ -517,7 +517,7 @@ class RemoteSupervisorSpec extends JUnitSuite { val factory = SupervisorFactory( SupervisorConfig( - RestartStrategy(AllForOne, 3, 100, List(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 100), Supervise( pingpong1, Permanent) @@ -548,7 +548,7 @@ class RemoteSupervisorSpec extends JUnitSuite { val factory = SupervisorFactory( SupervisorConfig( - RestartStrategy(OneForOne, 3, 100, List(classOf[Exception])), + OneForOneStrategy(List(classOf[Exception]), 3, 100), Supervise( pingpong1, Permanent) @@ -577,13 +577,13 @@ class RemoteSupervisorSpec extends JUnitSuite { val factory = SupervisorFactory( SupervisorConfig( - RestartStrategy(AllForOne, 3, 100, List(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 100), Supervise( pingpong1, Permanent) :: SupervisorConfig( - RestartStrategy(AllForOne, 3, 100, List(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 100), Supervise( pingpong2, Permanent) diff --git a/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala b/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala index 58c977654d..cd8f09a615 100644 --- a/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala +++ b/akka-remote/src/test/scala/remote/RemoteTypedActorSpec.scala @@ -48,7 +48,7 @@ class RemoteTypedActorSpec extends server.start("localhost", 9995) Config.config conf.configure( - new RestartStrategy(AllForOne(), 3, 5000, List(classOf[Exception]).toArray), + new AllForOneStrategy(List(classOf[Exception]), 3, 5000), List( new SuperviseTypedActor( classOf[RemoteTypedActorOne], diff --git a/akka-samples/akka-sample-rest-java/src/main/java/sample/rest/java/Boot.java b/akka-samples/akka-sample-rest-java/src/main/java/sample/rest/java/Boot.java index 4775e0e7a8..d9b33cf559 100644 --- a/akka-samples/akka-sample-rest-java/src/main/java/sample/rest/java/Boot.java +++ b/akka-samples/akka-sample-rest-java/src/main/java/sample/rest/java/Boot.java @@ -11,7 +11,7 @@ public class Boot { public final static TypedActorConfigurator configurator = new TypedActorConfigurator(); static { configurator.configure( - new RestartStrategy(new OneForOne(), 3, 5000, new Class[]{Exception.class}), + new OneForOneStrategy(new Class[]{Exception.class}, 3, 5000), new SuperviseTypedActor[] { new SuperviseTypedActor( SimpleService.class, diff --git a/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala b/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala index 56f977ab89..a316c54fcc 100644 --- a/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala +++ b/akka-samples/akka-sample-rest-scala/src/main/scala/SimpleService.scala @@ -25,7 +25,7 @@ import org.atmosphere.jersey.Broadcastable class Boot { val factory = SupervisorFactory( SupervisorConfig( - RestartStrategy(OneForOne, 3, 100,List(classOf[Exception])), + OneForOneStrategy(List(classOf[Exception]), 3, 100), Supervise( actorOf[SimpleServiceActor], Permanent) :: diff --git a/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala b/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala index a382b0a40e..0f2dd0e59a 100644 --- a/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala +++ b/akka-samples/akka-sample-security/src/main/scala/SimpleService.scala @@ -15,7 +15,7 @@ import se.scalablesolutions.akka.actor.ActorRegistry.actorFor class Boot { val factory = SupervisorFactory( SupervisorConfig( - RestartStrategy(OneForOne, 3, 100, List(classOf[Exception])), + OneForOneStrategy(List(classOf[Exception]), 3, 100), // Dummy implementations of all authentication actors // see akka.conf to enable one of these for the AkkaSecurityFilterFactory Supervise( diff --git a/akka-spring/src/main/scala/SupervisionBeanDefinitionParser.scala b/akka-spring/src/main/scala/SupervisionBeanDefinitionParser.scala index cb797ba29a..8eb2d6ef37 100644 --- a/akka-spring/src/main/scala/SupervisionBeanDefinitionParser.scala +++ b/akka-spring/src/main/scala/SupervisionBeanDefinitionParser.scala @@ -47,12 +47,17 @@ class SupervisionBeanDefinitionParser extends AbstractSingleBeanDefinitionParser } private[akka] def parseRestartStrategy(element: Element, builder: BeanDefinitionBuilder) { - val failover = if (mandatory(element, FAILOVER) == "AllForOne") AllForOne else OneForOne + val failover = mandatory(element, FAILOVER) val timeRange = mandatory(element, TIME_RANGE).toInt val retries = mandatory(element, RETRIES).toInt val trapExitsElement = mandatoryElement(element, TRAP_EXISTS_TAG) val trapExceptions = parseTrapExits(trapExitsElement) - val restartStrategy = new RestartStrategy(failover, retries, timeRange, trapExceptions) + + val restartStrategy = failover match { + case "AllForOne" => new AllForOneStrategy(trapExceptions, retries, timeRange) + case "OneForOne" => new OneForOneStrategy(trapExceptions, retries, timeRange) + case _ => new OneForOneStrategy(trapExceptions, retries, timeRange) //Default to OneForOne + } builder.addPropertyValue("restartStrategy", restartStrategy) } diff --git a/akka-spring/src/main/scala/SupervisionFactoryBean.scala b/akka-spring/src/main/scala/SupervisionFactoryBean.scala index 86709f06f0..b4559304b5 100644 --- a/akka-spring/src/main/scala/SupervisionFactoryBean.scala +++ b/akka-spring/src/main/scala/SupervisionFactoryBean.scala @@ -15,7 +15,7 @@ import se.scalablesolutions.akka.config.{TypedActorConfigurator, RemoteAddress} * @author michaelkober */ class SupervisionFactoryBean extends AbstractFactoryBean[AnyRef] { - @BeanProperty var restartStrategy: RestartStrategy = _ + @BeanProperty var restartStrategy: FaultHandlingStrategy = _ @BeanProperty var supervised: List[ActorProperties] = _ @BeanProperty var typed: String = "" diff --git a/akka-spring/src/test/scala/SupervisionBeanDefinitionParserTest.scala b/akka-spring/src/test/scala/SupervisionBeanDefinitionParserTest.scala index 45effd28e5..85c28b0c0e 100644 --- a/akka-spring/src/test/scala/SupervisionBeanDefinitionParserTest.scala +++ b/akka-spring/src/test/scala/SupervisionBeanDefinitionParserTest.scala @@ -11,7 +11,7 @@ import ScalaDom._ import org.w3c.dom.Element import org.springframework.beans.factory.support.BeanDefinitionBuilder -import se.scalablesolutions.akka.config.Supervision. {RestartStrategy, AllForOne} +import se.scalablesolutions.akka.config.Supervision. {FaultHandlingStrategy, AllForOneStrategy} /** * Test for SupervisionBeanDefinitionParser @@ -35,13 +35,11 @@ class SupervisionBeanDefinitionParserTest extends Spec with ShouldMatchers { it("should parse the supervisor restart strategy") { parser.parseSupervisor(createSupervisorElement, builder); - val strategy = builder.getBeanDefinition.getPropertyValues.getPropertyValue("restartStrategy").getValue.asInstanceOf[RestartStrategy] + val strategy = builder.getBeanDefinition.getPropertyValues.getPropertyValue("restartStrategy").getValue.asInstanceOf[FaultHandlingStrategy] assert(strategy ne null) - assert(strategy.scheme match { - case AllForOne => true - case _ => false }) - expect(3) { strategy.maxNrOfRetries } - expect(1000) { strategy.withinTimeRange } + assert(strategy.isInstanceOf[AllForOneStrategy]) + expect(3) { strategy.asInstanceOf[AllForOneStrategy].maxNrOfRetries.get } + expect(1000) { strategy.asInstanceOf[AllForOneStrategy].withinTimeRange.get } } it("should parse the supervised typed actors") { diff --git a/akka-spring/src/test/scala/SupervisionFactoryBeanTest.scala b/akka-spring/src/test/scala/SupervisionFactoryBeanTest.scala index d85cfff942..bb2fbb0b27 100644 --- a/akka-spring/src/test/scala/SupervisionFactoryBeanTest.scala +++ b/akka-spring/src/test/scala/SupervisionFactoryBeanTest.scala @@ -15,7 +15,7 @@ private[akka] class Foo @RunWith(classOf[JUnitRunner]) class SupervisionFactoryBeanTest extends Spec with ShouldMatchers { - val restartStrategy = new RestartStrategy(AllForOne(), 3, 1000, Array(classOf[Throwable])) + val faultHandlingStrategy = new AllForOneStrategy(List(classOf[Exception]), 3, 1000) val typedActors = List(createTypedActorProperties("se.scalablesolutions.akka.spring.Foo", "1000")) private def createTypedActorProperties(target: String, timeout: String) : ActorProperties = { @@ -28,8 +28,8 @@ class SupervisionFactoryBeanTest extends Spec with ShouldMatchers { describe("A SupervisionFactoryBean") { val bean = new SupervisionFactoryBean it("should have java getters and setters for all properties") { - bean.setRestartStrategy(restartStrategy) - assert(bean.getRestartStrategy == restartStrategy) + bean.setRestartStrategy(faultHandlingStrategy) + assert(bean.getRestartStrategy == faultHandlingStrategy) bean.setSupervised(typedActors) assert(bean.getSupervised == typedActors) } diff --git a/akka-typed-actor/src/main/scala/actor/TypedActor.scala b/akka-typed-actor/src/main/scala/actor/TypedActor.scala index a092f34070..0aeb127fdc 100644 --- a/akka-typed-actor/src/main/scala/actor/TypedActor.scala +++ b/akka-typed-actor/src/main/scala/actor/TypedActor.scala @@ -731,8 +731,8 @@ object TypedActor extends Logging { private[akka] def returnsFuture_?(methodRtti: MethodRtti): Boolean = classOf[Future[_]].isAssignableFrom(methodRtti.getMethod.getReturnType) - private[akka] def supervise(restartStrategy: RestartStrategy, components: List[Supervise]): Supervisor = - Supervisor(SupervisorConfig(restartStrategy, components)) + private[akka] def supervise(faultHandlingStrategy: FaultHandlingStrategy, components: List[Supervise]): Supervisor = + Supervisor(SupervisorConfig(faultHandlingStrategy, components)) def isJoinPointAndOneWay(message: Any): Boolean = if (isJoinPoint(message)) isOneWay(message.asInstanceOf[JoinPoint].getRtti.asInstanceOf[MethodRtti]) diff --git a/akka-typed-actor/src/main/scala/config/TypedActorConfigurator.scala b/akka-typed-actor/src/main/scala/config/TypedActorConfigurator.scala index 995640f979..f23cb6b8ec 100644 --- a/akka-typed-actor/src/main/scala/config/TypedActorConfigurator.scala +++ b/akka-typed-actor/src/main/scala/config/TypedActorConfigurator.scala @@ -43,9 +43,9 @@ class TypedActorConfigurator { */ def getInstance[T](clazz: Class[T]): T = INSTANCE.getInstance(clazz).head - def configure(restartStrategy: RestartStrategy, components: Array[SuperviseTypedActor]): TypedActorConfigurator = { + def configure(faultHandlingStrategy: FaultHandlingStrategy, components: Array[SuperviseTypedActor]): TypedActorConfigurator = { INSTANCE.configure( - restartStrategy, + faultHandlingStrategy, components.toList.asInstanceOf[scala.List[SuperviseTypedActor]]) this } diff --git a/akka-typed-actor/src/main/scala/config/TypedActorGuiceConfigurator.scala b/akka-typed-actor/src/main/scala/config/TypedActorGuiceConfigurator.scala index 4cd71ab060..38378f5e8b 100644 --- a/akka-typed-actor/src/main/scala/config/TypedActorGuiceConfigurator.scala +++ b/akka-typed-actor/src/main/scala/config/TypedActorGuiceConfigurator.scala @@ -27,7 +27,7 @@ import com.google.inject._ private[akka] class TypedActorGuiceConfigurator extends TypedActorConfiguratorBase with Logging { private var injector: Injector = _ private var supervisor: Option[Supervisor] = None - private var restartStrategy: RestartStrategy = _ + private var faultHandlingStrategy: FaultHandlingStrategy = NoFaultHandlingStrategy private var components: List[SuperviseTypedActor] = _ private var supervised: List[Supervise] = Nil private var bindings: List[DependencyBinding] = Nil @@ -68,9 +68,9 @@ private[akka] class TypedActorGuiceConfigurator extends TypedActorConfiguratorBa else c.target } - override def configure(restartStrategy: RestartStrategy, components: List[SuperviseTypedActor]): + override def configure(faultHandlingStrategy: FaultHandlingStrategy, components: List[SuperviseTypedActor]): TypedActorConfiguratorBase = synchronized { - this.restartStrategy = restartStrategy + this.faultHandlingStrategy = faultHandlingStrategy this.components = components.toArray.toList.asInstanceOf[List[SuperviseTypedActor]] bindings = for (component <- this.components) yield { newDelegatingProxy(component) @@ -144,7 +144,7 @@ private[akka] class TypedActorGuiceConfigurator extends TypedActorConfiguratorBa override def supervise: TypedActorConfiguratorBase = synchronized { if (injector eq null) inject - supervisor = Some(TypedActor.supervise(restartStrategy, supervised)) + supervisor = Some(TypedActor.supervise(faultHandlingStrategy, supervised)) this } @@ -173,7 +173,7 @@ private[akka] class TypedActorGuiceConfigurator extends TypedActorConfiguratorBa typedActorRegistry = new HashMap[Class[_], Tuple3[AnyRef, AnyRef, SuperviseTypedActor]] methodToUriRegistry = new HashMap[Method, String] injector = null - restartStrategy = null + faultHandlingStrategy = NoFaultHandlingStrategy } def stop = synchronized { diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala index 3dc1702593..968379a003 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/RestartTransactionalTypedActorSpec.scala @@ -27,7 +27,7 @@ class RestartTransactionalTypedActorSpec extends def before { Config.config conf.configure( - new RestartStrategy(AllForOne, 3, 5000, Array(classOf[Exception])), + AllForOneStrategy(List(classOf[Exception]), 3, 5000), List( new SuperviseTypedActor( classOf[TransactionalTypedActor], diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala index f524f96777..ea6e939386 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorGuiceConfiguratorSpec.scala @@ -35,21 +35,21 @@ class TypedActorGuiceConfiguratorSpec extends conf.addExternalGuiceModule(new AbstractModule { def configure = bind(classOf[Ext]).to(classOf[ExtImpl]).in(Scopes.SINGLETON) }).configure( - new RestartStrategy(AllForOne(), 3, 5000, Array(classOf[Exception])), - List( - new SuperviseTypedActor( - classOf[Foo], - classOf[FooImpl], - Permanent, - 1000, - dispatcher), - new SuperviseTypedActor( - classOf[Bar], - classOf[BarImpl], - Permanent, - 1000, - dispatcher) - ).toArray).inject.supervise + AllForOneStrategy(classOf[Exception] :: Nil, 3, 5000), + List( + new SuperviseTypedActor( + classOf[Foo], + classOf[FooImpl], + Permanent, + 1000, + dispatcher), + new SuperviseTypedActor( + classOf[Bar], + classOf[BarImpl], + Permanent, + 1000, + dispatcher) + ).toArray).inject.supervise } diff --git a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala index 715ddb8ef8..7bc521fe73 100644 --- a/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala +++ b/akka-typed-actor/src/test/scala/actor/typed-actor/TypedActorLifecycleSpec.scala @@ -21,7 +21,7 @@ class TypedActorLifecycleSpec extends Spec with ShouldMatchers with BeforeAndAft var conf2: TypedActorConfigurator = _ override protected def beforeAll() = { - val strategy = new RestartStrategy(AllForOne(), 3, 1000, Array(classOf[Exception])) + val strategy = AllForOneStrategy(classOf[Exception] :: Nil, 3, 1000) val comp3 = new SuperviseTypedActor(classOf[SamplePojo], classOf[SamplePojoImpl], permanent(), 1000) val comp4 = new SuperviseTypedActor(classOf[SamplePojo], classOf[SamplePojoImpl], temporary(), 1000) conf1 = new TypedActorConfigurator().configure(strategy, Array(comp3)).supervise @@ -87,7 +87,7 @@ class TypedActorLifecycleSpec extends Spec with ShouldMatchers with BeforeAndAft SamplePojoImpl.reset val pojo = TypedActor.newInstance(classOf[SimpleJavaPojo], classOf[SimpleJavaPojoImpl]) val supervisor = TypedActor.newInstance(classOf[SimpleJavaPojo], classOf[SimpleJavaPojoImpl]) - link(supervisor, pojo, OneForOneStrategy(Array(classOf[Throwable]), 3, 2000)) + link(supervisor, pojo, OneForOneStrategy(classOf[Throwable] :: Nil, 3, 2000)) pojo.throwException Thread.sleep(500) SimpleJavaPojoImpl._pre should be(true) From ddfb15ea4b7ce87470954707ef4fe6adeb281c94 Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Tue, 19 Oct 2010 18:41:18 +0200 Subject: [PATCH 13/17] Added Java API constructor to supervision configuration --- akka-actor/src/main/scala/config/SupervisionConfig.scala | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/akka-actor/src/main/scala/config/SupervisionConfig.scala b/akka-actor/src/main/scala/config/SupervisionConfig.scala index 27abeba578..83ac8f1fee 100644 --- a/akka-actor/src/main/scala/config/SupervisionConfig.scala +++ b/akka-actor/src/main/scala/config/SupervisionConfig.scala @@ -30,6 +30,10 @@ object Supervision { //Java API def this(actorRef: ActorRef, lifeCycle: LifeCycle, remoteAddress: RemoteAddress) = this(actorRef, lifeCycle, Option(remoteAddress)) + + //Java API + def this(actorRef: ActorRef, lifeCycle: LifeCycle) = + this(actorRef, lifeCycle, None) } object Supervise { From 2e46c3eafd10c9aa4dcbaff393309225cd3a64b2 Mon Sep 17 00:00:00 2001 From: Debasish Ghosh Date: Tue, 19 Oct 2010 23:38:41 +0530 Subject: [PATCH 14/17] fix for issue #480 Regression multibulk replies redis client with a new version of redisclient --- .../src/main/scala/RedisPubSubServer.scala | 10 +++++----- .../2.8.0-2.0.2/redisclient-2.8.0-2.0.2.jar | Bin 0 -> 237750 bytes .../2.8.0-2.0.2/redisclient-2.8.0-2.0.2.pom | 8 ++++++++ project/build/AkkaProject.scala | 2 +- 4 files changed, 14 insertions(+), 6 deletions(-) create mode 100644 embedded-repo/com/redis/redisclient/2.8.0-2.0.2/redisclient-2.8.0-2.0.2.jar create mode 100644 embedded-repo/com/redis/redisclient/2.8.0-2.0.2/redisclient-2.8.0-2.0.2.pom diff --git a/akka-persistence/akka-persistence-redis/src/main/scala/RedisPubSubServer.scala b/akka-persistence/akka-persistence-redis/src/main/scala/RedisPubSubServer.scala index 53205a029d..afde9ebb1b 100644 --- a/akka-persistence/akka-persistence-redis/src/main/scala/RedisPubSubServer.scala +++ b/akka-persistence/akka-persistence-redis/src/main/scala/RedisPubSubServer.scala @@ -16,19 +16,19 @@ class Subscriber(client: RedisClient) extends Actor { def receive = { case Subscribe(channels) => client.subscribe(channels.head, channels.tail: _*)(callback) - self.reply(true) + self.reply_?(true) case Register(cb) => callback = cb - self.reply(true) + self.reply_?(true) case Unsubscribe(channels) => client.unsubscribe(channels.head, channels.tail: _*) - self.reply(true) + self.reply_?(true) case UnsubscribeAll => client.unsubscribe - self.reply(true) + self.reply_?(true) } } @@ -36,7 +36,7 @@ class Publisher(client: RedisClient) extends Actor { def receive = { case Publish(channel, message) => client.publish(channel, message) - self.reply(true) + self.reply_?(true) } } diff --git a/embedded-repo/com/redis/redisclient/2.8.0-2.0.2/redisclient-2.8.0-2.0.2.jar b/embedded-repo/com/redis/redisclient/2.8.0-2.0.2/redisclient-2.8.0-2.0.2.jar new file mode 100644 index 0000000000000000000000000000000000000000..cbaf69ad80f4b25e33ad283a6f1b8c3549f10ccb GIT binary patch literal 237750 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

    elO7zS3FYr#S3`tCfo+;BhDcAps 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

    mPM+Np@@@L9+HTt` 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

    qYVZ5Hpv3xAn}gTg*+9rhVRF(6PN> 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 + + 4.0.0 + com.redis + redisclient + 2.8.0-2.0.2 + jar + diff --git a/project/build/AkkaProject.scala b/project/build/AkkaProject.scala index 17a93767a6..306567195f 100644 --- a/project/build/AkkaProject.scala +++ b/project/build/AkkaProject.scala @@ -217,7 +217,7 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { lazy val rabbit = "com.rabbitmq" % "amqp-client" % "1.8.1" % "compile" - lazy val redis = "com.redis" % "redisclient" % "2.8.0-2.0.1" % "compile" + lazy val redis = "com.redis" % "redisclient" % "2.8.0-2.0.2" % "compile" lazy val sbinary = "sbinary" % "sbinary" % "2.8.0-0.3.1" % "compile" From aa904136fd221b99debb051538f2249f7a2ed2a8 Mon Sep 17 00:00:00 2001 From: Debasish Ghosh Date: Wed, 20 Oct 2010 07:29:31 +0530 Subject: [PATCH 15/17] fix for the fix for #480 : new version of redisclient --- .../2.8.0-2.0.3/redisclient-2.8.0-2.0.3.jar | Bin 0 -> 237789 bytes .../2.8.0-2.0.3/redisclient-2.8.0-2.0.3.pom | 8 ++++++++ project/build/AkkaProject.scala | 2 +- 3 files changed, 9 insertions(+), 1 deletion(-) create mode 100644 embedded-repo/com/redis/redisclient/2.8.0-2.0.3/redisclient-2.8.0-2.0.3.jar create mode 100644 embedded-repo/com/redis/redisclient/2.8.0-2.0.3/redisclient-2.8.0-2.0.3.pom diff --git a/embedded-repo/com/redis/redisclient/2.8.0-2.0.3/redisclient-2.8.0-2.0.3.jar b/embedded-repo/com/redis/redisclient/2.8.0-2.0.3/redisclient-2.8.0-2.0.3.jar new file mode 100644 index 0000000000000000000000000000000000000000..be75baa5aac1234718f5fc2f57cbfb7db1c8753e GIT binary patch literal 237789 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 z%0A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�WTxhosDNjEVKv{{2+oR-tD<)5w|&&~ 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�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

    |0GXOAE-P6jdr1qXlw{Y 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 literal 0 HcmV?d00001 diff --git a/embedded-repo/com/redis/redisclient/2.8.0-2.0.3/redisclient-2.8.0-2.0.3.pom b/embedded-repo/com/redis/redisclient/2.8.0-2.0.3/redisclient-2.8.0-2.0.3.pom new file mode 100644 index 0000000000..7b1878f070 --- /dev/null +++ b/embedded-repo/com/redis/redisclient/2.8.0-2.0.3/redisclient-2.8.0-2.0.3.pom @@ -0,0 +1,8 @@ + + + 4.0.0 + com.redis + redisclient + 2.8.0-2.0.3 + jar + diff --git a/project/build/AkkaProject.scala b/project/build/AkkaProject.scala index 306567195f..23240a9d87 100644 --- a/project/build/AkkaProject.scala +++ b/project/build/AkkaProject.scala @@ -217,7 +217,7 @@ class AkkaParentProject(info: ProjectInfo) extends DefaultProject(info) { lazy val rabbit = "com.rabbitmq" % "amqp-client" % "1.8.1" % "compile" - lazy val redis = "com.redis" % "redisclient" % "2.8.0-2.0.2" % "compile" + lazy val redis = "com.redis" % "redisclient" % "2.8.0-2.0.3" % "compile" lazy val sbinary = "sbinary" % "sbinary" % "2.8.0-0.3.1" % "compile" From b19725915fb2e6b5cd6cb2a36b0c8bf29f1175c4 Mon Sep 17 00:00:00 2001 From: Viktor Klang Date: Wed, 20 Oct 2010 14:07:18 +0200 Subject: [PATCH 16/17] Reducing object creation per ActorRef + removed unsafe concurrent publication --- akka-actor/src/main/scala/actor/Actor.scala | 12 +++++-- .../src/main/scala/actor/ActorRef.scala | 31 ++++--------------- 2 files changed, 16 insertions(+), 27 deletions(-) diff --git a/akka-actor/src/main/scala/actor/Actor.scala b/akka-actor/src/main/scala/actor/Actor.scala index 57b3dae38e..2e6bd238d2 100644 --- a/akka-actor/src/main/scala/actor/Actor.scala +++ b/akka-actor/src/main/scala/actor/Actor.scala @@ -8,13 +8,13 @@ import se.scalablesolutions.akka.dispatch._ import se.scalablesolutions.akka.config.Config._ import se.scalablesolutions.akka.config.Supervision._ import se.scalablesolutions.akka.util.Helpers.{narrow, narrowSilently} -import se.scalablesolutions.akka.util.{Logging, Duration} import se.scalablesolutions.akka.AkkaException import java.util.concurrent.TimeUnit import java.net.InetSocketAddress import scala.reflect.BeanProperty +import se.scalablesolutions.akka.util. {ReflectiveAccess, Logging, Duration} /** * Implements the Transactor abstraction. E.g. a transactional actor. @@ -120,7 +120,15 @@ object Actor extends Logging { * val actor = actorOf[MyActor].start * */ - def actorOf(clazz: Class[_ <: Actor]): ActorRef = new LocalActorRef(clazz) + def actorOf(clazz: Class[_ <: Actor]): ActorRef = new LocalActorRef(() => { + import ReflectiveAccess.{ createInstance, noParams, noArgs } + createInstance[Actor](clazz.asInstanceOf[Class[_]], noParams, noArgs).getOrElse( + throw new ActorInitializationException( + "Could not instantiate Actor" + + "\nMake sure Actor is NOT defined inside a class/trait," + + "\nif so put it outside the class/trait, f.e. in a companion object," + + "\nOR try to change: 'actorOf[MyActor]' to 'actorOf(new MyActor)'.")) + }) /** diff --git a/akka-actor/src/main/scala/actor/ActorRef.scala b/akka-actor/src/main/scala/actor/ActorRef.scala index e4c8d58cc1..7a6e493f43 100644 --- a/akka-actor/src/main/scala/actor/ActorRef.scala +++ b/akka-actor/src/main/scala/actor/ActorRef.scala @@ -635,7 +635,7 @@ trait ActorRef extends ActorRefShared with TransactionManagement with Logging wi * @author Jonas Bonér */ class LocalActorRef private[akka] ( - private[this] var actorFactory: Either[Option[Class[_ <: Actor]], Option[() => Actor]] = Left(None)) + private[this] val actorFactory: () => Actor) extends ActorRef with ScalaActorRef { @volatile @@ -656,9 +656,6 @@ class LocalActorRef private[akka] ( //If it was started inside "newActor", initialize it if (isRunning) initializeActorInstance - private[akka] def this(clazz: Class[_ <: Actor]) = this(Left(Some(clazz))) - private[akka] def this(factory: () => Actor) = this(Right(Some(factory))) - // used only for deserialization private[akka] def this(__uuid: Uuid, __id: String, @@ -885,7 +882,7 @@ class LocalActorRef private[akka] ( * To be invoked from within the actor itself. */ def spawn(clazz: Class[_ <: Actor]): ActorRef = guard.withGuard { - spawnButDoNotStart(clazz).start + Actor.actorOf(clazz).start } /** @@ -895,7 +892,7 @@ class LocalActorRef private[akka] ( */ def spawnRemote(clazz: Class[_ <: Actor], hostname: String, port: Int): ActorRef = guard.withGuard { ensureRemotingEnabled - val actor = spawnButDoNotStart(clazz) + val actor = Actor.actorOf(clazz) actor.makeRemote(hostname, port) actor.start actor @@ -907,7 +904,7 @@ class LocalActorRef private[akka] ( * To be invoked from within the actor itself. */ def spawnLink(clazz: Class[_ <: Actor]): ActorRef = guard.withGuard { - val actor = spawnButDoNotStart(clazz) + val actor = Actor.actorOf(clazz) try { link(actor) } finally { @@ -923,7 +920,7 @@ class LocalActorRef private[akka] ( */ def spawnLinkRemote(clazz: Class[_ <: Actor], hostname: String, port: Int): ActorRef = guard.withGuard { ensureRemotingEnabled - val actor = spawnButDoNotStart(clazz) + val actor = Actor.actorOf(clazz) try { actor.makeRemote(hostname, port) link(actor) @@ -1147,25 +1144,9 @@ class LocalActorRef private[akka] ( freshActor.postRestart(reason) } - private def spawnButDoNotStart(clazz: Class[_ <: Actor]): ActorRef = Actor.actorOf(clazz.newInstance) - private[this] def newActor: Actor = { Actor.actorRefInCreation.withValue(Some(this)) { - val actor = actorFactory match { - case Left(Some(clazz)) => - import ReflectiveAccess.{ createInstance, noParams, noArgs } - createInstance(clazz.asInstanceOf[Class[_]], noParams, noArgs). - getOrElse(throw new ActorInitializationException( - "Could not instantiate Actor" + - "\nMake sure Actor is NOT defined inside a class/trait," + - "\nif so put it outside the class/trait, f.e. in a companion object," + - "\nOR try to change: 'actorOf[MyActor]' to 'actorOf(new MyActor)'.")) - case Right(Some(factory)) => - factory() - case _ => - throw new ActorInitializationException( - "Can't create Actor, no Actor class or factory function in scope") - } + val actor = actorFactory() if (actor eq null) throw new ActorInitializationException( "Actor instance passed to ActorRef can not be 'null'") actor From 14f1126d9032972855f3660fb3c310eed7f2a135 Mon Sep 17 00:00:00 2001 From: momania Date: Wed, 20 Oct 2010 15:03:16 +0200 Subject: [PATCH 17/17] remove usage of 'actor' function --- .../akka/amqp/ExampleSession.scala | 69 ++++++++----------- 1 file changed, 30 insertions(+), 39 deletions(-) diff --git a/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/ExampleSession.scala b/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/ExampleSession.scala index f560acd807..9bda7f54f4 100644 --- a/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/ExampleSession.scala +++ b/akka-amqp/src/main/scala/se/scalablesolutions/akka/amqp/ExampleSession.scala @@ -69,10 +69,9 @@ object ExampleSession { val exchangeParameters = ExchangeParameters("my_direct_exchange", Direct) - val consumer = AMQP.newConsumer(connection, ConsumerParameters("some.routing", actorOf( new Actor { - def receive = { case Delivery(payload, _, _, _, _) => - log.info("@george_bush received message from: %s", new String(payload)) } - }).start, None, Some(exchangeParameters))) + val consumer = AMQP.newConsumer(connection, ConsumerParameters("some.routing", actorOf(new Actor { def receive = { + case Delivery(payload, _, _, _, _) => log.info("@george_bush received message from: %s", new String(payload)) + }}), None, Some(exchangeParameters))) val producer = AMQP.newProducer(connection, ProducerParameters(Some(exchangeParameters))) producer ! Message("@jonas_boner: You sucked!!".getBytes, "some.routing") @@ -85,15 +84,13 @@ object ExampleSession { val exchangeParameters = ExchangeParameters("my_fanout_exchange", Fanout) - val bushConsumer = AMQP.newConsumer(connection, ConsumerParameters("@george_bush", actorOf( new Actor { - def receive = { case Delivery(payload, _, _, _, _) => - log.info("@george_bush received message from: %s", new String(payload)) } - }).start, None, Some(exchangeParameters))) + val bushConsumer = AMQP.newConsumer(connection, ConsumerParameters("@george_bush", actorOf(new Actor { def receive = { + case Delivery(payload, _, _, _, _) => log.info("@george_bush received message from: %s", new String(payload)) + }}), None, Some(exchangeParameters))) - val obamaConsumer = AMQP.newConsumer(connection, ConsumerParameters("@barack_obama", actorOf( new Actor { - def receive = { case Delivery(payload, _, _, _, _) => - log.info("@barack_obama received message from: %s", new String(payload)) } - }).start, None, Some(exchangeParameters))) + val obamaConsumer = AMQP.newConsumer(connection, ConsumerParameters("@barack_obama", actorOf(new Actor { def receive = { + case Delivery(payload, _, _, _, _) => log.info("@barack_obama received message from: %s", new String(payload)) + }}), None, Some(exchangeParameters))) val producer = AMQP.newProducer(connection, ProducerParameters(Some(exchangeParameters))) producer ! Message("@jonas_boner: I'm going surfing".getBytes, "") @@ -106,15 +103,13 @@ object ExampleSession { val exchangeParameters = ExchangeParameters("my_topic_exchange", Topic) - val bushConsumer = AMQP.newConsumer(connection, ConsumerParameters("@george_bush", actorOf( new Actor { - def receive = { case Delivery(payload, _, _, _, _) => - log.info("@george_bush received message from: %s", new String(payload)) } - }).start, None, Some(exchangeParameters))) + val bushConsumer = AMQP.newConsumer(connection, ConsumerParameters("@george_bush", actorOf(new Actor { def receive = { + case Delivery(payload, _, _, _, _) => log.info("@george_bush received message from: %s", new String(payload)) + }}), None, Some(exchangeParameters))) - val obamaConsumer = AMQP.newConsumer(connection, ConsumerParameters("@barack_obama", actorOf( new Actor { - def receive = { case Delivery(payload, _, _, _, _) => - log.info("@barack_obama received message from: %s", new String(payload)) } - }).start, None, Some(exchangeParameters))) + val obamaConsumer = AMQP.newConsumer(connection, ConsumerParameters("@barack_obama", actorOf(new Actor { def receive = { + case Delivery(payload, _, _, _, _) => log.info("@barack_obama received message from: %s", new String(payload)) + }}), None, Some(exchangeParameters))) val producer = AMQP.newProducer(connection, ProducerParameters(Some(exchangeParameters))) producer ! Message("@jonas_boner: You still suck!!".getBytes, "@george_bush") @@ -125,31 +120,27 @@ object ExampleSession { val channelCountdown = new CountDownLatch(2) - val connectionCallback = actorOf( new Actor { - def receive = { - case Connected => log.info("Connection callback: Connected!") - case Reconnecting => () // not used, sent when connection fails and initiates a reconnect - case Disconnected => log.info("Connection callback: Disconnected!") - } - }).start + val connectionCallback = actorOf(new Actor { def receive = { + case Connected => log.info("Connection callback: Connected!") + case Reconnecting => () // not used, sent when connection fails and initiates a reconnect + case Disconnected => log.info("Connection callback: Disconnected!") + }}) val connection = AMQP.newConnection(new ConnectionParameters(connectionCallback = Some(connectionCallback))) - val channelCallback = actorOf( new Actor { - def receive = { - case Started => { - log.info("Channel callback: Started") - channelCountdown.countDown - } - case Restarting => // not used, sent when channel or connection fails and initiates a restart - case Stopped => log.info("Channel callback: Stopped") + val channelCallback = actorOf(new Actor { def receive = { + case Started => { + log.info("Channel callback: Started") + channelCountdown.countDown } - }).start + case Restarting => // not used, sent when channel or connection fails and initiates a restart + case Stopped => log.info("Channel callback: Stopped") + }}) val exchangeParameters = ExchangeParameters("my_callback_exchange", Direct) val channelParameters = ChannelParameters(channelCallback = Some(channelCallback)) - val consumer = AMQP.newConsumer(connection, ConsumerParameters("callback.routing", - actorOf( new Actor { def receive = { case _ => } }).start, - None, Some(exchangeParameters), channelParameters = Some(channelParameters))) + val consumer = AMQP.newConsumer(connection, ConsumerParameters("callback.routing", actorOf(new Actor { def receive = { + case _ => () // not used + }}), None, Some(exchangeParameters), channelParameters = Some(channelParameters))) val producer = AMQP.newProducer(connection, ProducerParameters(Some(exchangeParameters)))