OsmIdGraphStorageBuilder.java
- package org.heigit.ors.routing.graphhopper.extensions.storages.builders;
- import com.graphhopper.GraphHopper;
- import com.graphhopper.reader.ReaderWay;
- import com.graphhopper.storage.GraphExtension;
- import com.graphhopper.util.EdgeIteratorState;
- import org.heigit.ors.routing.graphhopper.extensions.storages.OsmIdGraphStorage;
- public class OsmIdGraphStorageBuilder extends AbstractGraphStorageBuilder {
- private OsmIdGraphStorage osmIdGraphStorage;
- public GraphExtension init(GraphHopper graphhopper) throws Exception {
- if (osmIdGraphStorage != null)
- throw new Exception("GraphStorageBuilder has been already initialized.");
- osmIdGraphStorage = new OsmIdGraphStorage();
- return osmIdGraphStorage;
- }
- public void processWay(ReaderWay way) {
- // do nothing
- }
- /**
- * Process the graph edge - In the OSMId graph storage this stores the osm id (the way id) against the edge
- *
- * @param way The full way read from the parser
- * @param edge The EdgeIteratorState representing the edge to be processed
- */
- public void processEdge(ReaderWay way, EdgeIteratorState edge) {
- osmIdGraphStorage.setEdgeValue(edge.getEdge(), way.getId());
- }
- @Override
- public String getName() {
- return "OsmId";
- }
- }