# HG changeset patch # User chegar # Date 1518797354 0 # Node ID b3d6203051df7257c85fd7fef00af6edf9836262 # Parent 4f92b988600e05dd29a79ba8f09276761a5baa95 http-client-branch: HttpResponse as an interface diff -r 4f92b988600e -r b3d6203051df src/java.net.http/share/classes/java/net/http/HttpResponse.java --- a/src/java.net.http/share/classes/java/net/http/HttpResponse.java Fri Feb 16 15:06:29 2018 +0000 +++ b/src/java.net.http/share/classes/java/net/http/HttpResponse.java Fri Feb 16 16:09:14 2018 +0000 @@ -77,19 +77,15 @@ * * @since 11 */ -public abstract class HttpResponse { +public interface HttpResponse { - /** - * Creates an HttpResponse. - */ - protected HttpResponse() { } /** * Returns the status code for this response. * * @return the response code */ - public abstract int statusCode(); + public int statusCode(); /** * Returns the {@link HttpRequest} corresponding to this response. @@ -101,7 +97,7 @@ * * @return the request */ - public abstract HttpRequest request(); + public HttpRequest request(); /** * Returns an {@code Optional} containing the previous intermediate response @@ -111,14 +107,14 @@ * * @return an Optional containing the HttpResponse, if any. */ - public abstract Optional> previousResponse(); + public Optional> previousResponse(); /** * Returns the received response headers. * * @return the response headers */ - public abstract HttpHeaders headers(); + public HttpHeaders headers(); /** * Returns the body. Depending on the type of {@code T}, the returned body @@ -131,7 +127,7 @@ * * @return the body */ - public abstract T body(); + public T body(); /** * Returns an {@link Optional} containing the {@link SSLSession} in effect @@ -141,7 +137,7 @@ * @return an {@code Optional} containing the {@code SSLSession} associated * with the response */ - public abstract Optional sslSession(); + public Optional sslSession(); /** * Returns the {@code URI} that the response was received from. This may be @@ -149,14 +145,14 @@ * * @return the URI of the response */ - public abstract URI uri(); + public URI uri(); /** * Returns the HTTP protocol version that was used for this response. * * @return HTTP protocol version */ - public abstract HttpClient.Version version(); + public HttpClient.Version version(); private static String pathForSecurityCheck(Path path) { diff -r 4f92b988600e -r b3d6203051df src/java.net.http/share/classes/jdk/internal/net/http/HttpResponseImpl.java --- a/src/java.net.http/share/classes/jdk/internal/net/http/HttpResponseImpl.java Fri Feb 16 15:06:29 2018 +0000 +++ b/src/java.net.http/share/classes/jdk/internal/net/http/HttpResponseImpl.java Fri Feb 16 16:09:14 2018 +0000 @@ -41,7 +41,7 @@ /** * The implementation class for HttpResponse */ -class HttpResponseImpl extends HttpResponse implements RawChannel.Provider { +class HttpResponseImpl implements HttpResponse, RawChannel.Provider { final int responseCode; final Exchange exchange; diff -r 4f92b988600e -r b3d6203051df test/jdk/java/net/httpclient/ManyRequestsLegacy.java --- a/test/jdk/java/net/httpclient/ManyRequestsLegacy.java Fri Feb 16 15:06:29 2018 +0000 +++ b/test/jdk/java/net/httpclient/ManyRequestsLegacy.java Fri Feb 16 16:09:14 2018 +0000 @@ -116,7 +116,7 @@ static final boolean XFIXED = Boolean.getBoolean("test.XFixed"); static class LegacyHttpClient { - static final class LegacyHttpResponse extends HttpResponse { + static final class LegacyHttpResponse implements HttpResponse { final HttpRequest request; final byte[] response; final int statusCode; diff -r 4f92b988600e -r b3d6203051df test/jdk/java/net/httpclient/offline/FixedHttpResponse.java --- a/test/jdk/java/net/httpclient/offline/FixedHttpResponse.java Fri Feb 16 15:06:29 2018 +0000 +++ b/test/jdk/java/net/httpclient/offline/FixedHttpResponse.java Fri Feb 16 16:09:14 2018 +0000 @@ -32,7 +32,7 @@ /** * An HttpResponse consisting of the given state. */ -public class FixedHttpResponse extends HttpResponse { +public class FixedHttpResponse implements HttpResponse { private final int statusCode; private final HttpRequest request;