Allow preferring plan times when getting departure and arrival times.

This commit is contained in:
Andreas Schildbach 2015-10-19 10:49:20 +02:00
parent 9bee674514
commit 400b06cb8d
2 changed files with 48 additions and 8 deletions

View file

@ -114,7 +114,14 @@ public final class Stop implements Serializable
public Date getArrivalTime()
{
if (predictedArrivalTime != null)
return getArrivalTime(false);
}
public Date getArrivalTime(final boolean preferPlanTime)
{
if (preferPlanTime && plannedArrivalTime != null)
return plannedArrivalTime;
else if (predictedArrivalTime != null)
return predictedArrivalTime;
else if (plannedArrivalTime != null)
return plannedArrivalTime;
@ -124,7 +131,15 @@ public final class Stop implements Serializable
public boolean isArrivalTimePredicted()
{
return predictedArrivalTime != null;
return isArrivalTimePredicted(false);
}
public boolean isArrivalTimePredicted(final boolean preferPlanTime)
{
if (preferPlanTime && plannedArrivalTime != null)
return false;
else
return predictedArrivalTime != null;
}
public Long getArrivalDelay()
@ -154,7 +169,14 @@ public final class Stop implements Serializable
public Date getDepartureTime()
{
if (predictedDepartureTime != null)
return getDepartureTime(false);
}
public Date getDepartureTime(final boolean preferPlanTime)
{
if (preferPlanTime && plannedDepartureTime != null)
return plannedDepartureTime;
else if (predictedDepartureTime != null)
return predictedDepartureTime;
else if (plannedDepartureTime != null)
return plannedDepartureTime;
@ -164,7 +186,15 @@ public final class Stop implements Serializable
public boolean isDepartureTimePredicted()
{
return predictedDepartureTime != null;
return isDepartureTimePredicted(false);
}
public boolean isDepartureTimePredicted(final boolean preferPlanTime)
{
if (preferPlanTime && plannedDepartureTime != null)
return false;
else
return predictedDepartureTime != null;
}
public Long getDepartureDelay()

View file

@ -325,12 +325,17 @@ public final class Trip implements Serializable
@Override
public Date getDepartureTime()
{
return departureStop.getDepartureTime();
return departureStop.getDepartureTime(false);
}
public Date getDepartureTime(final boolean preferPlanTime)
{
return departureStop.getDepartureTime(preferPlanTime);
}
public boolean isDepartureTimePredicted()
{
return departureStop.isDepartureTimePredicted();
return departureStop.isDepartureTimePredicted(false);
}
public Long getDepartureDelay()
@ -351,12 +356,17 @@ public final class Trip implements Serializable
@Override
public Date getArrivalTime()
{
return arrivalStop.getArrivalTime();
return arrivalStop.getArrivalTime(false);
}
public Date getArrivalTime(final boolean preferPlanTime)
{
return arrivalStop.getArrivalTime(preferPlanTime);
}
public boolean isArrivalTimePredicted()
{
return arrivalStop.isArrivalTimePredicted();
return arrivalStop.isArrivalTimePredicted(false);
}
public Long getArrivalDelay()