Index: chrome/browser/task_manager/providers/arc/arc_process_task_provider.h |
diff --git a/chrome/browser/task_manager/providers/arc/arc_process_task_provider.h b/chrome/browser/task_manager/providers/arc/arc_process_task_provider.h |
index c87bb0b2319120f53aea62af244398d0c9bcb934..b6ef8a57a6e37d9d8f177c6887cab873a4d809bd 100644 |
--- a/chrome/browser/task_manager/providers/arc/arc_process_task_provider.h |
+++ b/chrome/browser/task_manager/providers/arc/arc_process_task_provider.h |
@@ -5,12 +5,11 @@ |
#ifndef CHROME_BROWSER_TASK_MANAGER_PROVIDERS_ARC_ARC_PROCESS_TASK_PROVIDER_H_ |
#define CHROME_BROWSER_TASK_MANAGER_PROVIDERS_ARC_ARC_PROCESS_TASK_PROVIDER_H_ |
-#include <map> |
#include <memory> |
-#include <set> |
-#include <string> |
+#include <unordered_map> |
#include <vector> |
+#include "base/callback.h" |
#include "base/macros.h" |
#include "base/memory/weak_ptr.h" |
#include "base/process/process.h" |
@@ -40,18 +39,28 @@ class ArcProcessTaskProvider : public TaskProvider { |
int route_id) override; |
private: |
+ using ArcTaskMap = |
+ std::unordered_map<base::ProcessId, std::unique_ptr<ArcProcessTask>>; |
+ void ScheduleNextRequest(const base::Closure& task, const int delaySeconds); |
+ |
// Auto-retry if ARC bridge service is not ready. |
- void RequestProcessList(); |
+ void RequestAppProcessList(); |
+ void RequestSystemProcessList(); |
- void OnUpdateProcessList(const std::vector<arc::ArcProcess>& processes); |
+ void UpdateProcessList(ArcTaskMap* pid_to_task, |
+ const std::vector<arc::ArcProcess>& processes); |
+ void OnUpdateAppProcessList(const std::vector<arc::ArcProcess>& processes); |
+ void OnUpdateSystemProcessList(const std::vector<arc::ArcProcess>& processes); |
// task_manager::TaskProvider: |
void StartUpdating() override; |
void StopUpdating() override; |
- void ScheduleNextRequest(); |
+ void ScheduleNextAppRequest(); |
+ void ScheduleNextSystemRequest(); |
- std::map<base::ProcessId, std::unique_ptr<ArcProcessTask>> nspid_to_task_; |
+ ArcTaskMap nspid_to_task_; |
+ ArcTaskMap nspid_to_sys_task_; |
// Whether to continue the periodical polling. |
bool is_updating_; |