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

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

Issue 959413003: Implement <webview>.addContentScript/removeContentScript API [1] (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Make the API work before the first navigation of guest. Created 5 years, 8 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/test_extension_system.h" 5 #include "chrome/browser/extensions/test_extension_system.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/prefs/pref_service.h" 8 #include "base/prefs/pref_service.h"
9 #include "chrome/browser/extensions/blacklist.h" 9 #include "chrome/browser/extensions/blacklist.h"
10 #include "chrome/browser/extensions/error_console/error_console.h" 10 #include "chrome/browser/extensions/error_console/error_console.h"
11 #include "chrome/browser/extensions/extension_management.h" 11 #include "chrome/browser/extensions/extension_management.h"
12 #include "chrome/browser/extensions/extension_service.h" 12 #include "chrome/browser/extensions/extension_service.h"
13 #include "chrome/browser/extensions/install_verifier.h" 13 #include "chrome/browser/extensions/install_verifier.h"
14 #include "chrome/browser/extensions/shared_module_service.h" 14 #include "chrome/browser/extensions/shared_module_service.h"
15 #include "chrome/browser/profiles/profile.h" 15 #include "chrome/browser/profiles/profile.h"
16 #include "chrome/common/chrome_switches.h" 16 #include "chrome/common/chrome_switches.h"
17 #include "content/public/browser/browser_thread.h" 17 #include "content/public/browser/browser_thread.h"
18 #include "extensions/browser/declarative_user_script_manager.h" 18 #include "extensions/browser/declarative_user_script_manager.h"
19 #include "extensions/browser/event_router.h" 19 #include "extensions/browser/event_router.h"
20 #include "extensions/browser/extension_pref_value_map.h" 20 #include "extensions/browser/extension_pref_value_map.h"
21 #include "extensions/browser/extension_pref_value_map_factory.h" 21 #include "extensions/browser/extension_pref_value_map_factory.h"
22 #include "extensions/browser/extension_prefs.h" 22 #include "extensions/browser/extension_prefs.h"
23 #include "extensions/browser/extension_prefs_factory.h" 23 #include "extensions/browser/extension_prefs_factory.h"
24 #include "extensions/browser/extension_registry.h" 24 #include "extensions/browser/extension_registry.h"
25 #include "extensions/browser/extension_system.h" 25 #include "extensions/browser/extension_system.h"
26 #include "extensions/browser/extensions_browser_client.h" 26 #include "extensions/browser/extensions_browser_client.h"
27 #include "extensions/browser/guest_view/web_view/web_view_content_script_manager .h"
27 #include "extensions/browser/info_map.h" 28 #include "extensions/browser/info_map.h"
28 #include "extensions/browser/lazy_background_task_queue.h" 29 #include "extensions/browser/lazy_background_task_queue.h"
29 #include "extensions/browser/management_policy.h" 30 #include "extensions/browser/management_policy.h"
30 #include "extensions/browser/quota_service.h" 31 #include "extensions/browser/quota_service.h"
31 #include "extensions/browser/runtime_data.h" 32 #include "extensions/browser/runtime_data.h"
32 #include "extensions/browser/state_store.h" 33 #include "extensions/browser/state_store.h"
33 #include "extensions/browser/value_store/testing_value_store.h" 34 #include "extensions/browser/value_store/testing_value_store.h"
34 35
35 using content::BrowserThread; 36 using content::BrowserThread;
36 37
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 CreateExtensionPrefs(command_line, install_directory); 88 CreateExtensionPrefs(command_line, install_directory);
88 install_verifier_.reset( 89 install_verifier_.reset(
89 new InstallVerifier(ExtensionPrefs::Get(profile_), profile_)); 90 new InstallVerifier(ExtensionPrefs::Get(profile_), profile_));
90 // The ownership of |value_store_| is immediately transferred to state_store_, 91 // The ownership of |value_store_| is immediately transferred to state_store_,
91 // but we keep a naked pointer to the TestingValueStore. 92 // but we keep a naked pointer to the TestingValueStore.
92 scoped_ptr<TestingValueStore> value_store(new TestingValueStore()); 93 scoped_ptr<TestingValueStore> value_store(new TestingValueStore());
93 value_store_ = value_store.get(); 94 value_store_ = value_store.get();
94 state_store_.reset(new StateStore(profile_, value_store.Pass())); 95 state_store_.reset(new StateStore(profile_, value_store.Pass()));
95 declarative_user_script_manager_.reset( 96 declarative_user_script_manager_.reset(
96 new DeclarativeUserScriptManager(profile_)); 97 new DeclarativeUserScriptManager(profile_));
98 web_view_content_script_manager_.reset(
99 new WebViewContentScriptManager(profile_));
97 management_policy_.reset(new ManagementPolicy()); 100 management_policy_.reset(new ManagementPolicy());
98 management_policy_->RegisterProviders( 101 management_policy_->RegisterProviders(
99 ExtensionManagementFactory::GetForBrowserContext(profile_) 102 ExtensionManagementFactory::GetForBrowserContext(profile_)
100 ->GetProviders()); 103 ->GetProviders());
101 runtime_data_.reset(new RuntimeData(ExtensionRegistry::Get(profile_))); 104 runtime_data_.reset(new RuntimeData(ExtensionRegistry::Get(profile_)));
102 extension_service_.reset(new ExtensionService(profile_, 105 extension_service_.reset(new ExtensionService(profile_,
103 command_line, 106 command_line,
104 install_directory, 107 install_directory,
105 ExtensionPrefs::Get(profile_), 108 ExtensionPrefs::Get(profile_),
106 Blacklist::Get(profile_), 109 Blacklist::Get(profile_),
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
162 } 165 }
163 166
164 InstallVerifier* TestExtensionSystem::install_verifier() { 167 InstallVerifier* TestExtensionSystem::install_verifier() {
165 return install_verifier_.get(); 168 return install_verifier_.get();
166 } 169 }
167 170
168 QuotaService* TestExtensionSystem::quota_service() { 171 QuotaService* TestExtensionSystem::quota_service() {
169 return quota_service_.get(); 172 return quota_service_.get();
170 } 173 }
171 174
175 WebViewContentScriptManager*
176 TestExtensionSystem::web_view_content_script_manager() {
177 return web_view_content_script_manager_.get();
178 }
179
172 const OneShotEvent& TestExtensionSystem::ready() const { 180 const OneShotEvent& TestExtensionSystem::ready() const {
173 return ready_; 181 return ready_;
174 } 182 }
175 183
176 ContentVerifier* TestExtensionSystem::content_verifier() { 184 ContentVerifier* TestExtensionSystem::content_verifier() {
177 return NULL; 185 return NULL;
178 } 186 }
179 187
180 scoped_ptr<ExtensionSet> TestExtensionSystem::GetDependentExtensions( 188 scoped_ptr<ExtensionSet> TestExtensionSystem::GetDependentExtensions(
181 const Extension* extension) { 189 const Extension* extension) {
182 return extension_service()->shared_module_service()->GetDependentExtensions( 190 return extension_service()->shared_module_service()->GetDependentExtensions(
183 extension); 191 extension);
184 } 192 }
185 193
186 // static 194 // static
187 KeyedService* TestExtensionSystem::Build(content::BrowserContext* profile) { 195 KeyedService* TestExtensionSystem::Build(content::BrowserContext* profile) {
188 return new TestExtensionSystem(static_cast<Profile*>(profile)); 196 return new TestExtensionSystem(static_cast<Profile*>(profile));
189 } 197 }
190 198
191 } // namespace extensions 199 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698