Ejemplo n.º 1
0
 public TerminatedMessage SetSystem(SystemName sys) =>
 new TerminatedMessage(Id.SetSystem(sys));
 /// <summary>
 /// Access a setting
 /// If in a Process message loop, then this accesses the configuration settings
 /// for the Process from the the configuration file, or stored in the cluster.
 /// If not in a Process message loop, then this accesses 'global' configuration
 /// settings.
 /// </summary>
 /// <param name="name">Name of the setting</param>
 /// <param name="prop">If the setting is a complex value (like a map or record), then
 /// this selects the property of the setting to access</param>
 /// <returns>Optional configuration setting value</returns>
 public static T read <T>(string name, string prop, T defaultValue, SystemName system = default(SystemName)) =>
 InMessageLoop
         ? ActorContext.Request.Ops.Read(name, prop, ActorContext.Request.ProcessFlags, defaultValue)
         : ActorContext.System(system).Settings.GetRoleSetting(name, prop, defaultValue);
Ejemplo n.º 3
0
 public UserMessage SetSystem(SystemName sys) =>
 new UserMessage(Content, Sender.SetSystem(sys), ReplyTo.SetSystem(sys));
Ejemplo n.º 4
0
 public static Map <ProcessName, ClusterNode> Nodes(ProcessId leaf, SystemName system = default(SystemName)) =>
 ClusterNodes(system).Filter(node => node.Role == leaf.Take(1).Name);
Ejemplo n.º 5
0
 /// <summary>
 /// Builds a ProcessId that represents the previous node in the role that this
 /// node is a part of.  If there is only one node in the role then any messages
 /// sent will be sent to the leaf-process with itself.  Unlike other Roles, you
 /// do not specify the role-name as the first child.
 /// See remarks.
 /// </summary>
 /// <remarks>
 /// You may create a reference to child nodes in the usual way:
 ///     Role.Prev["user"]["child-1"][...]
 /// </remarks>
 /// <example>
 ///     tell( Role.Prev["user"]["message-log"], "Hello" );
 /// </example>
 public static ProcessId Prev(SystemName system = default(SystemName)) =>
 prevRoot[Root(system).Name];
Ejemplo n.º 6
0
 /// <summary>
 /// Builds a ProcessId that represents the next node in the role that this node
 /// is a part of.  If there is only one node in the role then any messages sent
 /// will be sent to the leaf-process with itself.  Unlike other Roles, you do
 /// not specify the role-name as the first child.
 /// See remarks.
 /// </summary>
 /// <remarks>
 /// You may create a reference to child nodes in the usual way:
 ///     Role.Next["user"]["child-1"][...]
 /// </remarks>
 /// <example>
 ///     tell( Role.Next["user"]["message-log"], "Hello" );
 /// </example>
 public static ProcessId Next(SystemName system = default(SystemName)) =>
 nextRoot[Root(system).Name];
Ejemplo n.º 7
0
 public SystemUnLinkChildMessage SetSystem(SystemName sys) =>
 new SystemUnLinkChildMessage(Child.SetSystem(sys));
Ejemplo n.º 8
0
 public SystemChildFaultedMessage SetSystem(SystemName sys) =>
 new SystemChildFaultedMessage(Child.SetSystem(sys), Sender.SetSystem(sys), Exception, Message);