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

Side by Side Diff: remoting/protocol/fake_session.h

Issue 7508044: Remove video_channel() from Session interface (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: - Created 9 years, 4 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 | Annotate | Revision Log
« no previous file with comments | « remoting/protocol/connection_to_host.cc ('k') | remoting/protocol/fake_session.cc » ('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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 #ifndef REMOTING_PROTOCOL_FAKE_SESSION_H_ 5 #ifndef REMOTING_PROTOCOL_FAKE_SESSION_H_
6 #define REMOTING_PROTOCOL_FAKE_SESSION_H_ 6 #define REMOTING_PROTOCOL_FAKE_SESSION_H_
7 7
8 #include <map>
8 #include <string> 9 #include <string>
9 #include <vector> 10 #include <vector>
10 11
11 #include "base/memory/scoped_ptr.h" 12 #include "base/memory/scoped_ptr.h"
12 #include "net/socket/socket.h" 13 #include "net/socket/socket.h"
14 #include "net/socket/stream_socket.h"
13 #include "remoting/protocol/session.h" 15 #include "remoting/protocol/session.h"
14 16
15 namespace remoting { 17 namespace remoting {
16 namespace protocol { 18 namespace protocol {
17 19
18 extern const char kTestJid[]; 20 extern const char kTestJid[];
19 21
20 // FakeSocket implement net::Socket interface for FakeConnection. All data 22 // FakeSocket implement net::Socket interface for FakeConnection. All data
21 // written to FakeSocket is stored in a buffer returned by written_data(). 23 // written to FakeSocket is stored in a buffer returned by written_data().
22 // Read() reads data from another buffer that can be set with AppendInputData(). 24 // Read() reads data from another buffer that can be set with AppendInputData().
23 // Pending reads are supported, so if there is a pending read AppendInputData() 25 // Pending reads are supported, so if there is a pending read AppendInputData()
24 // calls the read callback. 26 // calls the read callback.
25 class FakeSocket : public net::Socket { 27 class FakeSocket : public net::StreamSocket {
26 public: 28 public:
27 FakeSocket(); 29 FakeSocket();
28 virtual ~FakeSocket(); 30 virtual ~FakeSocket();
29 31
30 const std::string& written_data() const { return written_data_; } 32 const std::string& written_data() const { return written_data_; }
31 33
32 void AppendInputData(const char* data, int data_size); 34 void AppendInputData(const char* data, int data_size);
33 int input_pos() const { return input_pos_; } 35 int input_pos() const { return input_pos_; }
34 bool read_pending() const { return read_pending_; } 36 bool read_pending() const { return read_pending_; }
35 37
36 // net::Socket interface. 38 // net::Socket interface.
37 virtual int Read(net::IOBuffer* buf, int buf_len, 39 virtual int Read(net::IOBuffer* buf, int buf_len,
38 net::CompletionCallback* callback); 40 net::CompletionCallback* callback);
39 virtual int Write(net::IOBuffer* buf, int buf_len, 41 virtual int Write(net::IOBuffer* buf, int buf_len,
40 net::CompletionCallback* callback); 42 net::CompletionCallback* callback);
41 43
42 virtual bool SetReceiveBufferSize(int32 size); 44 virtual bool SetReceiveBufferSize(int32 size);
43 virtual bool SetSendBufferSize(int32 size); 45 virtual bool SetSendBufferSize(int32 size);
44 46
47 // net::StreamSocket interface.
48 virtual int Connect(net::CompletionCallback* callback) OVERRIDE;
49 virtual void Disconnect() OVERRIDE;
50 virtual bool IsConnected() const OVERRIDE;
51 virtual bool IsConnectedAndIdle() const OVERRIDE;
52 virtual int GetPeerAddress(net::AddressList* address) const OVERRIDE;
53 virtual int GetLocalAddress(net::IPEndPoint* address) const OVERRIDE;
54 virtual const net::BoundNetLog& NetLog() const OVERRIDE;
55 virtual void SetSubresourceSpeculation() OVERRIDE;
56 virtual void SetOmniboxSpeculation() OVERRIDE;
57 virtual bool WasEverUsed() const OVERRIDE;
58 virtual bool UsingTCPFastOpen() const OVERRIDE;
59 virtual int64 NumBytesRead() const OVERRIDE;
60 virtual base::TimeDelta GetConnectTimeMicros() const OVERRIDE;
61
45 private: 62 private:
46 bool read_pending_; 63 bool read_pending_;
47 scoped_refptr<net::IOBuffer> read_buffer_; 64 scoped_refptr<net::IOBuffer> read_buffer_;
48 int read_buffer_size_; 65 int read_buffer_size_;
49 net::CompletionCallback* read_callback_; 66 net::CompletionCallback* read_callback_;
50 67
51 std::string written_data_; 68 std::string written_data_;
52 std::string input_data_; 69 std::string input_data_;
53 int input_pos_; 70 int input_pos_;
71
72 net::BoundNetLog net_log_;
73
74 DISALLOW_COPY_AND_ASSIGN(FakeSocket);
54 }; 75 };
55 76
56 // FakeUdpSocket is similar to FakeSocket but behaves as UDP socket. All written 77 // FakeUdpSocket is similar to FakeSocket but behaves as UDP socket. All written
57 // packets are stored separetely in written_packets(). AppendInputPacket() adds 78 // packets are stored separetely in written_packets(). AppendInputPacket() adds
58 // one packet that will be returned by Read(). 79 // one packet that will be returned by Read().
59 class FakeUdpSocket : public net::Socket { 80 class FakeUdpSocket : public net::Socket {
60 public: 81 public:
61 FakeUdpSocket(); 82 FakeUdpSocket();
62 virtual ~FakeUdpSocket(); 83 virtual ~FakeUdpSocket();
63 84
(...skipping 15 matching lines...) Expand all
79 100
80 private: 101 private:
81 bool read_pending_; 102 bool read_pending_;
82 scoped_refptr<net::IOBuffer> read_buffer_; 103 scoped_refptr<net::IOBuffer> read_buffer_;
83 int read_buffer_size_; 104 int read_buffer_size_;
84 net::CompletionCallback* read_callback_; 105 net::CompletionCallback* read_callback_;
85 106
86 std::vector<std::string> written_packets_; 107 std::vector<std::string> written_packets_;
87 std::vector<std::string> input_packets_; 108 std::vector<std::string> input_packets_;
88 int input_pos_; 109 int input_pos_;
110
111 DISALLOW_COPY_AND_ASSIGN(FakeUdpSocket);
89 }; 112 };
90 113
91 // FakeSession is a dummy protocol::Session that uses FakeSocket for all 114 // FakeSession is a dummy protocol::Session that uses FakeSocket for all
92 // channels. 115 // channels.
93 class FakeSession : public Session { 116 class FakeSession : public Session {
94 public: 117 public:
95 FakeSession(); 118 FakeSession();
96 virtual ~FakeSession(); 119 virtual ~FakeSession();
97 120
98 StateChangeCallback* state_change_callback() { return callback_.get(); } 121 StateChangeCallback* state_change_callback() { return callback_.get(); }
99 122
100 void set_message_loop(MessageLoop* message_loop) { 123 void set_message_loop(MessageLoop* message_loop) {
101 message_loop_ = message_loop; 124 message_loop_ = message_loop;
102 } 125 }
103 126
104 bool is_closed() const { return closed_; } 127 bool is_closed() const { return closed_; }
105 128
129 FakeSocket* GetStreamChannel(const std::string& name);
130 FakeUdpSocket* GetDatagramChannel(const std::string& name);
131
132 // Session interface.
106 virtual void SetStateChangeCallback(StateChangeCallback* callback); 133 virtual void SetStateChangeCallback(StateChangeCallback* callback);
107 134
108 virtual void CreateStreamChannel( 135 virtual void CreateStreamChannel(
109 const std::string& name, const StreamChannelCallback& callback); 136 const std::string& name, const StreamChannelCallback& callback);
110 virtual void CreateDatagramChannel( 137 virtual void CreateDatagramChannel(
111 const std::string& name, const DatagramChannelCallback& callback); 138 const std::string& name, const DatagramChannelCallback& callback);
112 139
113 virtual FakeSocket* control_channel(); 140 virtual FakeSocket* control_channel();
114 virtual FakeSocket* event_channel(); 141 virtual FakeSocket* event_channel();
115 virtual FakeSocket* video_channel();
116
117 virtual FakeUdpSocket* video_rtp_channel();
118 virtual FakeUdpSocket* video_rtcp_channel();
119 142
120 virtual const std::string& jid(); 143 virtual const std::string& jid();
121 144
122 virtual const CandidateSessionConfig* candidate_config(); 145 virtual const CandidateSessionConfig* candidate_config();
123 virtual const SessionConfig* config(); 146 virtual const SessionConfig* config();
124 virtual void set_config(const SessionConfig* config); 147 virtual void set_config(const SessionConfig* config);
125 148
126 virtual const std::string& initiator_token(); 149 virtual const std::string& initiator_token();
127 virtual void set_initiator_token(const std::string& initiator_token); 150 virtual void set_initiator_token(const std::string& initiator_token);
128 virtual const std::string& receiver_token(); 151 virtual const std::string& receiver_token();
129 virtual void set_receiver_token(const std::string& receiver_token); 152 virtual void set_receiver_token(const std::string& receiver_token);
130 153
131 virtual void set_shared_secret(const std::string& secret); 154 virtual void set_shared_secret(const std::string& secret);
132 virtual const std::string& shared_secret(); 155 virtual const std::string& shared_secret();
133 156
134 virtual void Close(); 157 virtual void Close();
135 158
136 public: 159 public:
137 scoped_ptr<StateChangeCallback> callback_; 160 scoped_ptr<StateChangeCallback> callback_;
138 scoped_ptr<const CandidateSessionConfig> candidate_config_; 161 scoped_ptr<const CandidateSessionConfig> candidate_config_;
139 scoped_ptr<const SessionConfig> config_; 162 scoped_ptr<const SessionConfig> config_;
140 MessageLoop* message_loop_; 163 MessageLoop* message_loop_;
141 FakeSocket control_channel_; 164 FakeSocket control_channel_;
142 FakeSocket event_channel_; 165 FakeSocket event_channel_;
143 FakeSocket video_channel_; 166
144 FakeUdpSocket video_rtp_channel_; 167 std::map<std::string, FakeSocket*> stream_channels_;
145 FakeUdpSocket video_rtcp_channel_; 168 std::map<std::string, FakeUdpSocket*> datagram_channels_;
146 169
147 std::string initiator_token_; 170 std::string initiator_token_;
148 std::string receiver_token_; 171 std::string receiver_token_;
149 172
150 std::string shared_secret_; 173 std::string shared_secret_;
151 174
152 std::string jid_; 175 std::string jid_;
153 bool closed_; 176 bool closed_;
177
178 DISALLOW_COPY_AND_ASSIGN(FakeSession);
154 }; 179 };
155 180
156 } // namespace protocol 181 } // namespace protocol
157 } // namespace remoting 182 } // namespace remoting
158 183
159 #endif // REMOTING_PROTOCOL_FAKE_SESSION_H_ 184 #endif // REMOTING_PROTOCOL_FAKE_SESSION_H_
OLDNEW
« no previous file with comments | « remoting/protocol/connection_to_host.cc ('k') | remoting/protocol/fake_session.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698