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

Side by Side Diff: chromeos/dbus/fake_bluetooth_media_endpoint_service_provider.cc

Issue 910023002: device/bluetooth:Implement BluetoothMediaEndpointServiceProvider delegate and media-related overrid… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 10 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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "chromeos/dbus/fake_bluetooth_media_endpoint_service_provider.h" 5 #include "chromeos/dbus/fake_bluetooth_media_endpoint_service_provider.h"
6 6
7 #include "chromeos/dbus/dbus_thread_manager.h"
8 #include "chromeos/dbus/fake_bluetooth_media_client.h"
9 #include "chromeos/dbus/fake_bluetooth_media_transport_client.h"
10
11 using dbus::ObjectPath;
12
7 namespace chromeos { 13 namespace chromeos {
8 14
9 // TODO(mcchou): Add the logic of the behavior. 15 // TODO(mcchou): Add the logic of the behavior.
10 FakeBluetoothMediaEndpointServiceProvider:: 16 FakeBluetoothMediaEndpointServiceProvider::
11 FakeBluetoothMediaEndpointServiceProvider( 17 FakeBluetoothMediaEndpointServiceProvider(const ObjectPath object_path,
12 const dbus::ObjectPath object_path, Delegate* delegate) 18 Delegate* delegate)
13 : object_path_(object_path) , delegate_(delegate) { 19 : visible_(false), object_path_(object_path), delegate_(delegate) {
14 VLOG(1) << "Create Bluetooth Media Endpoint: " << object_path_.value(); 20 VLOG(1) << "Create Bluetooth Media Endpoint: " << object_path_.value();
15 // TODO(mcchou): Use the FakeBluetoothMediaClient in DBusThreadManager
16 // to register the FakeBluetoothMediaEndpoint object.
17 } 21 }
18 22
19 FakeBluetoothMediaEndpointServiceProvider:: 23 FakeBluetoothMediaEndpointServiceProvider::
20 ~FakeBluetoothMediaEndpointServiceProvider() { 24 ~FakeBluetoothMediaEndpointServiceProvider() {
21 VLOG(1) << "Cleaning up Bluetooth Media Endpoint: " << object_path_.value(); 25 VLOG(1) << "Cleaning up Bluetooth Media Endpoint: " << object_path_.value();
22 // TODO(mcchou): Use the FakeBluetoothMediaClient in DBusThreadManager 26 // TODO(mcchou): Use the FakeBluetoothMediaClient in DBusThreadManager
23 // to unregister the FakeBluetoothMediaEndpoint object. 27 // to unregister the FakeBluetoothMediaEndpoint object.
24 } 28 }
25 29
26 void FakeBluetoothMediaEndpointServiceProvider::SetConfiguration( 30 void FakeBluetoothMediaEndpointServiceProvider::SetConfiguration(
27 const dbus::ObjectPath& transport_path, 31 const ObjectPath& transport_path,
28 const dbus::MessageReader& properties) { 32 const Delegate::TransportProperties& properties) {
29 VLOG(1) << object_path_.value() << ": SetConfiguration for " 33 if (visible_) {
armansito 2015/02/10 00:17:01 nit: Turn this around and early-return if !visible
Miao 2015/02/10 22:15:21 |visible_| removed.
30 << transport_path.value(); 34 VLOG(1) << object_path_.value() << ": SetConfiguration for "
31 delegate_->SetConfiguration(transport_path, properties); 35 << transport_path.value();
36
37 // Sets the visibility to the transport object to true if the media object
38 // is valid.
39 FakeBluetoothMediaTransportClient* transport =
40 static_cast<FakeBluetoothMediaTransportClient*>(
41 DBusThreadManager::Get()->GetBluetoothMediaTransportClient());
42 transport->SetVisible(object_path_, true);
43
44 delegate_->SetConfiguration(transport_path, properties);
45 }
32 } 46 }
33 47
34 void FakeBluetoothMediaEndpointServiceProvider::SelectConfiguration( 48 void FakeBluetoothMediaEndpointServiceProvider::SelectConfiguration(
35 const std::vector<uint8_t>& capabilities, 49 const std::vector<uint8_t>& capabilities,
36 const Delegate::SelectConfigurationCallback& callback) { 50 const Delegate::SelectConfigurationCallback& callback) {
37 VLOG(1) << object_path_.value() << ": SelectConfiguration"; 51 if (visible_) {
38 delegate_->SelectConfiguration(capabilities, callback); 52 VLOG(1) << object_path_.value() << ": SelectConfiguration";
53 delegate_->SelectConfiguration(capabilities, callback);
54 }
39 } 55 }
40 56
41 void FakeBluetoothMediaEndpointServiceProvider::ClearConfiguration( 57 void FakeBluetoothMediaEndpointServiceProvider::ClearConfiguration(
42 const dbus::ObjectPath& transport_path) { 58 const ObjectPath& transport_path) {
43 VLOG(1) << object_path_.value() << ": ClearConfiguration for" 59 if (visible_) {
44 << transport_path.value(); 60 VLOG(1) << object_path_.value() << ": ClearConfiguration on "
45 delegate_->ClearConfiguration(transport_path); 61 << transport_path.value();
62 delegate_->ClearConfiguration(transport_path);
63 }
46 } 64 }
47 65
48 void FakeBluetoothMediaEndpointServiceProvider::Release() { 66 void FakeBluetoothMediaEndpointServiceProvider::Released() {
49 VLOG(1) << object_path_.value() << ": Release"; 67 if (visible_) {
50 delegate_->Release(); 68 VLOG(1) << object_path_.value() << ": Released";
69 delegate_->Released();
70 }
71 }
72
73 void FakeBluetoothMediaEndpointServiceProvider::SetVisible(bool visible) {
74 visible_ = visible;
75
76 FakeBluetoothMediaClient* media = static_cast<FakeBluetoothMediaClient*>(
77 DBusThreadManager::Get()->GetBluetoothMediaClient());
78 media->SetEndpointVisible(object_path_, visible_);
51 } 79 }
52 80
53 } // namespace chromeos 81 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698