Skip to content

Commit cdb9c5a

Browse files
author
Stephane Landelle
committed
Fix proposal for AsyncHttpClient#182 against master
1 parent d8254d3 commit cdb9c5a

File tree

4 files changed

+7
-13
lines changed

4 files changed

+7
-13
lines changed

api/src/main/java/com/ning/http/client/providers/ResponseBase.java

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
public abstract class ResponseBase implements Response
1616
{
1717
protected final static String DEFAULT_CHARSET = "ISO-8859-1";
18-
protected final static String HEADERS_NOT_COMPUTED = "Response's headers hasn't been computed by your AsyncHandler.";
1918

2019
protected final List<HttpResponseBodyPart> bodyParts;
2120
protected final HttpResponseHeaders headers;
@@ -48,25 +47,22 @@ public final URI getUri() /*throws MalformedURLException*/ {
4847

4948
/* @Override */
5049
public final String getContentType() {
51-
return getHeader("Content-Type");
50+
return headers != null? getHeader("Content-Type"): null;
5251
}
5352

5453
/* @Override */
5554
public final String getHeader(String name) {
56-
return getHeaders().getFirstValue(name);
55+
return headers != null? getHeaders().getFirstValue(name): null;
5756
}
5857

5958
/* @Override */
6059
public final List<String> getHeaders(String name) {
61-
return getHeaders().get(name);
60+
return headers != null? getHeaders().get(name): null;
6261
}
6362

6463
/* @Override */
6564
public final FluentCaseInsensitiveStringsMap getHeaders() {
66-
if (headers == null) {
67-
throw new IllegalStateException(HEADERS_NOT_COMPUTED);
68-
}
69-
return headers.getHeaders();
65+
return headers != null? headers.getHeaders(): new FluentCaseInsensitiveStringsMap();
7066
}
7167

7268
/* @Override */

api/src/main/java/com/ning/http/client/providers/jdk/JDKResponse.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
package com.ning.http.client.providers.jdk;
1414

1515
import com.ning.http.client.Cookie;
16-
import com.ning.http.client.FluentCaseInsensitiveStringsMap;
1716
import com.ning.http.client.HttpResponseBodyPart;
1817
import com.ning.http.client.HttpResponseHeaders;
1918
import com.ning.http.client.HttpResponseStatus;
@@ -50,7 +49,7 @@ public String getResponseBodyExcerpt(int maxLength, String charset) throws IOExc
5049
/* @Override */
5150
public List<Cookie> getCookies() {
5251
if (headers == null) {
53-
throw new IllegalStateException(HEADERS_NOT_COMPUTED);
52+
return Collections.emptyList();
5453
}
5554
if (cookies.isEmpty()) {
5655
for (Map.Entry<String, List<String>> header : headers.getHeaders().entrySet()) {

providers/apache/src/main/java/com/ning/http/client/providers/apache/ApacheResponse.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
import java.util.Map;
2727

2828
public class ApacheResponse extends ResponseBase {
29-
private final static String HEADERS_NOT_COMPUTED = "Response's headers hasn't been computed by your AsyncHandler.";
3029

3130
private final List<Cookie> cookies = new ArrayList<Cookie>();
3231

@@ -61,7 +60,7 @@ public String getResponseBodyExcerpt(int maxLength, String charset) throws IOExc
6160
/* @Override */
6261
public List<Cookie> getCookies() {
6362
if (headers == null) {
64-
throw new IllegalStateException(HEADERS_NOT_COMPUTED);
63+
return Collections.emptyList();
6564
}
6665
if (cookies.isEmpty()) {
6766
for (Map.Entry<String, List<String>> header : headers.getHeaders().entrySet()) {

providers/netty/src/main/java/com/ning/http/client/providers/netty/NettyResponse.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ public String getResponseBodyExcerpt(int maxLength, String charset) throws IOExc
5858

5959
public List<Cookie> getCookies() {
6060
if (headers == null) {
61-
throw new IllegalStateException(HEADERS_NOT_COMPUTED);
61+
return Collections.emptyList();
6262
}
6363
if (cookies.isEmpty()) {
6464
for (Map.Entry<String, List<String>> header : headers.getHeaders().entrySet()) {

0 commit comments

Comments
 (0)