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

Side by Side Diff: chrome/browser/safe_browsing/chrome_cleaner/chrome_cleaner_runner_win.h

Issue 2890023005: Chrome Cleaner UI: reporter no longer uses mojo. (Closed)
Patch Set: Add ChromeCleanerRunner class 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 unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CHROME_BROWSER_SAFE_BROWSING_CHROME_CLEANER_CHROME_CLEANER_RUNNER_WIN_H_
6 #define CHROME_BROWSER_SAFE_BROWSING_CHROME_CLEANER_CHROME_CLEANER_RUNNER_WIN_H_
7
8 #include <limits>
9 #include <memory>
10 #include <set>
11 #include <string>
12
13 #include "base/callback.h"
14 #include "base/command_line.h"
15 #include "base/files/file_path.h"
16 #include "base/memory/ref_counted.h"
17 #include "chrome/browser/safe_browsing/chrome_cleaner/srt_chrome_prompt_impl.h"
18 #include "components/chrome_cleaner/public/interfaces/chrome_prompt.mojom.h"
19
20 namespace safe_browsing {
21
22 void RunChromeCleanerAndReplyWithExitCode(
ftirelo 2017/05/18 18:27:51 Since we need to forward some switches from the re
alito 2017/05/18 23:01:17 Done.
23 const base::FilePath& executable_path,
24 bool metrics_enabled,
25 bool sber_enabled,
ftirelo 2017/05/18 18:27:51 As discussed, this is only used today for logging
alito 2017/05/18 23:01:17 Done. Also renamed the variable to cleaner_logs_en
26 ChromePromptImpl::OnPromptUserCallback on_prompt_user,
27 base::OnceClosure on_connection_closed,
28 base::OnceClosure on_connection_error,
29 base::Callback<void(int /*exit code*/)> done_callback);
30
31 class ChromeCleanerRunner
ftirelo 2017/05/18 18:27:51 Please document lifetime for this object.
alito 2017/05/18 23:01:17 Done. Added a bunch of documentation.
32 : public base::RefCountedThreadSafe<ChromeCleanerRunner> {
33 public:
34 static constexpr int kNotLaunchedExitCode = std::numeric_limits<int>::max();
35
36 ChromeCleanerRunner(const base::FilePath& executable_path,
37 bool metrics_enabled,
38 bool sber_enabled,
39 ChromePromptImpl::OnPromptUserCallback on_prompt_user,
40 base::OnceClosure on_connection_closed,
41 base::OnceClosure on_connection_error);
42
43 int LaunchAndWaitForExitOnBackgroundThread();
44
45 private:
46 friend class base::RefCountedThreadSafe<ChromeCleanerRunner>;
47 ~ChromeCleanerRunner();
48
49 void CreateChromePromptImpl(
50 chrome_cleaner::mojom::ChromePromptRequest chrome_prompt_request);
51 void ReleaseChromePromptImpl();
52
53 void OnPromptUser(std::unique_ptr<std::set<base::FilePath>> files_to_delete,
54 chrome_cleaner::mojom::ChromePrompt::PromptUserCallback
55 prompt_user_callback);
56 void OnConnectionClosed();
57 void OnConnectionError(const std::string& error);
58
59 base::CommandLine command_line_;
60 ChromePromptImpl::OnPromptUserCallback on_prompt_user_;
61 base::OnceClosure on_connection_closed_;
62 base::OnceClosure on_connection_error_;
63
64 std::unique_ptr<ChromePromptImpl> chrome_prompt_impl_;
65 };
66
67 } // namespace safe_browsing
68
69 #endif // CHROME_BROWSER_SAFE_BROWSING_CHROME_CLEANER_CHROME_CLEANER_RUNNER_WIN _H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698