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

Side by Side Diff: extensions/common/permissions/api_permission_set.cc

Issue 1300353002: Make USB permissions work in the new permission message system (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@kill_permissionmessage
Patch Set: review Created 5 years, 4 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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "extensions/common/permissions/api_permission_set.h" 5 #include "extensions/common/permissions/api_permission_set.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #include "base/stl_util.h" 8 #include "base/stl_util.h"
9 #include "base/strings/string_number_conversions.h" 9 #include "base/strings/string_number_conversions.h"
10 #include "base/values.h" 10 #include "base/values.h"
(...skipping 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 bool PermissionIDSet::ContainsAllIDs( 247 bool PermissionIDSet::ContainsAllIDs(
248 const std::set<APIPermission::ID>& permission_ids) const { 248 const std::set<APIPermission::ID>& permission_ids) const {
249 return std::includes(permissions_.begin(), permissions_.end(), 249 return std::includes(permissions_.begin(), permissions_.end(),
250 permission_ids.begin(), permission_ids.end(), 250 permission_ids.begin(), permission_ids.end(),
251 [] (const PermissionIDCompareHelper& lhs, 251 [] (const PermissionIDCompareHelper& lhs,
252 const PermissionIDCompareHelper& rhs) { 252 const PermissionIDCompareHelper& rhs) {
253 return lhs.id < rhs.id; 253 return lhs.id < rhs.id;
254 }); 254 });
255 } 255 }
256 256
257 bool PermissionIDSet::ContainsAnyID(
258 const std::set<APIPermission::ID>& permission_ids) const {
259 for (APIPermission::ID id : permission_ids) {
260 if (ContainsID(id))
261 return true;
262 }
263 return false;
264 }
265
266 PermissionIDSet PermissionIDSet::GetAllPermissionsWithID(
267 APIPermission::ID permission_id) const {
268 PermissionIDSet subset;
269 auto it = permissions_.lower_bound(PermissionID(permission_id));
270 while (it != permissions_.end() && it->id() == permission_id) {
271 subset.permissions_.insert(*it);
272 ++it;
273 }
274 return subset;
275 }
276
257 PermissionIDSet PermissionIDSet::GetAllPermissionsWithIDs( 277 PermissionIDSet PermissionIDSet::GetAllPermissionsWithIDs(
258 const std::set<APIPermission::ID>& permission_ids) const { 278 const std::set<APIPermission::ID>& permission_ids) const {
259 PermissionIDSet subset; 279 PermissionIDSet subset;
260 for (const auto& permission : permissions_) { 280 for (const auto& permission : permissions_) {
261 if (ContainsKey(permission_ids, permission.id())) { 281 if (ContainsKey(permission_ids, permission.id())) {
262 subset.permissions_.insert(permission); 282 subset.permissions_.insert(permission);
263 } 283 }
264 } 284 }
265 return subset; 285 return subset;
266 } 286 }
(...skipping 19 matching lines...) Expand all
286 306
287 bool PermissionIDSet::empty() const { 307 bool PermissionIDSet::empty() const {
288 return permissions_.empty(); 308 return permissions_.empty();
289 } 309 }
290 310
291 PermissionIDSet::PermissionIDSet(const std::set<PermissionID>& permissions) 311 PermissionIDSet::PermissionIDSet(const std::set<PermissionID>& permissions)
292 : permissions_(permissions) { 312 : permissions_(permissions) {
293 } 313 }
294 314
295 } // namespace extensions 315 } // namespace extensions
OLDNEW
« no previous file with comments | « extensions/common/permissions/api_permission_set.h ('k') | extensions/common/permissions/usb_device_permission.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698