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

Unified Diff: chrome/browser/policy/network_configuration_updater.cc

Issue 10386176: Revert "Refactored NetworkConfigurationUpdater to read policy from the PolicyService." (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/policy/network_configuration_updater.cc
diff --git a/chrome/browser/policy/network_configuration_updater.cc b/chrome/browser/policy/network_configuration_updater.cc
index dcc2ead8be498098890ecffd0c1112a6267d46ce..fba0e2e4fa5fb1dcbd6cfcfe76afc679b2bd6275 100644
--- a/chrome/browser/policy/network_configuration_updater.cc
+++ b/chrome/browser/policy/network_configuration_updater.cc
@@ -4,10 +4,6 @@
#include "chrome/browser/policy/network_configuration_updater.h"
-#include <string>
-
-#include "base/bind.h"
-#include "base/bind_helpers.h"
#include "chrome/browser/chromeos/cros/network_library.h"
#include "chrome/browser/policy/policy_map.h"
#include "policy/policy_constants.h"
@@ -18,52 +14,44 @@ const char NetworkConfigurationUpdater::kEmptyConfiguration[] =
"{\"NetworkConfigurations\":[],\"Certificates\":[]}";
NetworkConfigurationUpdater::NetworkConfigurationUpdater(
- PolicyService* policy_service,
+ ConfigurationPolicyProvider* provider,
chromeos::NetworkLibrary* network_library)
- : policy_change_registrar_(
- policy_service, POLICY_DOMAIN_CHROME, std::string()),
- network_library_(network_library) {
+ : network_library_(network_library) {
DCHECK(network_library_);
- policy_change_registrar_.Observe(
- key::kDeviceOpenNetworkConfiguration,
- base::Bind(&NetworkConfigurationUpdater::ApplyNetworkConfiguration,
- base::Unretained(this),
- chromeos::NetworkUIData::ONC_SOURCE_DEVICE_POLICY,
- &device_network_config_));
- policy_change_registrar_.Observe(
- key::kOpenNetworkConfiguration,
- base::Bind(&NetworkConfigurationUpdater::ApplyNetworkConfiguration,
- base::Unretained(this),
- chromeos::NetworkUIData::ONC_SOURCE_USER_POLICY,
- &user_network_config_));
-
- // Apply the current values immediately.
- const PolicyMap& policies = policy_service->GetPolicies(POLICY_DOMAIN_CHROME,
- std::string());
- ApplyNetworkConfiguration(
- chromeos::NetworkUIData::ONC_SOURCE_DEVICE_POLICY,
- &device_network_config_,
- NULL,
- policies.GetValue(key::kDeviceOpenNetworkConfiguration));
- ApplyNetworkConfiguration(
- chromeos::NetworkUIData::ONC_SOURCE_USER_POLICY,
- &user_network_config_,
- NULL,
- policies.GetValue(key::kOpenNetworkConfiguration));
+ provider_registrar_.Init(provider, this);
+ Update();
}
NetworkConfigurationUpdater::~NetworkConfigurationUpdater() {}
+void NetworkConfigurationUpdater::OnUpdatePolicy(
+ ConfigurationPolicyProvider* provider) {
+ Update();
+}
+
+void NetworkConfigurationUpdater::Update() {
+ ConfigurationPolicyProvider* provider = provider_registrar_.provider();
+ const PolicyMap& policy = provider->policies().Get(POLICY_DOMAIN_CHROME, "");
+
+ ApplyNetworkConfiguration(policy, key::kDeviceOpenNetworkConfiguration,
+ chromeos::NetworkUIData::ONC_SOURCE_DEVICE_POLICY,
+ &device_network_config_);
+ ApplyNetworkConfiguration(policy, key::kOpenNetworkConfiguration,
+ chromeos::NetworkUIData::ONC_SOURCE_USER_POLICY,
+ &user_network_config_);
+}
+
void NetworkConfigurationUpdater::ApplyNetworkConfiguration(
+ const PolicyMap& policy_map,
+ const char* policy_name,
chromeos::NetworkUIData::ONCSource onc_source,
- std::string* cached_value,
- const base::Value* previous,
- const base::Value* current) {
+ std::string* cached_value) {
std::string new_network_config;
- if (current != NULL) {
+ const base::Value* value = policy_map.GetValue(policy_name);
+ if (value != NULL) {
// If the policy is not a string, we issue a warning, but still clear the
// network configuration.
- if (!current->GetAsString(&new_network_config))
+ if (!value->GetAsString(&new_network_config))
LOG(WARNING) << "Invalid network configuration.";
}
« no previous file with comments | « chrome/browser/policy/network_configuration_updater.h ('k') | chrome/browser/policy/network_configuration_updater_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698