OLD | NEW |
| (Empty) |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef JINGLE_NOTIFIER_BASE_RESOLVING_CLIENT_SOCKET_FACTORY_H_ | |
6 #define JINGLE_NOTIFIER_BASE_RESOLVING_CLIENT_SOCKET_FACTORY_H_ | |
7 | |
8 | |
9 namespace net { | |
10 class ClientSocketHandle; | |
11 class HostPortPair; | |
12 class SSLClientSocket; | |
13 class StreamSocket; | |
14 } | |
15 | |
16 // TODO(sanjeevr): Move this to net/ | |
17 | |
18 namespace notifier { | |
19 | |
20 // Interface for a ClientSocketFactory that creates ClientSockets that can | |
21 // resolve host names and tunnel through proxies. | |
22 class ResolvingClientSocketFactory { | |
23 public: | |
24 virtual ~ResolvingClientSocketFactory() { } | |
25 // Method to create a transport socket using a HostPortPair. | |
26 virtual net::StreamSocket* CreateTransportClientSocket( | |
27 const net::HostPortPair& host_and_port) = 0; | |
28 | |
29 virtual net::SSLClientSocket* CreateSSLClientSocket( | |
30 net::ClientSocketHandle* transport_socket, | |
31 const net::HostPortPair& host_and_port) = 0; | |
32 }; | |
33 | |
34 } // namespace notifier | |
35 | |
36 #endif // JINGLE_NOTIFIER_BASE_RESOLVING_CLIENT_SOCKET_FACTORY_H_ | |
OLD | NEW |