Chromium Code Reviews| Index: chrome/browser/safe_browsing/safe_browsing_service.cc |
| diff --git a/chrome/browser/safe_browsing/safe_browsing_service.cc b/chrome/browser/safe_browsing/safe_browsing_service.cc |
| index c2256a62a76ce9f613affdf969223bc7ef31fd40..c6e9ab387174da60cb51c6c5d8d76cbc1945f7cd 100644 |
| --- a/chrome/browser/safe_browsing/safe_browsing_service.cc |
| +++ b/chrome/browser/safe_browsing/safe_browsing_service.cc |
| @@ -257,7 +257,15 @@ SafeBrowsingServiceFactory* SafeBrowsingService::factory_ = NULL; |
| class SafeBrowsingServiceFactoryImpl : public SafeBrowsingServiceFactory { |
| public: |
| SafeBrowsingService* CreateSafeBrowsingService() override { |
| - return new SafeBrowsingService(); |
| + V4UsageStatus v4_usage_status; |
| + if (safe_browsing::V4FeatureList::IsV4OnlyEnabled()) { |
|
Nathan Parker
2017/02/08 01:22:43
This block of code could go into a GetV4UsageStatu
vakh (use Gerrit instead)
2017/02/09 03:30:27
Done.
|
| + v4_usage_status = V4UsageStatus::V4_ONLY; |
| + } else if (safe_browsing::V4FeatureList::IsLocalDatabaseManagerEnabled()) { |
| + v4_usage_status = V4UsageStatus::V4_INSTANTIATED; |
| + } else { |
| + v4_usage_status = V4UsageStatus::V4_DISABLED; |
| + } |
| + return new SafeBrowsingService(v4_usage_status); |
| } |
| private: |
| @@ -292,12 +300,14 @@ SafeBrowsingService* SafeBrowsingService::CreateSafeBrowsingService() { |
| return factory_->CreateSafeBrowsingService(); |
| } |
| -SafeBrowsingService::SafeBrowsingService() |
| +SafeBrowsingService::SafeBrowsingService(V4UsageStatus v4_usage_status) |
| : services_delegate_(ServicesDelegate::Create(this)), |
| estimated_extended_reporting_by_prefs_(SBER_LEVEL_OFF), |
| enabled_(false), |
| enabled_by_prefs_(false), |
| - enabled_v4_only_(safe_browsing::V4FeatureList::IsV4OnlyEnabled()) {} |
| + use_v4_only_(v4_usage_status == V4UsageStatus::V4_ONLY), |
| + v4_enabled_(v4_usage_status == V4UsageStatus::V4_INSTANTIATED || |
| + v4_usage_status == V4UsageStatus::V4_ONLY) {} |
| SafeBrowsingService::~SafeBrowsingService() { |
| // We should have already been shut down. If we're still enabled, then the |
| @@ -315,7 +325,7 @@ void SafeBrowsingService::Initialize() { |
| ui_manager_ = CreateUIManager(); |
| - if (!enabled_v4_only_) { |
| + if (!use_v4_only_) { |
| database_manager_ = CreateDatabaseManager(); |
| } |
| @@ -324,7 +334,7 @@ void SafeBrowsingService::Initialize() { |
| navigation_observer_manager_ = new SafeBrowsingNavigationObserverManager(); |
| } |
| - services_delegate_->Initialize(); |
| + services_delegate_->Initialize(v4_enabled_); |
| services_delegate_->InitializeCsdService(url_request_context_getter_.get()); |
| // Track the safe browsing preference of existing profiles. |
| @@ -415,7 +425,7 @@ SafeBrowsingService::ui_manager() const { |
| const scoped_refptr<SafeBrowsingDatabaseManager>& |
| SafeBrowsingService::database_manager() const { |
| - return enabled_v4_only_ ? v4_local_database_manager() : database_manager_; |
| + return use_v4_only_ ? v4_local_database_manager() : database_manager_; |
| } |
| scoped_refptr<SafeBrowsingNavigationObserverManager> |
| @@ -426,7 +436,7 @@ SafeBrowsingService::navigation_observer_manager() { |
| SafeBrowsingProtocolManager* SafeBrowsingService::protocol_manager() const { |
| DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| #if defined(SAFE_BROWSING_DB_LOCAL) |
| - DCHECK(!enabled_v4_only_); |
| + DCHECK(!use_v4_only_); |
| return protocol_manager_.get(); |
| #else |
| return nullptr; |
| @@ -556,7 +566,7 @@ std::string SafeBrowsingService::GetProtocolConfigClientName() const { |
| SafeBrowsingProtocolManagerDelegate* |
| SafeBrowsingService::GetProtocolManagerDelegate() { |
| #if defined(SAFE_BROWSING_DB_LOCAL) |
| - DCHECK(!enabled_v4_only_); |
| + DCHECK(!use_v4_only_); |
| return static_cast<LocalSafeBrowsingDatabaseManager*>( |
| database_manager_.get()); |
| #else |
| @@ -578,14 +588,14 @@ void SafeBrowsingService::StartOnIOThread( |
| services_delegate_->StartOnIOThread(url_request_context_getter, v4_config); |
| #if defined(SAFE_BROWSING_DB_LOCAL) || defined(SAFE_BROWSING_DB_REMOTE) |
| - if (!enabled_v4_only_) { |
| + if (!use_v4_only_) { |
| DCHECK(database_manager_.get()); |
| database_manager_->StartOnIOThread(url_request_context_getter, v4_config); |
| } |
| #endif |
| #if defined(SAFE_BROWSING_DB_LOCAL) |
| - if (!enabled_v4_only_) { |
| + if (!use_v4_only_) { |
| SafeBrowsingProtocolManagerDelegate* protocol_manager_delegate = |
| GetProtocolManagerDelegate(); |
| if (protocol_manager_delegate) { |
| @@ -605,7 +615,7 @@ void SafeBrowsingService::StopOnIOThread(bool shutdown) { |
| DCHECK_CURRENTLY_ON(BrowserThread::IO); |
| #if defined(SAFE_BROWSING_DB_LOCAL) || defined(SAFE_BROWSING_DB_REMOTE) |
| - if (!enabled_v4_only_) { |
| + if (!use_v4_only_) { |
| database_manager_->StopOnIOThread(shutdown); |
| } |
| #endif |