mirror of
https://gitlab.com/oeffi/public-transport-enabler.git
synced 2025-07-14 16:40:30 +00:00
capacity for departures
git-svn-id: https://public-transport-enabler.googlecode.com/svn/trunk@674 0924bc21-9374-b0fa-ee44-9ff1593b38f0
This commit is contained in:
parent
0852203ea5
commit
18b740bda7
10 changed files with 32 additions and 16 deletions
|
@ -1184,7 +1184,7 @@ public abstract class AbstractEfaProvider implements NetworkProvider
|
|||
|
||||
final Departure departure = new Departure(plannedDepartureTime.getTime(),
|
||||
predictedDepartureTime.isSet(Calendar.HOUR_OF_DAY) ? predictedDepartureTime.getTime() : null, line, lineColors(line),
|
||||
null, position, destinationId, destination, null);
|
||||
null, position, destinationId, destination, null, null);
|
||||
assignedStationDepartures.departures.add(departure);
|
||||
|
||||
XmlPullUtil.exit(pp, "itdDeparture");
|
||||
|
|
|
@ -428,7 +428,7 @@ public abstract class AbstractHafasProvider implements NetworkProvider
|
|||
+ "prod\\s*=\"([^\"]*)\"\\s*" // line
|
||||
+ "(?:class\\s*=\"([^\"]*)\"\\s*)?" // class
|
||||
+ "(?:dir\\s*=\"([^\"]*)\"\\s*)?" // destination
|
||||
+ "(?:capacity\\s*=\"[^\"]*\"\\s*)?" // (???)
|
||||
+ "(?:capacity\\s*=\"([^\"]*)\"\\s*)?" // capacity 1st class|2nd class
|
||||
+ "(?:depStation\\s*=\"(.*?)\"\\s*)?" //
|
||||
+ "(?:delayReason\\s*=\"([^\"]*)\"\\s*)?" // message
|
||||
+ "(?:is_reachable\\s*=\"[^\"]*\"\\s*)?" // (???)
|
||||
|
@ -471,7 +471,7 @@ public abstract class AbstractHafasProvider implements NetworkProvider
|
|||
final Matcher mFine = P_XML_QUERY_DEPARTURES_FINE.matcher(mCoarse.group(1));
|
||||
if (mFine.matches())
|
||||
{
|
||||
if (mFine.group(11) == null)
|
||||
if (mFine.group(12) == null)
|
||||
{
|
||||
final Calendar plannedTime = new GregorianCalendar(timeZone());
|
||||
plannedTime.clear();
|
||||
|
@ -517,10 +517,23 @@ public abstract class AbstractHafasProvider implements NetworkProvider
|
|||
|
||||
final String line = product != 0 ? product + prod : normalizeLine(prod);
|
||||
|
||||
final String message;
|
||||
if (mFine.group(12) != null)
|
||||
final String capacityStr = mFine.group(11);
|
||||
final int[] capacity;
|
||||
if (capacityStr != null && !"0|0".equals(capacityStr))
|
||||
{
|
||||
final String msg = ParserUtils.resolveEntities(mFine.group(12)).trim();
|
||||
final String[] capacityParts = capacityStr.split("\\|");
|
||||
capacity = new int[] { Integer.parseInt(capacityParts[0]), Integer.parseInt(capacityParts[1]) };
|
||||
}
|
||||
else
|
||||
{
|
||||
capacity = null;
|
||||
}
|
||||
|
||||
final String messageStr = mFine.group(13);
|
||||
final String message;
|
||||
if (messageStr != null)
|
||||
{
|
||||
final String msg = ParserUtils.resolveEntities(messageStr).trim();
|
||||
message = msg.length() > 0 ? msg : null;
|
||||
}
|
||||
else
|
||||
|
@ -529,7 +542,7 @@ public abstract class AbstractHafasProvider implements NetworkProvider
|
|||
}
|
||||
|
||||
departures.add(new Departure(plannedTime.getTime(), predictedTime != null ? predictedTime.getTime() : null, line,
|
||||
line != null ? lineColors(line) : null, null, position, 0, destination, message));
|
||||
line != null ? lineColors(line) : null, null, position, 0, destination, capacity, message));
|
||||
}
|
||||
}
|
||||
else
|
||||
|
|
|
@ -322,7 +322,7 @@ public final class BvgProvider extends AbstractHafasProvider
|
|||
final String destination = ParserUtils.resolveEntities(mDepFine.group(4));
|
||||
|
||||
final Departure dep = new Departure(plannedTime, predictedTime, line, line != null ? lineColors(line) : null, null, position,
|
||||
destinationId, destination, messages.get(line));
|
||||
destinationId, destination, null, messages.get(line));
|
||||
if (!departures.contains(dep))
|
||||
departures.add(dep);
|
||||
}
|
||||
|
@ -392,7 +392,7 @@ public final class BvgProvider extends AbstractHafasProvider
|
|||
final String destination = ParserUtils.resolveEntities(mDepFine.group(5));
|
||||
|
||||
final Departure dep = new Departure(plannedTime, null, line, line != null ? lineColors(line) : null, null, position,
|
||||
destinationId, destination, null);
|
||||
destinationId, destination, null, null);
|
||||
if (!departures.contains(dep))
|
||||
departures.add(dep);
|
||||
}
|
||||
|
|
|
@ -235,7 +235,7 @@ public class InvgProvider extends AbstractHafasProvider
|
|||
final String position = mDepFine.group(7) != null ? "Gl. " + ParserUtils.resolveEntities(mDepFine.group(7)) : null;
|
||||
|
||||
final Departure dep = new Departure(plannedTime.getTime(), predictedTime != null ? predictedTime.getTime() : null, line,
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null);
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null, null);
|
||||
|
||||
if (!departures.contains(dep))
|
||||
departures.add(dep);
|
||||
|
|
|
@ -212,7 +212,7 @@ public class NasaProvider extends AbstractHafasProvider
|
|||
final String position = mDepFine.group(7) != null ? "Gl. " + ParserUtils.resolveEntities(mDepFine.group(7)) : null;
|
||||
|
||||
final Departure dep = new Departure(plannedTime.getTime(), predictedTime != null ? predictedTime.getTime() : null, line,
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null);
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null, null);
|
||||
|
||||
if (!departures.contains(dep))
|
||||
departures.add(dep);
|
||||
|
|
|
@ -220,7 +220,7 @@ public class RmvProvider extends AbstractHafasProvider
|
|||
final String position = ParserUtils.resolveEntities(ParserUtils.selectNotNull(mDepFine.group(5), mDepFine.group(6)));
|
||||
|
||||
final Departure dep = new Departure(plannedTime.getTime(), predictedTime != null ? predictedTime.getTime() : null, line,
|
||||
line != null ? lineColors(line) : null, null, position, 0, destination, null);
|
||||
line != null ? lineColors(line) : null, null, position, 0, destination, null, null);
|
||||
|
||||
if (!departures.contains(dep))
|
||||
departures.add(dep);
|
||||
|
|
|
@ -220,7 +220,7 @@ public class SeptaProvider extends AbstractHafasProvider
|
|||
final String position = mDepFine.group(7) != null ? "Gl. " + ParserUtils.resolveEntities(mDepFine.group(7)) : null;
|
||||
|
||||
final Departure dep = new Departure(plannedTime.getTime(), predictedTime != null ? predictedTime.getTime() : null, line,
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null);
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null, null);
|
||||
|
||||
if (!departures.contains(dep))
|
||||
departures.add(dep);
|
||||
|
|
|
@ -211,7 +211,7 @@ public class ShProvider extends AbstractHafasProvider
|
|||
final String position = mDepFine.group(7) != null ? "Gl. " + ParserUtils.resolveEntities(mDepFine.group(7)) : null;
|
||||
|
||||
final Departure dep = new Departure(plannedTime.getTime(), predictedTime != null ? predictedTime.getTime() : null, line,
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null);
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null, null);
|
||||
|
||||
if (!departures.contains(dep))
|
||||
departures.add(dep);
|
||||
|
|
|
@ -223,7 +223,7 @@ public class VgsProvider extends AbstractHafasProvider
|
|||
final String position = mDepFine.group(7) != null ? "Gl. " + ParserUtils.resolveEntities(mDepFine.group(7)) : null;
|
||||
|
||||
final Departure dep = new Departure(plannedTime.getTime(), predictedTime != null ? predictedTime.getTime() : null, line,
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null);
|
||||
line != null ? lineColors(line) : null, null, position, destinationId, destination, null, null);
|
||||
|
||||
if (!departures.contains(dep))
|
||||
departures.add(dep);
|
||||
|
|
|
@ -32,10 +32,11 @@ public final class Departure
|
|||
final public String position;
|
||||
final public int destinationId;
|
||||
final public String destination;
|
||||
final public int[] capacity;
|
||||
final public String message;
|
||||
|
||||
public Departure(final Date plannedTime, final Date predictedTime, final String line, final int[] lineColors, final String lineLink,
|
||||
final String position, final int destinationId, final String destination, final String message)
|
||||
final String position, final int destinationId, final String destination, final int[] capacity, final String message)
|
||||
{
|
||||
this.plannedTime = plannedTime;
|
||||
this.predictedTime = predictedTime;
|
||||
|
@ -45,6 +46,7 @@ public final class Departure
|
|||
this.position = position;
|
||||
this.destinationId = destinationId;
|
||||
this.destination = destination;
|
||||
this.capacity = capacity;
|
||||
this.message = message;
|
||||
}
|
||||
|
||||
|
@ -59,6 +61,7 @@ public final class Departure
|
|||
this.position = position;
|
||||
this.destinationId = destinationId;
|
||||
this.destination = destination;
|
||||
this.capacity = null;
|
||||
this.message = null;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue