OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Put Mojo definitions into their own namespace to avoid collisions with C++ | 5 // Put Mojo definitions into their own namespace to avoid collisions with C++ |
6 // definitions. | 6 // definitions. |
7 // TODO(amistry): Resolve the conflict between these two sets of definitions. | 7 // TODO(amistry): Resolve the conflict between these two sets of definitions. |
8 module net.interfaces; | 8 module net.interfaces; |
9 | 9 |
10 import "host_resolver_service.mojom"; | 10 import "host_resolver_service.mojom"; |
11 | 11 |
12 // Mirror of net::ProxyServer::Scheme. | 12 // Mirror of net::ProxyServer::Scheme. |
13 enum ProxyScheme { | 13 enum ProxyScheme { |
14 INVALID, | 14 INVALID, |
15 DIRECT, | 15 DIRECT, |
16 HTTP, | 16 HTTP, |
17 SOCKS4, | 17 SOCKS4, |
18 SOCKS5, | 18 SOCKS5, |
19 HTTPS, | 19 HTTPS, |
20 QUIC, | 20 QUIC, |
21 }; | 21 }; |
22 | 22 |
23 // Mirror of net::ProxyServer. | 23 // Mirror of net::ProxyServer. |
24 struct ProxyServer { | 24 struct ProxyServer { |
25 ProxyScheme scheme; | 25 ProxyScheme scheme; |
26 string host; | 26 string host; |
27 uint16 port; | 27 uint16 port; |
28 }; | 28 }; |
29 | 29 |
30 interface ProxyResolverService { | 30 interface ProxyResolver { |
31 SetPacScript(string data) => (int32 result); | 31 SetPacScript(string data) => (int32 result); |
32 | 32 |
33 // Use a ProxyResolverRequestClient instead of returning a result so we can | 33 // Use a ProxyResolverRequestClient instead of returning a result so we can |
34 // receive load state updates and cancel in-flight requests by destroying the | 34 // receive load state updates and cancel in-flight requests by destroying the |
35 // client. | 35 // client. |
36 // TODO(amistry): Add BoundNetLog. | 36 // TODO(amistry): Add BoundNetLog. |
37 GetProxyForUrl(string url, ProxyResolverRequestClient client); | 37 GetProxyForUrl(string url, ProxyResolverRequestClient client); |
38 }; | 38 }; |
39 | 39 |
40 interface ProxyResolverRequestClient { | 40 interface ProxyResolverRequestClient { |
41 ReportResult(int32 error, array<ProxyServer>? proxy_servers); | 41 ReportResult(int32 error, array<ProxyServer>? proxy_servers); |
42 }; | 42 }; |
43 | 43 |
44 interface ProxyResolverFactory { | 44 interface ProxyResolverFactory { |
45 // TODO(amistry): Add NetLog and ProxyResolverErrorObserver. | 45 // TODO(amistry): Add NetLog and ProxyResolverErrorObserver. |
46 CreateResolver(ProxyResolverService& resolver, | 46 CreateResolver(ProxyResolver& resolver, |
47 HostResolverService host_resolver); | 47 HostResolver host_resolver); |
48 }; | 48 }; |
OLD | NEW |