OLD | NEW |
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 "device/bluetooth/bluetooth_device_chromeos.h" | 5 #include "device/bluetooth/bluetooth_device_chromeos.h" |
6 | 6 |
7 #include <stdio.h> | 7 #include <stdio.h> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/metrics/histogram.h" | 10 #include "base/metrics/histogram.h" |
(...skipping 201 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
212 bool BluetoothDeviceChromeOS::IsConnecting() const { | 212 bool BluetoothDeviceChromeOS::IsConnecting() const { |
213 return num_connecting_calls_ > 0; | 213 return num_connecting_calls_ > 0; |
214 } | 214 } |
215 | 215 |
216 BluetoothDeviceChromeOS::UUIDList BluetoothDeviceChromeOS::GetUUIDs() const { | 216 BluetoothDeviceChromeOS::UUIDList BluetoothDeviceChromeOS::GetUUIDs() const { |
217 BluetoothDeviceClient::Properties* properties = | 217 BluetoothDeviceClient::Properties* properties = |
218 DBusThreadManager::Get()->GetBluetoothDeviceClient()-> | 218 DBusThreadManager::Get()->GetBluetoothDeviceClient()-> |
219 GetProperties(object_path_); | 219 GetProperties(object_path_); |
220 DCHECK(properties); | 220 DCHECK(properties); |
221 | 221 |
222 std::vector<device::BluetoothUUID> uuids; | 222 return properties->uuids.value(); |
223 const std::vector<std::string> &dbus_uuids = properties->uuids.value(); | |
224 for (std::vector<std::string>::const_iterator iter = dbus_uuids.begin(); | |
225 iter != dbus_uuids.end(); ++iter) { | |
226 device::BluetoothUUID uuid(*iter); | |
227 DCHECK(uuid.IsValid()); | |
228 uuids.push_back(uuid); | |
229 } | |
230 return uuids; | |
231 } | 223 } |
232 | 224 |
233 bool BluetoothDeviceChromeOS::ExpectingPinCode() const { | 225 bool BluetoothDeviceChromeOS::ExpectingPinCode() const { |
234 return pairing_.get() && pairing_->ExpectingPinCode(); | 226 return pairing_.get() && pairing_->ExpectingPinCode(); |
235 } | 227 } |
236 | 228 |
237 bool BluetoothDeviceChromeOS::ExpectingPasskey() const { | 229 bool BluetoothDeviceChromeOS::ExpectingPasskey() const { |
238 return pairing_.get() && pairing_->ExpectingPasskey(); | 230 return pairing_.get() && pairing_->ExpectingPasskey(); |
239 } | 231 } |
240 | 232 |
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
345 RemoveDevice( | 337 RemoveDevice( |
346 adapter_->object_path_, | 338 adapter_->object_path_, |
347 object_path_, | 339 object_path_, |
348 base::Bind(&base::DoNothing), | 340 base::Bind(&base::DoNothing), |
349 base::Bind(&BluetoothDeviceChromeOS::OnForgetError, | 341 base::Bind(&BluetoothDeviceChromeOS::OnForgetError, |
350 weak_ptr_factory_.GetWeakPtr(), | 342 weak_ptr_factory_.GetWeakPtr(), |
351 error_callback)); | 343 error_callback)); |
352 } | 344 } |
353 | 345 |
354 void BluetoothDeviceChromeOS::ConnectToService( | 346 void BluetoothDeviceChromeOS::ConnectToService( |
355 const device::BluetoothUUID& service_uuid, | 347 const std::string& service_uuid, |
356 const SocketCallback& callback) { | 348 const SocketCallback& callback) { |
357 // TODO(keybuk): implement | 349 // TODO(keybuk): implement |
358 callback.Run(scoped_refptr<device::BluetoothSocket>()); | 350 callback.Run(scoped_refptr<device::BluetoothSocket>()); |
359 } | 351 } |
360 | 352 |
361 void BluetoothDeviceChromeOS::ConnectToProfile( | 353 void BluetoothDeviceChromeOS::ConnectToProfile( |
362 device::BluetoothProfile* profile, | 354 device::BluetoothProfile* profile, |
363 const base::Closure& callback, | 355 const base::Closure& callback, |
364 const ErrorCallback& error_callback) { | 356 const ErrorCallback& error_callback) { |
365 BluetoothProfileChromeOS* profile_chromeos = | 357 BluetoothProfileChromeOS* profile_chromeos = |
366 static_cast<BluetoothProfileChromeOS*>(profile); | 358 static_cast<BluetoothProfileChromeOS*>(profile); |
367 VLOG(1) << object_path_.value() << ": Connecting profile: " | 359 VLOG(1) << object_path_.value() << ": Connecting profile: " |
368 << profile_chromeos->uuid().canonical_value(); | 360 << profile_chromeos->uuid(); |
369 DBusThreadManager::Get()->GetBluetoothDeviceClient()-> | 361 DBusThreadManager::Get()->GetBluetoothDeviceClient()-> |
370 ConnectProfile( | 362 ConnectProfile( |
371 object_path_, | 363 object_path_, |
372 profile_chromeos->uuid().canonical_value(), | 364 profile_chromeos->uuid(), |
373 base::Bind( | 365 base::Bind( |
374 &BluetoothDeviceChromeOS::OnConnectProfile, | 366 &BluetoothDeviceChromeOS::OnConnectProfile, |
375 weak_ptr_factory_.GetWeakPtr(), | 367 weak_ptr_factory_.GetWeakPtr(), |
376 profile, | 368 profile, |
377 callback), | 369 callback), |
378 base::Bind( | 370 base::Bind( |
379 &BluetoothDeviceChromeOS::OnConnectProfileError, | 371 &BluetoothDeviceChromeOS::OnConnectProfileError, |
380 weak_ptr_factory_.GetWeakPtr(), | 372 weak_ptr_factory_.GetWeakPtr(), |
381 profile, | 373 profile, |
382 error_callback)); | 374 error_callback)); |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
568 << error_name << ": " << error_message; | 560 << error_name << ": " << error_message; |
569 error_callback.Run(); | 561 error_callback.Run(); |
570 } | 562 } |
571 | 563 |
572 void BluetoothDeviceChromeOS::OnConnectProfile( | 564 void BluetoothDeviceChromeOS::OnConnectProfile( |
573 device::BluetoothProfile* profile, | 565 device::BluetoothProfile* profile, |
574 const base::Closure& callback) { | 566 const base::Closure& callback) { |
575 BluetoothProfileChromeOS* profile_chromeos = | 567 BluetoothProfileChromeOS* profile_chromeos = |
576 static_cast<BluetoothProfileChromeOS*>(profile); | 568 static_cast<BluetoothProfileChromeOS*>(profile); |
577 VLOG(1) << object_path_.value() << ": Profile connected: " | 569 VLOG(1) << object_path_.value() << ": Profile connected: " |
578 << profile_chromeos->uuid().canonical_value(); | 570 << profile_chromeos->uuid(); |
579 callback.Run(); | 571 callback.Run(); |
580 } | 572 } |
581 | 573 |
582 void BluetoothDeviceChromeOS::OnConnectProfileError( | 574 void BluetoothDeviceChromeOS::OnConnectProfileError( |
583 device::BluetoothProfile* profile, | 575 device::BluetoothProfile* profile, |
584 const ErrorCallback& error_callback, | 576 const ErrorCallback& error_callback, |
585 const std::string& error_name, | 577 const std::string& error_name, |
586 const std::string& error_message) { | 578 const std::string& error_message) { |
587 BluetoothProfileChromeOS* profile_chromeos = | 579 BluetoothProfileChromeOS* profile_chromeos = |
588 static_cast<BluetoothProfileChromeOS*>(profile); | 580 static_cast<BluetoothProfileChromeOS*>(profile); |
589 VLOG(1) << object_path_.value() << ": Profile connection failed: " | 581 VLOG(1) << object_path_.value() << ": Profile connection failed: " |
590 << profile_chromeos->uuid().canonical_value() << ": " | 582 << profile_chromeos->uuid() << ": " |
591 << error_name << ": " << error_message; | 583 << error_name << ": " << error_message; |
592 error_callback.Run(); | 584 error_callback.Run(); |
593 } | 585 } |
594 | 586 |
595 } // namespace chromeos | 587 } // namespace chromeos |
OLD | NEW |