예제 #1
0
        public void CarInGate(Gate gate)
        {
            if (!gate.DriveIn)
            {
                CarOutGate(gate);
                return;
            }
            bool residentVehicle = false;

            foreach (var resident in ResidentsList)
            {
                if (resident.LicensePlate == gate.OpenGatesFor)
                {
                    residentVehicle = true;
                }
            }
            Vehicle vehicle = new Vehicle(gate.OpenGatesFor, residentVehicle);

            Task.Factory.StartNew(() =>
            {
                System.Threading.Thread.Sleep(20000);
                if (CheckIfNotParked(vehicle))
                {
                    Form.Invoke((MethodInvoker) delegate { ConsoleLog.Add("Automobilis nepastatytas " + vehicle); });
                }
            });
            MockedVehiclesInOut.Add(vehicle);
            NotParkedVehicles.Add(vehicle);
        }
예제 #2
0
 public void UnParked(Vehicle vehicle)
 {
     NotParkedVehicles.Add(vehicle);
 }