/// <summary>
        /// Handle VehicleEntryRegistered message.
        /// </summary>
        /// <param name="msg">The message to handle.</param>
        private void Handle(VehicleEntryRegistered msg)
        {
            var props        = Props.Create <VehicleActor>(_roadInfo);
            var vehicleActor = Context.ActorOf(props, $"vehicle-{msg.VehicleId}");

            vehicleActor.Tell(msg);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Handle VehiclePassed message
        /// </summary>
        /// <param name="msg">The message to handle.</param>
        private void Handle(VehiclePassed msg)
        {
            VehicleEntryRegistered vehicleEntryRegistered =
                new VehicleEntryRegistered(msg.VehicleId, msg.Timestamp);

            _trafficControlActor.Tell(vehicleEntryRegistered);
        }
Ejemplo n.º 3
0
        private void Handle(VehicleEntryRegistered message)
        {
            Console.WriteLine($"Zaregistrován vjezd vozu z poznávací značkou {message.Registration}. Čas {message.EntryTime}");
            var vehicleActor = Context.ActorOf(Props.Create <VehicleActor>(), $"vehicle-{message.Registration}");

            vehicleActor.Tell(message);
        }
Ejemplo n.º 4
0
        private void Handle(VehicleEntryRegistered message)
        {
            var dmvActor = Context.ActorOf(Props.Create <DMVActor>(), "dmv-actor");

            _registration = message.Registration;
            _entryTime    = message.EntryTime;
            dmvActor.Tell(new GetVehicleInfo(_registration));
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Handle VehicleEntryRegistered message.
        /// </summary>
        /// <param name="msg">The message to handle.</param>
        private void Handle(VehicleEntryRegistered msg)
        {
            FluentConsole.Green.Line($"Vehicle '{msg.VehicleId}' entered at {msg.Timestamp.ToString("HH:mm:ss.ffffff")}");

            _vehicleId      = msg.VehicleId;
            _entryTimestamp = msg.Timestamp;

            _dmvActor = Context.ActorOf <DMVActor>();
            _dmvActor.Tell(new GetVehicleInfo(_vehicleId));

            // set a time-out after wich we consider a car missing
            Context.System.Scheduler.ScheduleTellOnce(
                TimeSpan.FromMinutes(5), Self, new MissingCarDetected(msg.VehicleId), Self);
        }