| Index: services/resource_coordinator/memory_instrumentation/coordinator_impl.h
|
| diff --git a/services/resource_coordinator/memory/coordinator/coordinator_impl.h b/services/resource_coordinator/memory_instrumentation/coordinator_impl.h
|
| similarity index 74%
|
| rename from services/resource_coordinator/memory/coordinator/coordinator_impl.h
|
| rename to services/resource_coordinator/memory_instrumentation/coordinator_impl.h
|
| index 7d78d01c7f2fda5ca163d204447ed332fa2f5f05..26312d08e0ebaf7f35755cbdbf9fb471c9332ca0 100644
|
| --- a/services/resource_coordinator/memory/coordinator/coordinator_impl.h
|
| +++ b/services/resource_coordinator/memory_instrumentation/coordinator_impl.h
|
| @@ -2,8 +2,8 @@
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| -#ifndef SERVICES_RESOURCE_COORDINATOR_MEMORY_COORDINATOR_COORDINATOR_IMPL_H_
|
| -#define SERVICES_RESOURCE_COORDINATOR_MEMORY_COORDINATOR_COORDINATOR_IMPL_H_
|
| +#ifndef SERVICES_RESOURCE_COORDINATOR_MEMORY_INSTRUMENTATION_COORDINATOR_IMPL_H_
|
| +#define SERVICES_RESOURCE_COORDINATOR_MEMORY_INSTRUMENTATION_COORDINATOR_IMPL_H_
|
|
|
| #include <list>
|
| #include <map>
|
| @@ -14,9 +14,9 @@
|
| #include "base/trace_event/memory_dump_request_args.h"
|
| #include "mojo/public/cpp/bindings/binding.h"
|
| #include "mojo/public/cpp/bindings/binding_set.h"
|
| -#include "services/resource_coordinator/memory/coordinator/process_map.h"
|
| -#include "services/resource_coordinator/public/cpp/memory/coordinator.h"
|
| -#include "services/resource_coordinator/public/interfaces/memory/memory_instrumentation.mojom.h"
|
| +#include "services/resource_coordinator/memory_instrumentation/process_map.h"
|
| +#include "services/resource_coordinator/public/cpp/memory_instrumentation/coordinator.h"
|
| +#include "services/resource_coordinator/public/interfaces/memory_instrumentation/memory_instrumentation.mojom.h"
|
|
|
| namespace service_manager {
|
| class Connector;
|
| @@ -48,13 +48,10 @@ class CoordinatorImpl : public Coordinator, public mojom::Coordinator {
|
| }
|
|
|
| // mojom::Coordinator implementation.
|
| - void RegisterProcessLocalDumpManager(
|
| - mojom::ProcessLocalDumpManagerPtr process_manager) override;
|
| - void UnregisterProcessLocalDumpManager(
|
| - mojom::ProcessLocalDumpManager* process_manager);
|
| - void RequestGlobalMemoryDump(
|
| - const base::trace_event::MemoryDumpRequestArgs& args,
|
| - const RequestGlobalMemoryDumpCallback& callback) override;
|
| + void RegisterClientProcess(mojom::ClientProcessPtr) override;
|
| + void UnregisterClientProcess(mojom::ClientProcess*);
|
| + void RequestGlobalMemoryDump(const base::trace_event::MemoryDumpRequestArgs&,
|
| + const RequestGlobalMemoryDumpCallback&) override;
|
|
|
| protected:
|
| // virtual for testing.
|
| @@ -81,17 +78,16 @@ class CoordinatorImpl : public Coordinator, public mojom::Coordinator {
|
|
|
| // Holds the identy and remote reference of registered clients.
|
| struct ClientInfo {
|
| - ClientInfo(const service_manager::Identity&,
|
| - mojom::ProcessLocalDumpManagerPtr);
|
| + ClientInfo(const service_manager::Identity&, mojom::ClientProcessPtr);
|
| ~ClientInfo();
|
|
|
| const service_manager::Identity identity;
|
| - const mojom::ProcessLocalDumpManagerPtr client;
|
| + const mojom::ClientProcessPtr client;
|
| };
|
|
|
| // Callback of RequestProcessMemoryDump.
|
| void OnProcessMemoryDumpResponse(
|
| - mojom::ProcessLocalDumpManager* process_manager,
|
| + mojom::ClientProcess*,
|
| uint64_t dump_guid,
|
| bool success,
|
| mojom::ProcessMemoryDumpPtr process_memory_dump);
|
| @@ -101,9 +97,8 @@ class CoordinatorImpl : public Coordinator, public mojom::Coordinator {
|
|
|
| mojo::BindingSet<mojom::Coordinator, service_manager::Identity> bindings_;
|
|
|
| - // Map of registered clients.
|
| - std::map<mojom::ProcessLocalDumpManager*, std::unique_ptr<ClientInfo>>
|
| - clients_;
|
| + // Map of registered client processes.
|
| + std::map<mojom::ClientProcess*, std::unique_ptr<ClientInfo>> clients_;
|
|
|
| // Oustanding dump requests, enqueued via RequestGlobalMemoryDump().
|
| std::list<QueuedMemoryDumpRequest> queued_memory_dump_requests_;
|
| @@ -111,19 +106,18 @@ class CoordinatorImpl : public Coordinator, public mojom::Coordinator {
|
| // When a dump, requested via RequestGlobalMemoryDump(), is in progress this
|
| // set contains the subset of registerd |clients_| that have not yet replied
|
| // to the local dump request (via RequestProcessMemoryDump()) .
|
| - std::set<mojom::ProcessLocalDumpManager*> pending_clients_for_current_dump_;
|
| + std::set<mojom::ClientProcess*> pending_clients_for_current_dump_;
|
|
|
| int failed_memory_dump_count_;
|
|
|
| const bool initialize_memory_dump_manager_;
|
|
|
| - base::ThreadChecker thread_checker_;
|
| -
|
| // Maintains a map of service_manager::Identity -> pid for registered clients.
|
| std::unique_ptr<ProcessMap> process_map_;
|
|
|
| + THREAD_CHECKER(thread_checker_);
|
| DISALLOW_COPY_AND_ASSIGN(CoordinatorImpl);
|
| };
|
|
|
| } // namespace memory_instrumentation
|
| -#endif // SERVICES_RESOURCE_COORDINATOR_MEMORY_COORDINATOR_COORDINATOR_IMPL_H_
|
| +#endif // SERVICES_RESOURCE_COORDINATOR_MEMORY_INSTRUMENTATION_COORDINATOR_IMPL_H_
|
|
|