Index: chrome/browser/safe_browsing/safe_browsing_service.h |
diff --git a/chrome/browser/safe_browsing/safe_browsing_service.h b/chrome/browser/safe_browsing/safe_browsing_service.h |
index d1d355499100f56654c773e772e1a2d32068da10..88dc3d7005b691885210b43a17f43acf8d1ba41a 100644 |
--- a/chrome/browser/safe_browsing/safe_browsing_service.h |
+++ b/chrome/browser/safe_browsing/safe_browsing_service.h |
@@ -59,6 +59,8 @@ class SafeBrowsingUIManager; |
class SafeBrowsingURLRequestContextGetter; |
struct V4ProtocolConfig; |
+enum class V4UsageStatus { V4_DISABLED, V4_INSTANTIATED, V4_ONLY }; |
Nathan Parker
2017/02/08 01:22:43
Add a comment... could point to the v4_feature_lis
vakh (use Gerrit instead)
2017/02/09 03:30:27
Done.
|
+ |
// Construction needs to happen on the main thread. |
// The SafeBrowsingService owns both the UI and Database managers which do |
// the heavylifting of safebrowsing service. Both of these managers stay |
@@ -197,7 +199,8 @@ class SafeBrowsingService : public base::RefCountedThreadSafe< |
protected: |
// Creates the safe browsing service. Need to initialize before using. |
- SafeBrowsingService(); |
+ SafeBrowsingService( |
+ V4UsageStatus v4_usage_status = V4UsageStatus::V4_DISABLED); |
~SafeBrowsingService() override; |
@@ -298,7 +301,12 @@ class SafeBrowsingService : public base::RefCountedThreadSafe< |
// Whether SafeBrowsing needs to be enabled in V4Only mode. In this mode, all |
// SafeBrowsing decisions are made using the PVer4 implementation. |
- bool enabled_v4_only_; |
+ bool use_v4_only_; |
+ |
+ // Whether the PVer4 implementation needs to be instantiated. Note that even |
+ // if the PVer4 implementation has been instantiated, it is used only if |
+ // |use_v4_only_| is true. |
+ bool v4_enabled_; |
// Tracks existing PrefServices, and the safe browsing preference on each. |
// This is used to determine if any profile is currently using the safe |