OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_thread_manager.h" | 5 #include "chromeos/dbus/dbus_thread_manager.h" |
6 | 6 |
7 #include <map> | 7 #include <map> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/observer_list.h" | 10 #include "base/observer_list.h" |
(...skipping 402 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
413 InitClient(g_dbus_thread_manager->GetBluetoothInputClient()); | 413 InitClient(g_dbus_thread_manager->GetBluetoothInputClient()); |
414 InitClient(g_dbus_thread_manager->GetBluetoothProfileManagerClient()); | 414 InitClient(g_dbus_thread_manager->GetBluetoothProfileManagerClient()); |
415 InitClient(g_dbus_thread_manager->GetCrasAudioClient()); | 415 InitClient(g_dbus_thread_manager->GetCrasAudioClient()); |
416 InitClient(g_dbus_thread_manager->GetCrosDisksClient()); | 416 InitClient(g_dbus_thread_manager->GetCrosDisksClient()); |
417 InitClient(g_dbus_thread_manager->GetCryptohomeClient()); | 417 InitClient(g_dbus_thread_manager->GetCryptohomeClient()); |
418 InitClient(g_dbus_thread_manager->GetDebugDaemonClient()); | 418 InitClient(g_dbus_thread_manager->GetDebugDaemonClient()); |
419 InitClient(g_dbus_thread_manager->GetGsmSMSClient()); | 419 InitClient(g_dbus_thread_manager->GetGsmSMSClient()); |
420 InitClient(g_dbus_thread_manager->GetImageBurnerClient()); | 420 InitClient(g_dbus_thread_manager->GetImageBurnerClient()); |
421 InitClient(g_dbus_thread_manager->GetIntrospectableClient()); | 421 InitClient(g_dbus_thread_manager->GetIntrospectableClient()); |
422 InitClient(g_dbus_thread_manager->GetModemMessagingClient()); | 422 InitClient(g_dbus_thread_manager->GetModemMessagingClient()); |
423 // Initialize the NFC clients in the correct order. | |
424 InitClient(g_dbus_thread_manager->GetNfcAdapterClient()); | |
425 InitClient(g_dbus_thread_manager->GetNfcManagerClient()); | |
426 InitClient(g_dbus_thread_manager->GetNfcDeviceClient()); | |
427 InitClient(g_dbus_thread_manager->GetNfcTagClient()); | |
428 InitClient(g_dbus_thread_manager->GetPermissionBrokerClient()); | 423 InitClient(g_dbus_thread_manager->GetPermissionBrokerClient()); |
429 InitClient(g_dbus_thread_manager->GetPowerManagerClient()); | 424 InitClient(g_dbus_thread_manager->GetPowerManagerClient()); |
430 InitClient(g_dbus_thread_manager->GetSessionManagerClient()); | 425 InitClient(g_dbus_thread_manager->GetSessionManagerClient()); |
431 InitClient(g_dbus_thread_manager->GetShillDeviceClient()); | 426 InitClient(g_dbus_thread_manager->GetShillDeviceClient()); |
432 InitClient(g_dbus_thread_manager->GetShillIPConfigClient()); | 427 InitClient(g_dbus_thread_manager->GetShillIPConfigClient()); |
433 InitClient(g_dbus_thread_manager->GetShillManagerClient()); | 428 InitClient(g_dbus_thread_manager->GetShillManagerClient()); |
434 InitClient(g_dbus_thread_manager->GetShillServiceClient()); | 429 InitClient(g_dbus_thread_manager->GetShillServiceClient()); |
435 InitClient(g_dbus_thread_manager->GetShillProfileClient()); | 430 InitClient(g_dbus_thread_manager->GetShillProfileClient()); |
436 InitClient(g_dbus_thread_manager->GetSMSClient()); | 431 InitClient(g_dbus_thread_manager->GetSMSClient()); |
437 InitClient(g_dbus_thread_manager->GetSystemClockClient()); | 432 InitClient(g_dbus_thread_manager->GetSystemClockClient()); |
438 InitClient(g_dbus_thread_manager->GetUpdateEngineClient()); | 433 InitClient(g_dbus_thread_manager->GetUpdateEngineClient()); |
439 | 434 |
| 435 // Initialize the NFC clients in the correct order. The order of |
| 436 // initialization matters due to dependencies that exist between the |
| 437 // client objects. |
| 438 InitClient(g_dbus_thread_manager->GetNfcManagerClient()); |
| 439 InitClient(g_dbus_thread_manager->GetNfcAdapterClient()); |
| 440 InitClient(g_dbus_thread_manager->GetNfcDeviceClient()); |
| 441 InitClient(g_dbus_thread_manager->GetNfcTagClient()); |
| 442 InitClient(g_dbus_thread_manager->GetNfcRecordClient()); |
| 443 |
440 // PowerPolicyController is dependent on PowerManagerClient, so | 444 // PowerPolicyController is dependent on PowerManagerClient, so |
441 // initialize it after the main list of clients. | 445 // initialize it after the main list of clients. |
442 if (g_dbus_thread_manager->GetPowerPolicyController()) { | 446 if (g_dbus_thread_manager->GetPowerPolicyController()) { |
443 g_dbus_thread_manager->GetPowerPolicyController()->Init( | 447 g_dbus_thread_manager->GetPowerPolicyController()->Init( |
444 g_dbus_thread_manager); | 448 g_dbus_thread_manager); |
445 } | 449 } |
446 | 450 |
447 // This must be called after the list of clients so they've each had a | 451 // This must be called after the list of clients so they've each had a |
448 // chance to register with their object g_dbus_thread_managers. | 452 // chance to register with their object g_dbus_thread_managers. |
449 if (g_dbus_thread_manager->GetSystemBus()) | 453 if (g_dbus_thread_manager->GetSystemBus()) |
450 g_dbus_thread_manager->GetSystemBus()->GetManagedObjects(); | 454 g_dbus_thread_manager->GetSystemBus()->GetManagedObjects(); |
451 } | 455 } |
452 | 456 |
453 // static | 457 // static |
454 void DBusThreadManager::InitClient(DBusClient* client) { | 458 void DBusThreadManager::InitClient(DBusClient* client) { |
455 if (client) | 459 if (client) |
456 client->Init(g_dbus_thread_manager->GetSystemBus()); | 460 client->Init(g_dbus_thread_manager->GetSystemBus()); |
457 } | 461 } |
458 | 462 |
459 } // namespace chromeos | 463 } // namespace chromeos |
OLD | NEW |