OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 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 | 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 JINGLE_NOTIFIER_BASE_XMPP_CLIENT_SOCKET_FACTORY_H_ | 5 #ifndef JINGLE_NOTIFIER_BASE_XMPP_CLIENT_SOCKET_FACTORY_H_ |
6 #define JINGLE_NOTIFIER_BASE_XMPP_CLIENT_SOCKET_FACTORY_H_ | 6 #define JINGLE_NOTIFIER_BASE_XMPP_CLIENT_SOCKET_FACTORY_H_ |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
11 #include "jingle/notifier/base/resolving_client_socket_factory.h" | 11 #include "jingle/notifier/base/resolving_client_socket_factory.h" |
12 #include "net/base/ssl_config_service.h" | 12 #include "net/base/ssl_config_service.h" |
13 | 13 |
14 namespace net { | 14 namespace net { |
15 class ClientSocket; | |
16 class ClientSocketFactory; | 15 class ClientSocketFactory; |
17 class ClientSocketHandle; | 16 class ClientSocketHandle; |
18 class HostPortPair; | 17 class HostPortPair; |
19 class NetLog; | 18 class NetLog; |
20 class SSLClientSocket; | 19 class SSLClientSocket; |
21 class SSLHostInfo; | 20 class SSLHostInfo; |
| 21 class StreamSocket; |
22 class URLRequestContextGetter; | 22 class URLRequestContextGetter; |
23 } | 23 } |
24 | 24 |
25 namespace notifier { | 25 namespace notifier { |
26 | 26 |
27 class XmppClientSocketFactory : public ResolvingClientSocketFactory { | 27 class XmppClientSocketFactory : public ResolvingClientSocketFactory { |
28 public: | 28 public: |
29 // Does not take ownership of |client_socket_factory|. | 29 // Does not take ownership of |client_socket_factory|. |
30 XmppClientSocketFactory( | 30 XmppClientSocketFactory( |
31 net::ClientSocketFactory* client_socket_factory, | 31 net::ClientSocketFactory* client_socket_factory, |
32 const net::SSLConfig& ssl_config, | 32 const net::SSLConfig& ssl_config, |
33 const scoped_refptr<net::URLRequestContextGetter>& request_context_getter, | 33 const scoped_refptr<net::URLRequestContextGetter>& request_context_getter, |
34 bool use_fake_ssl_client_socket); | 34 bool use_fake_ssl_client_socket); |
35 | 35 |
36 virtual ~XmppClientSocketFactory(); | 36 virtual ~XmppClientSocketFactory(); |
37 | 37 |
38 // ResolvingClientSocketFactory implementation. | 38 // ResolvingClientSocketFactory implementation. |
39 virtual net::ClientSocket* CreateTransportClientSocket( | 39 virtual net::StreamSocket* CreateTransportClientSocket( |
40 const net::HostPortPair& host_and_port, net::NetLog* net_log); | 40 const net::HostPortPair& host_and_port, net::NetLog* net_log); |
41 | 41 |
42 virtual net::SSLClientSocket* CreateSSLClientSocket( | 42 virtual net::SSLClientSocket* CreateSSLClientSocket( |
43 net::ClientSocketHandle* transport_socket, | 43 net::ClientSocketHandle* transport_socket, |
44 const net::HostPortPair& host_and_port); | 44 const net::HostPortPair& host_and_port); |
45 | 45 |
46 private: | 46 private: |
47 net::ClientSocketFactory* const client_socket_factory_; | 47 net::ClientSocketFactory* const client_socket_factory_; |
48 scoped_refptr<net::URLRequestContextGetter> request_context_getter_; | 48 scoped_refptr<net::URLRequestContextGetter> request_context_getter_; |
49 const net::SSLConfig ssl_config_; | 49 const net::SSLConfig ssl_config_; |
50 const bool use_fake_ssl_client_socket_; | 50 const bool use_fake_ssl_client_socket_; |
51 | 51 |
52 DISALLOW_COPY_AND_ASSIGN(XmppClientSocketFactory); | 52 DISALLOW_COPY_AND_ASSIGN(XmppClientSocketFactory); |
53 }; | 53 }; |
54 | 54 |
55 } // namespace notifier | 55 } // namespace notifier |
56 | 56 |
57 #endif // JINGLE_NOTIFIER_BASE_XMPP_CLIENT_SOCKET_FACTORY_H_ | 57 #endif // JINGLE_NOTIFIER_BASE_XMPP_CLIENT_SOCKET_FACTORY_H_ |
OLD | NEW |