Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(229)

Side by Side Diff: net/socket/socks_client_socket_pool.h

Issue 667923003: Standardize usage of virtual/override/final in net/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/socket/socks_client_socket.h ('k') | net/socket/socks_client_socket_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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_SOCKET_SOCKS_CLIENT_SOCKET_POOL_H_ 5 #ifndef NET_SOCKET_SOCKS_CLIENT_SOCKET_POOL_H_
6 #define NET_SOCKET_SOCKS_CLIENT_SOCKET_POOL_H_ 6 #define NET_SOCKET_SOCKS_CLIENT_SOCKET_POOL_H_
7 7
8 #include <string> 8 #include <string>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 class SOCKSConnectJob : public ConnectJob { 56 class SOCKSConnectJob : public ConnectJob {
57 public: 57 public:
58 SOCKSConnectJob(const std::string& group_name, 58 SOCKSConnectJob(const std::string& group_name,
59 RequestPriority priority, 59 RequestPriority priority,
60 const scoped_refptr<SOCKSSocketParams>& params, 60 const scoped_refptr<SOCKSSocketParams>& params,
61 const base::TimeDelta& timeout_duration, 61 const base::TimeDelta& timeout_duration,
62 TransportClientSocketPool* transport_pool, 62 TransportClientSocketPool* transport_pool,
63 HostResolver* host_resolver, 63 HostResolver* host_resolver,
64 Delegate* delegate, 64 Delegate* delegate,
65 NetLog* net_log); 65 NetLog* net_log);
66 virtual ~SOCKSConnectJob(); 66 ~SOCKSConnectJob() override;
67 67
68 // ConnectJob methods. 68 // ConnectJob methods.
69 virtual LoadState GetLoadState() const override; 69 LoadState GetLoadState() const override;
70 70
71 private: 71 private:
72 enum State { 72 enum State {
73 STATE_TRANSPORT_CONNECT, 73 STATE_TRANSPORT_CONNECT,
74 STATE_TRANSPORT_CONNECT_COMPLETE, 74 STATE_TRANSPORT_CONNECT_COMPLETE,
75 STATE_SOCKS_CONNECT, 75 STATE_SOCKS_CONNECT,
76 STATE_SOCKS_CONNECT_COMPLETE, 76 STATE_SOCKS_CONNECT_COMPLETE,
77 STATE_NONE, 77 STATE_NONE,
78 }; 78 };
79 79
80 void OnIOComplete(int result); 80 void OnIOComplete(int result);
81 81
82 // Runs the state transition loop. 82 // Runs the state transition loop.
83 int DoLoop(int result); 83 int DoLoop(int result);
84 84
85 int DoTransportConnect(); 85 int DoTransportConnect();
86 int DoTransportConnectComplete(int result); 86 int DoTransportConnectComplete(int result);
87 int DoSOCKSConnect(); 87 int DoSOCKSConnect();
88 int DoSOCKSConnectComplete(int result); 88 int DoSOCKSConnectComplete(int result);
89 89
90 // Begins the transport connection and the SOCKS handshake. Returns OK on 90 // Begins the transport connection and the SOCKS handshake. Returns OK on
91 // success and ERR_IO_PENDING if it cannot immediately service the request. 91 // success and ERR_IO_PENDING if it cannot immediately service the request.
92 // Otherwise, it returns a net error code. 92 // Otherwise, it returns a net error code.
93 virtual int ConnectInternal() override; 93 int ConnectInternal() override;
94 94
95 scoped_refptr<SOCKSSocketParams> socks_params_; 95 scoped_refptr<SOCKSSocketParams> socks_params_;
96 TransportClientSocketPool* const transport_pool_; 96 TransportClientSocketPool* const transport_pool_;
97 HostResolver* const resolver_; 97 HostResolver* const resolver_;
98 98
99 State next_state_; 99 State next_state_;
100 CompletionCallback callback_; 100 CompletionCallback callback_;
101 scoped_ptr<ClientSocketHandle> transport_socket_handle_; 101 scoped_ptr<ClientSocketHandle> transport_socket_handle_;
102 scoped_ptr<StreamSocket> socket_; 102 scoped_ptr<StreamSocket> socket_;
103 103
104 DISALLOW_COPY_AND_ASSIGN(SOCKSConnectJob); 104 DISALLOW_COPY_AND_ASSIGN(SOCKSConnectJob);
105 }; 105 };
106 106
107 class NET_EXPORT_PRIVATE SOCKSClientSocketPool 107 class NET_EXPORT_PRIVATE SOCKSClientSocketPool
108 : public ClientSocketPool, public HigherLayeredPool { 108 : public ClientSocketPool, public HigherLayeredPool {
109 public: 109 public:
110 typedef SOCKSSocketParams SocketParams; 110 typedef SOCKSSocketParams SocketParams;
111 111
112 SOCKSClientSocketPool( 112 SOCKSClientSocketPool(
113 int max_sockets, 113 int max_sockets,
114 int max_sockets_per_group, 114 int max_sockets_per_group,
115 ClientSocketPoolHistograms* histograms, 115 ClientSocketPoolHistograms* histograms,
116 HostResolver* host_resolver, 116 HostResolver* host_resolver,
117 TransportClientSocketPool* transport_pool, 117 TransportClientSocketPool* transport_pool,
118 NetLog* net_log); 118 NetLog* net_log);
119 119
120 virtual ~SOCKSClientSocketPool(); 120 ~SOCKSClientSocketPool() override;
121 121
122 // ClientSocketPool implementation. 122 // ClientSocketPool implementation.
123 virtual int RequestSocket(const std::string& group_name, 123 int RequestSocket(const std::string& group_name,
124 const void* connect_params, 124 const void* connect_params,
125 RequestPriority priority, 125 RequestPriority priority,
126 ClientSocketHandle* handle, 126 ClientSocketHandle* handle,
127 const CompletionCallback& callback, 127 const CompletionCallback& callback,
128 const BoundNetLog& net_log) override; 128 const BoundNetLog& net_log) override;
129 129
130 virtual void RequestSockets(const std::string& group_name, 130 void RequestSockets(const std::string& group_name,
131 const void* params, 131 const void* params,
132 int num_sockets, 132 int num_sockets,
133 const BoundNetLog& net_log) override; 133 const BoundNetLog& net_log) override;
134 134
135 virtual void CancelRequest(const std::string& group_name, 135 void CancelRequest(const std::string& group_name,
136 ClientSocketHandle* handle) override; 136 ClientSocketHandle* handle) override;
137 137
138 virtual void ReleaseSocket(const std::string& group_name, 138 void ReleaseSocket(const std::string& group_name,
139 scoped_ptr<StreamSocket> socket, 139 scoped_ptr<StreamSocket> socket,
140 int id) override; 140 int id) override;
141 141
142 virtual void FlushWithError(int error) override; 142 void FlushWithError(int error) override;
143 143
144 virtual void CloseIdleSockets() override; 144 void CloseIdleSockets() override;
145 145
146 virtual int IdleSocketCount() const override; 146 int IdleSocketCount() const override;
147 147
148 virtual int IdleSocketCountInGroup( 148 int IdleSocketCountInGroup(const std::string& group_name) const override;
149 const std::string& group_name) const override;
150 149
151 virtual LoadState GetLoadState( 150 LoadState GetLoadState(const std::string& group_name,
152 const std::string& group_name, 151 const ClientSocketHandle* handle) const override;
153 const ClientSocketHandle* handle) const override;
154 152
155 virtual base::DictionaryValue* GetInfoAsValue( 153 base::DictionaryValue* GetInfoAsValue(
156 const std::string& name, 154 const std::string& name,
157 const std::string& type, 155 const std::string& type,
158 bool include_nested_pools) const override; 156 bool include_nested_pools) const override;
159 157
160 virtual base::TimeDelta ConnectionTimeout() const override; 158 base::TimeDelta ConnectionTimeout() const override;
161 159
162 virtual ClientSocketPoolHistograms* histograms() const override; 160 ClientSocketPoolHistograms* histograms() const override;
163 161
164 // LowerLayeredPool implementation. 162 // LowerLayeredPool implementation.
165 virtual bool IsStalled() const override; 163 bool IsStalled() const override;
166 164
167 virtual void AddHigherLayeredPool(HigherLayeredPool* higher_pool) override; 165 void AddHigherLayeredPool(HigherLayeredPool* higher_pool) override;
168 166
169 virtual void RemoveHigherLayeredPool(HigherLayeredPool* higher_pool) override; 167 void RemoveHigherLayeredPool(HigherLayeredPool* higher_pool) override;
170 168
171 // HigherLayeredPool implementation. 169 // HigherLayeredPool implementation.
172 virtual bool CloseOneIdleConnection() override; 170 bool CloseOneIdleConnection() override;
173 171
174 private: 172 private:
175 typedef ClientSocketPoolBase<SOCKSSocketParams> PoolBase; 173 typedef ClientSocketPoolBase<SOCKSSocketParams> PoolBase;
176 174
177 class SOCKSConnectJobFactory : public PoolBase::ConnectJobFactory { 175 class SOCKSConnectJobFactory : public PoolBase::ConnectJobFactory {
178 public: 176 public:
179 SOCKSConnectJobFactory(TransportClientSocketPool* transport_pool, 177 SOCKSConnectJobFactory(TransportClientSocketPool* transport_pool,
180 HostResolver* host_resolver, 178 HostResolver* host_resolver,
181 NetLog* net_log) 179 NetLog* net_log)
182 : transport_pool_(transport_pool), 180 : transport_pool_(transport_pool),
183 host_resolver_(host_resolver), 181 host_resolver_(host_resolver),
184 net_log_(net_log) {} 182 net_log_(net_log) {}
185 183
186 virtual ~SOCKSConnectJobFactory() {} 184 ~SOCKSConnectJobFactory() override {}
187 185
188 // ClientSocketPoolBase::ConnectJobFactory methods. 186 // ClientSocketPoolBase::ConnectJobFactory methods.
189 virtual scoped_ptr<ConnectJob> NewConnectJob( 187 scoped_ptr<ConnectJob> NewConnectJob(
190 const std::string& group_name, 188 const std::string& group_name,
191 const PoolBase::Request& request, 189 const PoolBase::Request& request,
192 ConnectJob::Delegate* delegate) const override; 190 ConnectJob::Delegate* delegate) const override;
193 191
194 virtual base::TimeDelta ConnectionTimeout() const override; 192 base::TimeDelta ConnectionTimeout() const override;
195 193
196 private: 194 private:
197 TransportClientSocketPool* const transport_pool_; 195 TransportClientSocketPool* const transport_pool_;
198 HostResolver* const host_resolver_; 196 HostResolver* const host_resolver_;
199 NetLog* net_log_; 197 NetLog* net_log_;
200 198
201 DISALLOW_COPY_AND_ASSIGN(SOCKSConnectJobFactory); 199 DISALLOW_COPY_AND_ASSIGN(SOCKSConnectJobFactory);
202 }; 200 };
203 201
204 TransportClientSocketPool* const transport_pool_; 202 TransportClientSocketPool* const transport_pool_;
205 PoolBase base_; 203 PoolBase base_;
206 204
207 DISALLOW_COPY_AND_ASSIGN(SOCKSClientSocketPool); 205 DISALLOW_COPY_AND_ASSIGN(SOCKSClientSocketPool);
208 }; 206 };
209 207
210 } // namespace net 208 } // namespace net
211 209
212 #endif // NET_SOCKET_SOCKS_CLIENT_SOCKET_POOL_H_ 210 #endif // NET_SOCKET_SOCKS_CLIENT_SOCKET_POOL_H_
OLDNEW
« no previous file with comments | « net/socket/socks_client_socket.h ('k') | net/socket/socks_client_socket_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698