diff --git a/spring-test/src/main/java/org/springframework/mock/http/MockHttpOutputMessage.java b/spring-test/src/main/java/org/springframework/mock/http/MockHttpOutputMessage.java index dc1648e9d8a..34edad4ec36 100644 --- a/spring-test/src/main/java/org/springframework/mock/http/MockHttpOutputMessage.java +++ b/spring-test/src/main/java/org/springframework/mock/http/MockHttpOutputMessage.java @@ -81,7 +81,7 @@ public class MockHttpOutputMessage implements HttpOutputMessage { } catch (UnsupportedEncodingException ex) { // should not occur - throw new InternalError(ex.getMessage()); + throw new IllegalStateException(ex); } } diff --git a/spring-web/src/main/java/org/springframework/web/client/HttpStatusCodeException.java b/spring-web/src/main/java/org/springframework/web/client/HttpStatusCodeException.java index 10f1d22f173..93b3c110646 100644 --- a/spring-web/src/main/java/org/springframework/web/client/HttpStatusCodeException.java +++ b/spring-web/src/main/java/org/springframework/web/client/HttpStatusCodeException.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -35,6 +35,7 @@ public abstract class HttpStatusCodeException extends RestClientException { private static final String DEFAULT_CHARSET = "ISO-8859-1"; + private final HttpStatus statusCode; private final String statusText; @@ -74,10 +75,9 @@ public abstract class HttpStatusCodeException extends RestClientException { * @param responseCharset the response body charset, may be {@code null} * @since 3.0.5 */ - protected HttpStatusCodeException(HttpStatus statusCode, - String statusText, - byte[] responseBody, - Charset responseCharset) { + protected HttpStatusCodeException( + HttpStatus statusCode, String statusText, byte[] responseBody, Charset responseCharset) { + this(statusCode, statusText, null, responseBody, responseCharset); } @@ -93,6 +93,7 @@ public abstract class HttpStatusCodeException extends RestClientException { */ protected HttpStatusCodeException(HttpStatus statusCode, String statusText, HttpHeaders responseHeaders, byte[] responseBody, Charset responseCharset) { + super(statusCode.value() + " " + statusText); this.statusCode = statusCode; this.statusText = statusText; @@ -126,11 +127,10 @@ public abstract class HttpStatusCodeException extends RestClientException { /** * Return the response body as a byte array. - * * @since 3.0.5 */ public byte[] getResponseBodyAsByteArray() { - return responseBody; + return this.responseBody; } /** @@ -139,11 +139,11 @@ public abstract class HttpStatusCodeException extends RestClientException { */ public String getResponseBodyAsString() { try { - return new String(responseBody, responseCharset); + return new String(this.responseBody, this.responseCharset); } catch (UnsupportedEncodingException ex) { // should not occur - throw new InternalError(ex.getMessage()); + throw new IllegalStateException(ex); } } diff --git a/spring-web/src/main/java/org/springframework/web/client/UnknownHttpStatusCodeException.java b/spring-web/src/main/java/org/springframework/web/client/UnknownHttpStatusCodeException.java index 648c82d79c1..40ac50474f5 100644 --- a/spring-web/src/main/java/org/springframework/web/client/UnknownHttpStatusCodeException.java +++ b/spring-web/src/main/java/org/springframework/web/client/UnknownHttpStatusCodeException.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + package org.springframework.web.client; import java.io.UnsupportedEncodingException; @@ -64,6 +65,7 @@ public class UnknownHttpStatusCodeException extends RestClientException { this.responseCharset = responseCharset != null ? responseCharset.name() : DEFAULT_CHARSET; } + /** * Return the raw HTTP status code value. */ @@ -89,7 +91,7 @@ public class UnknownHttpStatusCodeException extends RestClientException { * Return the response body as a byte array. */ public byte[] getResponseBodyAsByteArray() { - return responseBody; + return this.responseBody; } /** @@ -97,11 +99,11 @@ public class UnknownHttpStatusCodeException extends RestClientException { */ public String getResponseBodyAsString() { try { - return new String(responseBody, responseCharset); + return new String(this.responseBody, this.responseCharset); } catch (UnsupportedEncodingException ex) { // should not occur - throw new InternalError(ex.getMessage()); + throw new IllegalStateException(ex); } } diff --git a/spring-web/src/main/java/org/springframework/web/util/UriComponents.java b/spring-web/src/main/java/org/springframework/web/util/UriComponents.java index d9edd00658b..be20b0fa007 100644 --- a/spring-web/src/main/java/org/springframework/web/util/UriComponents.java +++ b/spring-web/src/main/java/org/springframework/web/util/UriComponents.java @@ -30,7 +30,7 @@ import org.springframework.util.Assert; import org.springframework.util.MultiValueMap; /** - * Represents an immutable collection of URI components, mapping component type to string + * Represents an immutable collection of URI components, mapping component type to String * values. Contains convenience getters for all components. Effectively similar to {@link * java.net.URI}, but with more powerful encoding options and support for URI template * variables. @@ -119,14 +119,15 @@ public abstract class UriComponents implements Serializable { /** * Encode all URI components using their specific encoding rules, and returns the * result as a new {@code UriComponents} instance. This method uses UTF-8 to encode. - * @return the encoded uri components + * @return the encoded URI components */ public final UriComponents encode() { try { return encode(DEFAULT_ENCODING); } - catch (UnsupportedEncodingException e) { - throw new InternalError("\"" + DEFAULT_ENCODING + "\" not supported"); + catch (UnsupportedEncodingException ex) { + // should not occur + throw new IllegalStateException(ex); } } @@ -140,7 +141,7 @@ public abstract class UriComponents implements Serializable { public abstract UriComponents encode(String encoding) throws UnsupportedEncodingException; /** - * Replaces all URI template variables with the values from a given map. The map keys + * Replace all URI template variables with the values from a given map. The map keys * represent variable names; the values variable values. The order of variables is not * significant. * @param uriVariables the map of URI variables @@ -152,7 +153,7 @@ public abstract class UriComponents implements Serializable { } /** - * Replaces all URI template variables with the values from a given array. The array + * Replace all URI template variables with the values from a given array. The array * represent variable values. The order of variables is significant. * @param uriVariableValues URI variable values * @return the expanded uri components @@ -163,7 +164,7 @@ public abstract class UriComponents implements Serializable { } /** - * Replaces all URI template variables with the values obtained through the + * Replace all URI template variables with the values obtained through the * given {@link UriTemplateVariables} instance. * @param uriTemplateVars resolves URI template variable values * @return the expanded uri components @@ -174,7 +175,7 @@ public abstract class UriComponents implements Serializable { } /** - * Replaces all URI template variables with the values from the given {@link + * Replace all URI template variables with the values from the given {@link * UriTemplateVariables} * @param uriVariables URI template values * @return the expanded uri components @@ -188,12 +189,12 @@ public abstract class UriComponents implements Serializable { public abstract UriComponents normalize(); /** - * Returns a URI string from this {@code UriComponents} instance. + * Return a URI string from this {@code UriComponents} instance. */ public abstract String toUriString(); /** - * Returns a {@code URI} from this {@code UriComponents} instance. + * Return a {@code URI} from this {@code UriComponents} instance. */ public abstract URI toUri();