Example #1
0
 public Unit DispatchUnWatch(ProcessId watching) =>
 ProcessOp.IO(() => Actor.DispatchUnWatch(watching));
Example #2
0
 public Unit Watch(ProcessId pid) =>
 ProcessOp.IO(() => Actor.AddWatcher(pid));
Example #3
0
 public Unit UnWatch(ProcessId pid) =>
 ProcessOp.IO(() => Actor.RemoveWatcher(pid));
Example #4
0
 public Unit Shutdown() =>
 ProcessOp.IO(() => ShutdownProcess(true));
Example #5
0
 public Unit Publish(object message) =>
 ProcessOp.IO(() => Actor.Publish(message));
Example #6
0
 public Unit TellUserControl(UserControlMessage message, ProcessId sender) =>
 ProcessOp.IO(() => Inbox.TellUserControl(message));
Example #7
0
 public Unit Kill() =>
 ProcessOp.IO(() => ShutdownProcess(false));
Example #8
0
 public Unit TellSystem(SystemMessage message, ProcessId sender) =>
 ProcessOp.IO(() => Inbox.TellSystem(message));
Example #9
0
 public Unit Tell(object message, ProcessId sender, Message.TagSpec tag) =>
 ProcessOp.IO(() =>
 {
     message = Inbox.ValidateMessageType(message, sender);
     return(Inbox.Tell(message, sender));
 });
Example #10
0
 public Unit Tell(object message, ProcessId sender, string inbox, Message.Type type, Message.TagSpec tag) =>
 ProcessOp.IO(() => TellNoIO(message, sender, inbox, type, tag));
Example #11
0
 public Unit TellSystem(SystemMessage message, ProcessId sender) =>
 ProcessOp.IO(() =>
 {
     var dto            = RemoteMessageDTO.Create(message, ProcessId, sender, Message.Type.System, message.Tag);
     var clientsReached = Cluster.PublishToChannel(ActorInboxCommon.ClusterSystemInboxNotifyKey(ProcessId), dto);
 });
Example #12
0
 public Unit Publish(object message) =>
 ProcessOp.IO(() => Cluster.PublishToChannel(ActorInboxCommon.ClusterPubSubKey(ProcessId), message));