39 import java.net.http.HttpRequest; |
39 import java.net.http.HttpRequest; |
40 import java.net.http.HttpResponse; |
40 import java.net.http.HttpResponse; |
41 import java.net.http.HttpResponse.BodyHandler; |
41 import java.net.http.HttpResponse.BodyHandler; |
42 import java.net.http.HttpResponse.PushPromiseHandler; |
42 import java.net.http.HttpResponse.PushPromiseHandler; |
43 import java.net.http.WebSocket; |
43 import java.net.http.WebSocket; |
|
44 import jdk.internal.net.http.common.OperationTrackers.Trackable; |
|
45 import jdk.internal.net.http.common.OperationTrackers.Tracker; |
44 |
46 |
45 /** |
47 /** |
46 * An HttpClientFacade is a simple class that wraps an HttpClient implementation |
48 * An HttpClientFacade is a simple class that wraps an HttpClient implementation |
47 * and delegates everything to its implementation delegate. |
49 * and delegates everything to its implementation delegate. |
48 */ |
50 */ |
49 final class HttpClientFacade extends HttpClient { |
51 final class HttpClientFacade extends HttpClient |
|
52 implements Trackable { |
50 |
53 |
51 final HttpClientImpl impl; |
54 final HttpClientImpl impl; |
52 |
55 |
53 /** |
56 /** |
54 * Creates an HttpClientFacade. |
57 * Creates an HttpClientFacade. |
55 */ |
58 */ |
56 HttpClientFacade(HttpClientImpl impl) { |
59 HttpClientFacade(HttpClientImpl impl) { |
57 this.impl = impl; |
60 this.impl = impl; |
|
61 } |
|
62 |
|
63 @Override // for tests |
|
64 public Tracker getOperationsTracker() { |
|
65 return impl.getOperationsTracker(); |
58 } |
66 } |
59 |
67 |
60 @Override |
68 @Override |
61 public Optional<CookieHandler> cookieHandler() { |
69 public Optional<CookieHandler> cookieHandler() { |
62 return impl.cookieHandler(); |
70 return impl.cookieHandler(); |