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

Side by Side Diff: components/search_engines/default_search_policy_handler.cc

Issue 2598033004: Remove old default search preferences. (Closed)
Patch Set: Updated histograms.xml Created 3 years, 12 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 unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "components/search_engines/default_search_policy_handler.h" 5 #include "components/search_engines/default_search_policy_handler.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <utility> 9 #include <utility>
10 10
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 } 56 }
57 57
58 } // namespace 58 } // namespace
59 59
60 // List of policy types to preference names, for policies affecting the default 60 // List of policy types to preference names, for policies affecting the default
61 // search provider. 61 // search provider.
62 const PolicyToPreferenceMapEntry kDefaultSearchPolicyMap[] = { 62 const PolicyToPreferenceMapEntry kDefaultSearchPolicyMap[] = {
63 { key::kDefaultSearchProviderEnabled, 63 { key::kDefaultSearchProviderEnabled,
64 prefs::kDefaultSearchProviderEnabled, 64 prefs::kDefaultSearchProviderEnabled,
65 base::Value::Type::BOOLEAN }, 65 base::Value::Type::BOOLEAN },
66 { key::kDefaultSearchProviderName,
67 prefs::kDefaultSearchProviderName,
68 base::Value::Type::STRING },
69 { key::kDefaultSearchProviderKeyword,
70 prefs::kDefaultSearchProviderKeyword,
71 base::Value::Type::STRING },
72 { key::kDefaultSearchProviderSearchURL,
73 prefs::kDefaultSearchProviderSearchURL,
74 base::Value::Type::STRING },
75 { key::kDefaultSearchProviderSuggestURL,
76 prefs::kDefaultSearchProviderSuggestURL,
77 base::Value::Type::STRING },
78 { key::kDefaultSearchProviderInstantURL,
79 prefs::kDefaultSearchProviderInstantURL,
80 base::Value::Type::STRING },
81 { key::kDefaultSearchProviderIconURL,
82 prefs::kDefaultSearchProviderIconURL,
83 base::Value::Type::STRING },
84 { key::kDefaultSearchProviderEncodings,
85 prefs::kDefaultSearchProviderEncodings,
86 base::Value::Type::LIST },
87 { key::kDefaultSearchProviderAlternateURLs,
88 prefs::kDefaultSearchProviderAlternateURLs,
89 base::Value::Type::LIST },
90 { key::kDefaultSearchProviderSearchTermsReplacementKey,
91 prefs::kDefaultSearchProviderSearchTermsReplacementKey,
92 base::Value::Type::STRING },
93 { key::kDefaultSearchProviderImageURL,
94 prefs::kDefaultSearchProviderImageURL,
95 base::Value::Type::STRING },
96 { key::kDefaultSearchProviderNewTabURL,
97 prefs::kDefaultSearchProviderNewTabURL,
98 base::Value::Type::STRING },
99 { key::kDefaultSearchProviderSearchURLPostParams,
100 prefs::kDefaultSearchProviderSearchURLPostParams,
101 base::Value::Type::STRING },
102 { key::kDefaultSearchProviderSuggestURLPostParams,
103 prefs::kDefaultSearchProviderSuggestURLPostParams,
104 base::Value::Type::STRING },
105 { key::kDefaultSearchProviderInstantURLPostParams,
106 prefs::kDefaultSearchProviderInstantURLPostParams,
107 base::Value::Type::STRING },
108 { key::kDefaultSearchProviderImageURLPostParams,
109 prefs::kDefaultSearchProviderImageURLPostParams,
110 base::Value::Type::STRING },
111 }; 66 };
112 67
113 // List of policy types to preference names, for policies affecting the default 68 // List of policy types to preference names, for policies affecting the default
114 // search provider. 69 // search provider.
115 const PolicyToPreferenceMapEntry kDefaultSearchPolicyDataMap[] = { 70 const PolicyToPreferenceMapEntry kDefaultSearchPolicyDataMap[] = {
116 {key::kDefaultSearchProviderName, DefaultSearchManager::kShortName, 71 {key::kDefaultSearchProviderName, DefaultSearchManager::kShortName,
117 base::Value::Type::STRING}, 72 base::Value::Type::STRING},
118 {key::kDefaultSearchProviderKeyword, DefaultSearchManager::kKeyword, 73 {key::kDefaultSearchProviderKeyword, DefaultSearchManager::kKeyword,
119 base::Value::Type::STRING}, 74 base::Value::Type::STRING},
120 {key::kDefaultSearchProviderSearchURL, DefaultSearchManager::kURL, 75 {key::kDefaultSearchProviderSearchURL, DefaultSearchManager::kURL,
(...skipping 19 matching lines...) Expand all
140 DefaultSearchManager::kSearchURLPostParams, base::Value::Type::STRING}, 95 DefaultSearchManager::kSearchURLPostParams, base::Value::Type::STRING},
141 {key::kDefaultSearchProviderSuggestURLPostParams, 96 {key::kDefaultSearchProviderSuggestURLPostParams,
142 DefaultSearchManager::kSuggestionsURLPostParams, 97 DefaultSearchManager::kSuggestionsURLPostParams,
143 base::Value::Type::STRING}, 98 base::Value::Type::STRING},
144 {key::kDefaultSearchProviderInstantURLPostParams, 99 {key::kDefaultSearchProviderInstantURLPostParams,
145 DefaultSearchManager::kInstantURLPostParams, base::Value::Type::STRING}, 100 DefaultSearchManager::kInstantURLPostParams, base::Value::Type::STRING},
146 {key::kDefaultSearchProviderImageURLPostParams, 101 {key::kDefaultSearchProviderImageURLPostParams,
147 DefaultSearchManager::kImageURLPostParams, base::Value::Type::STRING}, 102 DefaultSearchManager::kImageURLPostParams, base::Value::Type::STRING},
148 }; 103 };
149 104
150 // DefaultSearchEncodingsPolicyHandler implementation --------------------------
151
152 DefaultSearchEncodingsPolicyHandler::DefaultSearchEncodingsPolicyHandler()
153 : TypeCheckingPolicyHandler(key::kDefaultSearchProviderEncodings,
154 base::Value::Type::LIST) {}
155
156 DefaultSearchEncodingsPolicyHandler::~DefaultSearchEncodingsPolicyHandler() {
157 }
158
159 void DefaultSearchEncodingsPolicyHandler::ApplyPolicySettings(
160 const PolicyMap& policies, PrefValueMap* prefs) {
161 // The DefaultSearchProviderEncodings policy has type list, but the related
162 // preference has type string. Convert one into the other here, using
163 // ';' as a separator.
164 const base::Value* value = policies.GetValue(policy_name());
165 const base::ListValue* list;
166 if (!value || !value->GetAsList(&list))
167 return;
168
169 base::ListValue::const_iterator iter(list->begin());
170 base::ListValue::const_iterator end(list->end());
171 std::vector<std::string> string_parts;
172 for (; iter != end; ++iter) {
173 std::string s;
174 if ((*iter)->GetAsString(&s)) {
175 string_parts.push_back(s);
176 }
177 }
178 std::string encodings = base::JoinString(string_parts, ";");
179 prefs->SetString(prefs::kDefaultSearchProviderEncodings, encodings);
180 }
181
182
183 // DefaultSearchPolicyHandler implementation ----------------------------------- 105 // DefaultSearchPolicyHandler implementation -----------------------------------
184 106
185 DefaultSearchPolicyHandler::DefaultSearchPolicyHandler() { 107 DefaultSearchPolicyHandler::DefaultSearchPolicyHandler() {
186 for (size_t i = 0; i < arraysize(kDefaultSearchPolicyMap); ++i) { 108 for (size_t i = 0; i < arraysize(kDefaultSearchPolicyMap); ++i) {
187 const char* policy_name = kDefaultSearchPolicyMap[i].policy_name; 109 const char* policy_name = kDefaultSearchPolicyMap[i].policy_name;
188 if (policy_name == key::kDefaultSearchProviderEncodings) { 110 handlers_.push_back(base::MakeUnique<SimplePolicyHandler>(
189 handlers_.push_back( 111 policy_name, kDefaultSearchPolicyMap[i].preference_path,
190 base::MakeUnique<DefaultSearchEncodingsPolicyHandler>()); 112 kDefaultSearchPolicyMap[i].value_type));
191 } else {
192 handlers_.push_back(base::MakeUnique<SimplePolicyHandler>(
193 policy_name, kDefaultSearchPolicyMap[i].preference_path,
194 kDefaultSearchPolicyMap[i].value_type));
195 }
196 } 113 }
197 } 114 }
198 115
199 DefaultSearchPolicyHandler::~DefaultSearchPolicyHandler() {} 116 DefaultSearchPolicyHandler::~DefaultSearchPolicyHandler() {}
200 117
201 bool DefaultSearchPolicyHandler::CheckPolicySettings(const PolicyMap& policies, 118 bool DefaultSearchPolicyHandler::CheckPolicySettings(const PolicyMap& policies,
202 PolicyErrorMap* errors) { 119 PolicyErrorMap* errors) {
203 if (!CheckIndividualPolicies(policies, errors)) 120 if (!CheckIndividualPolicies(policies, errors))
204 return false; 121 return false;
205 122
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 void DefaultSearchPolicyHandler::EnsureListPrefExists( 277 void DefaultSearchPolicyHandler::EnsureListPrefExists(
361 PrefValueMap* prefs, 278 PrefValueMap* prefs,
362 const std::string& path) { 279 const std::string& path) {
363 base::Value* value; 280 base::Value* value;
364 base::ListValue* list_value; 281 base::ListValue* list_value;
365 if (!prefs->GetValue(path, &value) || !value->GetAsList(&list_value)) 282 if (!prefs->GetValue(path, &value) || !value->GetAsList(&list_value))
366 prefs->SetValue(path, base::MakeUnique<base::ListValue>()); 283 prefs->SetValue(path, base::MakeUnique<base::ListValue>());
367 } 284 }
368 285
369 } // namespace policy 286 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698