OLD | NEW |
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/component_loader.h" | 5 #include "chrome/browser/extensions/component_loader.h" |
6 | 6 |
7 #include <map> | 7 #include <map> |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
11 #include "base/file_util.h" | 11 #include "base/file_util.h" |
12 #include "base/json/json_string_value_serializer.h" | 12 #include "base/json/json_string_value_serializer.h" |
13 #include "base/metrics/field_trial.h" | 13 #include "base/metrics/field_trial.h" |
14 #include "base/path_service.h" | 14 #include "base/path_service.h" |
15 #include "base/prefs/pref_change_registrar.h" | 15 #include "base/prefs/pref_change_registrar.h" |
16 #include "chrome/browser/chrome_notification_types.h" | 16 #include "chrome/browser/chrome_notification_types.h" |
17 #include "chrome/browser/extensions/extension_service.h" | 17 #include "chrome/browser/extensions/extension_service.h" |
18 #include "chrome/browser/search/hotword_service_factory.h" | 18 #include "chrome/browser/search/hotword_service_factory.h" |
19 #include "chrome/common/chrome_paths.h" | 19 #include "chrome/common/chrome_paths.h" |
20 #include "chrome/common/chrome_switches.h" | 20 #include "chrome/common/chrome_switches.h" |
21 #include "chrome/common/chrome_version_info.h" | 21 #include "chrome/common/chrome_version_info.h" |
22 #include "chrome/common/extensions/extension_file_util.h" | |
23 #include "chrome/common/pref_names.h" | 22 #include "chrome/common/pref_names.h" |
24 #include "content/public/browser/notification_details.h" | 23 #include "content/public/browser/notification_details.h" |
25 #include "content/public/browser/notification_source.h" | 24 #include "content/public/browser/notification_source.h" |
26 #include "content/public/browser/plugin_service.h" | 25 #include "content/public/browser/plugin_service.h" |
27 #include "extensions/common/extension.h" | 26 #include "extensions/common/extension.h" |
| 27 #include "extensions/common/file_util.h" |
28 #include "extensions/common/id_util.h" | 28 #include "extensions/common/id_util.h" |
29 #include "extensions/common/manifest_constants.h" | 29 #include "extensions/common/manifest_constants.h" |
30 #include "grit/browser_resources.h" | 30 #include "grit/browser_resources.h" |
31 #include "grit/generated_resources.h" | 31 #include "grit/generated_resources.h" |
32 #include "ui/base/l10n/l10n_util.h" | 32 #include "ui/base/l10n/l10n_util.h" |
33 #include "ui/base/resource/resource_bundle.h" | 33 #include "ui/base/resource/resource_bundle.h" |
34 | 34 |
35 #if defined(OS_CHROMEOS) | 35 #if defined(OS_CHROMEOS) |
36 #include "grit/keyboard_resources.h" | 36 #include "grit/keyboard_resources.h" |
37 #include "ui/keyboard/keyboard_util.h" | 37 #include "ui/keyboard/keyboard_util.h" |
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
189 component_extensions_.push_back(info); | 189 component_extensions_.push_back(info); |
190 if (extension_service_->is_ready()) | 190 if (extension_service_->is_ready()) |
191 Load(info); | 191 Load(info); |
192 return info.extension_id; | 192 return info.extension_id; |
193 } | 193 } |
194 | 194 |
195 std::string ComponentLoader::AddOrReplace(const base::FilePath& path) { | 195 std::string ComponentLoader::AddOrReplace(const base::FilePath& path) { |
196 base::FilePath absolute_path = base::MakeAbsoluteFilePath(path); | 196 base::FilePath absolute_path = base::MakeAbsoluteFilePath(path); |
197 std::string error; | 197 std::string error; |
198 scoped_ptr<base::DictionaryValue> manifest( | 198 scoped_ptr<base::DictionaryValue> manifest( |
199 extension_file_util::LoadManifest(absolute_path, &error)); | 199 file_util::LoadManifest(absolute_path, &error)); |
200 if (!manifest) { | 200 if (!manifest) { |
201 LOG(ERROR) << "Could not load extension from '" << | 201 LOG(ERROR) << "Could not load extension from '" << |
202 absolute_path.value() << "'. " << error; | 202 absolute_path.value() << "'. " << error; |
203 return std::string(); | 203 return std::string(); |
204 } | 204 } |
205 Remove(GenerateId(manifest.get(), absolute_path)); | 205 Remove(GenerateId(manifest.get(), absolute_path)); |
206 | 206 |
207 return Add(manifest.release(), absolute_path); | 207 return Add(manifest.release(), absolute_path); |
208 } | 208 } |
209 | 209 |
(...skipping 405 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
615 off_the_record_context, Extension::GetBaseURLFromExtensionId(id)); | 615 off_the_record_context, Extension::GetBaseURLFromExtensionId(id)); |
616 fileapi::FileSystemContext* file_system_context = | 616 fileapi::FileSystemContext* file_system_context = |
617 content::BrowserContext::GetStoragePartitionForSite( | 617 content::BrowserContext::GetStoragePartitionForSite( |
618 off_the_record_context, site)->GetFileSystemContext(); | 618 off_the_record_context, site)->GetFileSystemContext(); |
619 file_system_context->EnableTemporaryFileSystemInIncognito(); | 619 file_system_context->EnableTemporaryFileSystemInIncognito(); |
620 } | 620 } |
621 #endif | 621 #endif |
622 } | 622 } |
623 | 623 |
624 } // namespace extensions | 624 } // namespace extensions |
OLD | NEW |