Extract XML nearby stations parameters to method

This commit is contained in:
Andreas Schildbach 2013-07-09 18:34:54 +02:00
parent 1e86a1507e
commit f65aa7ea57
13 changed files with 25 additions and 57 deletions

View file

@ -2256,6 +2256,19 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider
return m.group(1);
}
protected final StringBuilder xmlNearbyStationsParameters(final int stationId)
{
final StringBuilder parameters = new StringBuilder();
parameters.append("?productsFilter=").append(allProductsString());
parameters.append("&boardType=dep");
parameters.append("&input=").append(stationId);
parameters.append("&sTI=1&start=yes&hcount=0&L=vs_java3");
if (clientType != null)
parameters.append("&clientType=").append(ParserUtils.urlEncode(clientType));
return parameters;
}
private static final Pattern P_XML_NEARBY_STATIONS_COARSE = Pattern.compile("\\G<\\s*St\\s*(.*?)/?>(?:\n|\\z)", Pattern.DOTALL);
private static final Pattern P_XML_NEARBY_STATIONS_FINE = Pattern.compile("" //
+ "evaId=\"(\\d+)\"\\s*" // id

View file

@ -125,11 +125,7 @@ public class DsbProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0");
uri.append("&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -113,11 +113,7 @@ public class EireannProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0");
uri.append("&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -133,10 +133,7 @@ public class LuProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -147,11 +147,7 @@ public class NriProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0");
uri.append("&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -150,11 +150,7 @@ public class PlProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0");
uri.append("&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -118,11 +118,7 @@ public class RtProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0");
uri.append("&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -112,11 +112,7 @@ public class SbbProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0");
uri.append("&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -167,10 +167,7 @@ public class SeProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -156,10 +156,7 @@ public class StockholmProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -154,11 +154,7 @@ public class VbbProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0");
uri.append("&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -117,11 +117,7 @@ public class VbnProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0");
uri.append("&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}

View file

@ -178,11 +178,7 @@ public class ZvvProvider extends AbstractHafasProvider
else if (location.type == LocationType.STATION && location.hasId())
{
final StringBuilder uri = new StringBuilder(stationBoardEndpoint);
uri.append("?productsFilter=").append(allProductsString());
uri.append("&boardType=dep");
uri.append("&input=").append(location.id);
uri.append("&sTI=1&start=yes&hcount=0");
uri.append("&L=vs_java3");
uri.append(xmlNearbyStationsParameters(location.id));
return xmlNearbyStations(uri.toString());
}