Skip to content

Commit ad10ab7

Browse files
committed
Don't break rides at every stop
HopEdge sequence is never continuous. So, check for board/alight edges to break a ride.
1 parent 983a2ad commit ad10ab7

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/main/java/org/opentripplanner/routing/impl/HSLFareServiceImpl.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ the License, or (at your option) any later version.
2727
import org.opentripplanner.routing.core.FareRuleSet;
2828
import org.opentripplanner.routing.core.State;
2929
import org.opentripplanner.routing.edgetype.HopEdge;
30+
import org.opentripplanner.routing.edgetype.TransitBoardAlight;
3031
import org.opentripplanner.routing.graph.Edge;
3132
import org.opentripplanner.routing.spt.GraphPath;
3233
import org.opentripplanner.routing.impl.DefaultFareServiceImpl;
@@ -50,10 +51,13 @@ protected List<Ride> createRides(GraphPath path) {
5051
boolean newRide = true;
5152
for (State state : path.states) {
5253
Edge edge = state.getBackEdge();
53-
if (!(edge instanceof HopEdge)) {
54+
if (edge instanceof TransitBoardAlight) {
5455
newRide = true;
5556
continue;
5657
}
58+
if (!(edge instanceof HopEdge)) {
59+
continue;
60+
}
5761
HopEdge hEdge = (HopEdge) edge;
5862
if (newRide == true) {
5963
ride = new Ride();

0 commit comments

Comments
 (0)