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

Unified Diff: services/resource_coordinator/memory/coordinator/process_map.cc

Issue 2891113003: memory instrumentation service: minor cleanups (Closed)
Patch Set: remove dcheck Created 3 years, 7 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: services/resource_coordinator/memory/coordinator/process_map.cc
diff --git a/services/resource_coordinator/memory/coordinator/process_map.cc b/services/resource_coordinator/memory/coordinator/process_map.cc
index b20be808aa9b8d189f828b57303b5b3e475d9388..e6e0618cc180ac64f1becbcdb0c7acf3fc3f8196 100644
--- a/services/resource_coordinator/memory/coordinator/process_map.cc
+++ b/services/resource_coordinator/memory/coordinator/process_map.cc
@@ -15,28 +15,23 @@
namespace memory_instrumentation {
ProcessMap::ProcessMap(service_manager::Connector* connector) : binding_(this) {
- if (connector) {
- service_manager::mojom::ServiceManagerPtr service_manager;
- connector->BindInterface(service_manager::mojom::kServiceName,
- &service_manager);
- service_manager::mojom::ServiceManagerListenerPtr listener;
- service_manager::mojom::ServiceManagerListenerRequest request(
- mojo::MakeRequest(&listener));
- service_manager->AddListener(std::move(listener));
-
- binding_.Bind(std::move(request));
- }
+ if (!connector)
+ return; // Happens in unittests.
+ service_manager::mojom::ServiceManagerPtr service_manager;
+ connector->BindInterface(service_manager::mojom::kServiceName,
+ &service_manager);
+ service_manager::mojom::ServiceManagerListenerPtr listener;
+ service_manager::mojom::ServiceManagerListenerRequest request(
+ mojo::MakeRequest(&listener));
+ service_manager->AddListener(std::move(listener));
+ binding_.Bind(std::move(request));
}
ProcessMap::~ProcessMap() {}
void ProcessMap::OnInit(std::vector<RunningServiceInfoPtr> instances) {
- // This callback should only be called with an empty model.
- DCHECK(instances_.empty());
- for (size_t i = 0; i < instances.size(); ++i) {
- const service_manager::Identity& identity = instances[i]->identity;
- instances_.emplace(identity, instances[i]->pid);
- }
+ for (RunningServiceInfoPtr& instance : instances)
+ OnServiceCreated(std::move(instance));
}
void ProcessMap::OnServiceCreated(RunningServiceInfoPtr instance) {
@@ -53,16 +48,16 @@ void ProcessMap::OnServiceStarted(const service_manager::Identity& identity,
instances_[identity] = pid;
}
+void ProcessMap::OnServiceFailedToStart(const service_manager::Identity&) {}
+
void ProcessMap::OnServiceStopped(const service_manager::Identity& identity) {
instances_.erase(identity);
}
base::ProcessId ProcessMap::GetProcessId(
- service_manager::Identity identity) const {
- auto instance = instances_.find(identity);
- if (instance == instances_.end())
- return base::kNullProcessId;
- return instance->second;
+ const service_manager::Identity& identity) const {
+ auto it = instances_.find(identity);
+ return it != instances_.end() ? it->second : base::kNullProcessId;
}
} // namespace memory_instrumentation

Powered by Google App Engine
This is Rietveld 408576698