Index: services/resource_coordinator/public/cpp/memory/process_local_dump_manager_impl.h |
diff --git a/services/resource_coordinator/public/cpp/memory/memory_dump_manager_delegate_impl.h b/services/resource_coordinator/public/cpp/memory/process_local_dump_manager_impl.h |
similarity index 70% |
rename from services/resource_coordinator/public/cpp/memory/memory_dump_manager_delegate_impl.h |
rename to services/resource_coordinator/public/cpp/memory/process_local_dump_manager_impl.h |
index ccff7191f6cde6b194b17d058d22e4396b696166..ccbd48ace65559f5bfbe55e450f81987415b9480 100644 |
--- a/services/resource_coordinator/public/cpp/memory/memory_dump_manager_delegate_impl.h |
+++ b/services/resource_coordinator/public/cpp/memory/process_local_dump_manager_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_PUBLIC_CPP_MEMORY_MEMORY_DUMP_MANAGER_DELEGATE_IMPL_H_ |
-#define SERVICES_RESOURCE_COORDINATOR_PUBLIC_CPP_MEMORY_MEMORY_DUMP_MANAGER_DELEGATE_IMPL_H_ |
+#ifndef SERVICES_RESOURCE_COORDINATOR_PUBLIC_CPP_PROCESS_LOCAL_DUMP_MANAGER_IMPL_H_ |
+#define SERVICES_RESOURCE_COORDINATOR_PUBLIC_CPP_PROCESS_LOCAL_DUMP_MANAGER_IMPL_H_ |
#include "base/single_thread_task_runner.h" |
#include "base/synchronization/lock.h" |
@@ -22,11 +22,9 @@ namespace memory_instrumentation { |
// |
// This cannot just be implemented by the Coordinator service, because there is |
// no Coordinator service in child processes. So, in a child process, the |
-// delegate remotely connects to the Coordinator service. In the browser |
-// process, the delegate locally connects to the Coordinator service. |
-class MemoryDumpManagerDelegateImpl |
- : public base::trace_event::MemoryDumpManagerDelegate, |
- public mojom::ProcessLocalDumpManager { |
+// local dump manager remotely connects to the Coordinator service. In the |
+// browser process, it locally connects to the Coordinator service. |
+class ProcessLocalDumpManagerImpl : public mojom::ProcessLocalDumpManager { |
public: |
class Config { |
public: |
@@ -52,22 +50,23 @@ class MemoryDumpManagerDelegateImpl |
bool is_test_config_; |
}; |
- explicit MemoryDumpManagerDelegateImpl(const Config& config); |
- ~MemoryDumpManagerDelegateImpl() override; |
+ static void InitializeInstance(const Config& config); |
- bool IsCoordinator() const override; |
- |
- // The base::trace_event::MemoryDumpManager calls this. |
+ // Implements base::trace_event::MemoryDumpManager::RequestGlobalDumpCallback. |
+ // NOTE: Use MemoryDumpManager::RequestGlobalDump() to request gobal dump. |
void RequestGlobalMemoryDump( |
const base::trace_event::MemoryDumpRequestArgs& args, |
- const base::trace_event::GlobalMemoryDumpCallback& callback) override; |
+ const base::trace_event::GlobalMemoryDumpCallback& callback); |
Config config() { return config_; } |
void SetAsNonCoordinatorForTesting(); |
private: |
- friend std::default_delete<MemoryDumpManagerDelegateImpl>; // For testing |
- friend class MemoryDumpManagerDelegateImplTest; // For testing |
+ friend std::default_delete<ProcessLocalDumpManagerImpl>; // For testing |
+ friend class ProcessLocalDumpManagerImplTest; // For testing |
+ |
+ ProcessLocalDumpManagerImpl(const Config& config); |
+ ~ProcessLocalDumpManagerImpl() override; |
// The ProcessLocalDumpManager interface. The coordinator calls this. |
void RequestProcessMemoryDump( |
@@ -86,15 +85,11 @@ class MemoryDumpManagerDelegateImpl |
scoped_refptr<base::SingleThreadTaskRunner> task_runner_; |
uint64_t pending_memory_dump_guid_; |
- // Prevents racy access to |pending_memory_dump_guid_|. |
base::Lock pending_memory_dump_guid_lock_; |
- // Prevents racy access to |initialized_|. |
- base::Lock initialized_lock_; |
- |
- DISALLOW_COPY_AND_ASSIGN(MemoryDumpManagerDelegateImpl); |
+ DISALLOW_COPY_AND_ASSIGN(ProcessLocalDumpManagerImpl); |
}; |
} // namespace memory_instrumentation |
-#endif // SERVICES_RESOURCE_COORDINATOR_PUBLIC_CPP_MEMORY_MEMORY_DUMP_MANAGER_DELEGATE_IMPL_H_ |
+#endif // SERVICES_RESOURCE_COORDINATOR_PUBLIC_CPP_PROCESS_LOCAL_DUMP_MANAGER_IMPL_H_ |