OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 #include "base/feature_list.h" | 5 #include "base/feature_list.h" |
6 #include "components/safe_browsing_db/v4_feature_list.h" | 6 #include "components/safe_browsing_db/v4_feature_list.h" |
7 | 7 |
8 namespace safe_browsing { | 8 namespace safe_browsing { |
9 | 9 |
10 namespace V4FeatureList { | 10 namespace V4FeatureList { |
11 | 11 |
12 namespace { | 12 namespace { |
13 | |
14 const base::Feature kLocalDatabaseManagerEnabled{ | 13 const base::Feature kLocalDatabaseManagerEnabled{ |
15 "SafeBrowsingV4LocalDatabaseManagerEnabled", | 14 "SafeBrowsingV4LocalDatabaseManagerEnabled", |
16 base::FEATURE_DISABLED_BY_DEFAULT}; | 15 base::FEATURE_DISABLED_BY_DEFAULT}; |
17 | 16 |
| 17 const base::Feature kV4HybridEnabled{"SafeBrowsingV4HybridEnabled", |
| 18 base::FEATURE_DISABLED_BY_DEFAULT}; |
| 19 |
18 const base::Feature kV4OnlyEnabled{"SafeBrowsingV4OnlyEnabled", | 20 const base::Feature kV4OnlyEnabled{"SafeBrowsingV4OnlyEnabled", |
19 base::FEATURE_DISABLED_BY_DEFAULT}; | 21 base::FEATURE_DISABLED_BY_DEFAULT}; |
20 | 22 |
| 23 } // namespace |
| 24 |
| 25 bool IsLocalDatabaseManagerEnabled() { |
| 26 return base::FeatureList::IsEnabled(kLocalDatabaseManagerEnabled) || |
| 27 IsV4HybridEnabled() || IsV4OnlyEnabled(); |
| 28 } |
| 29 |
| 30 bool IsV4HybridEnabled() { |
| 31 return base::FeatureList::IsEnabled(kV4HybridEnabled); |
| 32 } |
| 33 |
21 bool IsV4OnlyEnabled() { | 34 bool IsV4OnlyEnabled() { |
| 35 // TODO(vakh): Enable this only when all the lists can be synced from the |
| 36 // server. See http://b/33182208 |
22 return base::FeatureList::IsEnabled(kV4OnlyEnabled); | 37 return base::FeatureList::IsEnabled(kV4OnlyEnabled); |
23 } | 38 } |
24 | 39 |
25 bool IsLocalDatabaseManagerEnabled() { | |
26 return base::FeatureList::IsEnabled(kLocalDatabaseManagerEnabled) || | |
27 IsV4OnlyEnabled(); | |
28 } | |
29 | |
30 } // namespace | |
31 | |
32 V4UsageStatus GetV4UsageStatus() { | |
33 V4UsageStatus v4_usage_status; | |
34 if (safe_browsing::V4FeatureList::IsV4OnlyEnabled()) { | |
35 v4_usage_status = V4UsageStatus::V4_ONLY; | |
36 } else if (safe_browsing::V4FeatureList::IsLocalDatabaseManagerEnabled()) { | |
37 v4_usage_status = V4UsageStatus::V4_INSTANTIATED; | |
38 } else { | |
39 v4_usage_status = V4UsageStatus::V4_DISABLED; | |
40 } | |
41 return v4_usage_status; | |
42 } | |
43 | |
44 } // namespace V4FeatureList | 40 } // namespace V4FeatureList |
45 | 41 |
46 } // namespace safe_browsing | 42 } // namespace safe_browsing |
OLD | NEW |