mirror of
https://gitlab.com/oeffi/public-transport-enabler.git
synced 2025-07-15 17:10:30 +00:00
separate predicted and planned time for connections
git-svn-id: https://public-transport-enabler.googlecode.com/svn/trunk@838 0924bc21-9374-b0fa-ee44-9ff1593b38f0
This commit is contained in:
parent
0799af446f
commit
0606b6379b
5 changed files with 49 additions and 14 deletions
|
@ -1923,8 +1923,9 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
|
||||||
|
|
||||||
final Line line = new Line(lineId, lineLabel, lineColors(lineLabel), lineAttrs);
|
final Line line = new Line(lineId, lineLabel, lineColors(lineLabel), lineAttrs);
|
||||||
|
|
||||||
parts.add(new Connection.Trip(line, destination, departureTime, departurePosition, departure, arrivalTime, arrivalPosition,
|
parts.add(new Connection.Trip(line, destination, departureTargetTime != null ? departureTargetTime : departureTime,
|
||||||
arrival, intermediateStops, path));
|
departureTargetTime, departurePosition, departure, arrivalTargetTime != null ? arrivalTargetTime : arrivalTime,
|
||||||
|
arrivalTargetTime, arrivalPosition, arrival, intermediateStops, path));
|
||||||
}
|
}
|
||||||
|
|
||||||
XmlPullUtil.exit(pp, "itdPartialRoute");
|
XmlPullUtil.exit(pp, "itdPartialRoute");
|
||||||
|
|
|
@ -994,8 +994,8 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider
|
||||||
|
|
||||||
if (min == 0 || line != null)
|
if (min == 0 || line != null)
|
||||||
{
|
{
|
||||||
parts.add(new Connection.Trip(line, destination, departureTime, departurePos, sectionDeparture, arrivalTime, arrivalPos,
|
parts.add(new Connection.Trip(line, destination, departureTime, null, departurePos, sectionDeparture, arrivalTime, null,
|
||||||
sectionArrival, intermediateStops, null));
|
arrivalPos, sectionArrival, intermediateStops, null));
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
|
|
@ -471,8 +471,8 @@ public final class BahnProvider extends AbstractHafasProvider
|
||||||
|
|
||||||
final String arrivalPosition = ParserUtils.resolveEntities(mDetFine.group(8));
|
final String arrivalPosition = ParserUtils.resolveEntities(mDetFine.group(8));
|
||||||
|
|
||||||
parts.add(new Connection.Trip(line, null, departureTime.getTime(), departurePosition, departure, arrivalTime.getTime(),
|
parts.add(new Connection.Trip(line, null, departureTime.getTime(), null, departurePosition, departure, arrivalTime
|
||||||
arrivalPosition, arrival, null, null));
|
.getTime(), null, arrivalPosition, arrival, null, null));
|
||||||
|
|
||||||
if (firstDepartureTime == null)
|
if (firstDepartureTime == null)
|
||||||
firstDepartureTime = departureTime.getTime();
|
firstDepartureTime = departureTime.getTime();
|
||||||
|
|
|
@ -852,7 +852,7 @@ public final class BvgProvider extends AbstractHafasProvider
|
||||||
destination = null;
|
destination = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
parts.add(new Connection.Trip(line, destination, departureTime, departurePosition, departure, arrivalTime,
|
parts.add(new Connection.Trip(line, destination, departureTime, null, departurePosition, departure, arrivalTime, null,
|
||||||
arrivalPosition, arrival, intermediateStops, null));
|
arrivalPosition, arrival, intermediateStops, null));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,27 +97,61 @@ public final class Connection implements Serializable
|
||||||
{
|
{
|
||||||
public final Line line;
|
public final Line line;
|
||||||
public final Location destination;
|
public final Location destination;
|
||||||
public final Date departureTime;
|
public final Date departureTime; // TODO rename to plannedDepartureTime
|
||||||
|
public final Date predictedDepartureTime;
|
||||||
public final String departurePosition;
|
public final String departurePosition;
|
||||||
public final Date arrivalTime;
|
public final Date arrivalTime; // TODO rename to plannedArrivalTime
|
||||||
|
public final Date predictedArrivalTime;
|
||||||
public final String arrivalPosition;
|
public final String arrivalPosition;
|
||||||
public final List<Stop> intermediateStops;
|
public final List<Stop> intermediateStops;
|
||||||
|
|
||||||
public Trip(final Line line, final Location destination, final Date departureTime, final String departurePosition, final Location departure,
|
public Trip(final Line line, final Location destination, final Date plannedDepartureTime, final Date predictedDepartureTime,
|
||||||
final Date arrivalTime, final String arrivalPosition, final Location arrival, final List<Stop> intermediateStops,
|
final String departurePosition, final Location departure, final Date plannedArrivalTime, final Date predictedArrivalTime,
|
||||||
final List<Point> path)
|
final String arrivalPosition, final Location arrival, final List<Stop> intermediateStops, final List<Point> path)
|
||||||
{
|
{
|
||||||
super(departure, arrival, path);
|
super(departure, arrival, path);
|
||||||
|
|
||||||
this.line = line;
|
this.line = line;
|
||||||
this.destination = destination;
|
this.destination = destination;
|
||||||
this.departureTime = departureTime;
|
this.departureTime = plannedDepartureTime;
|
||||||
|
this.predictedDepartureTime = predictedDepartureTime;
|
||||||
this.departurePosition = departurePosition;
|
this.departurePosition = departurePosition;
|
||||||
this.arrivalTime = arrivalTime;
|
this.arrivalTime = plannedArrivalTime;
|
||||||
|
this.predictedArrivalTime = predictedArrivalTime;
|
||||||
this.arrivalPosition = arrivalPosition;
|
this.arrivalPosition = arrivalPosition;
|
||||||
this.intermediateStops = intermediateStops;
|
this.intermediateStops = intermediateStops;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Date getDepartureTime()
|
||||||
|
{
|
||||||
|
if (predictedDepartureTime != null)
|
||||||
|
return predictedDepartureTime;
|
||||||
|
else if (departureTime != null)
|
||||||
|
return departureTime;
|
||||||
|
else
|
||||||
|
throw new IllegalStateException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isDepartureTimePredicted()
|
||||||
|
{
|
||||||
|
return predictedDepartureTime != null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Date getArrivalTime()
|
||||||
|
{
|
||||||
|
if (predictedArrivalTime != null)
|
||||||
|
return predictedArrivalTime;
|
||||||
|
else if (arrivalTime != null)
|
||||||
|
return arrivalTime;
|
||||||
|
else
|
||||||
|
throw new IllegalStateException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isArrivalTimePredicted()
|
||||||
|
{
|
||||||
|
return predictedArrivalTime != null;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString()
|
public String toString()
|
||||||
{
|
{
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue