Index: chrome/browser/ui/webui/policy_ui.cc |
diff --git a/chrome/browser/ui/webui/policy_ui.cc b/chrome/browser/ui/webui/policy_ui.cc |
index e2e833cac503f97f558584537e42b4b7d78bfd4b..72071e25c70718d37fe5f7a89a7f85ef31f6af5c 100644 |
--- a/chrome/browser/ui/webui/policy_ui.cc |
+++ b/chrome/browser/ui/webui/policy_ui.cc |
@@ -32,6 +32,9 @@ |
#include "chrome/browser/policy/profile_policy_connector.h" |
#include "chrome/browser/policy/profile_policy_connector_factory.h" |
#include "chrome/browser/policy/proto/cloud/device_management_backend.pb.h" |
+#include "chrome/browser/policy/schema_map.h" |
+#include "chrome/browser/policy/schema_registry_service.h" |
bartfab (slow)
2013/11/05 15:53:04
Nit: Not used (it appears as a return type in Sche
Joao da Silva
2013/11/07 13:15:00
It's needed to see that it's derived from SchemaR
|
+#include "chrome/browser/policy/schema_registry_service_factory.h" |
#include "chrome/browser/profiles/profile.h" |
#include "chrome/common/url_constants.h" |
#include "content/public/browser/notification_observer.h" |
@@ -61,7 +64,6 @@ |
#if !defined(OS_ANDROID) && !defined(OS_IOS) |
#include "chrome/browser/extensions/extension_service.h" |
#include "chrome/browser/extensions/extension_system.h" |
-#include "chrome/browser/policy/policy_domain_descriptor.h" |
#include "chrome/common/extensions/extension.h" |
#include "chrome/common/extensions/extension_set.h" |
#include "components/policy/core/common/schema.h" |
@@ -555,15 +557,17 @@ void PolicyUIHandler::SendPolicyNames() const { |
#if !defined(OS_ANDROID) && !defined(OS_IOS) |
// Add extension policy names. |
base::DictionaryValue* extension_policy_names = new base::DictionaryValue; |
+ |
+ Profile* profile = Profile::FromWebUI(web_ui()); |
extensions::ExtensionSystem* extension_system = |
- extensions::ExtensionSystem::Get(Profile::FromWebUI(web_ui())); |
+ extensions::ExtensionSystem::Get(profile); |
const ExtensionSet* extensions = |
extension_system->extension_service()->extensions(); |
- scoped_refptr<const policy::PolicyDomainDescriptor> policy_domain_descriptor; |
- policy_domain_descriptor = GetPolicyService()-> |
- GetPolicyDomainDescriptor(policy::POLICY_DOMAIN_EXTENSIONS); |
- const policy::PolicyDomainDescriptor::SchemaMap& schema_map = |
- policy_domain_descriptor->components(); |
+ |
+ policy::SchemaRegistry* registry = |
bartfab (slow)
2013/11/05 15:53:04
Nit: #include "chrome/browser/policy/schema_regist
Joao da Silva
2013/11/07 13:15:00
Done.
|
+ policy::SchemaRegistryServiceFactory::GetForContext( |
+ profile->GetOriginalProfile()); |
+ scoped_refptr<policy::SchemaMap> schema_map = registry->schema_map(); |
for (ExtensionSet::const_iterator it = extensions->begin(); |
it != extensions->end(); ++it) { |
@@ -574,17 +578,16 @@ void PolicyUIHandler::SendPolicyNames() const { |
continue; |
base::DictionaryValue* extension_value = new base::DictionaryValue; |
extension_value->SetString("name", extension->name()); |
- policy::PolicyDomainDescriptor::SchemaMap::const_iterator schema = |
- schema_map.find(extension->id()); |
+ const policy::Schema* schema = |
+ schema_map->GetSchema(policy::PolicyNamespace( |
+ policy::POLICY_DOMAIN_EXTENSIONS, extension->id())); |
bartfab (slow)
2013/11/05 15:53:04
Nit: #include "components/policy/core/common/polic
Joao da Silva
2013/11/07 13:15:00
Done.
|
base::DictionaryValue* policy_names = new base::DictionaryValue; |
- if (schema != schema_map.end()) { |
+ if (schema) { |
// Get policy names from the extension's policy schema. |
// Store in a map, not an array, for faster lookup on JS side. |
- policy::Schema policy_schema = schema->second; |
- for (policy::Schema::Iterator it_policies = |
- policy_schema.GetPropertiesIterator(); |
- !it_policies.IsAtEnd(); it_policies.Advance()) { |
- policy_names->SetBoolean(it_policies.key(), true); |
+ for (policy::Schema::Iterator prop = schema->GetPropertiesIterator(); |
+ !prop.IsAtEnd(); prop.Advance()) { |
+ policy_names->SetBoolean(prop.key(), true); |
} |
} |
extension_value->Set("policyNames", policy_names); |