Fixing ticket #837, broken remote actor refs when serialized
This commit is contained in:
parent
d8add4c68c
commit
276f30d30f
1 changed files with 18 additions and 10 deletions
|
|
@ -260,7 +260,15 @@ object RemoteActorSerialization {
|
|||
/**
|
||||
* Serializes the ActorRef instance into a Protocol Buffers (protobuf) Message.
|
||||
*/
|
||||
def toRemoteActorRefProtocol(ar: ActorRef): RemoteActorRefProtocol = {
|
||||
def toRemoteActorRefProtocol(actor: ActorRef): RemoteActorRefProtocol = actor match {
|
||||
case r: RemoteActorRef =>
|
||||
RemoteActorRefProtocol.newBuilder
|
||||
.setClassOrServiceName(r.id)
|
||||
.setActorClassname(r.actorClassName)
|
||||
.setHomeAddress(ActorSerialization.toAddressProtocol(r))
|
||||
.setTimeout(r.timeout)
|
||||
.build
|
||||
case ar: LocalActorRef =>
|
||||
import ar._
|
||||
|
||||
Actor.remote.registerByUuid(ar)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue