コード例 #1
0
 public EchoServerActor()
     : base()
 {
     HostDirectoryActor.Register(this);
     DirectoryActor.GetDirectory().Register(this, "EchoServer");
     Become(new EchoServerBehavior());
 }
コード例 #2
0
        public object GetDeserializedObject(object obj, Type targetType)
        {
            IActor act = (IActor)obj;

            HostDirectoryActor.Register(act);
            // continue
            ActorTag remoteTag = act.Tag;

            return(act);
        }
コード例 #3
0
 public object GetDeserializedObject(object obj, Type targetType)
 {
     if (obj is IActor act)
     {
         HostDirectoryActor.Register(act);
         ActorTag remoteTag = act.Tag; // dont touch this
         return(act);
     }
     return(obj);
 }
コード例 #4
0
 public ShardDirectoryActor()
     : base()
 {
     fShardList = new Dictionary <string, string>();
     fShardList.Add("LocalHost", ActorServer.GetInstance().FullHost);
     DirectoryActor.GetDirectory().Register(this, "KnownShards");
     HostDirectoryActor.Register(this);
     Become(new Behavior <ShardRequest>(
                t => t is ShardRequest,
                DoProcessShardRequest));
 }
コード例 #5
0
 public ShardDirectoryActor(ActorServer actorServer)
     : base()
 {
     fShardList = new Dictionary <string, string>
     {
         { "LocalHost", actorServer.FullHost }
     };
     DirectoryActor.GetDirectory().Register(this, "KnownShards");
     HostDirectoryActor.Register(this);
     Become(new Behavior <ShardRequest>(
                t => t is ShardRequest,
                DoProcessShardRequest));
 }
コード例 #6
0
        public void GetObjectData(object obj, SerializationInfo info, StreamingContext context)
        {
            if (info == null)
            {
                throw new ArgumentNullException("info", "SerializationInfo was null");
            }
            IActor act = (IActor)obj;

            HostDirectoryActor.Register(act);
            // continue
            info.SetType(typeof(RemoteSenderActor));
            ActorTag remoteTag = act.Tag;

            info.AddValue("RemoteTag", remoteTag, typeof(ActorTag));
        }