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

Side by Side Diff: chrome/browser/chromeos/bluetooth/bluetooth_adapter.cc

Issue 10837294: Add bluetooth.getName API. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/chromeos/bluetooth/bluetooth_adapter.h" 5 #include "chrome/browser/chromeos/bluetooth/bluetooth_adapter.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/lazy_instance.h" 8 #include "base/lazy_instance.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/stl_util.h" 10 #include "base/stl_util.h"
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 void BluetoothAdapter::AddObserver(Observer* observer) { 56 void BluetoothAdapter::AddObserver(Observer* observer) {
57 DCHECK(observer); 57 DCHECK(observer);
58 observers_.AddObserver(observer); 58 observers_.AddObserver(observer);
59 } 59 }
60 60
61 void BluetoothAdapter::RemoveObserver(Observer* observer) { 61 void BluetoothAdapter::RemoveObserver(Observer* observer) {
62 DCHECK(observer); 62 DCHECK(observer);
63 observers_.RemoveObserver(observer); 63 observers_.RemoveObserver(observer);
64 } 64 }
65 65
66 const std::string& BluetoothAdapter::address() const {
67 return address_;
68 }
69
70 const std::string& BluetoothAdapter::name() const {
71 return name_;
72 }
73
66 bool BluetoothAdapter::IsPresent() const { 74 bool BluetoothAdapter::IsPresent() const {
67 return !object_path_.value().empty(); 75 return !object_path_.value().empty();
68 } 76 }
69 77
70 bool BluetoothAdapter::IsPowered() const { 78 bool BluetoothAdapter::IsPowered() const {
71 return powered_; 79 return powered_;
72 } 80 }
73 81
74 void BluetoothAdapter::SetPowered(bool powered, 82 void BluetoothAdapter::SetPowered(bool powered,
75 const base::Closure& callback, 83 const base::Closure& callback,
(...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 } 217 }
210 218
211 object_path_ = adapter_path; 219 object_path_ = adapter_path;
212 220
213 // Update properties to their new values. 221 // Update properties to their new values.
214 BluetoothAdapterClient::Properties* properties = 222 BluetoothAdapterClient::Properties* properties =
215 DBusThreadManager::Get()->GetBluetoothAdapterClient()-> 223 DBusThreadManager::Get()->GetBluetoothAdapterClient()->
216 GetProperties(object_path_); 224 GetProperties(object_path_);
217 225
218 address_ = properties->address.value(); 226 address_ = properties->address.value();
227 name_ = properties->name.value();
219 228
220 PoweredChanged(properties->powered.value()); 229 PoweredChanged(properties->powered.value());
221 DiscoveringChanged(properties->discovering.value()); 230 DiscoveringChanged(properties->discovering.value());
222 DevicesChanged(properties->devices.value()); 231 DevicesChanged(properties->devices.value());
223 232
224 // Notify observers if we did not have an adapter before, the case of 233 // Notify observers if we did not have an adapter before, the case of
225 // moving from one to another is hidden from layers above. 234 // moving from one to another is hidden from layers above.
226 if (new_adapter) 235 if (new_adapter)
227 FOR_EACH_OBSERVER(BluetoothAdapter::Observer, observers_, 236 FOR_EACH_OBSERVER(BluetoothAdapter::Observer, observers_,
228 AdapterPresentChanged(this, true)); 237 AdapterPresentChanged(this, true));
229 } 238 }
230 239
231 void BluetoothAdapter::RemoveAdapter() { 240 void BluetoothAdapter::RemoveAdapter() {
232 DVLOG(1) << "Adapter lost."; 241 DVLOG(1) << "Adapter lost.";
233 PoweredChanged(false); 242 PoweredChanged(false);
234 DiscoveringChanged(false); 243 DiscoveringChanged(false);
235 ClearDevices(); 244 ClearDevices();
236 245
237 object_path_ = dbus::ObjectPath(""); 246 object_path_ = dbus::ObjectPath("");
238 address_.clear(); 247 address_.clear();
248 name_.clear();
239 249
240 FOR_EACH_OBSERVER(BluetoothAdapter::Observer, observers_, 250 FOR_EACH_OBSERVER(BluetoothAdapter::Observer, observers_,
241 AdapterPresentChanged(this, false)); 251 AdapterPresentChanged(this, false));
242 } 252 }
243 253
244 void BluetoothAdapter::OnSetPowered(const base::Closure& callback, 254 void BluetoothAdapter::OnSetPowered(const base::Closure& callback,
245 const ErrorCallback& error_callback, 255 const ErrorCallback& error_callback,
246 bool success) { 256 bool success) {
247 if (success) 257 if (success)
248 callback.Run(); 258 callback.Run();
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
328 338
329 } else if (property_name == properties->discovering.name()) { 339 } else if (property_name == properties->discovering.name()) {
330 DiscoveringChanged(properties->discovering.value()); 340 DiscoveringChanged(properties->discovering.value());
331 341
332 } else if (property_name == properties->devices.name()) { 342 } else if (property_name == properties->devices.name()) {
333 DevicesChanged(properties->devices.value()); 343 DevicesChanged(properties->devices.value());
334 344
335 } else if (property_name == properties->address.name()) { 345 } else if (property_name == properties->address.name()) {
336 address_ = properties->address.value(); 346 address_ = properties->address.value();
337 347
348 } else if (property_name == properties->name.name()) {
349 name_ = properties->name.value();
350
338 } 351 }
339 } 352 }
340 353
341 void BluetoothAdapter::DevicePropertyChanged( 354 void BluetoothAdapter::DevicePropertyChanged(
342 const dbus::ObjectPath& device_path, 355 const dbus::ObjectPath& device_path,
343 const std::string& property_name) { 356 const std::string& property_name) {
344 UpdateDevice(device_path); 357 UpdateDevice(device_path);
345 } 358 }
346 359
347 void BluetoothAdapter::UpdateDevice(const dbus::ObjectPath& device_path) { 360 void BluetoothAdapter::UpdateDevice(const dbus::ObjectPath& device_path) {
(...skipping 214 matching lines...) Expand 10 before | Expand all | Expand 10 after
562 } 575 }
563 576
564 // static 577 // static
565 BluetoothAdapter* BluetoothAdapter::Create(const std::string& address) { 578 BluetoothAdapter* BluetoothAdapter::Create(const std::string& address) {
566 BluetoothAdapter* adapter = new BluetoothAdapter; 579 BluetoothAdapter* adapter = new BluetoothAdapter;
567 adapter->FindAdapter(address); 580 adapter->FindAdapter(address);
568 return adapter; 581 return adapter;
569 } 582 }
570 583
571 } // namespace chromeos 584 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698