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

Unified Diff: services/service_manager/tests/lifecycle/app_client.cc

Issue 2476063002: Service Manager: Rework Service and ServiceContext lifetime (Closed)
Patch Set: . Created 4 years, 1 month 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: services/service_manager/tests/lifecycle/app_client.cc
diff --git a/services/service_manager/tests/lifecycle/app_client.cc b/services/service_manager/tests/lifecycle/app_client.cc
index dad29b95a048183711002975d1dec74cb2664143..71d7c413ae230441adf7bda6cf2109892bb54a75 100644
--- a/services/service_manager/tests/lifecycle/app_client.cc
+++ b/services/service_manager/tests/lifecycle/app_client.cc
@@ -4,6 +4,7 @@
#include "services/service_manager/tests/lifecycle/app_client.h"
+#include "base/macros.h"
#include "services/service_manager/public/cpp/interface_registry.h"
#include "services/service_manager/public/cpp/service_context.h"
@@ -11,18 +12,21 @@ namespace service_manager {
namespace test {
AppClient::AppClient() {}
-AppClient::AppClient(service_manager::mojom::ServiceRequest request)
- : context_(new ServiceContext(this, std::move(request))) {}
+
AppClient::~AppClient() {}
+void AppClient::OnStart(ServiceContext* context) {
+ context_ = context;
+}
+
bool AppClient::OnConnect(const ServiceInfo& remote_info,
InterfaceRegistry* registry) {
- registry->AddInterface<LifecycleControl>(this);
+ registry->AddInterface<mojom::LifecycleControl>(this);
return true;
}
void AppClient::Create(const Identity& remote_identity,
- LifecycleControlRequest request) {
+ mojom::LifecycleControlRequest request) {
bindings_.AddBinding(this, std::move(request));
}
@@ -42,9 +46,7 @@ void AppClient::Crash() {
}
void AppClient::CloseServiceManagerConnection() {
- DCHECK(runner_);
- runner_->DestroyServiceContext();
- // Quit the app once the caller goes away.
+ context_->DisconnectFromServiceManager();
bindings_.set_connection_error_handler(
base::Bind(&AppClient::BindingLost, base::Unretained(this)));
}
« no previous file with comments | « services/service_manager/tests/lifecycle/app_client.h ('k') | services/service_manager/tests/lifecycle/lifecycle_exe.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698