Re-introducing 'sender' and 'senderFuture' references. Now 'sender' is available both for !! and !!! message sends
This commit is contained in:
parent
05058af370
commit
8842362f42
8 changed files with 72 additions and 70 deletions
|
|
@ -83,14 +83,8 @@ import se.scalablesolutions.akka.dispatch.CompletableFuture
|
|||
def receive = {
|
||||
case Get =>
|
||||
val ref = dataFlow.value.get
|
||||
if (ref.isDefined)
|
||||
self.reply(ref.get)
|
||||
else {
|
||||
readerFuture = self.replyTo match {
|
||||
case Some(Right(future)) => Some(future.asInstanceOf[CompletableFuture[T]])
|
||||
case _ => None
|
||||
}
|
||||
}
|
||||
if (ref.isDefined) self.reply(ref.get)
|
||||
else readerFuture = self.senderFuture.asInstanceOf[Option[CompletableFuture[T]]]
|
||||
case Set(v:T) => if (readerFuture.isDefined) readerFuture.get.completeWithResult(v)
|
||||
case Exit => exit
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue