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

Side by Side Diff: chrome/browser/extensions/extension_system_impl.cc

Issue 503033002: Move ExtensionWarningService and ExtensionsWarningSet to extensions. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@3_web_view_internal
Patch Set: rebase Created 6 years, 3 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 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"
11 #include "base/memory/weak_ptr.h" 11 #include "base/memory/weak_ptr.h"
12 #include "base/metrics/field_trial.h" 12 #include "base/metrics/field_trial.h"
13 #include "base/metrics/histogram.h" 13 #include "base/metrics/histogram.h"
14 #include "base/strings/string_tokenizer.h" 14 #include "base/strings/string_tokenizer.h"
15 #include "base/strings/string_util.h" 15 #include "base/strings/string_util.h"
16 #include "chrome/browser/browser_process.h" 16 #include "chrome/browser/browser_process.h"
17 #include "chrome/browser/content_settings/cookie_settings.h" 17 #include "chrome/browser/content_settings/cookie_settings.h"
18 #include "chrome/browser/extensions/blacklist.h" 18 #include "chrome/browser/extensions/blacklist.h"
19 #include "chrome/browser/extensions/component_loader.h" 19 #include "chrome/browser/extensions/component_loader.h"
20 #include "chrome/browser/extensions/declarative_user_script_master.h" 20 #include "chrome/browser/extensions/declarative_user_script_master.h"
21 #include "chrome/browser/extensions/error_console/error_console.h" 21 #include "chrome/browser/extensions/error_console/error_console.h"
22 #include "chrome/browser/extensions/extension_error_reporter.h" 22 #include "chrome/browser/extensions/extension_error_reporter.h"
23 #include "chrome/browser/extensions/extension_service.h" 23 #include "chrome/browser/extensions/extension_service.h"
24 #include "chrome/browser/extensions/extension_system_factory.h" 24 #include "chrome/browser/extensions/extension_system_factory.h"
25 #include "chrome/browser/extensions/extension_util.h" 25 #include "chrome/browser/extensions/extension_util.h"
26 #include "chrome/browser/extensions/extension_warning_badge_service.h" 26 #include "chrome/browser/extensions/extension_warning_badge_service.h"
27 #include "chrome/browser/extensions/extension_warning_set.h"
28 #include "chrome/browser/extensions/install_verifier.h" 27 #include "chrome/browser/extensions/install_verifier.h"
29 #include "chrome/browser/extensions/navigation_observer.h" 28 #include "chrome/browser/extensions/navigation_observer.h"
30 #include "chrome/browser/extensions/shared_module_service.h" 29 #include "chrome/browser/extensions/shared_module_service.h"
31 #include "chrome/browser/extensions/shared_user_script_master.h" 30 #include "chrome/browser/extensions/shared_user_script_master.h"
32 #include "chrome/browser/extensions/standard_management_policy_provider.h" 31 #include "chrome/browser/extensions/standard_management_policy_provider.h"
33 #include "chrome/browser/extensions/state_store_notification_observer.h" 32 #include "chrome/browser/extensions/state_store_notification_observer.h"
34 #include "chrome/browser/extensions/unpacked_installer.h" 33 #include "chrome/browser/extensions/unpacked_installer.h"
35 #include "chrome/browser/extensions/updater/manifest_fetch_data.h" 34 #include "chrome/browser/extensions/updater/manifest_fetch_data.h"
36 #include "chrome/browser/profiles/profile.h" 35 #include "chrome/browser/profiles/profile.h"
37 #include "chrome/browser/profiles/profile_manager.h" 36 #include "chrome/browser/profiles/profile_manager.h"
(...skipping 14 matching lines...) Expand all
52 #include "extensions/browser/extension_pref_value_map_factory.h" 51 #include "extensions/browser/extension_pref_value_map_factory.h"
53 #include "extensions/browser/extension_prefs.h" 52 #include "extensions/browser/extension_prefs.h"
54 #include "extensions/browser/extension_registry.h" 53 #include "extensions/browser/extension_registry.h"
55 #include "extensions/browser/info_map.h" 54 #include "extensions/browser/info_map.h"
56 #include "extensions/browser/lazy_background_task_queue.h" 55 #include "extensions/browser/lazy_background_task_queue.h"
57 #include "extensions/browser/management_policy.h" 56 #include "extensions/browser/management_policy.h"
58 #include "extensions/browser/process_manager.h" 57 #include "extensions/browser/process_manager.h"
59 #include "extensions/browser/quota_service.h" 58 #include "extensions/browser/quota_service.h"
60 #include "extensions/browser/runtime_data.h" 59 #include "extensions/browser/runtime_data.h"
61 #include "extensions/browser/state_store.h" 60 #include "extensions/browser/state_store.h"
61 #include "extensions/browser/warning_service.h"
62 #include "extensions/browser/warning_set.h"
62 #include "extensions/common/constants.h" 63 #include "extensions/common/constants.h"
63 #include "extensions/common/extension.h" 64 #include "extensions/common/extension.h"
64 #include "extensions/common/manifest.h" 65 #include "extensions/common/manifest.h"
65 #include "net/base/escape.h" 66 #include "net/base/escape.h"
66 67
67 #if defined(ENABLE_NOTIFICATIONS) 68 #if defined(ENABLE_NOTIFICATIONS)
68 #include "chrome/browser/notifications/desktop_notification_service.h" 69 #include "chrome/browser/notifications/desktop_notification_service.h"
69 #include "chrome/browser/notifications/desktop_notification_service_factory.h" 70 #include "chrome/browser/notifications/desktop_notification_service_factory.h"
70 #include "ui/message_center/notifier_settings.h" 71 #include "ui/message_center/notifier_settings.h"
71 #endif 72 #endif
(...skipping 304 matching lines...) Expand 10 before | Expand all | Expand 10 after
376 base::ThreadRestrictions::ScopedAllowIO allow_io; 377 base::ThreadRestrictions::ScopedAllowIO allow_io;
377 extension_service_->component_loader()->AddOrReplace( 378 extension_service_->component_loader()->AddOrReplace(
378 base::FilePath(t.token())); 379 base::FilePath(t.token()));
379 } 380 }
380 } 381 }
381 extension_service_->Init(); 382 extension_service_->Init();
382 383
383 // Make the chrome://extension-icon/ resource available. 384 // Make the chrome://extension-icon/ resource available.
384 content::URLDataSource::Add(profile_, new ExtensionIconSource(profile_)); 385 content::URLDataSource::Add(profile_, new ExtensionIconSource(profile_));
385 386
386 extension_warning_service_.reset(new ExtensionWarningService(profile_)); 387 warning_service_.reset(new WarningService(profile_));
387 extension_warning_badge_service_.reset( 388 extension_warning_badge_service_.reset(
388 new ExtensionWarningBadgeService(profile_)); 389 new ExtensionWarningBadgeService(profile_));
389 extension_warning_service_->AddObserver( 390 warning_service_->AddObserver(
390 extension_warning_badge_service_.get()); 391 extension_warning_badge_service_.get());
391 error_console_.reset(new ErrorConsole(profile_)); 392 error_console_.reset(new ErrorConsole(profile_));
392 quota_service_.reset(new QuotaService); 393 quota_service_.reset(new QuotaService);
393 394
394 if (extensions_enabled) { 395 if (extensions_enabled) {
395 // Load any extensions specified with --load-extension. 396 // Load any extensions specified with --load-extension.
396 // TODO(yoz): Seems like this should move into ExtensionService::Init. 397 // TODO(yoz): Seems like this should move into ExtensionService::Init.
397 // But maybe it's no longer important. 398 // But maybe it's no longer important.
398 if (command_line->HasSwitch(switches::kLoadExtension)) { 399 if (command_line->HasSwitch(switches::kLoadExtension)) {
399 CommandLine::StringType path_list = command_line->GetSwitchValueNative( 400 CommandLine::StringType path_list = command_line->GetSwitchValueNative(
400 switches::kLoadExtension); 401 switches::kLoadExtension);
401 base::StringTokenizerT<CommandLine::StringType, 402 base::StringTokenizerT<CommandLine::StringType,
402 CommandLine::StringType::const_iterator> t(path_list, 403 CommandLine::StringType::const_iterator> t(path_list,
403 FILE_PATH_LITERAL(",")); 404 FILE_PATH_LITERAL(","));
404 while (t.GetNext()) { 405 while (t.GetNext()) {
405 std::string extension_id; 406 std::string extension_id;
406 UnpackedInstaller::Create(extension_service_.get())-> 407 UnpackedInstaller::Create(extension_service_.get())->
407 LoadFromCommandLine(base::FilePath(t.token()), &extension_id); 408 LoadFromCommandLine(base::FilePath(t.token()), &extension_id);
408 } 409 }
409 } 410 }
410 } 411 }
411 } 412 }
412 413
413 void ExtensionSystemImpl::Shared::Shutdown() { 414 void ExtensionSystemImpl::Shared::Shutdown() {
414 if (extension_warning_service_) { 415 if (warning_service_) {
415 extension_warning_service_->RemoveObserver( 416 warning_service_->RemoveObserver(
416 extension_warning_badge_service_.get()); 417 extension_warning_badge_service_.get());
417 } 418 }
418 if (content_verifier_.get()) 419 if (content_verifier_.get())
419 content_verifier_->Shutdown(); 420 content_verifier_->Shutdown();
420 if (extension_service_) 421 if (extension_service_)
421 extension_service_->Shutdown(); 422 extension_service_->Shutdown();
422 } 423 }
423 424
424 StateStore* ExtensionSystemImpl::Shared::state_store() { 425 StateStore* ExtensionSystemImpl::Shared::state_store() {
425 return state_store_.get(); 426 return state_store_.get();
(...skipping 28 matching lines...) Expand all
454 455
455 LazyBackgroundTaskQueue* 456 LazyBackgroundTaskQueue*
456 ExtensionSystemImpl::Shared::lazy_background_task_queue() { 457 ExtensionSystemImpl::Shared::lazy_background_task_queue() {
457 return lazy_background_task_queue_.get(); 458 return lazy_background_task_queue_.get();
458 } 459 }
459 460
460 EventRouter* ExtensionSystemImpl::Shared::event_router() { 461 EventRouter* ExtensionSystemImpl::Shared::event_router() {
461 return event_router_.get(); 462 return event_router_.get();
462 } 463 }
463 464
464 ExtensionWarningService* ExtensionSystemImpl::Shared::warning_service() { 465 WarningService* ExtensionSystemImpl::Shared::warning_service() {
465 return extension_warning_service_.get(); 466 return warning_service_.get();
466 } 467 }
467 468
468 Blacklist* ExtensionSystemImpl::Shared::blacklist() { 469 Blacklist* ExtensionSystemImpl::Shared::blacklist() {
469 return blacklist_.get(); 470 return blacklist_.get();
470 } 471 }
471 472
472 ErrorConsole* ExtensionSystemImpl::Shared::error_console() { 473 ErrorConsole* ExtensionSystemImpl::Shared::error_console() {
473 return error_console_.get(); 474 return error_console_.get();
474 } 475 }
475 476
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
572 InfoMap* ExtensionSystemImpl::info_map() { return shared_->info_map(); } 573 InfoMap* ExtensionSystemImpl::info_map() { return shared_->info_map(); }
573 574
574 LazyBackgroundTaskQueue* ExtensionSystemImpl::lazy_background_task_queue() { 575 LazyBackgroundTaskQueue* ExtensionSystemImpl::lazy_background_task_queue() {
575 return shared_->lazy_background_task_queue(); 576 return shared_->lazy_background_task_queue();
576 } 577 }
577 578
578 EventRouter* ExtensionSystemImpl::event_router() { 579 EventRouter* ExtensionSystemImpl::event_router() {
579 return shared_->event_router(); 580 return shared_->event_router();
580 } 581 }
581 582
582 ExtensionWarningService* ExtensionSystemImpl::warning_service() { 583 WarningService* ExtensionSystemImpl::warning_service() {
583 return shared_->warning_service(); 584 return shared_->warning_service();
584 } 585 }
585 586
586 Blacklist* ExtensionSystemImpl::blacklist() { 587 Blacklist* ExtensionSystemImpl::blacklist() {
587 return shared_->blacklist(); 588 return shared_->blacklist();
588 } 589 }
589 590
590 const OneShotEvent& ExtensionSystemImpl::ready() const { 591 const OneShotEvent& ExtensionSystemImpl::ready() const {
591 return shared_->ready(); 592 return shared_->ready();
592 } 593 }
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
650 void ExtensionSystemImpl::UnregisterExtensionWithRequestContexts( 651 void ExtensionSystemImpl::UnregisterExtensionWithRequestContexts(
651 const std::string& extension_id, 652 const std::string& extension_id,
652 const UnloadedExtensionInfo::Reason reason) { 653 const UnloadedExtensionInfo::Reason reason) {
653 BrowserThread::PostTask( 654 BrowserThread::PostTask(
654 BrowserThread::IO, 655 BrowserThread::IO,
655 FROM_HERE, 656 FROM_HERE,
656 base::Bind(&InfoMap::RemoveExtension, info_map(), extension_id, reason)); 657 base::Bind(&InfoMap::RemoveExtension, info_map(), extension_id, reason));
657 } 658 }
658 659
659 } // namespace extensions 660 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_system_impl.h ('k') | chrome/browser/extensions/extension_warning_badge_service.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698