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

Side by Side Diff: content/renderer/p2p/ipc_socket_factory.cc

Issue 670683003: Standardize usage of virtual/override/final in content/renderer/ (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 | « content/renderer/p2p/ipc_socket_factory.h ('k') | content/renderer/p2p/port_allocator.h » ('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 #include "content/renderer/p2p/ipc_socket_factory.h" 5 #include "content/renderer/p2p/ipc_socket_factory.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <deque> 8 #include <deque>
9 9
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
63 // TODO(miu): This needs tuning. http://crbug.com/237960 63 // TODO(miu): This needs tuning. http://crbug.com/237960
64 const size_t kMaximumInFlightBytes = 64 * 1024; // 64 KB 64 const size_t kMaximumInFlightBytes = 64 * 1024; // 64 KB
65 65
66 // IpcPacketSocket implements rtc::AsyncPacketSocket interface 66 // IpcPacketSocket implements rtc::AsyncPacketSocket interface
67 // using P2PSocketClient that works over IPC-channel. It must be used 67 // using P2PSocketClient that works over IPC-channel. It must be used
68 // on the thread it was created. 68 // on the thread it was created.
69 class IpcPacketSocket : public rtc::AsyncPacketSocket, 69 class IpcPacketSocket : public rtc::AsyncPacketSocket,
70 public P2PSocketClientDelegate { 70 public P2PSocketClientDelegate {
71 public: 71 public:
72 IpcPacketSocket(); 72 IpcPacketSocket();
73 virtual ~IpcPacketSocket(); 73 ~IpcPacketSocket() override;
74 74
75 // Always takes ownership of client even if initialization fails. 75 // Always takes ownership of client even if initialization fails.
76 bool Init(P2PSocketType type, P2PSocketClientImpl* client, 76 bool Init(P2PSocketType type, P2PSocketClientImpl* client,
77 const rtc::SocketAddress& local_address, 77 const rtc::SocketAddress& local_address,
78 const rtc::SocketAddress& remote_address); 78 const rtc::SocketAddress& remote_address);
79 79
80 // rtc::AsyncPacketSocket interface. 80 // rtc::AsyncPacketSocket interface.
81 virtual rtc::SocketAddress GetLocalAddress() const override; 81 rtc::SocketAddress GetLocalAddress() const override;
82 virtual rtc::SocketAddress GetRemoteAddress() const override; 82 rtc::SocketAddress GetRemoteAddress() const override;
83 virtual int Send(const void *pv, size_t cb, 83 int Send(const void* pv,
84 const rtc::PacketOptions& options) override; 84 size_t cb,
85 virtual int SendTo(const void *pv, size_t cb, 85 const rtc::PacketOptions& options) override;
86 const rtc::SocketAddress& addr, 86 int SendTo(const void* pv,
87 const rtc::PacketOptions& options) override; 87 size_t cb,
88 virtual int Close() override; 88 const rtc::SocketAddress& addr,
89 virtual State GetState() const override; 89 const rtc::PacketOptions& options) override;
90 virtual int GetOption(rtc::Socket::Option option, int* value) override; 90 int Close() override;
91 virtual int SetOption(rtc::Socket::Option option, int value) override; 91 State GetState() const override;
92 virtual int GetError() const override; 92 int GetOption(rtc::Socket::Option option, int* value) override;
93 virtual void SetError(int error) override; 93 int SetOption(rtc::Socket::Option option, int value) override;
94 int GetError() const override;
95 void SetError(int error) override;
94 96
95 // P2PSocketClientDelegate implementation. 97 // P2PSocketClientDelegate implementation.
96 virtual void OnOpen(const net::IPEndPoint& local_address, 98 void OnOpen(const net::IPEndPoint& local_address,
97 const net::IPEndPoint& remote_address) override; 99 const net::IPEndPoint& remote_address) override;
98 virtual void OnIncomingTcpConnection( 100 void OnIncomingTcpConnection(const net::IPEndPoint& address,
99 const net::IPEndPoint& address, 101 P2PSocketClient* client) override;
100 P2PSocketClient* client) override; 102 void OnSendComplete() override;
101 virtual void OnSendComplete() override; 103 void OnError() override;
102 virtual void OnError() override; 104 void OnDataReceived(const net::IPEndPoint& address,
103 virtual void OnDataReceived(const net::IPEndPoint& address, 105 const std::vector<char>& data,
104 const std::vector<char>& data, 106 const base::TimeTicks& timestamp) override;
105 const base::TimeTicks& timestamp) override;
106 107
107 private: 108 private:
108 enum InternalState { 109 enum InternalState {
109 IS_UNINITIALIZED, 110 IS_UNINITIALIZED,
110 IS_OPENING, 111 IS_OPENING,
111 IS_OPEN, 112 IS_OPEN,
112 IS_CLOSED, 113 IS_CLOSED,
113 IS_ERROR, 114 IS_ERROR,
114 }; 115 };
115 116
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
165 166
166 // Simple wrapper around P2PAsyncAddressResolver. The main purpose of this 167 // Simple wrapper around P2PAsyncAddressResolver. The main purpose of this
167 // class is to send SignalDone, after OnDone callback from 168 // class is to send SignalDone, after OnDone callback from
168 // P2PAsyncAddressResolver. Libjingle sig slots are not thread safe. In case 169 // P2PAsyncAddressResolver. Libjingle sig slots are not thread safe. In case
169 // of MT sig slots clients must call disconnect. This class is to make sure 170 // of MT sig slots clients must call disconnect. This class is to make sure
170 // we destruct from the same thread on which is created. 171 // we destruct from the same thread on which is created.
171 class AsyncAddressResolverImpl : public base::NonThreadSafe, 172 class AsyncAddressResolverImpl : public base::NonThreadSafe,
172 public rtc::AsyncResolverInterface { 173 public rtc::AsyncResolverInterface {
173 public: 174 public:
174 AsyncAddressResolverImpl(P2PSocketDispatcher* dispatcher); 175 AsyncAddressResolverImpl(P2PSocketDispatcher* dispatcher);
175 virtual ~AsyncAddressResolverImpl(); 176 ~AsyncAddressResolverImpl() override;
176 177
177 // rtc::AsyncResolverInterface interface. 178 // rtc::AsyncResolverInterface interface.
178 virtual void Start(const rtc::SocketAddress& addr) override; 179 void Start(const rtc::SocketAddress& addr) override;
179 virtual bool GetResolvedAddress( 180 bool GetResolvedAddress(int family, rtc::SocketAddress* addr) const override;
180 int family, rtc::SocketAddress* addr) const override; 181 int GetError() const override;
181 virtual int GetError() const override; 182 void Destroy(bool wait) override;
182 virtual void Destroy(bool wait) override;
183 183
184 private: 184 private:
185 virtual void OnAddressResolved(const net::IPAddressList& addresses); 185 virtual void OnAddressResolved(const net::IPAddressList& addresses);
186 186
187 scoped_refptr<P2PAsyncAddressResolver> resolver_; 187 scoped_refptr<P2PAsyncAddressResolver> resolver_;
188 int port_; // Port number in |addr| from Start() method. 188 int port_; // Port number in |addr| from Start() method.
189 std::vector<rtc::IPAddress> addresses_; // Resolved addresses. 189 std::vector<rtc::IPAddress> addresses_; // Resolved addresses.
190 }; 190 };
191 191
192 IpcPacketSocket::IpcPacketSocket() 192 IpcPacketSocket::IpcPacketSocket()
(...skipping 477 matching lines...) Expand 10 before | Expand all | Expand 10 after
670 } 670 }
671 671
672 rtc::AsyncResolverInterface* 672 rtc::AsyncResolverInterface*
673 IpcPacketSocketFactory::CreateAsyncResolver() { 673 IpcPacketSocketFactory::CreateAsyncResolver() {
674 scoped_ptr<AsyncAddressResolverImpl> resolver( 674 scoped_ptr<AsyncAddressResolverImpl> resolver(
675 new AsyncAddressResolverImpl(socket_dispatcher_)); 675 new AsyncAddressResolverImpl(socket_dispatcher_));
676 return resolver.release(); 676 return resolver.release();
677 } 677 }
678 678
679 } // namespace content 679 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/p2p/ipc_socket_factory.h ('k') | content/renderer/p2p/port_allocator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698