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

Side by Side Diff: remoting/signaling/delegating_signal_strategy.cc

Issue 2798393007: Use SignalingAddress in SignalStrategy insterface. (Closed)
Patch Set: header Created 3 years, 8 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
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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/signaling/delegating_signal_strategy.h" 5 #include "remoting/signaling/delegating_signal_strategy.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/rand_util.h" 8 #include "base/rand_util.h"
9 #include "base/strings/string_number_conversions.h" 9 #include "base/strings/string_number_conversions.h"
10 #include "base/threading/thread_task_runner_handle.h" 10 #include "base/threading/thread_task_runner_handle.h"
11 #include "third_party/libjingle_xmpp/xmllite/xmlelement.h" 11 #include "third_party/libjingle_xmpp/xmllite/xmlelement.h"
12 #include "third_party/libjingle_xmpp/xmpp/constants.h" 12 #include "third_party/libjingle_xmpp/xmpp/constants.h"
13 13
14 namespace remoting { 14 namespace remoting {
15 15
16 DelegatingSignalStrategy::DelegatingSignalStrategy( 16 DelegatingSignalStrategy::DelegatingSignalStrategy(
17 std::string local_jid, 17 const SignalingAddress& local_address,
18 scoped_refptr<base::SingleThreadTaskRunner> client_task_runner, 18 scoped_refptr<base::SingleThreadTaskRunner> client_task_runner,
19 const IqCallback& send_iq_callback) 19 const IqCallback& send_iq_callback)
20 : local_jid_(local_jid), 20 : local_address_(local_address),
21 delegate_task_runner_(base::ThreadTaskRunnerHandle::Get()), 21 delegate_task_runner_(base::ThreadTaskRunnerHandle::Get()),
22 client_task_runner_(client_task_runner), 22 client_task_runner_(client_task_runner),
23 send_iq_callback_(send_iq_callback), 23 send_iq_callback_(send_iq_callback),
24 weak_factory_(this) { 24 weak_factory_(this) {
25 incoming_iq_callback_ = 25 incoming_iq_callback_ =
26 base::BindRepeating(&OnIncomingMessageFromDelegate, 26 base::BindRepeating(&OnIncomingMessageFromDelegate,
27 weak_factory_.GetWeakPtr(), client_task_runner_); 27 weak_factory_.GetWeakPtr(), client_task_runner_);
28 } 28 }
29 29
30 DelegatingSignalStrategy::~DelegatingSignalStrategy() {} 30 DelegatingSignalStrategy::~DelegatingSignalStrategy() {}
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 SignalStrategy::State DelegatingSignalStrategy::GetState() const { 76 SignalStrategy::State DelegatingSignalStrategy::GetState() const {
77 DCHECK(client_task_runner_->BelongsToCurrentThread()); 77 DCHECK(client_task_runner_->BelongsToCurrentThread());
78 return CONNECTED; 78 return CONNECTED;
79 } 79 }
80 80
81 SignalStrategy::Error DelegatingSignalStrategy::GetError() const { 81 SignalStrategy::Error DelegatingSignalStrategy::GetError() const {
82 DCHECK(client_task_runner_->BelongsToCurrentThread()); 82 DCHECK(client_task_runner_->BelongsToCurrentThread());
83 return OK; 83 return OK;
84 } 84 }
85 85
86 std::string DelegatingSignalStrategy::GetLocalJid() const { 86 const SignalingAddress& DelegatingSignalStrategy::GetLocalAddress() const {
87 DCHECK(client_task_runner_->BelongsToCurrentThread()); 87 DCHECK(client_task_runner_->BelongsToCurrentThread());
88 return local_jid_; 88 return local_address_;
89 } 89 }
90 90
91 void DelegatingSignalStrategy::AddListener(Listener* listener) { 91 void DelegatingSignalStrategy::AddListener(Listener* listener) {
92 DCHECK(client_task_runner_->BelongsToCurrentThread()); 92 DCHECK(client_task_runner_->BelongsToCurrentThread());
93 listeners_.AddObserver(listener); 93 listeners_.AddObserver(listener);
94 } 94 }
95 95
96 void DelegatingSignalStrategy::RemoveListener(Listener* listener) { 96 void DelegatingSignalStrategy::RemoveListener(Listener* listener) {
97 DCHECK(client_task_runner_->BelongsToCurrentThread()); 97 DCHECK(client_task_runner_->BelongsToCurrentThread());
98 listeners_.RemoveObserver(listener); 98 listeners_.RemoveObserver(listener);
99 } 99 }
100 100
101 bool DelegatingSignalStrategy::SendStanza( 101 bool DelegatingSignalStrategy::SendStanza(
102 std::unique_ptr<buzz::XmlElement> stanza) { 102 std::unique_ptr<buzz::XmlElement> stanza) {
103 DCHECK(client_task_runner_->BelongsToCurrentThread()); 103 DCHECK(client_task_runner_->BelongsToCurrentThread());
104 stanza->SetAttr(buzz::QN_FROM, GetLocalJid()); 104 GetLocalAddress().SetInMessage(stanza.get(), SignalingAddress::FROM);
105 delegate_task_runner_->PostTask(FROM_HERE, 105 delegate_task_runner_->PostTask(FROM_HERE,
106 base::Bind(send_iq_callback_, stanza->Str())); 106 base::Bind(send_iq_callback_, stanza->Str()));
107 return true; 107 return true;
108 } 108 }
109 109
110 std::string DelegatingSignalStrategy::GetNextId() { 110 std::string DelegatingSignalStrategy::GetNextId() {
111 return base::Uint64ToString(base::RandUint64()); 111 return base::Uint64ToString(base::RandUint64());
112 } 112 }
113 113
114 } // namespace remoting 114 } // namespace remoting
OLDNEW
« no previous file with comments | « remoting/signaling/delegating_signal_strategy.h ('k') | remoting/signaling/fake_signal_strategy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698