protected override void OnSnapshotOffer(WaterReservoirState state) { var sensors = state.Sensors; foreach (var sensor in sensors) { if (Context.Child(sensor.Tag).IsNobody()) { var sensorState = new SensorState(sensor.SensorId, sensor.Tag, sensor.Role); Context.ActorOf(SensorActor.Prop(new SensorHandler(), sensorState, sensor.Tag, _connectionString), sensor.Tag); } } base.OnSnapshotOffer(state); }
protected override void OnPersist(IEvent persistedEvent, string commandid) { switch (persistedEvent) { case InstalledSensor installedSensor: { foreach (var sensor in installedSensor.Sensors) { if (Context.Child(sensor.Tag).IsNobody()) { var sensorState = new SensorState(sensor.SensorId, sensor.Tag, sensor.Role); Context.ActorOf(SensorActor.Prop(new SensorHandler(), sensorState, sensor.Tag, _connectionString), sensor.Tag); } } } break; } base.OnPersist(persistedEvent, commandid); }