HttpClient: Use setHeader() rather than authorization parameter.

This commit is contained in:
Andreas Schildbach 2015-09-01 01:11:12 +02:00
parent d6e03d7bc0
commit 9b16fc6353
2 changed files with 14 additions and 37 deletions

View file

@ -132,13 +132,11 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
} }
} }
private final String authorization;
public AbstractNavitiaProvider(final NetworkId network, final String authorization) public AbstractNavitiaProvider(final NetworkId network, final String authorization)
{ {
super(network); super(network);
this.authorization = authorization; httpClient.setHeader("Authorization", authorization);
} }
protected abstract String region(); protected abstract String region();
@ -661,7 +659,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
private JSONObject getLinePhysicalMode(final String lineId) throws IOException private JSONObject getLinePhysicalMode(final String lineId) throws IOException
{ {
final String uri = uri() + "lines/" + ParserUtils.urlEncode(lineId) + "/physical_modes"; final String uri = uri() + "lines/" + ParserUtils.urlEncode(lineId) + "/physical_modes";
final CharSequence page = httpClient.get(uri, authorization); final CharSequence page = httpClient.get(uri);
try try
{ {
@ -700,7 +698,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
private List<LineDestination> getStationLines(final String stopPointId) throws IOException private List<LineDestination> getStationLines(final String stopPointId) throws IOException
{ {
final String uri = uri() + "stop_points/" + ParserUtils.urlEncode(stopPointId) + "/routes?depth=2"; final String uri = uri() + "stop_points/" + ParserUtils.urlEncode(stopPointId) + "/routes?depth=2";
final CharSequence page = httpClient.get(uri, authorization); final CharSequence page = httpClient.get(uri);
try try
{ {
@ -727,7 +725,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
private String getStopAreaId(final String stopPointId) throws IOException private String getStopAreaId(final String stopPointId) throws IOException
{ {
final String uri = uri() + "stop_points/" + ParserUtils.urlEncode(stopPointId) + "?depth=1"; final String uri = uri() + "stop_points/" + ParserUtils.urlEncode(stopPointId) + "?depth=1";
final CharSequence page = httpClient.get(uri, authorization); final CharSequence page = httpClient.get(uri);
try try
{ {
@ -794,7 +792,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
final String queryUri = uri() + queryUriType + "places_nearby?type[]=stop_point" + "&distance=" + maxDistance + "&count=" + maxLocations final String queryUri = uri() + queryUriType + "places_nearby?type[]=stop_point" + "&distance=" + maxDistance + "&count=" + maxLocations
+ "&depth=0"; + "&depth=0";
final CharSequence page = httpClient.get(queryUri, authorization); final CharSequence page = httpClient.get(queryUri);
try try
{ {
@ -871,7 +869,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
} }
queryUri.append("departures?from_datetime=" + dateTime + "&count=" + maxDepartures + "&duration=3600" + "&depth=0"); queryUri.append("departures?from_datetime=" + dateTime + "&count=" + maxDepartures + "&duration=3600" + "&depth=0");
final CharSequence page = httpClient.get(queryUri.toString(), authorization); final CharSequence page = httpClient.get(queryUri.toString());
final JSONObject head = new JSONObject(page.toString()); final JSONObject head = new JSONObject(page.toString());
@ -960,7 +958,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
final String nameCstr = constraint.toString(); final String nameCstr = constraint.toString();
final String queryUri = uri() + "places?q=" + ParserUtils.urlEncode(nameCstr) + "&type[]=stop_area&type[]=address" + "&depth=1"; final String queryUri = uri() + "places?q=" + ParserUtils.urlEncode(nameCstr) + "&type[]=stop_area&type[]=address" + "&depth=1";
final CharSequence page = httpClient.get(queryUri, authorization); final CharSequence page = httpClient.get(queryUri);
try try
{ {
@ -1081,7 +1079,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
} }
} }
final CharSequence page = httpClient.get(queryUri.toString(), authorization); final CharSequence page = httpClient.get(queryUri.toString());
try try
{ {
@ -1177,7 +1175,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
final Location from = context.from; final Location from = context.from;
final Location to = context.to; final Location to = context.to;
final String queryUri = later ? context.nextQueryUri : context.prevQueryUri; final String queryUri = later ? context.nextQueryUri : context.prevQueryUri;
final CharSequence page = httpClient.get(queryUri, authorization); final CharSequence page = httpClient.get(queryUri);
try try
{ {
@ -1214,7 +1212,7 @@ public abstract class AbstractNavitiaProvider extends AbstractNetworkProvider
public Point[] getArea() throws IOException public Point[] getArea() throws IOException
{ {
final String queryUri = uri(); final String queryUri = uri();
final CharSequence page = httpClient.get(queryUri, authorization); final CharSequence page = httpClient.get(queryUri);
try try
{ {

View file

@ -87,12 +87,7 @@ public final class HttpClient
public CharSequence get(final String url) throws IOException public CharSequence get(final String url) throws IOException
{ {
return get(url, (String) null); return get(url, null);
}
public CharSequence get(final String url, final String authorization) throws IOException
{
return get(url, null, null, null, authorization);
} }
public CharSequence get(final String urlStr, final Charset requestEncoding) throws IOException public CharSequence get(final String urlStr, final Charset requestEncoding) throws IOException
@ -100,20 +95,14 @@ public final class HttpClient
return get(urlStr, null, null, requestEncoding); return get(urlStr, null, null, requestEncoding);
} }
public CharSequence get(final String urlStr, final String postRequest, final String requestContentType, final Charset requestEncoding) public CharSequence get(final String urlStr, final String postRequest, final String requestContentType, Charset requestEncoding)
throws IOException throws IOException
{
return get(urlStr, postRequest, requestContentType, requestEncoding, null);
}
private CharSequence get(final String urlStr, final String postRequest, final String requestContentType, Charset requestEncoding,
final String authorization) throws IOException
{ {
if (requestEncoding == null) if (requestEncoding == null)
requestEncoding = Charsets.ISO_8859_1; requestEncoding = Charsets.ISO_8859_1;
final StringBuilder buffer = new StringBuilder(SCRAPE_INITIAL_CAPACITY); final StringBuilder buffer = new StringBuilder(SCRAPE_INITIAL_CAPACITY);
final InputStream is = getInputStream(urlStr, postRequest, requestContentType, requestEncoding, null, authorization); final InputStream is = getInputStream(urlStr, postRequest, requestContentType, requestEncoding, null);
final Reader pageReader = new InputStreamReader(is, requestEncoding); final Reader pageReader = new InputStreamReader(is, requestEncoding);
copy(pageReader, buffer); copy(pageReader, buffer);
pageReader.close(); pageReader.close();
@ -130,14 +119,8 @@ public final class HttpClient
return getInputStream(urlStr, null, null, requestEncoding, referer); return getInputStream(urlStr, null, null, requestEncoding, referer);
} }
public InputStream getInputStream(final String urlStr, final String postRequest, final String requestContentType, final Charset requestEncoding,
final String referer) throws IOException
{
return getInputStream(urlStr, postRequest, requestContentType, requestEncoding, referer, null);
}
public InputStream getInputStream(final String urlStr, final String postRequest, final String requestContentType, Charset requestEncoding, public InputStream getInputStream(final String urlStr, final String postRequest, final String requestContentType, Charset requestEncoding,
final String referer, final String authorization) throws IOException final String referer) throws IOException
{ {
log.debug("{}: {}", postRequest != null ? "POST" : "GET", urlStr); log.debug("{}: {}", postRequest != null ? "POST" : "GET", urlStr);
@ -171,10 +154,6 @@ public final class HttpClient
if (sessionCookie != null && sessionCookie.getName().equals(sessionCookieName)) if (sessionCookie != null && sessionCookie.getName().equals(sessionCookieName))
connection.addRequestProperty("Cookie", sessionCookie.toString()); connection.addRequestProperty("Cookie", sessionCookie.toString());
// Set authorization.
if (authorization != null)
connection.addRequestProperty("Authorization", authorization);
if (postRequest != null) if (postRequest != null)
{ {
final byte[] postRequestBytes = postRequest.getBytes(requestEncoding.name()); final byte[] postRequestBytes = postRequest.getBytes(requestEncoding.name());