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 "chromeos/dbus/dbus_clients_browser.h" | 5 #include "chromeos/dbus/dbus_clients_browser.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "chromeos/dbus/arc_obb_mounter_client.h" | 8 #include "chromeos/dbus/arc_obb_mounter_client.h" |
9 #include "chromeos/dbus/cros_disks_client.h" | 9 #include "chromeos/dbus/cros_disks_client.h" |
| 10 #include "chromeos/dbus/dbus_client_implementation_type.h" |
10 #include "chromeos/dbus/dbus_thread_manager.h" | 11 #include "chromeos/dbus/dbus_thread_manager.h" |
11 #include "chromeos/dbus/debug_daemon_client.h" | 12 #include "chromeos/dbus/debug_daemon_client.h" |
12 #include "chromeos/dbus/easy_unlock_client.h" | 13 #include "chromeos/dbus/easy_unlock_client.h" |
13 #include "chromeos/dbus/fake_arc_obb_mounter_client.h" | 14 #include "chromeos/dbus/fake_arc_obb_mounter_client.h" |
14 #include "chromeos/dbus/fake_debug_daemon_client.h" | 15 #include "chromeos/dbus/fake_debug_daemon_client.h" |
15 #include "chromeos/dbus/fake_easy_unlock_client.h" | 16 #include "chromeos/dbus/fake_easy_unlock_client.h" |
16 #include "chromeos/dbus/fake_image_burner_client.h" | 17 #include "chromeos/dbus/fake_image_burner_client.h" |
17 #include "chromeos/dbus/fake_lorgnette_manager_client.h" | 18 #include "chromeos/dbus/fake_lorgnette_manager_client.h" |
18 #include "chromeos/dbus/image_burner_client.h" | 19 #include "chromeos/dbus/image_burner_client.h" |
19 #include "chromeos/dbus/lorgnette_manager_client.h" | 20 #include "chromeos/dbus/lorgnette_manager_client.h" |
20 | 21 |
21 namespace chromeos { | 22 namespace chromeos { |
22 namespace { | |
23 | 23 |
24 // Avoid ugly casts below. | 24 DBusClientsBrowser::DBusClientsBrowser(bool use_real_clients) { |
25 bool IsUsingReal(DBusClientTypeMask real_clients, DBusClientType type) { | 25 if (use_real_clients) |
26 return real_clients & static_cast<DBusClientTypeMask>(type); | |
27 } | |
28 | |
29 } // namespace | |
30 | |
31 DBusClientsBrowser::DBusClientsBrowser(DBusClientTypeMask real_clients) { | |
32 if (IsUsingReal(real_clients, DBusClientType::ARC_OBB_MOUNTER)) | |
33 arc_obb_mounter_client_.reset(ArcObbMounterClient::Create()); | 26 arc_obb_mounter_client_.reset(ArcObbMounterClient::Create()); |
34 else | 27 else |
35 arc_obb_mounter_client_.reset(new FakeArcObbMounterClient); | 28 arc_obb_mounter_client_.reset(new FakeArcObbMounterClient); |
36 | 29 |
37 cros_disks_client_.reset(CrosDisksClient::Create( | 30 cros_disks_client_.reset(CrosDisksClient::Create( |
38 IsUsingReal(real_clients, DBusClientType::CROS_DISKS) | 31 use_real_clients ? REAL_DBUS_CLIENT_IMPLEMENTATION |
39 ? REAL_DBUS_CLIENT_IMPLEMENTATION | 32 : FAKE_DBUS_CLIENT_IMPLEMENTATION)); |
40 : FAKE_DBUS_CLIENT_IMPLEMENTATION)); | |
41 | 33 |
42 if (IsUsingReal(real_clients, DBusClientType::DEBUG_DAEMON)) | 34 if (use_real_clients) |
43 debug_daemon_client_.reset(DebugDaemonClient::Create()); | 35 debug_daemon_client_.reset(DebugDaemonClient::Create()); |
44 else | 36 else |
45 debug_daemon_client_.reset(new FakeDebugDaemonClient); | 37 debug_daemon_client_.reset(new FakeDebugDaemonClient); |
46 | 38 |
47 if (IsUsingReal(real_clients, DBusClientType::EASY_UNLOCK)) | 39 if (use_real_clients) |
48 easy_unlock_client_.reset(EasyUnlockClient::Create()); | 40 easy_unlock_client_.reset(EasyUnlockClient::Create()); |
49 else | 41 else |
50 easy_unlock_client_.reset(new FakeEasyUnlockClient); | 42 easy_unlock_client_.reset(new FakeEasyUnlockClient); |
51 | 43 |
52 if (IsUsingReal(real_clients, DBusClientType::IMAGE_BURNER)) | 44 if (use_real_clients) |
53 image_burner_client_.reset(ImageBurnerClient::Create()); | 45 image_burner_client_.reset(ImageBurnerClient::Create()); |
54 else | 46 else |
55 image_burner_client_.reset(new FakeImageBurnerClient); | 47 image_burner_client_.reset(new FakeImageBurnerClient); |
56 | 48 |
57 if (IsUsingReal(real_clients, DBusClientType::LORGNETTE_MANAGER)) | 49 if (use_real_clients) |
58 lorgnette_manager_client_.reset(LorgnetteManagerClient::Create()); | 50 lorgnette_manager_client_.reset(LorgnetteManagerClient::Create()); |
59 else | 51 else |
60 lorgnette_manager_client_.reset(new FakeLorgnetteManagerClient); | 52 lorgnette_manager_client_.reset(new FakeLorgnetteManagerClient); |
61 } | 53 } |
62 | 54 |
63 DBusClientsBrowser::~DBusClientsBrowser() {} | 55 DBusClientsBrowser::~DBusClientsBrowser() {} |
64 | 56 |
65 void DBusClientsBrowser::Initialize(dbus::Bus* system_bus) { | 57 void DBusClientsBrowser::Initialize(dbus::Bus* system_bus) { |
66 DCHECK(DBusThreadManager::IsInitialized()); | 58 DCHECK(DBusThreadManager::IsInitialized()); |
67 | 59 |
68 arc_obb_mounter_client_->Init(system_bus); | 60 arc_obb_mounter_client_->Init(system_bus); |
69 cros_disks_client_->Init(system_bus); | 61 cros_disks_client_->Init(system_bus); |
70 debug_daemon_client_->Init(system_bus); | 62 debug_daemon_client_->Init(system_bus); |
71 easy_unlock_client_->Init(system_bus); | 63 easy_unlock_client_->Init(system_bus); |
72 image_burner_client_->Init(system_bus); | 64 image_burner_client_->Init(system_bus); |
73 lorgnette_manager_client_->Init(system_bus); | 65 lorgnette_manager_client_->Init(system_bus); |
74 } | 66 } |
75 | 67 |
76 } // namespace chromeos | 68 } // namespace chromeos |
OLD | NEW |