| Index: remoting/protocol/channel_dispatcher_base.cc
|
| diff --git a/remoting/protocol/channel_dispatcher_base.cc b/remoting/protocol/channel_dispatcher_base.cc
|
| index 274c0d5a58dffc4c1695bfca77cfc85dac32b888..97f3be5e4857ae9076d177b159acdea79b33658d 100644
|
| --- a/remoting/protocol/channel_dispatcher_base.cc
|
| +++ b/remoting/protocol/channel_dispatcher_base.cc
|
| @@ -31,15 +31,29 @@ void ChannelDispatcherBase::Init(MessageChannelFactory* channel_factory,
|
| &ChannelDispatcherBase::OnChannelReady, base::Unretained(this)));
|
| }
|
|
|
| +void ChannelDispatcherBase::Init(std::unique_ptr<MessagePipe> message_pipe,
|
| + EventHandler* event_handler) {
|
| + event_handler_ = event_handler;
|
| + OnChannelReady(std::move(message_pipe));
|
| +}
|
| +
|
| void ChannelDispatcherBase::OnChannelReady(
|
| std::unique_ptr<MessagePipe> message_pipe) {
|
| channel_factory_ = nullptr;
|
| message_pipe_ = std::move(message_pipe);
|
| - message_pipe_->StartReceiving(base::Bind(
|
| - &ChannelDispatcherBase::OnIncomingMessage, base::Unretained(this)));
|
| + message_pipe_->Start(this);
|
|
|
| event_handler_->OnChannelInitialized(this);
|
| }
|
|
|
| +void ChannelDispatcherBase::OnMessageReceived(
|
| + std::unique_ptr<CompoundBuffer> message) {
|
| + OnIncomingMessage(std::move(message));
|
| +}
|
| +
|
| +void ChannelDispatcherBase::OnMessagePipeClosed() {
|
| + event_handler_->OnChannelClosed(this);
|
| +}
|
| +
|
| } // namespace protocol
|
| } // namespace remoting
|
|
|