| OLD | NEW |
| 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 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 176 void APIPermissionSet::AddImpliedPermissions() { | 176 void APIPermissionSet::AddImpliedPermissions() { |
| 177 // The fileSystem.write and fileSystem.directory permissions imply | 177 // The fileSystem.write and fileSystem.directory permissions imply |
| 178 // fileSystem.writeDirectory. | 178 // fileSystem.writeDirectory. |
| 179 // TODO(sammc): Remove this. See http://crbug.com/284849. | 179 // TODO(sammc): Remove this. See http://crbug.com/284849. |
| 180 if (ContainsKey(map(), APIPermission::kFileSystemWrite) && | 180 if (ContainsKey(map(), APIPermission::kFileSystemWrite) && |
| 181 ContainsKey(map(), APIPermission::kFileSystemDirectory)) { | 181 ContainsKey(map(), APIPermission::kFileSystemDirectory)) { |
| 182 insert(APIPermission::kFileSystemWriteDirectory); | 182 insert(APIPermission::kFileSystemWriteDirectory); |
| 183 } | 183 } |
| 184 } | 184 } |
| 185 | 185 |
| 186 PermissionIDSet::PermissionIDSet() : permissions() { | 186 PermissionID::PermissionID(APIPermission::ID id) |
| 187 : std::pair<APIPermission::ID, base::string16>(id, base::string16()) { |
| 188 } |
| 189 |
| 190 PermissionID::PermissionID(APIPermission::ID id, |
| 191 const base::string16& parameter) |
| 192 : std::pair<APIPermission::ID, base::string16>(id, parameter) { |
| 193 } |
| 194 |
| 195 PermissionID::~PermissionID() { |
| 196 } |
| 197 |
| 198 PermissionIDSet::PermissionIDSet() : permissions_() { |
| 187 } | 199 } |
| 188 | 200 |
| 189 PermissionIDSet::~PermissionIDSet() { | 201 PermissionIDSet::~PermissionIDSet() { |
| 190 } | 202 } |
| 191 | 203 |
| 192 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one) { | 204 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one) |
| 205 : permissions_() { |
| 193 insert(permission_one); | 206 insert(permission_one); |
| 194 } | 207 } |
| 195 | 208 |
| 196 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one, | 209 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one, |
| 197 APIPermission::ID permission_two) { | 210 APIPermission::ID permission_two) |
| 211 : permissions_() { |
| 198 insert(permission_one); | 212 insert(permission_one); |
| 199 insert(permission_two); | 213 insert(permission_two); |
| 200 } | 214 } |
| 201 | 215 |
| 202 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one, | 216 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one, |
| 203 APIPermission::ID permission_two, | 217 APIPermission::ID permission_two, |
| 204 APIPermission::ID permission_three) { | 218 APIPermission::ID permission_three) |
| 219 : permissions_() { |
| 205 insert(permission_one); | 220 insert(permission_one); |
| 206 insert(permission_two); | 221 insert(permission_two); |
| 207 insert(permission_three); | 222 insert(permission_three); |
| 208 } | 223 } |
| 209 | 224 |
| 210 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one, | 225 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one, |
| 211 APIPermission::ID permission_two, | 226 APIPermission::ID permission_two, |
| 212 APIPermission::ID permission_three, | 227 APIPermission::ID permission_three, |
| 213 APIPermission::ID permission_four) { | 228 APIPermission::ID permission_four) |
| 229 : permissions_() { |
| 214 insert(permission_one); | 230 insert(permission_one); |
| 215 insert(permission_two); | 231 insert(permission_two); |
| 216 insert(permission_three); | 232 insert(permission_three); |
| 217 insert(permission_four); | 233 insert(permission_four); |
| 218 } | 234 } |
| 219 | 235 |
| 220 void PermissionIDSet::insert(APIPermission::ID permission) { | 236 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one, |
| 221 permissions.insert(PermissionID(permission, base::string16())); | 237 APIPermission::ID permission_two, |
| 238 APIPermission::ID permission_three, |
| 239 APIPermission::ID permission_four, |
| 240 APIPermission::ID permission_five) |
| 241 : permissions_() { |
| 242 insert(permission_one); |
| 243 insert(permission_two); |
| 244 insert(permission_three); |
| 245 insert(permission_four); |
| 246 insert(permission_five); |
| 222 } | 247 } |
| 223 | 248 |
| 224 void PermissionIDSet::insert(APIPermission::ID permission, | 249 PermissionIDSet::PermissionIDSet(APIPermission::ID permission_one, |
| 225 base::string16 permission_detail) { | 250 APIPermission::ID permission_two, |
| 226 permissions.insert(PermissionID(permission, permission_detail)); | 251 APIPermission::ID permission_three, |
| 252 APIPermission::ID permission_four, |
| 253 APIPermission::ID permission_five, |
| 254 APIPermission::ID permission_six) |
| 255 : permissions_() { |
| 256 insert(permission_one); |
| 257 insert(permission_two); |
| 258 insert(permission_three); |
| 259 insert(permission_four); |
| 260 insert(permission_five); |
| 261 insert(permission_six); |
| 262 } |
| 263 |
| 264 void PermissionIDSet::insert(APIPermission::ID permission_id) { |
| 265 permissions_.insert(PermissionID(permission_id, base::string16())); |
| 266 } |
| 267 |
| 268 void PermissionIDSet::insert(APIPermission::ID permission_id, |
| 269 base::string16 permission_parameter) { |
| 270 permissions_.insert(PermissionID(permission_id, permission_parameter)); |
| 227 } | 271 } |
| 228 | 272 |
| 229 } // namespace extensions | 273 } // namespace extensions |
| OLD | NEW |