public void StartCharge() { if (usb.Connected) { usb.StartCharge(); } else if (!usb.Connected) { display.ConnectPhone(); } }
public void RFIDDetected(Guid id) { switch (state) { case LadeskabState.Available: // Check for ladeforbindelse if (_charger.IsConnected()) { Locked(); _charger.StartCharge(); _oldId = id; LogDoorlocked(id); _display.displayMsg("Skabet er låst og din telefon lades. Brug dit RFID tag til at låse op."); state = LadeskabState.Locked; } else { _display.displayMsg("Din telefon er ikke ordentlig tilsluttet. Prøv igen."); } break; case LadeskabState.DoorOpen: _display.displayMsg("Nothing"); break; case LadeskabState.Locked: // Check for correct ID if (CheckId(_oldId, id)) { _charger.StopCharge(); Unlocked(); LogDoorunlocked(id); _display.displayMsg("Tag din telefon ud af skabet og luk døren"); state = LadeskabState.Available; } else { _display.displayMsg("Forkert RFID tag"); } break; } }
// Event handler for the event "RFID Detected" from the state machine diagram for the class private void RfidDetected(object sender, RfidChangedEventArgs e) { switch (_lockState) { case ChargerLockState.Available: _display.ShowConnectPhone(); // Check for charger connection if (_charger.IsConnected()) { _door.LockDoor(); _charger.StartCharge(); _oldId = e.Rfid; _logger.LogDoorLocked(e.Rfid); _display.ShowOccupied(); _lockState = ChargerLockState.Locked; } else { _display.ShowConnectionErr(); } break; case ChargerLockState.DoorOpen: _display.ShowInputRfid(); _lockState = ChargerLockState.Available; break; case ChargerLockState.Locked: // Check for correct ID if (CheckId(e.Rfid)) { _charger.StopCharge(); _door.UnlockDoor(); _logger.LogDoorUnlocked(e.Rfid); _display.ShowRmvPhone(); _lockState = ChargerLockState.Available; } else { _display.ShowRfidErr(); } break; } }
// Eksempel på event handler for eventet "RFID Detected" fra tilstandsdiagrammet for klassen private void RFIDDetected(int id) { switch (_state) { case LadeskabState.Available: // Check for ladeforbindelse if (_charger.IsConnected()) { _lock.LockDoor(); _charger.StartCharge(); _oldId = id; _logger.LogDoorLocked(_oldId); _display.DisplayString("Skabet er låst og din telefon lades. Brug dit RFID tag til at låse op."); _state = LadeskabState.Locked; } else { _display.DisplayString("Din telefon er ikke ordentlig tilsluttet. Prøv igen."); } break; //case LadeskabState.DoorOpen: // Ignore //break; case LadeskabState.Locked: // Check for correct ID if (CheckID(id)) { _charger.StopCharge(); _lock.UnlockDoor(); _logger.LogDoorUnlocked(id); _display.DisplayString("Tag din telefon ud af skabet og luk døren"); _state = LadeskabState.Available; } else { _display.DisplayString("Forkert RFID tag"); } break; } }
//If I ask for ICharger -> Give me Battery Charger public static void StartCharging(ICharger charger) { //Log some information about charging charger.StartCharge(); }