| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/dbus/bluetooth_gatt_characteristic_service_provider_i
mpl.h" | 5 #include "device/bluetooth/dbus/bluetooth_gatt_characteristic_service_provider_i
mpl.h" |
| 6 | 6 |
| 7 #include <cstddef> | 7 #include <cstddef> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/logging.h" | 10 #include "base/logging.h" |
| (...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 259 } | 259 } |
| 260 | 260 |
| 261 void BluetoothGattCharacteristicServiceProviderImpl::ReadValue( | 261 void BluetoothGattCharacteristicServiceProviderImpl::ReadValue( |
| 262 dbus::MethodCall* method_call, | 262 dbus::MethodCall* method_call, |
| 263 dbus::ExportedObject::ResponseSender response_sender) { | 263 dbus::ExportedObject::ResponseSender response_sender) { |
| 264 VLOG(3) << "BluetoothGattCharacteristicServiceProvider::ReadValue: " | 264 VLOG(3) << "BluetoothGattCharacteristicServiceProvider::ReadValue: " |
| 265 << object_path_.value(); | 265 << object_path_.value(); |
| 266 DCHECK(OnOriginThread()); | 266 DCHECK(OnOriginThread()); |
| 267 DCHECK(delegate_); | 267 DCHECK(delegate_); |
| 268 delegate_->GetValue( | 268 delegate_->GetValue( |
| 269 dbus::ObjectPath(), |
| 269 base::Bind(&BluetoothGattCharacteristicServiceProviderImpl::OnReadValue, | 270 base::Bind(&BluetoothGattCharacteristicServiceProviderImpl::OnReadValue, |
| 270 weak_ptr_factory_.GetWeakPtr(), method_call, response_sender), | 271 weak_ptr_factory_.GetWeakPtr(), method_call, response_sender), |
| 271 base::Bind(&BluetoothGattCharacteristicServiceProviderImpl::OnFailure, | 272 base::Bind(&BluetoothGattCharacteristicServiceProviderImpl::OnFailure, |
| 272 weak_ptr_factory_.GetWeakPtr(), method_call, response_sender)); | 273 weak_ptr_factory_.GetWeakPtr(), method_call, response_sender)); |
| 273 } | 274 } |
| 274 | 275 |
| 275 void BluetoothGattCharacteristicServiceProviderImpl::WriteValue( | 276 void BluetoothGattCharacteristicServiceProviderImpl::WriteValue( |
| 276 dbus::MethodCall* method_call, | 277 dbus::MethodCall* method_call, |
| 277 dbus::ExportedObject::ResponseSender response_sender) { | 278 dbus::ExportedObject::ResponseSender response_sender) { |
| 278 VLOG(3) << "BluetoothGattCharacteristicServiceProvider::WriteValue: " | 279 VLOG(3) << "BluetoothGattCharacteristicServiceProvider::WriteValue: " |
| 279 << object_path_.value(); | 280 << object_path_.value(); |
| 280 DCHECK(OnOriginThread()); | 281 DCHECK(OnOriginThread()); |
| 281 | 282 |
| 282 dbus::MessageReader reader(method_call); | 283 dbus::MessageReader reader(method_call); |
| 283 const uint8_t* bytes = NULL; | 284 const uint8_t* bytes = NULL; |
| 284 size_t length = 0; | 285 size_t length = 0; |
| 285 | 286 |
| 286 if (!reader.PopArrayOfBytes(&bytes, &length)) | 287 if (!reader.PopArrayOfBytes(&bytes, &length)) |
| 287 VLOG(2) << "Error reading array of bytes in in WriteValue"; | 288 VLOG(2) << "Error reading array of bytes in in WriteValue"; |
| 288 std::vector<uint8_t> value; | 289 std::vector<uint8_t> value; |
| 289 if (bytes) | 290 if (bytes) |
| 290 value.assign(bytes, bytes + length); | 291 value.assign(bytes, bytes + length); |
| 291 | 292 |
| 292 DCHECK(delegate_); | 293 DCHECK(delegate_); |
| 293 delegate_->SetValue( | 294 delegate_->SetValue( |
| 294 value, | 295 dbus::ObjectPath(), value, |
| 295 base::Bind(&BluetoothGattCharacteristicServiceProviderImpl::OnWriteValue, | 296 base::Bind(&BluetoothGattCharacteristicServiceProviderImpl::OnWriteValue, |
| 296 weak_ptr_factory_.GetWeakPtr(), method_call, response_sender), | 297 weak_ptr_factory_.GetWeakPtr(), method_call, response_sender), |
| 297 base::Bind(&BluetoothGattCharacteristicServiceProviderImpl::OnFailure, | 298 base::Bind(&BluetoothGattCharacteristicServiceProviderImpl::OnFailure, |
| 298 weak_ptr_factory_.GetWeakPtr(), method_call, response_sender)); | 299 weak_ptr_factory_.GetWeakPtr(), method_call, response_sender)); |
| 299 } | 300 } |
| 300 | 301 |
| 301 void BluetoothGattCharacteristicServiceProviderImpl::StartNotify( | 302 void BluetoothGattCharacteristicServiceProviderImpl::StartNotify( |
| 302 dbus::MethodCall* method_call, | 303 dbus::MethodCall* method_call, |
| 303 dbus::ExportedObject::ResponseSender response_sender) { | 304 dbus::ExportedObject::ResponseSender response_sender) { |
| 304 VLOG(3) << "BluetoothGattCharacteristicServiceProvider::StartNotify: " | 305 VLOG(3) << "BluetoothGattCharacteristicServiceProvider::StartNotify: " |
| (...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 392 method_call, kErrorFailed, "Failed to get/set characteristic value."); | 393 method_call, kErrorFailed, "Failed to get/set characteristic value."); |
| 393 response_sender.Run(std::move(error_response)); | 394 response_sender.Run(std::move(error_response)); |
| 394 } | 395 } |
| 395 | 396 |
| 396 const dbus::ObjectPath& | 397 const dbus::ObjectPath& |
| 397 BluetoothGattCharacteristicServiceProviderImpl::object_path() const { | 398 BluetoothGattCharacteristicServiceProviderImpl::object_path() const { |
| 398 return object_path_; | 399 return object_path_; |
| 399 } | 400 } |
| 400 | 401 |
| 401 } // namespace bluez | 402 } // namespace bluez |
| OLD | NEW |