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

Unified Diff: chrome/browser/ui/webui/policy_ui_handler.cc

Issue 1825173003: [Policy Experimental] Add "recommended" policies for URL exceptions. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Sync. Created 4 years, 9 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/ui/webui/policy_ui_handler.cc
diff --git a/chrome/browser/ui/webui/policy_ui_handler.cc b/chrome/browser/ui/webui/policy_ui_handler.cc
index c4a9b4a6c0e6c4b12b62da774534071095956ab8..af4a749605698043afe6b4e28ca08d7f2f96b752 100644
--- a/chrome/browser/ui/webui/policy_ui_handler.cc
+++ b/chrome/browser/ui/webui/policy_ui_handler.cc
@@ -650,23 +650,29 @@ void PolicyUIHandler::SendPolicyValues() const {
void PolicyUIHandler::GetPolicyValues(const policy::PolicyMap& map,
policy::PolicyErrorMap* errors,
base::DictionaryValue* values) const {
- for (policy::PolicyMap::const_iterator entry = map.begin();
- entry != map.end(); ++entry) {
- base::DictionaryValue* value = new base::DictionaryValue;
- value->Set("value", CopyAndConvert(entry->second.value).release());
- if (entry->second.scope == policy::POLICY_SCOPE_USER)
- value->SetString("scope", "user");
- else
- value->SetString("scope", "machine");
- if (entry->second.level == policy::POLICY_LEVEL_RECOMMENDED)
- value->SetString("level", "recommended");
- else
- value->SetString("level", "mandatory");
- value->SetString("source", kPolicySources[entry->second.source].key);
- base::string16 error = errors->GetErrors(entry->first);
- if (!error.empty())
- value->SetString("error", error);
- values->Set(entry->first, value);
+ for (policy::PolicyMap::const_iterator it = map.begin();
+ it != map.end(); map.next_dominant(&it)) {
+ policy::PolicyMap::const_iterator tail_it = it;
+ map.next_dominant(&tail_it);
+ base::ListValue* value_list = new base::ListValue;
+ for (; it != tail_it; map.next_all(&it)) {
+ base::DictionaryValue* value = new base::DictionaryValue;
+ value->Set("value", CopyAndConvert(it->second.value).release());
+ if (it->second.scope == policy::POLICY_SCOPE_USER)
+ value->SetString("scope", "user");
+ else
+ value->SetString("scope", "machine");
+ if (it->second.level == policy::POLICY_LEVEL_RECOMMENDED)
+ value->SetString("level", "recommended");
+ else
+ value->SetString("level", "mandatory");
+ value->SetString("source", kPolicySources[it->second.source].key);
+ base::string16 error = errors->GetErrors(it->first.name);
+ if (!error.empty())
+ value->SetString("error", error);
+ value_list->Append(value);
+ }
+ values->Set(it->first.name, value_list);
}
}

Powered by Google App Engine
This is Rietveld 408576698