| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "chrome/browser/extensions/extension_system_impl.h" | 5 #include "chrome/browser/extensions/extension_system_impl.h" |
| 6 | 6 |
| 7 #include "base/base_switches.h" | 7 #include "base/base_switches.h" |
| 8 #include "base/bind.h" | 8 #include "base/bind.h" |
| 9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
| 10 #include "base/files/file_path.h" | 10 #include "base/files/file_path.h" |
| (...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 308 declarative_user_script_manager_.reset( | 308 declarative_user_script_manager_.reset( |
| 309 new DeclarativeUserScriptManager(profile_)); | 309 new DeclarativeUserScriptManager(profile_)); |
| 310 | 310 |
| 311 // ExtensionService depends on RuntimeData. | 311 // ExtensionService depends on RuntimeData. |
| 312 runtime_data_.reset(new RuntimeData(ExtensionRegistry::Get(profile_))); | 312 runtime_data_.reset(new RuntimeData(ExtensionRegistry::Get(profile_))); |
| 313 | 313 |
| 314 bool autoupdate_enabled = !profile_->IsGuestSession(); | 314 bool autoupdate_enabled = !profile_->IsGuestSession(); |
| 315 #if defined(OS_CHROMEOS) | 315 #if defined(OS_CHROMEOS) |
| 316 if (!extensions_enabled) | 316 if (!extensions_enabled) |
| 317 autoupdate_enabled = false; | 317 autoupdate_enabled = false; |
| 318 #endif | 318 #endif // defined(OS_CHROMEOS) |
| 319 extension_service_.reset(new ExtensionService( | 319 extension_service_.reset(new ExtensionService( |
| 320 profile_, base::CommandLine::ForCurrentProcess(), | 320 profile_, base::CommandLine::ForCurrentProcess(), |
| 321 profile_->GetPath().AppendASCII(extensions::kInstallDirectoryName), | 321 profile_->GetPath().AppendASCII(extensions::kInstallDirectoryName), |
| 322 ExtensionPrefs::Get(profile_), Blacklist::Get(profile_), | 322 ExtensionPrefs::Get(profile_), Blacklist::Get(profile_), |
| 323 autoupdate_enabled, extensions_enabled, &ready_)); | 323 autoupdate_enabled, extensions_enabled, &ready_)); |
| 324 | 324 |
| 325 // These services must be registered before the ExtensionService tries to | 325 // These services must be registered before the ExtensionService tries to |
| 326 // load any extensions. | 326 // load any extensions. |
| 327 { | 327 { |
| 328 install_verifier_.reset( | 328 install_verifier_.reset( |
| 329 new InstallVerifier(ExtensionPrefs::Get(profile_), profile_)); | 329 new InstallVerifier(ExtensionPrefs::Get(profile_), profile_)); |
| 330 install_verifier_->Init(); | 330 install_verifier_->Init(); |
| 331 content_verifier_ = new ContentVerifier( | 331 content_verifier_ = new ContentVerifier( |
| 332 profile_, new ContentVerifierDelegateImpl(extension_service_.get())); | 332 profile_, new ContentVerifierDelegateImpl(extension_service_.get())); |
| 333 ContentVerifierDelegate::Mode mode = | 333 ContentVerifierDelegate::Mode mode = |
| 334 ContentVerifierDelegateImpl::GetDefaultMode(); | 334 ContentVerifierDelegateImpl::GetDefaultMode(); |
| 335 #if defined(OS_CHROMEOS) | 335 #if defined(OS_CHROMEOS) |
| 336 mode = std::max(mode, ContentVerifierDelegate::BOOTSTRAP); | 336 mode = std::max(mode, ContentVerifierDelegate::BOOTSTRAP); |
| 337 #endif | 337 #endif // defined(OS_CHROMEOS) |
| 338 if (mode >= ContentVerifierDelegate::BOOTSTRAP) | 338 if (mode >= ContentVerifierDelegate::BOOTSTRAP) |
| 339 content_verifier_->Start(); | 339 content_verifier_->Start(); |
| 340 info_map()->SetContentVerifier(content_verifier_.get()); | 340 info_map()->SetContentVerifier(content_verifier_.get()); |
| 341 | 341 |
| 342 management_policy_.reset(new ManagementPolicy); | 342 management_policy_.reset(new ManagementPolicy); |
| 343 RegisterManagementPolicyProviders(); | 343 RegisterManagementPolicyProviders(); |
| 344 } | 344 } |
| 345 | 345 |
| 346 bool skip_session_extensions = false; | 346 bool skip_session_extensions = false; |
| 347 #if defined(OS_CHROMEOS) | 347 #if defined(OS_CHROMEOS) |
| (...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 594 void ExtensionSystemImpl::UnregisterExtensionWithRequestContexts( | 594 void ExtensionSystemImpl::UnregisterExtensionWithRequestContexts( |
| 595 const std::string& extension_id, | 595 const std::string& extension_id, |
| 596 const UnloadedExtensionInfo::Reason reason) { | 596 const UnloadedExtensionInfo::Reason reason) { |
| 597 BrowserThread::PostTask( | 597 BrowserThread::PostTask( |
| 598 BrowserThread::IO, | 598 BrowserThread::IO, |
| 599 FROM_HERE, | 599 FROM_HERE, |
| 600 base::Bind(&InfoMap::RemoveExtension, info_map(), extension_id, reason)); | 600 base::Bind(&InfoMap::RemoveExtension, info_map(), extension_id, reason)); |
| 601 } | 601 } |
| 602 | 602 |
| 603 } // namespace extensions | 603 } // namespace extensions |
| OLD | NEW |