public AutoLock(Speedometer speedometer) { speedometer.SpeedModified += (speed) => { if (speed > 30) { LockUsingDriver(); } }; }
public SpeedAlarm(Speedometer speedometer) { speedometer.SpeedModified += (speed) => { if (speed > 120 && isOkay == true) { AlarmUsingDriver(); isOkay = false; } if (speed <= 120) { isOkay = true; } }; }
static void Main(string[] args) { //The requirment is //The lock should be engaged when the car speed increases above 30 //The Speed alarm should be sounded when the care speed increases above 120 //Modifiable code start Speedometer speedometer = new Speedometer(); SpeedAlarm speedAlarm = new SpeedAlarm(speedometer); AutoLock autoLock = new AutoLock(speedometer); //Modifiable code end speedometer.DeviceDriverLoop(); }