handle 'no connections' without throwing IllegalStateException

This commit is contained in:
Andreas Schildbach 2012-08-08 11:14:19 +02:00
parent d022370fcb
commit be66746299
2 changed files with 13 additions and 2 deletions

View file

@ -1556,8 +1556,6 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider
final String requestId = strings.read(is);
final int connectionDetailsPtr = is.readIntReverse();
if (connectionDetailsPtr == 0)
throw new IllegalStateException("no connection details");
final short errorCode = is.readShortReverse();
if (errorCode != 0)
@ -1577,6 +1575,10 @@ public abstract class AbstractHafasProvider extends AbstractNetworkProvider
else
throw new IllegalStateException("error " + errorCode + " on " + uri);
}
if (connectionDetailsPtr == 0)
throw new IllegalStateException("no connection details");
is.skipBytes(14);
final Charset stringEncoding = Charset.forName(strings.read(is));
strings.setEncoding(stringEncoding);

View file

@ -108,6 +108,15 @@ public class BahnProviderLiveTest extends AbstractProviderLiveTest
System.out.println(laterResult);
}
@Test
public void noConnections() throws Exception
{
final QueryConnectionsResult result = queryConnections(new Location(LocationType.STATION, 513729, null, "Schillerplatz, Kaiserslautern"),
null, new Location(LocationType.STATION, 403631, null, "Trippstadt Grundschule"), new Date(), true, ALL_PRODUCTS, WalkSpeed.NORMAL,
Accessibility.NEUTRAL);
System.out.println(result);
}
@Test
public void connectionWithFootway() throws Exception
{