fixed umlauts in Dresden autocomplete

This commit is contained in:
Andreas Schildbach 2012-08-09 14:02:55 +02:00
parent e4d0567710
commit e5aa8fb51d
3 changed files with 19 additions and 2 deletions

View file

@ -22,6 +22,7 @@ import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.nio.charset.Charset;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
@ -83,6 +84,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
private final String additionalQueryParameter;
private final boolean canAcceptPoiID;
private final boolean needsSpEncId;
private Charset requestUrlEncoding = ISO_8859_1;
private boolean suppressPositions = false;
private final XmlPullParserFactory parserFactory;
@ -148,6 +150,11 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
this.needsSpEncId = needsSpEncId;
}
protected void setRequestUrlEncoding(final Charset requestUrlEncoding)
{
this.requestUrlEncoding = requestUrlEncoding;
}
protected void setSuppressPositions(final boolean suppressPositions)
{
this.suppressPositions = suppressPositions;
@ -2311,7 +2318,7 @@ public abstract class AbstractEfaProvider extends AbstractNetworkProvider
else
{
uri.append("&type_").append(paramSuffix).append("=").append(locationTypeValue(location));
uri.append("&name_").append(paramSuffix).append("=").append(ParserUtils.urlEncode(locationValue(location), ISO_8859_1));
uri.append("&name_").append(paramSuffix).append("=").append(ParserUtils.urlEncode(locationValue(location), requestUrlEncoding));
}
}

View file

@ -33,12 +33,14 @@ public class VvoProvider extends AbstractEfaProvider
public VvoProvider()
{
super(API_BASE, null);
this(API_BASE);
}
public VvoProvider(final String apiBase)
{
super(apiBase, null);
setRequestUrlEncoding(UTF_8);
}
public NetworkId id()

View file

@ -73,6 +73,14 @@ public class VvoProviderLiveTest extends AbstractProviderLiveTest
print(autocompletes);
}
@Test
public void autocompleteWithUmlaut() throws Exception
{
final List<Location> autocompletes = provider.autocompleteStations("Hülßestraße");
print(autocompletes);
}
@Test
public void shortConnection() throws Exception
{