OLD | NEW |
| (Empty) |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef CHROMEOS_DBUS_FAKE_BLUETOOTH_AGENT_MANAGER_CLIENT_H_ | |
6 #define CHROMEOS_DBUS_FAKE_BLUETOOTH_AGENT_MANAGER_CLIENT_H_ | |
7 | |
8 #include "base/bind.h" | |
9 #include "base/callback.h" | |
10 #include "base/observer_list.h" | |
11 #include "chromeos/chromeos_export.h" | |
12 #include "chromeos/dbus/bluetooth_agent_manager_client.h" | |
13 #include "dbus/object_path.h" | |
14 #include "dbus/property.h" | |
15 | |
16 namespace chromeos { | |
17 | |
18 class FakeBluetoothAgentServiceProvider; | |
19 | |
20 // FakeBluetoothAgentManagerClient simulates the behavior of the Bluetooth | |
21 // Daemon's agent manager object and is used both in test cases in place of a | |
22 // mock and on the Linux desktop. | |
23 class CHROMEOS_EXPORT FakeBluetoothAgentManagerClient | |
24 : public BluetoothAgentManagerClient { | |
25 public: | |
26 FakeBluetoothAgentManagerClient(); | |
27 ~FakeBluetoothAgentManagerClient() override; | |
28 | |
29 // BluetoothAgentManagerClient overrides | |
30 void Init(dbus::Bus* bus) override; | |
31 void RegisterAgent(const dbus::ObjectPath& agent_path, | |
32 const std::string& capability, | |
33 const base::Closure& callback, | |
34 const ErrorCallback& error_callback) override; | |
35 void UnregisterAgent(const dbus::ObjectPath& agent_path, | |
36 const base::Closure& callback, | |
37 const ErrorCallback& error_callback) override; | |
38 void RequestDefaultAgent(const dbus::ObjectPath& agent_path, | |
39 const base::Closure& callback, | |
40 const ErrorCallback& error_callback) override; | |
41 | |
42 // Register, unregister and retrieve pointers to agent service providers. | |
43 void RegisterAgentServiceProvider( | |
44 FakeBluetoothAgentServiceProvider* service_provider); | |
45 void UnregisterAgentServiceProvider( | |
46 FakeBluetoothAgentServiceProvider* service_provider); | |
47 FakeBluetoothAgentServiceProvider* GetAgentServiceProvider(); | |
48 | |
49 private: | |
50 // The single agent service provider we permit, owned by the application | |
51 // using it. | |
52 FakeBluetoothAgentServiceProvider* service_provider_; | |
53 }; | |
54 | |
55 } // namespace chromeos | |
56 | |
57 #endif // CHROMEOS_DBUS_FAKE_BLUETOOTH_AGENT_MANAGER_CLIENT_H_ | |
OLD | NEW |