Hi Konrad,

I am intending to learn and use scala for my project.  I had found that trait 
signature, but was looking for an implementation.  I found:

  // ========= AKKA PROTECTED FUNCTIONS =========

  def underlying: ActorCell = actorCell

  override def !(message: Any)(implicit sender: ActorRef = Actor.noSender): 
Unit = actorCell.sendMessage(message, sender)

Which kicks control over to the cell building an envelope…still digging.  This 
is in the LocalActorRef, MinimalActorRef, DeadLetterActorRef and 
EmptyLocalActorRef.  I am looking for the remote actorRef, or is that just a 
LocalActorRef with a different context or cell?

I want to create an EventualActorRef that redefines ! to return an 
EventualActorRef which will eventually resolve to the result of the 
computation, whether immediate or remote.  I then wish to be able to call ! on 
the eventualRef and do promise pipelining.  

Is there a diagram/description of the semantics of ! and the structure 
underlying it (Cell/Context/…)?  

I will get there eventually…  :)

thanks for your help,
Robert

PS.  how were you able to quote a code section like you did?


On Jan 19, 2014, at 4:42 PM, Konrad Malawski <[email protected]> wrote:

> It’s in ActorRef.scala, but in a special trait
> https://github.com/akka/akka/blob/master/akka-actor/src/main/scala/akka/actor/ActorRef.scala#L178
> 
> trait ScalaActorRef { ref: ActorRef ⇒
>   def !(message: Any)(implicit sender: ActorRef = Actor.noSender): Unit
> }
> This trick is used in order to not pollute the Java API with methods like !.
> There is an implicit available in an Actor from ActorRef to ScalaActorRef,
> so you have this method available only in Scala code.
> 
> -- 
> Konrad
> On Sunday, 19 January 2014 at 22:49, Rob Withers wrote:
> 
>> So that I may look into adapting different semantics.  I did not find it in 
>> ActorRef.scala, so I am grasping.
>> 
>> thanks,
>> - robert
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> 
>> -- 
>> >>>>>>>>>> Read the docs: http://akka.io/docs/
>> >>>>>>>>>> Check the FAQ: http://akka.io/faq/
>> >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Akka User List" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/akka-user.
>> For more options, visit https://groups.google.com/groups/opt_out.
> 
> 
> -- 
> >>>>>>>>>> Read the docs: http://akka.io/docs/
> >>>>>>>>>> Check the FAQ: http://akka.io/faq/
> >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user
> --- 
> You received this message because you are subscribed to the Google Groups 
> "Akka User List" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/akka-user.
> For more options, visit https://groups.google.com/groups/opt_out.

- robert









-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: http://akka.io/faq/
>>>>>>>>>>      Search the archives: https://groups.google.com/group/akka-user
--- 
You received this message because you are subscribed to the Google Groups "Akka 
User List" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to