@Override public void handleEvent(final PersonArrivalEvent event) { testForSnapshot(event.getTime()); this.eventLinks.get(event.getLinkId()).arrival(getEventAgent(event.getPersonId(), event.getTime())); }
@Override public void handleEvent(final PersonDepartureEvent event) { testForSnapshot(event.getTime()); this.eventLinks.get(event.getLinkId()).departure(getEventAgent(event.getPersonId(), event.getTime())); }
@Override public void handleEvent(final PersonStuckEvent event) { testForSnapshot(event.getTime()); if (event.getLinkId() != null) { // link id is optional - agent can be teleporting or whatever. this.eventLinks.get(event.getLinkId()).stuck(getEventAgent(event.getPersonId(), event.getTime())); } }
@Override public void handleEvent(final LinkEnterEvent event) { testForSnapshot(event.getTime()); this.eventLinks.get(event.getLinkId()).enter(getEventAgent(delegate.getDriverOfVehicle(event.getVehicleId()), event.getTime())); }
@Override public void handleEvent(final LinkLeaveEvent event) { testForSnapshot(event.getTime()); this.eventLinks.get(event.getLinkId()).leave(getEventAgent(delegate.getDriverOfVehicle(event.getVehicleId()), event.getTime())); }
@Override public void handleEvent(final VehicleEntersTrafficEvent event) { testForSnapshot(event.getTime()); this.eventLinks.get(event.getLinkId()).wait2link(getEventAgent(event.getPersonId(), event.getTime())); delegate.handleEvent(event); }