private void handleActivityEndEvent(ActivityEndEvent ev) { Map<Id<Person>, Monitor> toRemove = new HashMap<>(); Id<Person> driverId = ev.getPersonId(); Gbl.assertNotNull(driverId); Monitor monitor = monitors.get(EndedActivity).get(driverId); if (monitor != null) { if (monitor.getAgentId().equals( ev.getPersonId()) && monitor.getLinkId().equals( ev.getLinkId())) { if (monitor.getHandler().handle(monitor.getAgentId(), monitor.getLinkId(), monitor.getEvent())) { toRemove.put(driverId,monitor); } } } synchronized (monitors.get(EndedActivity)) { monitors.get(EndedActivity).entrySet().removeAll(toRemove.entrySet()); } }
@Override public void handleEvent(final ActivityEndEvent event) { this.eventCounter++; assertEquals("expected activity-End-Event to be event #1", 1, this.eventCounter); assertEquals(21610.0, event.getTime(), 0.0); assertEquals("1", event.getPersonId().toString()); assertEquals(Id.create("2", Link.class), event.getLinkId()); }
@Override public void handleEvent(ActivityEndEvent event) { writeLine(event.getTime(), event.getPersonId(), event.getLinkId(), Number.ActivityEnd.ordinal(), ActivityEndEvent.EVENT_TYPE + " " + event.getActType()); }
@Override public void handleEvent(ActivityEndEvent event) { Activity activity = activities.get(event.getPersonId()); if (activity == null) { Activity firstActivity = PopulationUtils.createActivityFromLinkId(event.getActType(), event.getLinkId()); firstActivity.setFacilityId(event.getFacilityId()); activity = firstActivity; } activity.setEndTime(event.getTime()); for (ActivityHandler activityHandler : activityHandlers) { activityHandler.handleActivity(new PersonExperiencedActivity(event.getPersonId(), activity)); } activities.remove(event.getPersonId()); }
public void handleEvent(ActivityEndEvent event) { if (currentActivity == null) { Activity firstActivity = PopulationUtils.createActivityFromLinkId(event.getActType(), event.getLinkId()); firstActivity.setFacilityId(event.getFacilityId()); currentActivity = firstActivity; } currentActivity.setEndTime(event.getTime()); scoringFunction.handleActivity(currentActivity); activityFinished(event.getActType(), event.getTime()); }
assertEquals(act.getLinkId(), ((ActivityEndEvent) list.get(index)).getLinkId()); index++;
private void endAct(final ActivityEndEvent event) { if ( !isRelevant( event.getPersonId() ) ) return; if ( !actTypeFilter.consider( event.getActType() ) ) return; final IntervalsAtLocation intervals = event.getPersonId().equals( ego ) ? intervalsForEgo : MapUtils.getArbitraryObject( event.getPersonId(), intervalsPerAlter, locatedIntervalsFactory); intervals.endInterval( new Location( event.getLinkId() , event.getFacilityId() , event.getActType() ), event.getTime() ); }
public void testWriteReadXml() { final ActivityEndEvent event = XmlEventsTester.testWriteReadXml(getOutputDirectory() + "events.xml", new ActivityEndEvent(7893.14, Id.create("143", Person.class), Id.create("293", Link.class), Id.create("f811", ActivityFacility.class), "home")); assertEquals(7893.14, event.getTime(), EPSILON); assertEquals("143", event.getPersonId().toString()); assertEquals("293", event.getLinkId().toString()); assertEquals("f811", event.getFacilityId().toString()); assertEquals("home", event.getActType()); } }
Assert.assertEquals("wrong link in 1st event.", f.link1.getId(), ((ActivityEndEvent) allEvents.get(0)).getLinkId() ); Assert.assertEquals("wrong link in 2nd event.", f.link1.getId(), ((PersonDepartureEvent) allEvents.get(1)).getLinkId() ); Assert.assertEquals("wrong link in 4th event.", f.link1.getId(), ((VehicleEntersTrafficEvent) allEvents.get(3)).getLinkId() );
ProtobufEvents.ActivityEndEvent.Builder ae = ProtobufEvents.ActivityEndEvent.newBuilder() .setTime(event.getTime()) .setLinkId(ProtobufEvents.LinkId.newBuilder().setId(((ActivityEndEvent) event).getLinkId().toString())) .setPersId(ProtobufEvents.PersonId.newBuilder().setId(((ActivityEndEvent) event).getPersonId().toString())) .setActType(((ActivityEndEvent) event).getActType());