From e2f39f2d8f92fe8350d538b0391c8fb6acbc925b Mon Sep 17 00:00:00 2001 From: Andreas Schildbach Date: Tue, 20 Dec 2016 18:33:05 +0100 Subject: [PATCH] Mersey: Line. --- .../src/de/schildbach/pte/MerseyProvider.java | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/enabler/src/de/schildbach/pte/MerseyProvider.java b/enabler/src/de/schildbach/pte/MerseyProvider.java index c8e8992e..414f46e0 100644 --- a/enabler/src/de/schildbach/pte/MerseyProvider.java +++ b/enabler/src/de/schildbach/pte/MerseyProvider.java @@ -21,6 +21,11 @@ import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; +import javax.annotation.Nullable; + +import com.google.common.base.Strings; + +import de.schildbach.pte.dto.Line; import de.schildbach.pte.dto.Position; import de.schildbach.pte.dto.Product; @@ -42,6 +47,18 @@ public class MerseyProvider extends AbstractEfaProvider { return Product.ALL; } + @Override + protected Line parseLine(final @Nullable String id, final @Nullable String network, final @Nullable String mot, + final @Nullable String symbol, final @Nullable String name, final @Nullable String longName, + final @Nullable String trainType, final @Nullable String trainNum, final @Nullable String trainName) { + if ("13".equals(mot)) { + if ("OO".equals(trainType) || "Ordinary passenger (o.pas.)".equals(trainName)) + return new Line(id, network, Product.REGIONAL_TRAIN, "OO" + Strings.nullToEmpty(trainNum)); + } + + return super.parseLine(id, network, mot, symbol, name, longName, trainType, trainNum, trainName); + } + private static final Pattern P_POSITION_BOUND = Pattern.compile("([NESW]+)-bound", Pattern.CASE_INSENSITIVE); @Override