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

Side by Side Diff: chrome/browser/safe_browsing/srt_chrome_prompt_impl.h

Issue 2834613003: Adds error handling support for the SwReporter launcher. (Closed)
Patch Set: Created 3 years, 8 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
1 // Copyright 2017 The Chromium Authors. All rights reserved. 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 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_SAFE_BROWSING_SRT_CHROME_PROMPT_IMPL_H_ 5 #ifndef CHROME_BROWSER_SAFE_BROWSING_SRT_CHROME_PROMPT_IMPL_H_
6 #define CHROME_BROWSER_SAFE_BROWSING_SRT_CHROME_PROMPT_IMPL_H_ 6 #define CHROME_BROWSER_SAFE_BROWSING_SRT_CHROME_PROMPT_IMPL_H_
7 7
8 #include "components/chrome_cleaner/public/interfaces/chrome_prompt.mojom.h" 8 #include "components/chrome_cleaner/public/interfaces/chrome_prompt.mojom.h"
9 #include "mojo/public/cpp/bindings/binding.h" 9 #include "mojo/public/cpp/bindings/binding.h"
10 10
11 namespace safe_browsing { 11 namespace safe_browsing {
12 12
13 // Implementation of the ChromePrompt Mojo interface. 13 // Implementation of the ChromePrompt Mojo interface.
14 class ChromePromptImpl : public chrome_cleaner::mojom::ChromePrompt { 14 class ChromePromptImpl : public chrome_cleaner::mojom::ChromePrompt {
15 public: 15 public:
16 // Implements specific mocking actions for tests.
grt (UTC plus 2) 2017/04/21 11:10:58 this is an interface for such, not an implementati
ftirelo 2017/04/24 15:47:45 Done.
17 class TestDelegate {
18 public:
19 virtual void OnPromptUser() = 0;
20 virtual void OnConnectionError() = 0;
21 };
22
16 explicit ChromePromptImpl(chrome_cleaner::mojom::ChromePromptRequest request); 23 explicit ChromePromptImpl(chrome_cleaner::mojom::ChromePromptRequest request);
17 ~ChromePromptImpl() override; 24 ~ChromePromptImpl() override;
18 25
19 void PromptUser( 26 void PromptUser(
20 std::vector<chrome_cleaner::mojom::UwSPtr> removable_uws_found, 27 std::vector<chrome_cleaner::mojom::UwSPtr> removable_uws_found,
21 chrome_cleaner::mojom::ElevationStatus elevation_status, 28 chrome_cleaner::mojom::ElevationStatus elevation_status,
22 const chrome_cleaner::mojom::ChromePrompt::PromptUserCallback& callback) 29 const chrome_cleaner::mojom::ChromePrompt::PromptUserCallback& callback)
23 override; 30 override;
24 31
32 // Handles the case when the remote end has been closed, by performing the
33 // necessary cleanups if the prompt dialog is being shown to the user.
34 void OnConnectionClosed();
35
36 // Handles the case when a mojo::ReportBadMessage has been explicitely
37 // reported.
38 void OnConnectionError(const std::string& message);
39
40 static void SetTestDelegate(TestDelegate* test_delegate);
41
25 private: 42 private:
26 mojo::Binding<chrome_cleaner::mojom::ChromePrompt> binding_; 43 mojo::Binding<chrome_cleaner::mojom::ChromePrompt> binding_;
44 static TestDelegate* test_delegate_;
grt (UTC plus 2) 2017/04/21 11:10:58 is it possible to inject the delegate without usin
ftirelo 2017/04/24 15:47:45 Good idea. Changed as suggested in srt_fetcher_win
27 }; 45 };
grt (UTC plus 2) 2017/04/21 11:10:58 DISALLOW_COPY_AND_ASSIGN?
ftirelo 2017/04/24 15:47:45 Done.
28 46
29 } // namespace safe_browsing 47 } // namespace safe_browsing
30 48
31 #endif // CHROME_BROWSER_SAFE_BROWSING_SRT_CHROME_PROMPT_IMPL_H_ 49 #endif // CHROME_BROWSER_SAFE_BROWSING_SRT_CHROME_PROMPT_IMPL_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698