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/api/autotest_private/autotest_private_api.h" | 5 #include "chrome/browser/extensions/api/autotest_private/autotest_private_api.h" |
6 | 6 |
7 #include "base/lazy_instance.h" | 7 #include "base/lazy_instance.h" |
8 #include "base/strings/string_number_conversions.h" | 8 #include "base/strings/string_number_conversions.h" |
9 #include "chrome/browser/extensions/extension_action_manager.h" | 9 #include "chrome/browser/extensions/extension_action_manager.h" |
10 #include "chrome/browser/extensions/extension_service.h" | 10 #include "chrome/browser/extensions/extension_service.h" |
(...skipping 14 matching lines...) Expand all Loading... |
25 #include "chrome/browser/chromeos/login/lock/screen_locker.h" | 25 #include "chrome/browser/chromeos/login/lock/screen_locker.h" |
26 #include "chrome/browser/chromeos/login/users/user_manager.h" | 26 #include "chrome/browser/chromeos/login/users/user_manager.h" |
27 #include "chromeos/dbus/dbus_thread_manager.h" | 27 #include "chromeos/dbus/dbus_thread_manager.h" |
28 #include "chromeos/dbus/session_manager_client.h" | 28 #include "chromeos/dbus/session_manager_client.h" |
29 #endif | 29 #endif |
30 | 30 |
31 namespace extensions { | 31 namespace extensions { |
32 namespace { | 32 namespace { |
33 | 33 |
34 base::ListValue* GetHostPermissions(const Extension* ext, bool effective_perm) { | 34 base::ListValue* GetHostPermissions(const Extension* ext, bool effective_perm) { |
35 extensions::URLPatternSet pattern_set; | 35 URLPatternSet pattern_set; |
36 if (effective_perm) { | 36 if (effective_perm) |
37 pattern_set = extensions::PermissionsData::ForExtension(ext) | 37 pattern_set = ext->permissions_data()->GetEffectiveHostPermissions(); |
38 ->GetEffectiveHostPermissions(); | 38 else |
39 } else { | |
40 pattern_set = ext->GetActivePermissions()->explicit_hosts(); | 39 pattern_set = ext->GetActivePermissions()->explicit_hosts(); |
41 } | |
42 | 40 |
43 base::ListValue* permissions = new base::ListValue; | 41 base::ListValue* permissions = new base::ListValue; |
44 for (extensions::URLPatternSet::const_iterator perm = pattern_set.begin(); | 42 for (URLPatternSet::const_iterator perm = pattern_set.begin(); |
45 perm != pattern_set.end(); ++perm) { | 43 perm != pattern_set.end(); |
| 44 ++perm) { |
46 permissions->Append(new base::StringValue(perm->GetAsString())); | 45 permissions->Append(new base::StringValue(perm->GetAsString())); |
47 } | 46 } |
48 | 47 |
49 return permissions; | 48 return permissions; |
50 } | 49 } |
51 | 50 |
52 base::ListValue* GetAPIPermissions(const Extension* ext) { | 51 base::ListValue* GetAPIPermissions(const Extension* ext) { |
53 base::ListValue* permissions = new base::ListValue; | 52 base::ListValue* permissions = new base::ListValue; |
54 std::set<std::string> perm_list = | 53 std::set<std::string> perm_list = |
55 ext->GetActivePermissions()->GetAPIsAsStrings(); | 54 ext->GetActivePermissions()->GetAPIsAsStrings(); |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
143 #if defined(OS_CHROMEOS) | 142 #if defined(OS_CHROMEOS) |
144 chromeos::DBusThreadManager::Get()->GetSessionManagerClient()-> | 143 chromeos::DBusThreadManager::Get()->GetSessionManagerClient()-> |
145 RequestLockScreen(); | 144 RequestLockScreen(); |
146 #endif | 145 #endif |
147 return true; | 146 return true; |
148 } | 147 } |
149 | 148 |
150 bool AutotestPrivateGetExtensionsInfoFunction::RunSync() { | 149 bool AutotestPrivateGetExtensionsInfoFunction::RunSync() { |
151 DVLOG(1) << "AutotestPrivateGetExtensionsInfoFunction"; | 150 DVLOG(1) << "AutotestPrivateGetExtensionsInfoFunction"; |
152 | 151 |
153 ExtensionService* service = extensions::ExtensionSystem::Get( | 152 ExtensionService* service = |
154 GetProfile())->extension_service(); | 153 ExtensionSystem::Get(GetProfile())->extension_service(); |
155 ExtensionRegistry* registry = | 154 ExtensionRegistry* registry = ExtensionRegistry::Get(GetProfile()); |
156 extensions::ExtensionRegistry::Get(GetProfile()); | |
157 const ExtensionSet& extensions = registry->enabled_extensions(); | 155 const ExtensionSet& extensions = registry->enabled_extensions(); |
158 const ExtensionSet& disabled_extensions = registry->disabled_extensions(); | 156 const ExtensionSet& disabled_extensions = registry->disabled_extensions(); |
159 ExtensionActionManager* extension_action_manager = | 157 ExtensionActionManager* extension_action_manager = |
160 ExtensionActionManager::Get(GetProfile()); | 158 ExtensionActionManager::Get(GetProfile()); |
161 | 159 |
162 base::ListValue* extensions_values = new base::ListValue; | 160 base::ListValue* extensions_values = new base::ListValue; |
163 ExtensionList all; | 161 ExtensionList all; |
164 all.insert(all.end(), extensions.begin(), extensions.end()); | 162 all.insert(all.end(), extensions.begin(), extensions.end()); |
165 all.insert(all.end(), disabled_extensions.begin(), disabled_extensions.end()); | 163 all.insert(all.end(), disabled_extensions.begin(), disabled_extensions.end()); |
166 for (ExtensionList::const_iterator it = all.begin(); | 164 for (ExtensionList::const_iterator it = all.begin(); |
167 it != all.end(); ++it) { | 165 it != all.end(); ++it) { |
168 const Extension* extension = it->get(); | 166 const Extension* extension = it->get(); |
169 std::string id = extension->id(); | 167 std::string id = extension->id(); |
170 base::DictionaryValue* extension_value = new base::DictionaryValue; | 168 base::DictionaryValue* extension_value = new base::DictionaryValue; |
171 extension_value->SetString("id", id); | 169 extension_value->SetString("id", id); |
172 extension_value->SetString("version", extension->VersionString()); | 170 extension_value->SetString("version", extension->VersionString()); |
173 extension_value->SetString("name", extension->name()); | 171 extension_value->SetString("name", extension->name()); |
174 extension_value->SetString("publicKey", extension->public_key()); | 172 extension_value->SetString("publicKey", extension->public_key()); |
175 extension_value->SetString("description", extension->description()); | 173 extension_value->SetString("description", extension->description()); |
176 extension_value->SetString("backgroundUrl", | 174 extension_value->SetString( |
177 extensions::BackgroundInfo::GetBackgroundURL(extension).spec()); | 175 "backgroundUrl", BackgroundInfo::GetBackgroundURL(extension).spec()); |
178 extension_value->SetString("optionsUrl", | 176 extension_value->SetString("optionsUrl", |
179 extensions::ManifestURL::GetOptionsPage(extension).spec()); | 177 ManifestURL::GetOptionsPage(extension).spec()); |
180 | 178 |
181 extension_value->Set("hostPermissions", | 179 extension_value->Set("hostPermissions", |
182 GetHostPermissions(extension, false)); | 180 GetHostPermissions(extension, false)); |
183 extension_value->Set("effectiveHostPermissions", | 181 extension_value->Set("effectiveHostPermissions", |
184 GetHostPermissions(extension, true)); | 182 GetHostPermissions(extension, true)); |
185 extension_value->Set("apiPermissions", GetAPIPermissions(extension)); | 183 extension_value->Set("apiPermissions", GetAPIPermissions(extension)); |
186 | 184 |
187 Manifest::Location location = extension->location(); | 185 Manifest::Location location = extension->location(); |
188 extension_value->SetBoolean("isComponent", | 186 extension_value->SetBoolean("isComponent", |
189 location == Manifest::COMPONENT); | 187 location == Manifest::COMPONENT); |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
241 return new AutotestPrivateAPI(); | 239 return new AutotestPrivateAPI(); |
242 } | 240 } |
243 | 241 |
244 AutotestPrivateAPI::AutotestPrivateAPI() : test_mode_(false) { | 242 AutotestPrivateAPI::AutotestPrivateAPI() : test_mode_(false) { |
245 } | 243 } |
246 | 244 |
247 AutotestPrivateAPI::~AutotestPrivateAPI() { | 245 AutotestPrivateAPI::~AutotestPrivateAPI() { |
248 } | 246 } |
249 | 247 |
250 } // namespace extensions | 248 } // namespace extensions |
OLD | NEW |