static void NewStorageNodes(RuntimeHost runtimeHost, DistributedStorageContext ctx, MessageCollection messages) { var configure = new ConfigureStorageNode(messages, ctx.SafetyMonitor); var storageNodes = new List <IStorageNodeSender>(); for (var i = 0; i < 3; i++) { var storageNode = runtimeHost.New(MachineInterface.Sender <IStorageNodeSender>().Bundler <IStorageNodeBundler>().Receiver <StorageNodeReceiver>()); storageNode.Configure(configure); storageNode.Handshake(new HandshakeStorageNode(ctx.Server)); storageNodes.Add(storageNode); } ctx.SafetyMonitor.Handshake(new HandshakeSafetyMonitor(storageNodes.ToArray())); ctx.StorageNodes = storageNodes.ToArray(); }
public void Configure(ConfigureStorageNode e) { RuntimeHost.SendEvent(Id, e); }
public void HandleConfigure(ConfigureStorageNode e) { Receiver.HandleConfigure(e); MachineHandledLog(nameof(HandleConfigure)); }
public virtual void HandleConfigure(ConfigureStorageNode e) { m_messages = e.Messages; m_safetyMonitor = e.SafetyMonitor; Self.Established(); }