Delete AsyncSocketAdapter::Attach, make socket construction time const
Bug: webrtc:6424
Change-Id: I7001c4ac52ddd267dcd55f751f3f38976eab820f
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/227032
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#34722}
diff --git a/rtc_base/async_socket.cc b/rtc_base/async_socket.cc
index 90e2c2a..e80514d 100644
--- a/rtc_base/async_socket.cc
+++ b/rtc_base/async_socket.cc
@@ -10,6 +10,7 @@
#include "rtc_base/async_socket.h"
+#include "absl/memory/memory.h"
#include "rtc_base/checks.h"
namespace rtc {
@@ -18,24 +19,14 @@
AsyncSocket::~AsyncSocket() {}
-AsyncSocketAdapter::AsyncSocketAdapter(AsyncSocket* socket) : socket_(nullptr) {
- Attach(socket);
-}
-
-AsyncSocketAdapter::~AsyncSocketAdapter() {
- delete socket_;
-}
-
-void AsyncSocketAdapter::Attach(AsyncSocket* socket) {
- RTC_DCHECK(!socket_);
- socket_ = socket;
- if (socket_) {
- socket_->SignalConnectEvent.connect(this,
- &AsyncSocketAdapter::OnConnectEvent);
- socket_->SignalReadEvent.connect(this, &AsyncSocketAdapter::OnReadEvent);
- socket_->SignalWriteEvent.connect(this, &AsyncSocketAdapter::OnWriteEvent);
- socket_->SignalCloseEvent.connect(this, &AsyncSocketAdapter::OnCloseEvent);
- }
+AsyncSocketAdapter::AsyncSocketAdapter(AsyncSocket* socket)
+ : socket_(absl::WrapUnique(socket)) {
+ RTC_DCHECK(socket_);
+ socket_->SignalConnectEvent.connect(this,
+ &AsyncSocketAdapter::OnConnectEvent);
+ socket_->SignalReadEvent.connect(this, &AsyncSocketAdapter::OnReadEvent);
+ socket_->SignalWriteEvent.connect(this, &AsyncSocketAdapter::OnWriteEvent);
+ socket_->SignalCloseEvent.connect(this, &AsyncSocketAdapter::OnCloseEvent);
}
SocketAddress AsyncSocketAdapter::GetLocalAddress() const {