From 0416eb59b49ed2a4ba8a8e9d8cec69ed4ead6ec4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20Bon=C3=A9r?= Date: Fri, 28 May 2010 11:30:33 +0200 Subject: [PATCH] Made 'sender' and 'senderFuture' in ActorRef public --- akka-core/src/main/scala/actor/ActorRef.scala | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/akka-core/src/main/scala/actor/ActorRef.scala b/akka-core/src/main/scala/actor/ActorRef.scala index e98cd33fe1..15a2e3a385 100644 --- a/akka-core/src/main/scala/actor/ActorRef.scala +++ b/akka-core/src/main/scala/actor/ActorRef.scala @@ -216,13 +216,23 @@ trait ActorRef extends TransactionManagement { // protected[akka] def replyTo: Option[Either[ActorRef, CompletableFuture[Any]]] = guard.withGuard { _replyTo } // protected[akka] def replyTo_=(rt: Option[Either[ActorRef, CompletableFuture[Any]]]) = guard.withGuard { _replyTo = rt } - protected[akka] var _sender: Option[ActorRef] = None - protected[akka] var _senderFuture: Option[CompletableFuture[Any]] = None - protected[akka] def sender: Option[ActorRef] = guard.withGuard { _sender } - protected[akka] def senderFuture: Option[CompletableFuture[Any]] = guard.withGuard { _senderFuture } - protected[akka] def sender_=(s: Option[ActorRef]) = guard.withGuard { _sender = s} - protected[akka] def senderFuture_=(sf: Option[CompletableFuture[Any]]) = guard.withGuard { _senderFuture = sf} + protected[akka] var _sender: Option[ActorRef] = None + protected[akka] var _senderFuture: Option[CompletableFuture[Any]] = None + protected[akka] def sender_=(s: Option[ActorRef]) = guard.withGuard { _sender = s} + protected[akka] def senderFuture_=(sf: Option[CompletableFuture[Any]]) = guard.withGuard { _senderFuture = sf} + /** + * The reference sender Actor of the last received message. + * Is defined if the message was sent from another Actor, else None. + */ + def sender: Option[ActorRef] = guard.withGuard { _sender } + + /** + * The reference sender future of the last received message. + * Is defined if the message was sent with sent with '!!' or '!!!', else None. + */ + def senderFuture: Option[CompletableFuture[Any]] = guard.withGuard { _senderFuture } + /** * Is the actor being restarted? */