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

Side by Side Diff: chrome/browser/supervised_user/supervised_user_site_list.cc

Issue 335833003: Rename "managed (mode|user)" to "supervised user" (part 2) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: review comments (+ a few other cleanups) Created 6 years, 6 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/managed_mode/managed_mode_site_list.h" 5 #include "chrome/browser/supervised_user/supervised_user_site_list.h"
6 6
7 #include "base/json/json_file_value_serializer.h" 7 #include "base/json/json_file_value_serializer.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "base/values.h" 10 #include "base/values.h"
11 #include "extensions/common/extension.h" 11 #include "extensions/common/extension.h"
12 12
13 using base::DictionaryValue; 13 using base::DictionaryValue;
14 using base::ListValue; 14 using base::ListValue;
15 using base::Value; 15 using base::Value;
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 if (g_categories[i].identifier == category) 62 if (g_categories[i].identifier == category)
63 return i + 1; 63 return i + 1;
64 } 64 }
65 return 0; 65 return 0;
66 } 66 }
67 67
68 // Takes a DictionaryValue entry from the JSON file and fills the whitelist 68 // Takes a DictionaryValue entry from the JSON file and fills the whitelist
69 // (via URL patterns or hostname hashes) and the URL in the corresponding Site 69 // (via URL patterns or hostname hashes) and the URL in the corresponding Site
70 // struct. 70 // struct.
71 void AddWhitelistEntries(const base::DictionaryValue* site_dict, 71 void AddWhitelistEntries(const base::DictionaryValue* site_dict,
72 ManagedModeSiteList::Site* site) { 72 SupervisedUserSiteList::Site* site) {
73 std::vector<std::string>* patterns = &site->patterns; 73 std::vector<std::string>* patterns = &site->patterns;
74 74
75 bool found = false; 75 bool found = false;
76 const base::ListValue* whitelist = NULL; 76 const base::ListValue* whitelist = NULL;
77 if (site_dict->GetList(kWhitelistKey, &whitelist)) { 77 if (site_dict->GetList(kWhitelistKey, &whitelist)) {
78 found = true; 78 found = true;
79 for (base::ListValue::const_iterator whitelist_it = whitelist->begin(); 79 for (base::ListValue::const_iterator whitelist_it = whitelist->begin();
80 whitelist_it != whitelist->end(); ++whitelist_it) { 80 whitelist_it != whitelist->end(); ++whitelist_it) {
81 std::string pattern; 81 std::string pattern;
82 if (!(*whitelist_it)->GetAsString(&pattern)) { 82 if (!(*whitelist_it)->GetAsString(&pattern)) {
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
118 if (!url.is_valid()) { 118 if (!url.is_valid()) {
119 LOG(ERROR) << "URL " << url_str << " is invalid"; 119 LOG(ERROR) << "URL " << url_str << " is invalid";
120 return; 120 return;
121 } 121 }
122 122
123 patterns->push_back(url.host()); 123 patterns->push_back(url.host());
124 } 124 }
125 125
126 } // namespace 126 } // namespace
127 127
128 ManagedModeSiteList::Site::Site(const base::string16& name, 128 SupervisedUserSiteList::Site::Site(const base::string16& name,
129 int category_id) 129 int category_id)
130 : name(name), 130 : name(name),
131 category_id(category_id) {} 131 category_id(category_id) {}
132 132
133 ManagedModeSiteList::Site::~Site() {} 133 SupervisedUserSiteList::Site::~Site() {}
134 134
135 ManagedModeSiteList::ManagedModeSiteList( 135 SupervisedUserSiteList::SupervisedUserSiteList(
136 const std::string& extension_id, 136 const std::string& extension_id,
137 const base::FilePath& path) 137 const base::FilePath& path)
138 : extension_id_(extension_id), 138 : extension_id_(extension_id),
139 path_(path) { 139 path_(path) {
140 } 140 }
141 141
142 ManagedModeSiteList::~ManagedModeSiteList() { 142 SupervisedUserSiteList::~SupervisedUserSiteList() {
143 } 143 }
144 144
145 ManagedModeSiteList* ManagedModeSiteList::Clone() { 145 SupervisedUserSiteList* SupervisedUserSiteList::Clone() {
146 return new ManagedModeSiteList(extension_id_, path_); 146 return new SupervisedUserSiteList(extension_id_, path_);
147 } 147 }
148 148
149 // static 149 // static
150 void ManagedModeSiteList::GetCategoryNames( 150 void SupervisedUserSiteList::GetCategoryNames(
151 std::vector<base::string16>* categories) { 151 std::vector<base::string16>* categories) {
152 // TODO(bauerb): Collect custom categories from extensions. 152 // TODO(bauerb): Collect custom categories from extensions.
153 for (size_t i = 0; i < arraysize(g_categories); ++i) { 153 for (size_t i = 0; i < arraysize(g_categories); ++i) {
154 categories->push_back(base::ASCIIToUTF16(g_categories[i].name)); 154 categories->push_back(base::ASCIIToUTF16(g_categories[i].name));
155 } 155 }
156 } 156 }
157 157
158 void ManagedModeSiteList::GetSites(std::vector<Site>* sites) { 158 void SupervisedUserSiteList::GetSites(std::vector<Site>* sites) {
159 if (!LazyLoad()) 159 if (!LazyLoad())
160 return; 160 return;
161 161
162 for (base::ListValue::iterator entry_it = sites_->begin(); 162 for (base::ListValue::iterator entry_it = sites_->begin();
163 entry_it != sites_->end(); ++entry_it) { 163 entry_it != sites_->end(); ++entry_it) {
164 base::DictionaryValue* entry = NULL; 164 base::DictionaryValue* entry = NULL;
165 if (!(*entry_it)->GetAsDictionary(&entry)) { 165 if (!(*entry_it)->GetAsDictionary(&entry)) {
166 LOG(ERROR) << "Entry is invalid"; 166 LOG(ERROR) << "Entry is invalid";
167 continue; 167 continue;
168 } 168 }
(...skipping 15 matching lines...) Expand all
184 } 184 }
185 category_id = GetCategoryId(category); 185 category_id = GetCategoryId(category);
186 break; 186 break;
187 } 187 }
188 } 188 }
189 sites->push_back(Site(name, category_id)); 189 sites->push_back(Site(name, category_id));
190 AddWhitelistEntries(entry, &sites->back()); 190 AddWhitelistEntries(entry, &sites->back());
191 } 191 }
192 } 192 }
193 193
194 bool ManagedModeSiteList::LazyLoad() { 194 bool SupervisedUserSiteList::LazyLoad() {
195 if (sites_.get()) 195 if (sites_.get())
196 return true; 196 return true;
197 197
198 JSONFileValueSerializer serializer(path_); 198 JSONFileValueSerializer serializer(path_);
199 std::string error; 199 std::string error;
200 scoped_ptr<base::Value> value(serializer.Deserialize(NULL, &error)); 200 scoped_ptr<base::Value> value(serializer.Deserialize(NULL, &error));
201 if (!value.get()) { 201 if (!value.get()) {
202 LOG(ERROR) << "Couldn't load site list " << path_.value() << ": " 202 LOG(ERROR) << "Couldn't load site list " << path_.value() << ": "
203 << error; 203 << error;
204 return false; 204 return false;
(...skipping 20 matching lines...) Expand all
225 if (dict->GetList(kSitesKey, &sites)) 225 if (dict->GetList(kSitesKey, &sites))
226 sites_.reset(sites->DeepCopy()); 226 sites_.reset(sites->DeepCopy());
227 227
228 base::DictionaryValue* categories = NULL; 228 base::DictionaryValue* categories = NULL;
229 if (dict->GetDictionary(kCategoriesKey, &categories)) 229 if (dict->GetDictionary(kCategoriesKey, &categories))
230 categories_.reset(categories->DeepCopy()); 230 categories_.reset(categories->DeepCopy());
231 231
232 return true; 232 return true;
233 } 233 }
234 234
235 void ManagedModeSiteList::CopyThumbnailUrl(const base::DictionaryValue* source, 235 void SupervisedUserSiteList::CopyThumbnailUrl(
236 base::DictionaryValue* dest) { 236 const base::DictionaryValue* source,
237 base::DictionaryValue* dest) {
237 if (!source->HasKey(kThumbnailKey)) 238 if (!source->HasKey(kThumbnailKey))
238 return; 239 return;
239 240
240 std::string thumbnail; 241 std::string thumbnail;
241 if (!source->GetString(kThumbnailKey, &thumbnail)) { 242 if (!source->GetString(kThumbnailKey, &thumbnail)) {
242 LOG(ERROR) << "Invalid thumbnail"; 243 LOG(ERROR) << "Invalid thumbnail";
243 return; 244 return;
244 } 245 }
245 246
246 GURL base_url = 247 GURL base_url =
247 extensions::Extension::GetBaseURLFromExtensionId(extension_id_); 248 extensions::Extension::GetBaseURLFromExtensionId(extension_id_);
248 GURL thumbnail_url = base_url.Resolve(thumbnail); 249 GURL thumbnail_url = base_url.Resolve(thumbnail);
249 if (!thumbnail_url.is_valid()) { 250 if (!thumbnail_url.is_valid()) {
250 LOG(ERROR) << "Invalid thumbnail"; 251 LOG(ERROR) << "Invalid thumbnail";
251 return; 252 return;
252 } 253 }
253 254
254 dest->SetString(kThumbnailUrlKey, thumbnail_url.spec()); 255 dest->SetString(kThumbnailUrlKey, thumbnail_url.spec());
255 } 256 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698