Chromium Code Reviews| Index: sky/sdk/lib/framework/net/fetch.dart |
| diff --git a/sky/sdk/lib/framework/net/fetch.dart b/sky/sdk/lib/framework/net/fetch.dart |
| index 720ac4cbc62f832179fa05b5f88f8a4499705d9f..7d425fa8ac2551cecc90c342f546cd06726b64fa 100644 |
| --- a/sky/sdk/lib/framework/net/fetch.dart |
| +++ b/sky/sdk/lib/framework/net/fetch.dart |
| @@ -9,6 +9,7 @@ import 'package:mojo/core.dart' as core; |
| import 'package:mojom/mojo/network_service.mojom.dart'; |
| import 'package:mojom/mojo/url_loader.mojom.dart'; |
| import 'package:mojom/mojo/url_request.mojom.dart'; |
| +import 'package:mojom/mojo/url_response.mojom.dart'; |
| class Response { |
| ByteData body; |
| @@ -20,23 +21,27 @@ class Response { |
| } |
| } |
| -Future<Response> fetch(String relativeUrl) async { |
| +Future<UrlResponse> fetchMojo(String relativeUrl) async { |
|
abarth-chromium
2015/06/09 19:06:55
We need a better name for this function.
|
| String url = Uri.base.resolve(relativeUrl).toString(); |
| - var net = new NetworkServiceProxy.unbound(); |
| + NetworkServiceProxy net = new NetworkServiceProxy.unbound(); |
| shell.requestService("mojo:authenticated_network_service", net); |
| - var loader = new UrlLoaderProxy.unbound(); |
| + UrlLoaderProxy loader = new UrlLoaderProxy.unbound(); |
| net.ptr.createUrlLoader(loader); |
| - var request = new UrlRequest() |
| + UrlRequest request = new UrlRequest() |
| ..url = url |
| ..autoFollowRedirects = true; |
| - var response = (await loader.ptr.start(request)).response; |
| + UrlResponse response = (await loader.ptr.start(request)).response; |
| loader.close(); |
| net.close(); |
| + return response; |
| +} |
| +Future<Response> fetch(String relativeUrl) async { |
| + UrlResponse response = await fetchMojo(relativeUrl); |
| if (response.body == null) return new Response(null); |
| ByteData data = await core.DataPipeDrainer.drainHandle(response.body); |