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

Side by Side Diff: device/bluetooth/bluez/bluetooth_device_bluez.cc

Issue 2421713002: arc: bluetooth: Expose missing advertise data. (Closed)
Patch Set: Add BlueZ unittests / more comment Created 4 years, 1 month 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 "device/bluetooth/bluez/bluetooth_device_bluez.h" 5 #include "device/bluetooth/bluez/bluetooth_device_bluez.h"
6 6
7 #include <stdio.h> 7 #include <stdio.h>
8 8
9 #include <algorithm> 9 #include <algorithm>
10 #include <memory> 10 #include <memory>
(...skipping 589 matching lines...) Expand 10 before | Expand all | Expand 10 after
600 bluez::BluezDBusManager::Get()->GetBluetoothDeviceClient()->GetProperties( 600 bluez::BluezDBusManager::Get()->GetBluetoothDeviceClient()->GetProperties(
601 object_path_); 601 object_path_);
602 DCHECK(properties); 602 DCHECK(properties);
603 DCHECK(properties->service_data.is_valid()); 603 DCHECK(properties->service_data.is_valid());
604 604
605 service_data_.clear(); 605 service_data_.clear();
606 for (const auto& pair : properties->service_data.value()) 606 for (const auto& pair : properties->service_data.value())
607 service_data_[BluetoothUUID(pair.first)] = pair.second; 607 service_data_[BluetoothUUID(pair.first)] = pair.second;
608 } 608 }
609 609
610 void BluetoothDeviceBlueZ::UpdateManufacturerData() {
611 bluez::BluetoothDeviceClient::Properties* properties =
612 bluez::BluezDBusManager::Get()->GetBluetoothDeviceClient()->GetProperties(
613 object_path_);
614 DCHECK(properties);
615 manufacturer_data_.clear();
616
617 if (properties->manufacturer_data.is_valid()) {
618 for (const auto& pair : properties->manufacturer_data.value())
619 manufacturer_data_[pair.first] = pair.second;
620 }
621 }
622
623 void BluetoothDeviceBlueZ::UpdateAdvertisingDataFlags() {
624 bluez::BluetoothDeviceClient::Properties* properties =
625 bluez::BluezDBusManager::Get()->GetBluetoothDeviceClient()->GetProperties(
626 object_path_);
627 DCHECK(properties);
628 advertising_data_flags_ = base::nullopt;
629
630 // The advertising data flags property is a vector<uint8> because the
631 // Supplement to Bluetooth Core Specification Version 6 page 13 said that
632 // "The Flags field may be zero or more octets long." However, only the first
633 // byte of that is needed because there is only 5 bits of data defined there.
634 if (properties->advertising_data_flags.is_valid())
635 advertising_data_flags_ = properties->advertising_data_flags.value()[0];
636 }
637
610 BluetoothPairingBlueZ* BluetoothDeviceBlueZ::BeginPairing( 638 BluetoothPairingBlueZ* BluetoothDeviceBlueZ::BeginPairing(
611 BluetoothDevice::PairingDelegate* pairing_delegate) { 639 BluetoothDevice::PairingDelegate* pairing_delegate) {
612 pairing_.reset(new BluetoothPairingBlueZ(this, pairing_delegate)); 640 pairing_.reset(new BluetoothPairingBlueZ(this, pairing_delegate));
613 return pairing_.get(); 641 return pairing_.get();
614 } 642 }
615 643
616 void BluetoothDeviceBlueZ::EndPairing() { 644 void BluetoothDeviceBlueZ::EndPairing() {
617 pairing_.reset(); 645 pairing_.reset();
618 } 646 }
619 647
(...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after
913 void BluetoothDeviceBlueZ::OnForgetError(const ErrorCallback& error_callback, 941 void BluetoothDeviceBlueZ::OnForgetError(const ErrorCallback& error_callback,
914 const std::string& error_name, 942 const std::string& error_name,
915 const std::string& error_message) { 943 const std::string& error_message) {
916 LOG(WARNING) << object_path_.value() 944 LOG(WARNING) << object_path_.value()
917 << ": Failed to remove device: " << error_name << ": " 945 << ": Failed to remove device: " << error_name << ": "
918 << error_message; 946 << error_message;
919 error_callback.Run(); 947 error_callback.Run();
920 } 948 }
921 949
922 } // namespace bluez 950 } // namespace bluez
OLDNEW
« no previous file with comments | « device/bluetooth/bluez/bluetooth_device_bluez.h ('k') | device/bluetooth/dbus/bluetooth_device_client.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698