| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 "components/arc/arc_service_manager.h" | 5 #include "components/arc/arc_service_manager.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 | 8 |
| 9 #include "base/memory/ptr_util.h" | 9 #include "base/memory/ptr_util.h" |
| 10 #include "base/sequenced_task_runner.h" | 10 #include "base/sequenced_task_runner.h" |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 arc_bridge_service_.reset(new ArcBridgeServiceImpl(blocking_task_runner)); | 55 arc_bridge_service_.reset(new ArcBridgeServiceImpl(blocking_task_runner)); |
| 56 } | 56 } |
| 57 | 57 |
| 58 AddService(base::MakeUnique<ArcAudioBridge>(arc_bridge_service())); | 58 AddService(base::MakeUnique<ArcAudioBridge>(arc_bridge_service())); |
| 59 AddService(base::MakeUnique<ArcBluetoothBridge>(arc_bridge_service())); | 59 AddService(base::MakeUnique<ArcBluetoothBridge>(arc_bridge_service())); |
| 60 AddService(base::MakeUnique<ArcBootPhaseMonitorBridge>(arc_bridge_service())); | 60 AddService(base::MakeUnique<ArcBootPhaseMonitorBridge>(arc_bridge_service())); |
| 61 AddService(base::MakeUnique<ArcClipboardBridge>(arc_bridge_service())); | 61 AddService(base::MakeUnique<ArcClipboardBridge>(arc_bridge_service())); |
| 62 AddService(base::MakeUnique<ArcCrashCollectorBridge>(arc_bridge_service(), | 62 AddService(base::MakeUnique<ArcCrashCollectorBridge>(arc_bridge_service(), |
| 63 blocking_task_runner_)); | 63 blocking_task_runner_)); |
| 64 AddService(base::MakeUnique<ArcImeService>(arc_bridge_service())); | 64 AddService(base::MakeUnique<ArcImeService>(arc_bridge_service())); |
| 65 AddService(base::MakeUnique<ArcKioskBridge>(arc_bridge_service())); | |
| 66 AddService(base::MakeUnique<ArcMetricsService>(arc_bridge_service())); | 65 AddService(base::MakeUnique<ArcMetricsService>(arc_bridge_service())); |
| 67 AddService(base::MakeUnique<ArcNetHostImpl>(arc_bridge_service())); | 66 AddService(base::MakeUnique<ArcNetHostImpl>(arc_bridge_service())); |
| 68 AddService(base::MakeUnique<ArcObbMounterBridge>(arc_bridge_service())); | 67 AddService(base::MakeUnique<ArcObbMounterBridge>(arc_bridge_service())); |
| 69 AddService(base::MakeUnique<ArcPowerBridge>(arc_bridge_service())); | 68 AddService(base::MakeUnique<ArcPowerBridge>(arc_bridge_service())); |
| 70 AddService(base::MakeUnique<ArcStorageManager>(arc_bridge_service())); | 69 AddService(base::MakeUnique<ArcStorageManager>(arc_bridge_service())); |
| 71 } | 70 } |
| 72 | 71 |
| 73 ArcServiceManager::~ArcServiceManager() { | 72 ArcServiceManager::~ArcServiceManager() { |
| 74 DCHECK(thread_checker_.CalledOnValidThread()); | 73 DCHECK(thread_checker_.CalledOnValidThread()); |
| 75 DCHECK(g_arc_service_manager == this); | 74 DCHECK(g_arc_service_manager == this); |
| (...skipping 16 matching lines...) Expand all Loading... |
| 92 } | 91 } |
| 93 | 92 |
| 94 void ArcServiceManager::AddService(std::unique_ptr<ArcService> service) { | 93 void ArcServiceManager::AddService(std::unique_ptr<ArcService> service) { |
| 95 DCHECK(thread_checker_.CalledOnValidThread()); | 94 DCHECK(thread_checker_.CalledOnValidThread()); |
| 96 | 95 |
| 97 services_.emplace_back(std::move(service)); | 96 services_.emplace_back(std::move(service)); |
| 98 } | 97 } |
| 99 | 98 |
| 100 void ArcServiceManager::OnPrimaryUserProfilePrepared( | 99 void ArcServiceManager::OnPrimaryUserProfilePrepared( |
| 101 const AccountId& account_id, | 100 const AccountId& account_id, |
| 101 content::BrowserContext* browser_context, |
| 102 std::unique_ptr<BooleanPrefMember> arc_enabled_pref) { | 102 std::unique_ptr<BooleanPrefMember> arc_enabled_pref) { |
| 103 DCHECK(thread_checker_.CalledOnValidThread()); | 103 DCHECK(thread_checker_.CalledOnValidThread()); |
| 104 AddService(base::MakeUnique<ArcNotificationManager>(arc_bridge_service(), | 104 AddService(base::MakeUnique<ArcNotificationManager>(arc_bridge_service(), |
| 105 account_id)); | 105 account_id)); |
| 106 AddService( |
| 107 base::MakeUnique<ArcKioskBridge>(arc_bridge_service(), browser_context)); |
| 106 } | 108 } |
| 107 | 109 |
| 108 void ArcServiceManager::Shutdown() { | 110 void ArcServiceManager::Shutdown() { |
| 109 icon_loader_ = nullptr; | 111 icon_loader_ = nullptr; |
| 110 activity_resolver_ = nullptr; | 112 activity_resolver_ = nullptr; |
| 111 services_.clear(); | 113 services_.clear(); |
| 112 arc_bridge_service_->OnShutdown(); | 114 arc_bridge_service_->OnShutdown(); |
| 113 } | 115 } |
| 114 | 116 |
| 115 // static | 117 // static |
| 116 void ArcServiceManager::SetArcBridgeServiceForTesting( | 118 void ArcServiceManager::SetArcBridgeServiceForTesting( |
| 117 std::unique_ptr<ArcBridgeService> arc_bridge_service) { | 119 std::unique_ptr<ArcBridgeService> arc_bridge_service) { |
| 118 if (g_arc_bridge_service_for_testing) { | 120 if (g_arc_bridge_service_for_testing) { |
| 119 delete g_arc_bridge_service_for_testing; | 121 delete g_arc_bridge_service_for_testing; |
| 120 } | 122 } |
| 121 g_arc_bridge_service_for_testing = arc_bridge_service.release(); | 123 g_arc_bridge_service_for_testing = arc_bridge_service.release(); |
| 122 } | 124 } |
| 123 | 125 |
| 124 } // namespace arc | 126 } // namespace arc |
| OLD | NEW |