Index: components/arc/arc_service_manager.cc |
diff --git a/components/arc/arc_service_manager.cc b/components/arc/arc_service_manager.cc |
index 3769c03de9eb4880af4e55a91342f8338ddc9a50..85f52fed093a3f9da624e784b121bdcb102c98b7 100644 |
--- a/components/arc/arc_service_manager.cc |
+++ b/components/arc/arc_service_manager.cc |
@@ -10,13 +10,10 @@ |
#include "base/thread_task_runner_handle.h" |
#include "components/arc/arc_bridge_bootstrap.h" |
#include "components/arc/arc_bridge_service_impl.h" |
-#include "components/arc/auth/arc_auth_service.h" |
#include "components/arc/clipboard/arc_clipboard_bridge.h" |
#include "components/arc/ime/arc_ime_bridge.h" |
#include "components/arc/input/arc_input_bridge.h" |
#include "components/arc/power/arc_power_bridge.h" |
-#include "components/arc/settings/arc_settings_bridge.h" |
-#include "components/arc/video/arc_video_bridge.h" |
#include "ui/arc/notification/arc_notification_manager.h" |
namespace arc { |
@@ -28,25 +25,16 @@ ArcServiceManager* g_arc_service_manager = nullptr; |
} // namespace |
-ArcServiceManager::ArcServiceManager( |
- scoped_ptr<ArcAuthService> auth_service, |
- scoped_ptr<ArcSettingsBridge> settings_bridge, |
- scoped_ptr<ArcVideoBridge> video_bridge) |
+ArcServiceManager::ArcServiceManager() |
: arc_bridge_service_( |
- new ArcBridgeServiceImpl(ArcBridgeBootstrap::Create())), |
- arc_auth_service_(std::move(auth_service)), |
- arc_clipboard_bridge_(new ArcClipboardBridge(arc_bridge_service_.get())), |
- arc_ime_bridge_(new ArcImeBridge(arc_bridge_service_.get())), |
- arc_input_bridge_(ArcInputBridge::Create(arc_bridge_service_.get())), |
- arc_settings_bridge_(std::move(settings_bridge)), |
- arc_power_bridge_(new ArcPowerBridge(arc_bridge_service_.get())), |
- arc_video_bridge_(std::move(video_bridge)) { |
+ new ArcBridgeServiceImpl(ArcBridgeBootstrap::Create())) { |
DCHECK(!g_arc_service_manager); |
g_arc_service_manager = this; |
- arc_settings_bridge_->StartObservingBridgeServiceChanges(); |
- arc_auth_service_->StartObservingBridgeServiceChanges(); |
- arc_video_bridge_->StartObservingBridgeServiceChanges(); |
+ AddService(make_scoped_ptr(new ArcClipboardBridge(arc_bridge_service()))); |
elijahtaylor1
2016/01/20 00:41:19
what is the distinction between services created f
Luis Héctor Chávez
2016/01/20 17:39:59
Dependencies. All the ones created in chrome_brows
|
+ AddService(make_scoped_ptr(new ArcImeBridge(arc_bridge_service()))); |
+ AddService(make_scoped_ptr(new ArcInputBridge(arc_bridge_service()))); |
+ AddService(make_scoped_ptr(new ArcPowerBridge(arc_bridge_service()))); |
} |
ArcServiceManager::~ArcServiceManager() { |
@@ -67,12 +55,18 @@ ArcBridgeService* ArcServiceManager::arc_bridge_service() { |
return arc_bridge_service_.get(); |
} |
+void ArcServiceManager::AddService(scoped_ptr<ArcService> service) { |
+ DCHECK(thread_checker_.CalledOnValidThread()); |
+ |
+ services_.emplace_back(std::move(service)); |
+} |
+ |
void ArcServiceManager::OnPrimaryUserProfilePrepared( |
const AccountId& account_id) { |
DCHECK(thread_checker_.CalledOnValidThread()); |
- arc_notification_manager_.reset( |
- new ArcNotificationManager(arc_bridge_service(), account_id)); |
+ AddService(make_scoped_ptr( |
+ new ArcNotificationManager(arc_bridge_service(), account_id))); |
} |
} // namespace arc |