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 #ifndef NET_PROXY_MOJO_PROXY_RESOLVER_FACTORY_H_ | 5 #ifndef NET_PROXY_MOJO_PROXY_RESOLVER_FACTORY_H_ |
6 #define NET_PROXY_MOJO_PROXY_RESOLVER_FACTORY_H_ | 6 #define NET_PROXY_MOJO_PROXY_RESOLVER_FACTORY_H_ |
7 | 7 |
8 #include "net/interfaces/host_resolver_service.mojom.h" | 8 #include "net/interfaces/host_resolver_service.mojom.h" |
9 #include "net/interfaces/proxy_resolver_service.mojom.h" | 9 #include "net/interfaces/proxy_resolver_service.mojom.h" |
10 #include "third_party/mojo/src/mojo/public/cpp/bindings/interface_request.h" | 10 #include "third_party/mojo/src/mojo/public/cpp/bindings/interface_request.h" |
11 | 11 |
12 namespace net { | 12 namespace net { |
13 | 13 |
14 // Factory for connecting to Mojo ProxyResolver services. | 14 // Factory for connecting to Mojo ProxyResolver services. |
15 class MojoProxyResolverFactory { | 15 class MojoProxyResolverFactory { |
16 public: | 16 public: |
17 // Connect to a new ProxyResolver service using request |req|, using | 17 // Connect to a new ProxyResolver service using request |req|, using |
18 // |host_resolver| as the DNS resolver. | 18 // |host_resolver| as the DNS resolver. |
19 // Note: The connection request |req| may be resolved asynchronously. | 19 // Note: The connection request |req| may be resolved asynchronously. |
20 virtual void Create(mojo::InterfaceRequest<interfaces::ProxyResolver> req, | 20 virtual void Create(mojo::InterfaceRequest<interfaces::ProxyResolver> req, |
21 interfaces::HostResolverPtr host_resolver) = 0; | 21 interfaces::HostResolverPtr host_resolver) = 0; |
| 22 |
| 23 protected: |
| 24 virtual ~MojoProxyResolverFactory() = default; |
22 }; | 25 }; |
23 | 26 |
24 } // namespace net | 27 } // namespace net |
25 | 28 |
26 #endif // NET_PROXY_MOJO_PROXY_RESOLVER_FACTORY_H_ | 29 #endif // NET_PROXY_MOJO_PROXY_RESOLVER_FACTORY_H_ |
OLD | NEW |