Chromium Code Reviews| Index: chrome/browser/policy/configuration_policy_provider.cc |
| diff --git a/chrome/browser/policy/configuration_policy_provider.cc b/chrome/browser/policy/configuration_policy_provider.cc |
| index 18f849ce4f471b43f2df56b1d6e41a28c25054c4..7908360cb5ffd04c5ee6621b5952e8243a7331b9 100644 |
| --- a/chrome/browser/policy/configuration_policy_provider.cc |
| +++ b/chrome/browser/policy/configuration_policy_provider.cc |
| @@ -6,7 +6,6 @@ |
| #include "base/callback.h" |
| #include "chrome/browser/policy/external_data_fetcher.h" |
| -#include "chrome/browser/policy/policy_domain_descriptor.h" |
| #include "chrome/browser/policy/policy_map.h" |
| #include "policy/policy_constants.h" |
| @@ -68,16 +67,26 @@ void FixDeprecatedPolicies(PolicyMap* policies) { |
| ConfigurationPolicyProvider::Observer::~Observer() {} |
| ConfigurationPolicyProvider::ConfigurationPolicyProvider() |
| - : did_shutdown_(false) {} |
| + : did_shutdown_(false), |
| + schema_registry_(NULL) {} |
| ConfigurationPolicyProvider::~ConfigurationPolicyProvider() { |
| DCHECK(did_shutdown_); |
| } |
| -void ConfigurationPolicyProvider::Init() {} |
| +void ConfigurationPolicyProvider::Init(SchemaRegistry* registry) { |
| + schema_registry_ = registry; |
| + schema_registry_->AddObserver(this); |
| +} |
| void ConfigurationPolicyProvider::Shutdown() { |
| did_shutdown_ = true; |
| + if (schema_registry_) { |
| + // Unit tests don't initialize the browser_policy_connector but call |
|
bartfab (slow)
2013/11/05 15:53:04
Written with underscores like this, browser_policy
Joao da Silva
2013/11/07 13:15:00
Done.
|
| + // shutdown; handle that. |
| + schema_registry_->RemoveObserver(this); |
| + schema_registry_ = NULL; |
| + } |
| } |
| bool ConfigurationPolicyProvider::IsInitializationComplete( |
| @@ -85,6 +94,13 @@ bool ConfigurationPolicyProvider::IsInitializationComplete( |
| return true; |
| } |
| +void ConfigurationPolicyProvider::OnSchemaRegistryUpdated( |
| + const scoped_refptr<SchemaMap>& current_map, |
|
bartfab (slow)
2013/11/05 15:53:04
General question: Does anyone ever use the current
Joao da Silva
2013/11/07 13:15:00
That's right, removed.
|
| + bool has_new_schemas) { |
| + if (has_new_schemas) |
| + RefreshPolicies(); |
| +} |
| + |
| void ConfigurationPolicyProvider::UpdatePolicy( |
| scoped_ptr<PolicyBundle> bundle) { |
| if (bundle.get()) |
| @@ -98,6 +114,11 @@ void ConfigurationPolicyProvider::UpdatePolicy( |
| OnUpdatePolicy(this)); |
| } |
| +const scoped_refptr<SchemaMap>& |
| +ConfigurationPolicyProvider::schema_map() const { |
| + return schema_registry_->schema_map(); |
| +} |
| + |
| void ConfigurationPolicyProvider::AddObserver(Observer* observer) { |
| observer_list_.AddObserver(observer); |
| } |
| @@ -106,7 +127,4 @@ void ConfigurationPolicyProvider::RemoveObserver(Observer* observer) { |
| observer_list_.RemoveObserver(observer); |
| } |
| -void ConfigurationPolicyProvider::RegisterPolicyDomain( |
| - scoped_refptr<const PolicyDomainDescriptor> descriptor) {} |
| - |
| } // namespace policy |