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

Side by Side Diff: components/safe_browsing_db/remote_database_manager.h

Issue 1700943003: SafeBrowsing: DatabaseManager owns the V4GetHashProtocolManager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Pass NULL for the url_context_getter Created 4 years, 10 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 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 // Implementation of the SafeBrowsingDatabaseManager that sends URLs 5 // Implementation of the SafeBrowsingDatabaseManager that sends URLs
6 // via IPC to a database that chromium doesn't manage locally. 6 // via IPC to a database that chromium doesn't manage locally.
7 7
8 #ifndef COMPONENTS_SAFE_BROWSING_DB_REMOTE_DATABASE_MANAGER_H_ 8 #ifndef COMPONENTS_SAFE_BROWSING_DB_REMOTE_DATABASE_MANAGER_H_
9 #define COMPONENTS_SAFE_BROWSING_DB_REMOTE_DATABASE_MANAGER_H_ 9 #define COMPONENTS_SAFE_BROWSING_DB_REMOTE_DATABASE_MANAGER_H_
10 10
11 #include <set> 11 #include <set>
12 #include <string> 12 #include <string>
13 #include <vector> 13 #include <vector>
14 14
15 #include "base/macros.h" 15 #include "base/macros.h"
16 #include "base/memory/ref_counted.h" 16 #include "base/memory/ref_counted.h"
17 #include "base/memory/weak_ptr.h" 17 #include "base/memory/weak_ptr.h"
18 #include "components/safe_browsing_db/database_manager.h" 18 #include "components/safe_browsing_db/database_manager.h"
19 #include "url/gurl.h" 19 #include "url/gurl.h"
20 20
21 namespace net {
22 class URLRequestContextGetter;
23 }
24
21 namespace safe_browsing { 25 namespace safe_browsing {
22 26
27 struct V4GetHashProtocolConfig;
28
23 // An implementation that proxies requests to a service outside of Chromium. 29 // An implementation that proxies requests to a service outside of Chromium.
24 // Does not manage a local database. 30 // Does not manage a local database.
25 class RemoteSafeBrowsingDatabaseManager : public SafeBrowsingDatabaseManager { 31 class RemoteSafeBrowsingDatabaseManager : public SafeBrowsingDatabaseManager {
26 public: 32 public:
33 // Use this constructor for testing only.
34 RemoteSafeBrowsingDatabaseManager();
35
27 // Construct RemoteSafeBrowsingDatabaseManager. 36 // Construct RemoteSafeBrowsingDatabaseManager.
28 // Must be initialized by calling StartOnIOThread() before using. 37 // Must be initialized by calling StartOnIOThread() before using.
29 RemoteSafeBrowsingDatabaseManager(); 38 RemoteSafeBrowsingDatabaseManager(
39 net::URLRequestContextGetter* request_context_getter,
40 const V4GetHashProtocolConfig& config);
30 41
31 // 42 //
32 // SafeBrowsingDatabaseManager implementation 43 // SafeBrowsingDatabaseManager implementation
33 // 44 //
34 45
35 bool IsSupported() const override; 46 bool IsSupported() const override;
36 safe_browsing::ThreatSource GetThreatSource() const override; 47 safe_browsing::ThreatSource GetThreatSource() const override;
37 bool ChecksAreAlwaysAsync() const override; 48 bool ChecksAreAlwaysAsync() const override;
38 bool CanCheckResourceType(content::ResourceType resource_type) const override; 49 bool CanCheckResourceType(content::ResourceType resource_type) const override;
39 bool CanCheckUrl(const GURL& url) const override; 50 bool CanCheckUrl(const GURL& url) const override;
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 82
72 std::set<content::ResourceType> resource_types_to_check_; 83 std::set<content::ResourceType> resource_types_to_check_;
73 84
74 friend class base::RefCountedThreadSafe<RemoteSafeBrowsingDatabaseManager>; 85 friend class base::RefCountedThreadSafe<RemoteSafeBrowsingDatabaseManager>;
75 DISALLOW_COPY_AND_ASSIGN(RemoteSafeBrowsingDatabaseManager); 86 DISALLOW_COPY_AND_ASSIGN(RemoteSafeBrowsingDatabaseManager);
76 }; // class RemoteSafeBrowsingDatabaseManager 87 }; // class RemoteSafeBrowsingDatabaseManager
77 88
78 } // namespace safe_browsing 89 } // namespace safe_browsing
79 90
80 #endif // COMPONENTS_SAFE_BROWSING_DB_REMOTE_DATABASE_MANAGER_H_ 91 #endif // COMPONENTS_SAFE_BROWSING_DB_REMOTE_DATABASE_MANAGER_H_
OLDNEW
« no previous file with comments | « components/safe_browsing_db/database_manager.cc ('k') | components/safe_browsing_db/remote_database_manager.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698