You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@shindig.apache.org by be...@apache.org on 2008/08/23 02:28:25 UTC
svn commit: r688232 - in
/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http:
HttpResponse.java HttpResponseBuilder.java
Author: beaton
Date: Fri Aug 22 17:28:24 2008
New Revision: 688232
URL: http://svn.apache.org/viewvc?rev=688232&view=rev
Log:
Fix an NPE on HttpResponseBuilder.setBytes(null), and get this compiling under
java 1.5.
Modified:
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponse.java
incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponseBuilder.java
Modified: incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponse.java
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponse.java?rev=688232&r1=688231&r2=688232&view=diff
==============================================================================
--- incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponse.java (original)
+++ incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponse.java Fri Aug 22 17:28:24 2008
@@ -24,10 +24,13 @@
import com.google.inject.name.Named;
import com.ibm.icu.text.CharsetDetector;
import com.ibm.icu.text.CharsetMatch;
+
+import org.apache.commons.lang.ArrayUtils;
import org.apache.shindig.common.util.DateUtil;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
+import java.io.UnsupportedEncodingException;
import java.nio.ByteBuffer;
import java.nio.charset.Charset;
import java.util.Arrays;
@@ -121,7 +124,18 @@
private HttpResponse(int httpStatusCode, String body) {
this(new HttpResponseBuilder()
.setHttpStatusCode(httpStatusCode)
- .setResponse(body.getBytes(Charset.forName("UTF-8"))));
+ .setResponse(getUtf8Bytes(body)));
+ }
+
+ private static byte[] getUtf8Bytes(String body) {
+ try {
+ if (body == null) {
+ return ArrayUtils.EMPTY_BYTE_ARRAY;
+ }
+ return body.getBytes(DEFAULT_ENCODING);
+ } catch (UnsupportedEncodingException e) {
+ throw new RuntimeException(e);
+ }
}
public HttpResponse(String body) {
Modified: incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponseBuilder.java
URL: http://svn.apache.org/viewvc/incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponseBuilder.java?rev=688232&r1=688231&r2=688232&view=diff
==============================================================================
--- incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponseBuilder.java (original)
+++ incubator/shindig/trunk/java/gadgets/src/main/java/org/apache/shindig/gadgets/http/HttpResponseBuilder.java Fri Aug 22 17:28:24 2008
@@ -63,6 +63,9 @@
* @param responseBytes The response body. Copied when set.
*/
public HttpResponseBuilder setResponse(byte[] responseBytes) {
+ if (responseBytes == null) {
+ responseBytes = ArrayUtils.EMPTY_BYTE_ARRAY;
+ }
this.responseBytes = new byte[responseBytes.length];
System.arraycopy(responseBytes, 0, this.responseBytes, 0, responseBytes.length);
return this;