use of org.opentripplanner.model.BoardingArea in project OpenTripPlanner by opentripplanner.
the class AddTransitModelEntitiesToGraph method addBoardingAreasToGraph.
private void addBoardingAreasToGraph(Graph graph) {
for (BoardingArea boardingArea : transitService.getAllBoardingAreas()) {
TransitBoardingAreaVertex boardingAreaVertex = new TransitBoardingAreaVertex(graph, boardingArea);
stationElementNodes.put(boardingArea, boardingAreaVertex);
if (boardingArea.getParentStop() != null) {
new PathwayEdge(boardingAreaVertex, stationElementNodes.get(boardingArea.getParentStop()), boardingArea.getName());
new PathwayEdge(stationElementNodes.get(boardingArea.getParentStop()), boardingAreaVertex, boardingArea.getName());
}
}
}
use of org.opentripplanner.model.BoardingArea in project OpenTripPlanner by opentripplanner.
the class GTFSToOtpTransitServiceMapper method mapGtfsStopsToOtpTypes.
private void mapGtfsStopsToOtpTypes(GtfsRelationalDao data, OtpTransitServiceBuilder builder) {
StopToParentStationLinker stopToParentStationLinker = new StopToParentStationLinker(issueStore);
for (org.onebusaway.gtfs.model.Stop it : data.getAllStops()) {
if (it.getLocationType() == org.onebusaway.gtfs.model.Stop.LOCATION_TYPE_STOP) {
Stop stop = stopMapper.map(it);
builder.getStops().add(stop);
stopToParentStationLinker.addStationElement(stop, it.getParentStation());
} else if (it.getLocationType() == org.onebusaway.gtfs.model.Stop.LOCATION_TYPE_STATION) {
Station station = stationMapper.map(it);
builder.getStations().add(station);
stopToParentStationLinker.addStation(station);
} else if (it.getLocationType() == org.onebusaway.gtfs.model.Stop.LOCATION_TYPE_ENTRANCE_EXIT) {
Entrance entrance = entranceMapper.map(it);
builder.getEntrances().add(entrance);
stopToParentStationLinker.addStationElement(entrance, it.getParentStation());
} else if (it.getLocationType() == org.onebusaway.gtfs.model.Stop.LOCATION_TYPE_NODE) {
PathwayNode pathwayNode = pathwayNodeMapper.map(it);
builder.getPathwayNodes().add(pathwayNode);
stopToParentStationLinker.addStationElement(pathwayNode, it.getParentStation());
} else if (it.getLocationType() == org.onebusaway.gtfs.model.Stop.LOCATION_TYPE_BOARDING_AREA) {
BoardingArea boardingArea = boardingAreaMapper.map(it);
builder.getBoardingAreas().add(boardingArea);
stopToParentStationLinker.addBoardingArea(boardingArea, it.getParentStation());
}
}
stopToParentStationLinker.link();
}
use of org.opentripplanner.model.BoardingArea in project OpenTripPlanner by opentripplanner.
the class StopToParentStationLinker method link.
void link() {
for (Map.Entry<StationElement, FeedScopedId> entry : stationElementsToStations.entrySet()) {
StationElement stationElement = entry.getKey();
FeedScopedId stationId = entry.getValue();
Station otpStation = otpStations.get(stationId);
if (otpStation == null) {
issueStore.add(new ParentStationNotFound(stationElement, stationId.getId()));
} else {
stationElement.setParentStation(otpStation);
if (stationElement instanceof Stop) {
otpStation.addChildStop((Stop) stationElement);
}
}
}
for (Map.Entry<BoardingArea, FeedScopedId> entry : boardingAreasToStops.entrySet()) {
BoardingArea boardingArea = entry.getKey();
FeedScopedId stopId = entry.getValue();
StationElement otpStop = otpStationElements.get(stopId);
if (!(otpStop instanceof Stop)) {
issueStore.add(new ParentStationNotFound(boardingArea, stopId.getId()));
} else {
boardingArea.setParentStop((Stop) otpStop);
((Stop) otpStop).addBoardingArea(boardingArea);
boardingArea.setParentStation(otpStop.getParentStation());
}
}
}
Aggregations