Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove backwards-compatibility with old versions of flex #229

Merged
merged 3 commits into from
Sep 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -61,44 +61,12 @@ public final class StopTime extends IdentityBean<Integer> implements
@CsvField(optional = true, mapping = StopTimeFieldMappingFactory.class)
private int departureTime = MISSING_VALUE;

/**
* @deprecated
* GTFS-Flex v2.1 renamed this field. Use {@link #startPickupDropOffWindow} instead.
*/
@Deprecated
@CsvField(optional = true, mapping = StopTimeFieldMappingFactory.class, defaultValue = "-999")
private int minArrivalTime = MISSING_VALUE;

@CsvField(optional = true, name = "start_pickup_drop_off_window", mapping = StopTimeFieldMappingFactory.class, defaultValue = "-999")
private int startPickupDropOffWindow = MISSING_VALUE;

/**
* @deprecated
* GTFS-Flex v2.1 renamed "dropoff" to "drop off": https://github.com/MobilityData/gtfs-flex/commit/547200dfb580771265ae14b07d9bfd7b91c16ed2
*/
@Deprecated
@CsvField(optional = true, name = "start_pickup_dropoff_window", mapping = StopTimeFieldMappingFactory.class, defaultValue = "-999")
public int oldSpellingOfStartPickupDropOffWindow = MISSING_VALUE;

/**
* @deprecated
* GTFS-Flex v2.1 renamed this field. Use {@link #endPickupDropOffWindow} instead.
*/
@Deprecated
@CsvField(optional = true, mapping = StopTimeFieldMappingFactory.class, defaultValue = "-999")
private int maxDepartureTime = MISSING_VALUE;

@CsvField(optional = true, name = "end_pickup_drop_off_window", mapping = StopTimeFieldMappingFactory.class, defaultValue = "-999")
private int endPickupDropOffWindow = MISSING_VALUE;

/**
* @deprecated
* GTFS-Flex v2.1 renamed "dropoff" to "drop off": https://github.com/MobilityData/gtfs-flex/commit/547200dfb580771265ae14b07d9bfd7b91c16ed2
*/
@Deprecated
@CsvField(optional = true, name = "end_pickup_dropoff_window", mapping = StopTimeFieldMappingFactory.class, defaultValue = "-999")
public int oldSpellingOfEndPickupDropOffWindow = MISSING_VALUE;

@CsvField(optional = true, defaultValue = "-999")
private int timepoint = MISSING_VALUE;

Expand Down Expand Up @@ -192,9 +160,7 @@ public StopTime(StopTime st) {
this.dropOffType = st.dropOffType;
this.id = st.id;
this.pickupType = st.pickupType;
this.minArrivalTime = st.minArrivalTime;
this.startPickupDropOffWindow = st.startPickupDropOffWindow;
this.maxDepartureTime = st.maxDepartureTime;
this.endPickupDropOffWindow = st.endPickupDropOffWindow;
this.continuousPickup = st.continuousPickup;
this.continuousDropOff = st.continuousDropOff;
Expand Down Expand Up @@ -411,50 +377,17 @@ public void clearDepartureTime() {
this.departureTime = MISSING_VALUE;
}

@Deprecated
public int getMinArrivalTime() {
return minArrivalTime;
}

@Deprecated
public void setMinArrivalTime(int minArrivalTime) {
this.minArrivalTime = minArrivalTime;
}

public int getStartPickupDropOffWindow() {
if (startPickupDropOffWindow != MISSING_VALUE) {
return startPickupDropOffWindow;
} else if(oldSpellingOfStartPickupDropOffWindow != MISSING_VALUE){
return oldSpellingOfStartPickupDropOffWindow;
} else {
return minArrivalTime;
}
return startPickupDropOffWindow;
}

public void setStartPickupDropOffWindow(int startPickupDropOffWindow) {
this.startPickupDropOffWindow = startPickupDropOffWindow;
}

@Deprecated
public int getMaxDepartureTime() {
return maxDepartureTime;
}

@Deprecated
public void setMaxDepartureTime(int maxDepartureTime) {
this.maxDepartureTime = maxDepartureTime;
}

public int getEndPickupDropOffWindow() {
if (endPickupDropOffWindow != MISSING_VALUE) {
return endPickupDropOffWindow;
}
else if (oldSpellingOfEndPickupDropOffWindow != MISSING_VALUE) {
return oldSpellingOfEndPickupDropOffWindow;
}
else {
return maxDepartureTime;
}
return endPickupDropOffWindow;
}

public void setEndPickupDropOffWindow(int endPickupDropOffWindow) {
Expand Down Expand Up @@ -806,30 +739,5 @@ public void setFreeRunningFlag(String freeRunningFlag) {
}
this.freeRunningFlag = freeRunningFlag;
}
@Deprecated
public void setOldSpellingOfStartPickupDropOffWindow(int time) {
oldDropOffSpellingWarning("start");
this.oldSpellingOfStartPickupDropOffWindow = time;
}

@Deprecated
public void setOldSpellingOfEndPickupDropOffWindow(int time) {
oldDropOffSpellingWarning("end");
this.oldSpellingOfEndPickupDropOffWindow = time;
}

private static void oldDropOffSpellingWarning(String type) {
_log.warn("This feed uses the old spelling of '{}_pickup_drop_off_window' ('dropoff' instead of 'drop_off'). "
+ "Compatibility will be removed in the future, so please update your feed to be in line with the latest Flex V2 spec:"
+ " https://github.com/MobilityData/gtfs-flex/commit/547200dfb", type);
}
@Deprecated
public int getOldSpellingOfStartPickupDropOffWindow() {
return this.oldSpellingOfStartPickupDropOffWindow;
}

@Deprecated
public int getOldSpellingOfEndPickupDropOffWindow() {
return oldSpellingOfEndPickupDropOffWindow;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ public void testWithoutUnderscore() throws IOException {
_gtfs.putDefaultTrips();
_gtfs.putDefaultStops();
_gtfs.putLines("stop_times.txt",
"trip_id,stop_id,stop_sequence,arrival_time,departure_time,end_pickup_dropoff_window",
"trip_id,stop_id,stop_sequence,arrival_time,departure_time,end_pickup_drop_off_window",
"T10-0,100,0,05:55:55,08:00:00,08:23:23", "T10-0,200,1,05:55:55,09:00:00,08:44:44");

GtfsRelationalDao dao = _gtfs.read();
Expand All @@ -94,7 +94,7 @@ public void testWithoutUnderscore() throws IOException {
boolean foundUnderscoreParam = false;
while(scan.hasNext()){
String line = scan.nextLine();
if(line.contains("end_pickup_dropoff_window")){
if(line.contains("end_pickup_drop_off_window")){
foundUnderscoreParam = true;
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,15 +35,10 @@
*
* Since it's hard to spot: the change is in the word "dropoff" vs "drop_off".
*
* This test makes sure that both spellings are understood.
* This test makes sure that the new spelling is understood.
*/
public class FlexDropOffSpellingTest {

@Test
public void oldSpelling() throws IOException {
testFlexStopTimeWithSpelling("dropoff");
}

@Test
public void newSpelling() throws IOException {
testFlexStopTimeWithSpelling("drop_off");
Expand Down
Loading