21 package org.matsim.core.trafficmonitoring;
28 class MapBasedDataContainerProvider
implements DataContainerProvider {
30 private final Map<Id<Link>, TravelTimeData> linkData;
31 private final TravelTimeDataFactory ttDataFactory;
33 public MapBasedDataContainerProvider(Map<Id<Link>, TravelTimeData> linkData, TravelTimeDataFactory ttDataFactory) {
34 this.linkData = linkData;
35 this.ttDataFactory = ttDataFactory;
39 public TravelTimeData getTravelTimeData(
final Id<Link> linkId,
final boolean createIfMissing) {
40 TravelTimeData data = this.linkData.get(linkId);
41 if ((null == data) && createIfMissing) {
42 data = this.ttDataFactory.createTravelTimeData(linkId) ;
43 this.linkData.put(linkId, data);
49 public TravelTimeData getTravelTimeData(Link link,
boolean createIfMissing) {
50 return this.getTravelTimeData(link.getId(), createIfMissing);