Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(39)

Unified Diff: components/arc/arc_service_manager.cc

Issue 1596663002: arc-bridge: Introduce the ArcService class (Closed) Base URL: https://chromium.googlesource.com/a/chromium/src.git@master
Patch Set: Addressed feedback Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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..a21a0f8e37c71f92b4178ce213bc7663e0a08d15 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())));
+ 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(scoped_ptr<ArcService>(
+ new ArcNotificationManager(arc_bridge_service(), account_id)));
}
} // namespace arc

Powered by Google App Engine
This is Rietveld 408576698