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

Unified Diff: remoting/protocol/webrtc_data_stream_adapter.cc

Issue 2172423002: Simplify WebrtcDataStreamAdapter (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 5 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 side-by-side diff with in-line comments
Download patch
Index: remoting/protocol/webrtc_data_stream_adapter.cc
diff --git a/remoting/protocol/webrtc_data_stream_adapter.cc b/remoting/protocol/webrtc_data_stream_adapter.cc
index 85009b6516d0f7156b6e272a4253845abf2beb50..e278aad9cc8b481e27a5ee48d3740207599ae1cf 100644
--- a/remoting/protocol/webrtc_data_stream_adapter.cc
+++ b/remoting/protocol/webrtc_data_stream_adapter.cc
@@ -15,71 +15,34 @@
#include "base/threading/thread_task_runner_handle.h"
#include "net/base/net_errors.h"
#include "remoting/base/compound_buffer.h"
-#include "remoting/protocol/message_pipe.h"
#include "remoting/protocol/message_serialization.h"
namespace remoting {
namespace protocol {
-namespace {
-
-class WebrtcDataChannel : public MessagePipe,
- public webrtc::DataChannelObserver {
- public:
- explicit WebrtcDataChannel(
- rtc::scoped_refptr<webrtc::DataChannelInterface> channel);
- ~WebrtcDataChannel() override;
-
- std::string name() { return channel_->label(); }
-
- // MessagePipe interface.
- void Start(EventHandler* event_handler) override;
- void Send(google::protobuf::MessageLite* message,
- const base::Closure& done) override;
-
- private:
- enum class State { CONNECTING, OPEN, CLOSED };
-
- // webrtc::DataChannelObserver interface.
- void OnStateChange() override;
- void OnMessage(const webrtc::DataBuffer& buffer) override;
-
- void OnConnected();
-
- void OnClosed();
-
- rtc::scoped_refptr<webrtc::DataChannelInterface> channel_;
-
- EventHandler* event_handler_ = nullptr;
-
- State state_ = State::CONNECTING;
-
- DISALLOW_COPY_AND_ASSIGN(WebrtcDataChannel);
-};
-
-WebrtcDataChannel::WebrtcDataChannel(
+WebrtcDataStreamAdapter::WebrtcDataStreamAdapter(
rtc::scoped_refptr<webrtc::DataChannelInterface> channel)
: channel_(channel) {
channel_->RegisterObserver(this);
DCHECK_EQ(channel_->state(), webrtc::DataChannelInterface::kConnecting);
}
-WebrtcDataChannel::~WebrtcDataChannel() {
+WebrtcDataStreamAdapter::~WebrtcDataStreamAdapter() {
if (channel_) {
channel_->UnregisterObserver();
channel_->Close();
}
}
-void WebrtcDataChannel::Start(EventHandler* event_handler) {
+void WebrtcDataStreamAdapter::Start(EventHandler* event_handler) {
DCHECK(!event_handler_);
DCHECK(event_handler);
event_handler_ = event_handler;
}
-void WebrtcDataChannel::Send(google::protobuf::MessageLite* message,
- const base::Closure& done) {
+void WebrtcDataStreamAdapter::Send(google::protobuf::MessageLite* message,
+ const base::Closure& done) {
DCHECK(state_ == State::OPEN);
rtc::CopyOnWriteBuffer buffer;
@@ -97,7 +60,7 @@ void WebrtcDataChannel::Send(google::protobuf::MessageLite* message,
done.Run();
}
-void WebrtcDataChannel::OnStateChange() {
+void WebrtcDataStreamAdapter::OnStateChange() {
switch (channel_->state()) {
case webrtc::DataChannelInterface::kOpen:
DCHECK(state_ == State::CONNECTING);
@@ -118,7 +81,7 @@ void WebrtcDataChannel::OnStateChange() {
}
}
-void WebrtcDataChannel::OnMessage(const webrtc::DataBuffer& rtc_buffer) {
+void WebrtcDataStreamAdapter::OnMessage(const webrtc::DataBuffer& rtc_buffer) {
if (state_ != State::OPEN) {
LOG(ERROR) << "Dropping a message received when the channel is not open.";
return;
@@ -131,25 +94,5 @@ void WebrtcDataChannel::OnMessage(const webrtc::DataBuffer& rtc_buffer) {
event_handler_->OnMessageReceived(std::move(buffer));
}
-} // namespace
-
-WebrtcDataStreamAdapter::WebrtcDataStreamAdapter(
- rtc::scoped_refptr<webrtc::PeerConnectionInterface> peer_connection)
- : peer_connection_(peer_connection) {}
-WebrtcDataStreamAdapter::~WebrtcDataStreamAdapter() {}
-
-std::unique_ptr<MessagePipe> WebrtcDataStreamAdapter::CreateOutgoingChannel(
- const std::string& name) {
- webrtc::DataChannelInit config;
- config.reliable = true;
- return base::WrapUnique(new WebrtcDataChannel(
- peer_connection_->CreateDataChannel(name, &config)));
-}
-
-std::unique_ptr<MessagePipe> WebrtcDataStreamAdapter::WrapIncomingDataChannel(
- rtc::scoped_refptr<webrtc::DataChannelInterface> data_channel) {
- return base::WrapUnique(new WebrtcDataChannel(data_channel));
-}
-
} // namespace protocol
} // namespace remoting

Powered by Google App Engine
This is Rietveld 408576698