From e2b9bc96a9077bd5b50eea9647436873eefa2cbf Mon Sep 17 00:00:00 2001 From: "andreas.schildbach@gmail.com" Date: Sun, 26 Dec 2010 19:21:12 +0000 Subject: [PATCH] Location now has constructor without geo coordinates git-svn-id: https://public-transport-enabler.googlecode.com/svn/trunk@417 0924bc21-9374-b0fa-ee44-9ff1593b38f0 --- .../schildbach/pte/AbstractEfaProvider.java | 7 +++---- .../schildbach/pte/AbstractHafasProvider.java | 4 ++-- src/de/schildbach/pte/BahnProvider.java | 12 ++++++------ src/de/schildbach/pte/BvgProvider.java | 14 +++++++------- src/de/schildbach/pte/NasaProvider.java | 8 ++++---- src/de/schildbach/pte/NetworkId.java | 5 ++++- src/de/schildbach/pte/NsProvider.java | 2 +- src/de/schildbach/pte/OebbProvider.java | 11 +++++++---- src/de/schildbach/pte/RmvProvider.java | 14 +++++++------- src/de/schildbach/pte/SbbProvider.java | 8 ++++---- src/de/schildbach/pte/SncbProvider.java | 2 +- src/de/schildbach/pte/VgsProvider.java | 2 +- src/de/schildbach/pte/dto/Location.java | 10 ++++++++++ .../pte/dto/QueryDeparturesResult.java | 2 +- .../pte/live/BahnProviderLiveTest.java | 13 ++++++------- .../pte/live/GvhProviderLiveTest.java | 7 ++++--- .../pte/live/LinzProviderLiveTest.java | 12 ++++++------ .../pte/live/MvvProviderLiveTest.java | 19 +++++++++---------- .../pte/live/NsProviderLiveTest.java | 11 ++++++----- .../pte/live/OebbProviderLiveTest.java | 19 +++++++++---------- .../pte/live/SbbProviderLiveTest.java | 14 +++++++------- .../pte/live/SncbProviderLiveTest.java | 13 +++++++------ .../pte/live/TflProviderLiveTest.java | 3 ++- 23 files changed, 114 insertions(+), 98 deletions(-) diff --git a/src/de/schildbach/pte/AbstractEfaProvider.java b/src/de/schildbach/pte/AbstractEfaProvider.java index 35177501..1b035da0 100644 --- a/src/de/schildbach/pte/AbstractEfaProvider.java +++ b/src/de/schildbach/pte/AbstractEfaProvider.java @@ -873,7 +873,7 @@ public abstract class AbstractEfaProvider implements NetworkProvider XmlPullUtil.exit(pp, "itdDepartureList"); } - return new QueryDeparturesResult(new Location(LocationType.STATION, locationId, 0, 0, location), departures, lines); + return new QueryDeparturesResult(new Location(LocationType.STATION, locationId, location), departures, lines); } else if ("notidentified".equals(nameState)) { @@ -1182,8 +1182,7 @@ public abstract class AbstractEfaProvider implements NetworkProvider final String destinationIdStr = pp.getAttributeValue(null, "destID"); final String destinationName = normalizeLocationName(pp.getAttributeValue(null, "destination")); final Location destination = destinationIdStr.length() > 0 ? new Location(LocationType.STATION, - Integer.parseInt(destinationIdStr), 0, 0, destinationName) : new Location(LocationType.ANY, 0, 0, 0, - destinationName); + Integer.parseInt(destinationIdStr), destinationName) : new Location(LocationType.ANY, 0, destinationName); String line; if ("AST".equals(pp.getAttributeValue(null, "symbol"))) line = "BAST"; @@ -1218,7 +1217,7 @@ public abstract class AbstractEfaProvider implements NetworkProvider XmlPullUtil.require(pp, "itdDateTime"); processItdDateTime(pp, stopTime); XmlPullUtil.exit(pp, "itdPoint"); - intermediateStops.add(new Stop(new Location(LocationType.STATION, stopId, 0, 0, stopName), stopPosition, stopTime + intermediateStops.add(new Stop(new Location(LocationType.STATION, stopId, stopName), stopPosition, stopTime .getTime())); } XmlPullUtil.exit(pp, "itdStopSeq"); diff --git a/src/de/schildbach/pte/AbstractHafasProvider.java b/src/de/schildbach/pte/AbstractHafasProvider.java index 7bf80b97..391098a4 100644 --- a/src/de/schildbach/pte/AbstractHafasProvider.java +++ b/src/de/schildbach/pte/AbstractHafasProvider.java @@ -123,7 +123,7 @@ public abstract class AbstractHafasProvider implements NetworkProvider { XmlPullUtil.requireAttr(pp, "type", "ADR"); final String name = pp.getAttributeValue(null, "output").trim(); - return new Location(LocationType.ADDRESS, 0, 0, 0, name); + return new Location(LocationType.ADDRESS, 0, name); } throw new IllegalStateException("cannot handle: " + type); } @@ -424,7 +424,7 @@ public abstract class AbstractHafasProvider implements NetworkProvider if (min == 0 || line != null) { - parts.add(new Connection.Trip(line, lineColors(line), new Location(LocationType.ANY, 0, 0, 0, direction), departureTime, + parts.add(new Connection.Trip(line, lineColors(line), new Location(LocationType.ANY, 0, direction), departureTime, departurePos, sectionDeparture.id, sectionDeparture.name, arrivalTime, arrivalPos, sectionArrival.id, sectionArrival.name, null)); } diff --git a/src/de/schildbach/pte/BahnProvider.java b/src/de/schildbach/pte/BahnProvider.java index 393d9f74..4504e2b6 100644 --- a/src/de/schildbach/pte/BahnProvider.java +++ b/src/de/schildbach/pte/BahnProvider.java @@ -81,13 +81,13 @@ public final class BahnProvider extends AbstractHafasProvider final Matcher mSingle = P_SINGLE_NAME.matcher(page); if (mSingle.matches()) { - results.add(new Location(LocationType.STATION, Integer.parseInt(mSingle.group(2)), 0, 0, ParserUtils.resolveEntities(mSingle.group(1)))); + results.add(new Location(LocationType.STATION, Integer.parseInt(mSingle.group(2)), ParserUtils.resolveEntities(mSingle.group(1)))); } else { final Matcher mMulti = P_MULTI_NAME.matcher(page); while (mMulti.find()) - results.add(new Location(LocationType.STATION, Integer.parseInt(mMulti.group(1)), 0, 0, ParserUtils.resolveEntities(mMulti.group(2)))); + results.add(new Location(LocationType.STATION, Integer.parseInt(mMulti.group(1)), ParserUtils.resolveEntities(mMulti.group(2)))); } return results; @@ -189,7 +189,7 @@ public final class BahnProvider extends AbstractHafasProvider { final String address = ParserUtils.resolveEntities(mAddresses.group(1)).trim(); if (!addresses.contains(address)) - addresses.add(new Location(LocationType.ANY, 0, 0, 0, address + "!")); + addresses.add(new Location(LocationType.ANY, 0, address + "!")); } if (type.equals("REQ0JourneyStopsS0K")) @@ -249,8 +249,8 @@ public final class BahnProvider extends AbstractHafasProvider final Matcher mHead = P_CONNECTIONS_HEAD.matcher(page); if (mHead.matches()) { - final Location from = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mHead.group(1))); - final Location to = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mHead.group(2))); + final Location from = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mHead.group(1))); + final Location to = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mHead.group(2))); final Date currentDate = ParserUtils.parseDate(mHead.group(3)); final String linkEarlier = mHead.group(4) != null ? ParserUtils.resolveEntities(mHead.group(4)) : null; final String linkLater = mHead.group(5) != null ? ParserUtils.resolveEntities(mHead.group(5)) : null; @@ -522,7 +522,7 @@ public final class BahnProvider extends AbstractHafasProvider } } - return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), 0, 0, null), departures, null); + return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), null), departures, null); } @Override diff --git a/src/de/schildbach/pte/BvgProvider.java b/src/de/schildbach/pte/BvgProvider.java index 32ee3aa4..8208f5e0 100644 --- a/src/de/schildbach/pte/BvgProvider.java +++ b/src/de/schildbach/pte/BvgProvider.java @@ -93,13 +93,13 @@ public final class BvgProvider extends AbstractHafasProvider final Matcher mSingle = P_SINGLE_NAME.matcher(page); if (mSingle.matches()) { - results.add(new Location(LocationType.STATION, Integer.parseInt(mSingle.group(2)), 0, 0, ParserUtils.resolveEntities(mSingle.group(1)))); + results.add(new Location(LocationType.STATION, Integer.parseInt(mSingle.group(2)), ParserUtils.resolveEntities(mSingle.group(1)))); } else { final Matcher mMulti = P_MULTI_NAME.matcher(page); while (mMulti.find()) - results.add(new Location(LocationType.STATION, Integer.parseInt(mMulti.group(1)), 0, 0, ParserUtils.resolveEntities(mMulti.group(2)))); + results.add(new Location(LocationType.STATION, Integer.parseInt(mMulti.group(1)), ParserUtils.resolveEntities(mMulti.group(2)))); } return results; @@ -279,7 +279,7 @@ public final class BvgProvider extends AbstractHafasProvider { final String address = ParserUtils.resolveEntities(mAddress.group(1)); if (!addresses.contains(address)) - addresses.add(new Location(LocationType.ANY, 0, 0, 0, address + "!")); + addresses.add(new Location(LocationType.ANY, 0, address + "!")); } if (addresses.isEmpty()) @@ -339,8 +339,8 @@ public final class BvgProvider extends AbstractHafasProvider final Matcher mHead = P_CONNECTIONS_HEAD.matcher(page); if (mHead.matches()) { - final Location from = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mHead.group(1))); - final Location to = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mHead.group(2))); + final Location from = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mHead.group(1))); + final Location to = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mHead.group(2))); final Date currentDate = ParserUtils.parseDate(mHead.group(3)); final String linkEarlier = mHead.group(4) != null ? BVG_BASE_URL + ParserUtils.resolveEntities(mHead.group(4)) : null; final String linkLater = mHead.group(5) != null ? BVG_BASE_URL + ParserUtils.resolveEntities(mHead.group(5)) : null; @@ -458,7 +458,7 @@ public final class BvgProvider extends AbstractHafasProvider final String line = normalizeLine(ParserUtils.resolveEntities(mDetFine.group(5))); - final Location destination = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mDetFine.group(6))); + final Location destination = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mDetFine.group(6))); Date arrivalTime = ParserUtils.joinDateTime(currentDate, ParserUtils.parseTime(mDetFine.group(7))); if (departureTime.after(arrivalTime)) @@ -629,7 +629,7 @@ public final class BvgProvider extends AbstractHafasProvider } } - return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), 0, 0, location), departures, null); + return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), location), departures, null); } else { diff --git a/src/de/schildbach/pte/NasaProvider.java b/src/de/schildbach/pte/NasaProvider.java index 9f727387..22f2754a 100644 --- a/src/de/schildbach/pte/NasaProvider.java +++ b/src/de/schildbach/pte/NasaProvider.java @@ -106,7 +106,7 @@ public class NasaProvider extends AbstractHafasProvider private static final Pattern P_DEPARTURES_HEAD_COARSE = Pattern .compile( ".*?" // - + "(?:" // + + "(?:" // + "]*>(.+?)
.*?" // + "(?:]*>(.+?)
|(verkehren an dieser Haltestelle keine))"// + "|(Eingabe kann nicht interpretiert)|(Verbindung zum Server konnte leider nicht hergestellt werden|kann vom Server derzeit leider nicht bearbeitet werden))" // @@ -152,8 +152,8 @@ public class NasaProvider extends AbstractHafasProvider if (mHeadFine.matches()) { final String location = ParserUtils.resolveEntities(mHeadFine.group(1)); - final Date currentTime = ParserUtils.joinDateTime(ParserUtils.parseDate(mHeadFine.group(2)), ParserUtils - .parseTime(mHeadFine.group(3))); + final Date currentTime = ParserUtils.joinDateTime(ParserUtils.parseDate(mHeadFine.group(2)), + ParserUtils.parseTime(mHeadFine.group(3))); final List departures = new ArrayList(8); String oldZebra = null; @@ -213,7 +213,7 @@ public class NasaProvider extends AbstractHafasProvider } } - return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), 0, 0, location), departures, null); + return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), location), departures, null); } else { diff --git a/src/de/schildbach/pte/NetworkId.java b/src/de/schildbach/pte/NetworkId.java index dd09114a..1c3e1be1 100644 --- a/src/de/schildbach/pte/NetworkId.java +++ b/src/de/schildbach/pte/NetworkId.java @@ -23,7 +23,7 @@ package de.schildbach.pte; public enum NetworkId { // Germany - DB, BVG, RMV, MVV, AVV, VMV, GVH, BSVAG, NASA, VVO, VMS, VGS, VRR, VRN, VVS, NALDO, DING, KVV, + DB, BVG, RMV, MVV, INVG, AVV, VMV, GVH, BSVAG, NASA, VVO, VMS, VGS, VRR, VRN, VVS, NALDO, DING, KVV, // Austria OEBB, VOR, LINZ, SVV, IVB, STV, @@ -43,6 +43,9 @@ public enum NetworkId // Slovenia MARIBOR, + // Italy + ATC, + // United Arab Emirates DUB, diff --git a/src/de/schildbach/pte/NsProvider.java b/src/de/schildbach/pte/NsProvider.java index 10dc0dd0..77efd338 100644 --- a/src/de/schildbach/pte/NsProvider.java +++ b/src/de/schildbach/pte/NsProvider.java @@ -161,7 +161,7 @@ public class NsProvider extends AbstractHafasProvider } } - return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), 0, 0, location), departures, null); + return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), location), departures, null); } else { diff --git a/src/de/schildbach/pte/OebbProvider.java b/src/de/schildbach/pte/OebbProvider.java index 056e047d..f9272295 100644 --- a/src/de/schildbach/pte/OebbProvider.java +++ b/src/de/schildbach/pte/OebbProvider.java @@ -43,6 +43,9 @@ import de.schildbach.pte.dto.QueryDeparturesResult.Status; import de.schildbach.pte.exception.SessionExpiredException; import de.schildbach.pte.util.ParserUtils; +/** + * @author Andreas Schildbach + */ public class OebbProvider extends AbstractHafasProvider { public static final NetworkId NETWORK_ID = NetworkId.OEBB; @@ -250,7 +253,7 @@ public class OebbProvider extends AbstractHafasProvider { final String address = ParserUtils.resolveEntities(mAddresses.group(1)).trim(); if (!addresses.contains(address)) - addresses.add(new Location(LocationType.ANY, 0, 0, 0, address + "!")); + addresses.add(new Location(LocationType.ANY, 0, address + "!")); } if (type.equals("REQ0JourneyStopsS0K")) @@ -351,8 +354,8 @@ public class OebbProvider extends AbstractHafasProvider final Matcher mHead = P_CONNECTIONS_HEAD.matcher(page); if (mHead.matches()) { - final Location from = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mHead.group(1))); - final Location to = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mHead.group(2))); + final Location from = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mHead.group(1))); + final Location to = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mHead.group(2))); final Date currentDate = ParserUtils.parseDate(mHead.group(3)); final String linkEarlier = mHead.group(4) != null ? ParserUtils.resolveEntities(mHead.group(4)) : null; final String linkLater = mHead.group(5) != null ? ParserUtils.resolveEntities(mHead.group(5)) : null; @@ -540,7 +543,7 @@ public class OebbProvider extends AbstractHafasProvider } } - return new QueryDeparturesResult(new Location(LocationType.STATION, locationId, 0, 0, location), departures, null); + return new QueryDeparturesResult(new Location(LocationType.STATION, locationId, location), departures, null); } catch (final JSONException x) { diff --git a/src/de/schildbach/pte/RmvProvider.java b/src/de/schildbach/pte/RmvProvider.java index 5e22cd4d..2351e6e6 100644 --- a/src/de/schildbach/pte/RmvProvider.java +++ b/src/de/schildbach/pte/RmvProvider.java @@ -86,13 +86,13 @@ public class RmvProvider extends AbstractHafasProvider final Matcher mSingle = P_SINGLE_NAME.matcher(page); if (mSingle.matches()) { - results.add(new Location(LocationType.STATION, Integer.parseInt(mSingle.group(2)), 0, 0, ParserUtils.resolveEntities(mSingle.group(1)))); + results.add(new Location(LocationType.STATION, Integer.parseInt(mSingle.group(2)), ParserUtils.resolveEntities(mSingle.group(1)))); } else { final Matcher mMulti = P_MULTI_NAME.matcher(page); while (mMulti.find()) - results.add(new Location(LocationType.STATION, Integer.parseInt(mMulti.group(1)), 0, 0, ParserUtils.resolveEntities(mMulti.group(2)))); + results.add(new Location(LocationType.STATION, Integer.parseInt(mMulti.group(1)), ParserUtils.resolveEntities(mMulti.group(2)))); } return results; @@ -199,7 +199,7 @@ public class RmvProvider extends AbstractHafasProvider { final String address = ParserUtils.resolveEntities(mAddresses.group(1)).trim(); if (!addresses.contains(address)) - addresses.add(new Location(LocationType.ANY, 0, 0, 0, address + "!")); + addresses.add(new Location(LocationType.ANY, 0, address + "!")); } if (type == null) @@ -245,8 +245,8 @@ public class RmvProvider extends AbstractHafasProvider final Matcher mHead = P_CONNECTIONS_HEAD.matcher(page); if (mHead.matches()) { - final Location from = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mHead.group(1))); - final Location to = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mHead.group(2))); + final Location from = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mHead.group(1))); + final Location to = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mHead.group(2))); final Date currentDate = ParserUtils.parseDate(mHead.group(3)); final String linkEarlier = mHead.group(4) != null ? ParserUtils.resolveEntities(mHead.group(4)) : null; final String linkLater = mHead.group(5) != null ? ParserUtils.resolveEntities(mHead.group(5)) : null; @@ -352,7 +352,7 @@ public class RmvProvider extends AbstractHafasProvider { final String line = normalizeLine(ParserUtils.resolveEntities(mDetFine.group(1))); - final Location destination = new Location(LocationType.ANY, 0, 0, 0, ParserUtils.resolveEntities(mDetFine.group(2))); + final Location destination = new Location(LocationType.ANY, 0, ParserUtils.resolveEntities(mDetFine.group(2))); final Date departureTime = upTime(lastTime, ParserUtils.joinDateTime(currentDate, ParserUtils.parseTime(mDetFine.group(3)))); @@ -527,7 +527,7 @@ public class RmvProvider extends AbstractHafasProvider } } - return new QueryDeparturesResult(new Location(LocationType.STATION, locationId, 0, 0, location), departures, null); + return new QueryDeparturesResult(new Location(LocationType.STATION, locationId, location), departures, null); } else { diff --git a/src/de/schildbach/pte/SbbProvider.java b/src/de/schildbach/pte/SbbProvider.java index c93fa71e..52999017 100644 --- a/src/de/schildbach/pte/SbbProvider.java +++ b/src/de/schildbach/pte/SbbProvider.java @@ -95,7 +95,7 @@ public class SbbProvider extends AbstractHafasProvider + "|(Verbindung zum Server konnte leider nicht hergestellt werden|kann vom Server derzeit leider nicht bearbeitet werden)" // messages + ").*?" // , Pattern.DOTALL); - private static final Pattern P_DEPARTURES_HEAD_FINE = Pattern.compile("" // + private static final Pattern P_DEPARTURES_HEAD_FINE = Pattern.compile("" // + "([^<]*)(?:
)?\n" // location + "Abfahrt (\\d{1,2}:\\d{2})\n" // time + "Uhr, (\\d{2}\\.\\d{2}\\.\\d{2})\n" // date @@ -134,8 +134,8 @@ public class SbbProvider extends AbstractHafasProvider if (mHeadFine.matches()) { final String location = ParserUtils.resolveEntities(mHeadFine.group(1)); - final Date currentTime = ParserUtils.joinDateTime(ParserUtils.parseDate(mHeadFine.group(3)), ParserUtils - .parseTime(mHeadFine.group(2))); + final Date currentTime = ParserUtils.joinDateTime(ParserUtils.parseDate(mHeadFine.group(3)), + ParserUtils.parseTime(mHeadFine.group(2))); final int locationId = Integer.parseInt(mHeadFine.group(4)); final List departures = new ArrayList(8); // String oldZebra = null; @@ -180,7 +180,7 @@ public class SbbProvider extends AbstractHafasProvider } } - return new QueryDeparturesResult(new Location(LocationType.STATION, locationId, 0, 0, location), departures, null); + return new QueryDeparturesResult(new Location(LocationType.STATION, locationId, location), departures, null); } else { diff --git a/src/de/schildbach/pte/SncbProvider.java b/src/de/schildbach/pte/SncbProvider.java index f74127fc..4bd6007b 100644 --- a/src/de/schildbach/pte/SncbProvider.java +++ b/src/de/schildbach/pte/SncbProvider.java @@ -161,7 +161,7 @@ public class SncbProvider extends AbstractHafasProvider } } - return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), 0, 0, location), departures, null); + return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), location), departures, null); } else { diff --git a/src/de/schildbach/pte/VgsProvider.java b/src/de/schildbach/pte/VgsProvider.java index 3edcfbdf..bc1891e0 100644 --- a/src/de/schildbach/pte/VgsProvider.java +++ b/src/de/schildbach/pte/VgsProvider.java @@ -212,7 +212,7 @@ public class VgsProvider extends AbstractHafasProvider } } - return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), 0, 0, location), departures, null); + return new QueryDeparturesResult(new Location(LocationType.STATION, Integer.parseInt(stationId), location), departures, null); } else { diff --git a/src/de/schildbach/pte/dto/Location.java b/src/de/schildbach/pte/dto/Location.java index 24b9d796..204fede7 100644 --- a/src/de/schildbach/pte/dto/Location.java +++ b/src/de/schildbach/pte/dto/Location.java @@ -14,6 +14,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + package de.schildbach.pte.dto; import java.io.Serializable; @@ -37,6 +38,15 @@ public final class Location implements Serializable this.name = name; } + public Location(final LocationType type, final int id, final String name) + { + this.type = type; + this.id = id; + this.lat = 0; + this.lon = 0; + this.name = name; + } + @Override public String toString() { diff --git a/src/de/schildbach/pte/dto/QueryDeparturesResult.java b/src/de/schildbach/pte/dto/QueryDeparturesResult.java index 34c74c97..7e2ce29f 100644 --- a/src/de/schildbach/pte/dto/QueryDeparturesResult.java +++ b/src/de/schildbach/pte/dto/QueryDeparturesResult.java @@ -45,7 +45,7 @@ public final class QueryDeparturesResult public QueryDeparturesResult(final Status status, final int locationId) { this.status = status; - this.location = new Location(LocationType.STATION, locationId, 0, 0, null); + this.location = new Location(LocationType.STATION, locationId, null); this.departures = null; this.lines = null; } diff --git a/test/de/schildbach/pte/live/BahnProviderLiveTest.java b/test/de/schildbach/pte/live/BahnProviderLiveTest.java index 3bbd552c..8316102a 100644 --- a/test/de/schildbach/pte/live/BahnProviderLiveTest.java +++ b/test/de/schildbach/pte/live/BahnProviderLiveTest.java @@ -47,8 +47,8 @@ public class BahnProviderLiveTest @Test public void shortConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "Berlin"), null, new Location( - LocationType.ANY, 0, 0, 0, "Leipzig"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "Berlin"), null, new Location( + LocationType.ANY, 0, "Leipzig"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); for (final Connection connection : result.connections) @@ -59,8 +59,8 @@ public class BahnProviderLiveTest @Test public void slowConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "Marienburger Str., Berlin"), null, - new Location(LocationType.ANY, 0, 0, 0, "Tutzinger-Hof-Platz, Starnberg"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "Marienburger Str., Berlin"), null, + new Location(LocationType.ANY, 0, "Tutzinger-Hof-Platz, Starnberg"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); for (final Connection connection : result.connections) @@ -71,9 +71,8 @@ public class BahnProviderLiveTest @Test public void connectionWithFootway() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ADDRESS, 0, 0, 0, - "Berlin - Mitte, Unter den Linden 24"), null, new Location(LocationType.ADDRESS, 0, 0, 0, "Starnberg, Possenhofener Straße 13"), - new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ADDRESS, 0, "Berlin - Mitte, Unter den Linden 24"), + null, new Location(LocationType.ADDRESS, 0, "Starnberg, Possenhofener Straße 13"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); diff --git a/test/de/schildbach/pte/live/GvhProviderLiveTest.java b/test/de/schildbach/pte/live/GvhProviderLiveTest.java index 3758e784..de5de438 100644 --- a/test/de/schildbach/pte/live/GvhProviderLiveTest.java +++ b/test/de/schildbach/pte/live/GvhProviderLiveTest.java @@ -14,6 +14,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + package de.schildbach.pte.live; import java.util.Date; @@ -87,8 +88,8 @@ public class GvhProviderLiveTest @Test public void incompleteConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "hann"), null, new Location( - LocationType.ANY, 0, 0, 0, "laat"), new Date(), true, ALL_PRODUCTS, WalkSpeed.FAST); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "hann"), null, new Location( + LocationType.ANY, 0, "laat"), new Date(), true, ALL_PRODUCTS, WalkSpeed.FAST); System.out.println(result); } @@ -96,7 +97,7 @@ public class GvhProviderLiveTest public void shortConnection() throws Exception { final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 25000031, 0, 0, "Hannover Hauptbahnhof"), - null, new Location(LocationType.STATION, 25001141, 0, 0, "Hannover Bismarckstraße"), new Date(), true, ALL_PRODUCTS, WalkSpeed.FAST); + null, new Location(LocationType.STATION, 25001141, "Hannover Bismarckstraße"), new Date(), true, ALL_PRODUCTS, WalkSpeed.FAST); System.out.println(result); } diff --git a/test/de/schildbach/pte/live/LinzProviderLiveTest.java b/test/de/schildbach/pte/live/LinzProviderLiveTest.java index 46283869..c944e838 100644 --- a/test/de/schildbach/pte/live/LinzProviderLiveTest.java +++ b/test/de/schildbach/pte/live/LinzProviderLiveTest.java @@ -79,16 +79,16 @@ public class LinzProviderLiveTest @Test public void incompleteConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "linz"), null, new Location( - LocationType.ANY, 0, 0, 0, "gel"), new Date(), true, ALL_PRODUCTS, WalkSpeed.FAST); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "linz"), null, new Location( + LocationType.ANY, 0, "gel"), new Date(), true, ALL_PRODUCTS, WalkSpeed.FAST); System.out.println(result); } @Test public void shortConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 0, 0, 0, "Linz Hauptbahnhof"), null, - new Location(LocationType.STATION, 0, 0, 0, "Linz Auwiesen"), new Date(), true, ALL_PRODUCTS, WalkSpeed.FAST); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 0, "Linz Hauptbahnhof"), null, + new Location(LocationType.STATION, 0, "Linz Auwiesen"), new Date(), true, ALL_PRODUCTS, WalkSpeed.FAST); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); @@ -97,8 +97,8 @@ public class LinzProviderLiveTest @Test public void longConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 0, 0, 0, "Linz Auwiesen"), null, - new Location(LocationType.STATION, 0, 0, 0, "Linz Hafen"), new Date(), true, ALL_PRODUCTS, WalkSpeed.SLOW); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 0, "Linz Auwiesen"), null, new Location( + LocationType.STATION, 0, "Linz Hafen"), new Date(), true, ALL_PRODUCTS, WalkSpeed.SLOW); System.out.println(result); // final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); // System.out.println(moreResult); diff --git a/test/de/schildbach/pte/live/MvvProviderLiveTest.java b/test/de/schildbach/pte/live/MvvProviderLiveTest.java index a3ea513f..0263f2fb 100644 --- a/test/de/schildbach/pte/live/MvvProviderLiveTest.java +++ b/test/de/schildbach/pte/live/MvvProviderLiveTest.java @@ -38,8 +38,8 @@ public class MvvProviderLiveTest @Test public void shortConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "Marienplatz"), null, new Location( - LocationType.ANY, 0, 0, 0, "Pasing"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "Marienplatz"), null, new Location( + LocationType.ANY, 0, "Pasing"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); @@ -48,8 +48,8 @@ public class MvvProviderLiveTest @Test public void longConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "Starnberg, Arbeitsamt"), null, - new Location(LocationType.STATION, 0, 0, 0, "Ackermannstraße"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "Starnberg, Arbeitsamt"), null, + new Location(LocationType.STATION, 0, "Ackermannstraße"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); // seems like there are no more connections all the time } @@ -68,7 +68,7 @@ public class MvvProviderLiveTest public void connectionBetweenCoordinateAndStation() throws Exception { final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ADDRESS, 0, 48238341, 11478230, null), null, - new Location(LocationType.ANY, 0, 0, 0, "Ostbahnhof"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + new Location(LocationType.ANY, 0, "Ostbahnhof"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); @@ -77,8 +77,8 @@ public class MvvProviderLiveTest @Test public void connectionBetweenAddresses() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ADDRESS, 0, 0, 0, "München, Maximilianstr. 1"), - null, new Location(LocationType.ADDRESS, 0, 0, 0, "Starnberg, Jahnstraße 50"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ADDRESS, 0, "München, Maximilianstr. 1"), null, + new Location(LocationType.ADDRESS, 0, "Starnberg, Jahnstraße 50"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); @@ -87,9 +87,8 @@ public class MvvProviderLiveTest @Test public void connectionBetweenStationAndAddress() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 1220, 0, 0, "Josephsburg"), null, - new Location(LocationType.ADDRESS, 0, 48188018, 11574239, "München Frankfurter Ring 35"), new Date(), true, ALL_PRODUCTS, - WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 1220, "Josephsburg"), null, new Location( + LocationType.ADDRESS, 0, 48188018, 11574239, "München Frankfurter Ring 35"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); diff --git a/test/de/schildbach/pte/live/NsProviderLiveTest.java b/test/de/schildbach/pte/live/NsProviderLiveTest.java index b6fa47c8..5117e2c9 100644 --- a/test/de/schildbach/pte/live/NsProviderLiveTest.java +++ b/test/de/schildbach/pte/live/NsProviderLiveTest.java @@ -14,6 +14,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + package de.schildbach.pte.live; import java.util.Date; @@ -43,7 +44,7 @@ public class NsProviderLiveTest System.out.println(result.status + " " + result.departures.size() + " " + result.departures); } - + @Test public void autocompleteIncomplete() throws Exception { @@ -63,8 +64,8 @@ public class NsProviderLiveTest @Test public void shortConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 100024, 0, 0, null), null, new Location( - LocationType.STATION, 100066, 0, 0, null), new Date(), true, null, WalkSpeed.FAST); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 100024, null), null, new Location( + LocationType.STATION, 100066, null), new Date(), true, null, WalkSpeed.FAST); System.out.println(result.status + " " + result.connections); } @@ -72,8 +73,8 @@ public class NsProviderLiveTest @Test public void longConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 100024, 0, 0, null), null, new Location( - LocationType.STATION, 103624, 0, 0, null), new Date(), true, null, WalkSpeed.FAST); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 100024, null), null, new Location( + LocationType.STATION, 103624, null), new Date(), true, null, WalkSpeed.FAST); System.out.println(result.status + " " + result.connections); } diff --git a/test/de/schildbach/pte/live/OebbProviderLiveTest.java b/test/de/schildbach/pte/live/OebbProviderLiveTest.java index 66503500..0a4c9e40 100644 --- a/test/de/schildbach/pte/live/OebbProviderLiveTest.java +++ b/test/de/schildbach/pte/live/OebbProviderLiveTest.java @@ -21,8 +21,8 @@ import java.util.Date; import org.junit.Test; -import de.schildbach.pte.OebbProvider; import de.schildbach.pte.NetworkProvider.WalkSpeed; +import de.schildbach.pte.OebbProvider; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; import de.schildbach.pte.dto.NearbyStationsResult; @@ -47,8 +47,8 @@ public class OebbProviderLiveTest @Test public void shortConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "Linz"), null, new Location( - LocationType.ANY, 0, 0, 0, "Berlin"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "Linz"), null, new Location( + LocationType.ANY, 0, "Berlin"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); @@ -57,8 +57,8 @@ public class OebbProviderLiveTest @Test public void slowConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "Ramsen, Zoll"), null, new Location( - LocationType.ANY, 0, 0, 0, "Azuga"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "Ramsen, Zoll"), null, new Location( + LocationType.ANY, 0, "Azuga"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); @@ -67,8 +67,8 @@ public class OebbProviderLiveTest @Test public void connectionWithFootway() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "Graz, Haselweg"), null, - new Location(LocationType.ADDRESS, 0, 0, 0, "Innsbruck, Gumppstraße 69"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "Graz, Haselweg"), null, new Location( + LocationType.ADDRESS, 0, "Innsbruck, Gumppstraße 69"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); @@ -77,9 +77,8 @@ public class OebbProviderLiveTest @Test public void connectionWithFootway2() throws Exception { - final QueryConnectionsResult result = provider - .queryConnections(new Location(LocationType.ANY, 0, 0, 0, "Wien, Krottenbachstraße 110!"), null, new Location(LocationType.ADDRESS, - 0, 0, 0, "Wien, Meidlinger Hauptstraße 1"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "Wien, Krottenbachstraße 110!"), null, + new Location(LocationType.ADDRESS, 0, "Wien, Meidlinger Hauptstraße 1"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); diff --git a/test/de/schildbach/pte/live/SbbProviderLiveTest.java b/test/de/schildbach/pte/live/SbbProviderLiveTest.java index 1df41c3d..9ec9ff74 100644 --- a/test/de/schildbach/pte/live/SbbProviderLiveTest.java +++ b/test/de/schildbach/pte/live/SbbProviderLiveTest.java @@ -22,8 +22,8 @@ import java.util.List; import org.junit.Test; -import de.schildbach.pte.SbbProvider; import de.schildbach.pte.NetworkProvider.WalkSpeed; +import de.schildbach.pte.SbbProvider; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; import de.schildbach.pte.dto.NearbyStationsResult; @@ -73,8 +73,8 @@ public class SbbProviderLiveTest @Test public void shortConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 8503000, 0, 0, "Zürich HB"), null, - new Location(LocationType.STATION, 8507785, 0, 0, "Bern, Hauptbahnhof"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 8503000, "Zürich HB"), null, new Location( + LocationType.STATION, 8507785, "Bern, Hauptbahnhof"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); @@ -83,8 +83,8 @@ public class SbbProviderLiveTest @Test public void slowConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "Schocherswil, Alte Post!"), null, - new Location(LocationType.ANY, 0, 0, 0, "Laconnex, Mollach"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "Schocherswil, Alte Post!"), null, + new Location(LocationType.ANY, 0, "Laconnex, Mollach"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); @@ -93,8 +93,8 @@ public class SbbProviderLiveTest @Test public void connectionWithFootway() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ADDRESS, 0, 0, 0, "Spiez, Seestraße 62"), null, - new Location(LocationType.ADDRESS, 0, 0, 0, "Einsiedeln, Erlenmoosweg 24"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ADDRESS, 0, "Spiez, Seestraße 62"), null, + new Location(LocationType.ADDRESS, 0, "Einsiedeln, Erlenmoosweg 24"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result); final QueryConnectionsResult moreResult = provider.queryMoreConnections(result.context); System.out.println(moreResult); diff --git a/test/de/schildbach/pte/live/SncbProviderLiveTest.java b/test/de/schildbach/pte/live/SncbProviderLiveTest.java index a709a82f..176c184a 100644 --- a/test/de/schildbach/pte/live/SncbProviderLiveTest.java +++ b/test/de/schildbach/pte/live/SncbProviderLiveTest.java @@ -14,6 +14,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + package de.schildbach.pte.live; import java.util.Date; @@ -21,8 +22,8 @@ import java.util.List; import org.junit.Test; -import de.schildbach.pte.SncbProvider; import de.schildbach.pte.NetworkProvider.WalkSpeed; +import de.schildbach.pte.SncbProvider; import de.schildbach.pte.dto.Location; import de.schildbach.pte.dto.LocationType; import de.schildbach.pte.dto.NearbyStationsResult; @@ -43,7 +44,7 @@ public class SncbProviderLiveTest System.out.println(result.status + " " + result.departures.size() + " " + result.departures); } - + @Test public void autocompleteIncomplete() throws Exception { @@ -63,8 +64,8 @@ public class SncbProviderLiveTest @Test public void shortConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 100024, 0, 0, null), null, new Location( - LocationType.STATION, 100066, 0, 0, null), new Date(), true, null, WalkSpeed.FAST); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 100024, null), null, new Location( + LocationType.STATION, 100066, null), new Date(), true, null, WalkSpeed.FAST); System.out.println(result.status + " " + result.connections); } @@ -72,8 +73,8 @@ public class SncbProviderLiveTest @Test public void longConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 100024, 0, 0, null), null, new Location( - LocationType.STATION, 103624, 0, 0, null), new Date(), true, null, WalkSpeed.FAST); + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.STATION, 100024, null), null, new Location( + LocationType.STATION, 103624, null), new Date(), true, null, WalkSpeed.FAST); System.out.println(result.status + " " + result.connections); } diff --git a/test/de/schildbach/pte/live/TflProviderLiveTest.java b/test/de/schildbach/pte/live/TflProviderLiveTest.java index 47c5739d..0365a16c 100644 --- a/test/de/schildbach/pte/live/TflProviderLiveTest.java +++ b/test/de/schildbach/pte/live/TflProviderLiveTest.java @@ -14,6 +14,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + package de.schildbach.pte.live; import java.util.Date; @@ -55,7 +56,7 @@ public class TflProviderLiveTest @Test public void postcodeConnection() throws Exception { - final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, 0, 0, "sw19 8ta"), null, new Location( + final QueryConnectionsResult result = provider.queryConnections(new Location(LocationType.ANY, 0, "sw19 8ta"), null, new Location( LocationType.STATION, 1016019, 51655903, -397249, "Watford (Herts), Watford Town Centre"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL); System.out.println(result);