OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 "remoting/protocol/stream_writer.h" | 5 #include "remoting/protocol/stream_writer.h" |
6 | 6 |
7 #include "base/message_loop.h" | 7 #include "base/message_loop.h" |
| 8 #include "remoting/protocol/buffered_socket_writer.h" |
8 #include "remoting/protocol/chromotocol_connection.h" | 9 #include "remoting/protocol/chromotocol_connection.h" |
9 #include "remoting/protocol/util.h" | 10 #include "remoting/protocol/util.h" |
10 | 11 |
11 namespace remoting { | 12 namespace remoting { |
12 | 13 |
13 StreamWriterBase::StreamWriterBase() | 14 StreamWriterBase::StreamWriterBase() |
14 : socket_(NULL), | 15 : socket_(NULL), |
15 buffered_writer_(new BufferedSocketWriter()) { | 16 buffered_writer_(new BufferedSocketWriter()) { |
16 } | 17 } |
17 | 18 |
18 StreamWriterBase::~StreamWriterBase() { } | 19 StreamWriterBase::~StreamWriterBase() { } |
19 | 20 |
20 void StreamWriterBase::Init(net::Socket* socket) { | 21 void StreamWriterBase::Init(net::Socket* socket) { |
21 socket_ = socket; | 22 socket_ = socket; |
22 buffered_writer_->Init(socket, NULL); | 23 buffered_writer_->Init(socket, NULL); |
23 } | 24 } |
24 | 25 |
25 int StreamWriterBase::GetBufferSize() { | 26 int StreamWriterBase::GetBufferSize() { |
26 return buffered_writer_->GetBufferSize(); | 27 return buffered_writer_->GetBufferSize(); |
27 } | 28 } |
28 | 29 |
29 int StreamWriterBase::GetPendingMessages() { | 30 int StreamWriterBase::GetPendingMessages() { |
30 return buffered_writer_->GetBufferChunks(); | 31 return buffered_writer_->GetBufferChunks(); |
31 } | 32 } |
32 | 33 |
33 void StreamWriterBase::Close() { | 34 void StreamWriterBase::Close() { |
34 buffered_writer_->Close(); | 35 buffered_writer_->Close(); |
35 } | 36 } |
36 | 37 |
37 bool EventStreamWriter::SendMessage( | 38 bool EventStreamWriter::SendMessage(const ChromotingClientMessage& message) { |
38 const ChromotingClientMessage& message) { | |
39 return buffered_writer_->Write(SerializeAndFrameMessage(message)); | 39 return buffered_writer_->Write(SerializeAndFrameMessage(message)); |
40 } | 40 } |
41 | 41 |
42 bool VideoStreamWriter::SendMessage( | 42 bool ControlStreamWriter::SendMessage(const ChromotingHostMessage& message) { |
43 const ChromotingHostMessage& message) { | |
44 return buffered_writer_->Write(SerializeAndFrameMessage(message)); | 43 return buffered_writer_->Write(SerializeAndFrameMessage(message)); |
45 } | 44 } |
46 | 45 |
47 } // namespace remoting | 46 } // namespace remoting |
OLD | NEW |