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

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

Issue 107803004: Add base:: to string16 in extensions/. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: remove a using Created 7 years 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 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"
11 #include "extensions/common/error_utils.h" 11 #include "extensions/common/error_utils.h"
12 #include "extensions/common/manifest_constants.h" 12 #include "extensions/common/manifest_constants.h"
13 #include "extensions/common/permissions/permissions_info.h" 13 #include "extensions/common/permissions/permissions_info.h"
14 14
15 namespace extensions { 15 namespace extensions {
16 16
17 namespace errors = manifest_errors; 17 namespace errors = manifest_errors;
18 18
19 namespace { 19 namespace {
20 20
21 bool CreateAPIPermission( 21 bool CreateAPIPermission(
22 const std::string& permission_str, 22 const std::string& permission_str,
23 const base::Value* permission_value, 23 const base::Value* permission_value,
24 APIPermissionSet::ParseSource source, 24 APIPermissionSet::ParseSource source,
25 APIPermissionSet* api_permissions, 25 APIPermissionSet* api_permissions,
26 string16* error, 26 base::string16* error,
27 std::vector<std::string>* unhandled_permissions) { 27 std::vector<std::string>* unhandled_permissions) {
28 28
29 const APIPermissionInfo* permission_info = 29 const APIPermissionInfo* permission_info =
30 PermissionsInfo::GetInstance()->GetByName(permission_str); 30 PermissionsInfo::GetInstance()->GetByName(permission_str);
31 if (permission_info) { 31 if (permission_info) {
32 scoped_ptr<APIPermission> permission( 32 scoped_ptr<APIPermission> permission(
33 permission_info->CreateAPIPermission()); 33 permission_info->CreateAPIPermission());
34 if (source != APIPermissionSet::kAllowInternalPermissions && 34 if (source != APIPermissionSet::kAllowInternalPermissions &&
35 permission_info->is_internal()) { 35 permission_info->is_internal()) {
36 // An internal permission specified in permissions list is an error. 36 // An internal permission specified in permissions list is an error.
(...skipping 22 matching lines...) Expand all
59 else 59 else
60 LOG(WARNING) << "Unknown permission[" << permission_str << "]."; 60 LOG(WARNING) << "Unknown permission[" << permission_str << "].";
61 61
62 return true; 62 return true;
63 } 63 }
64 64
65 bool ParseChildPermissions(const std::string& base_name, 65 bool ParseChildPermissions(const std::string& base_name,
66 const base::Value* permission_value, 66 const base::Value* permission_value,
67 APIPermissionSet::ParseSource source, 67 APIPermissionSet::ParseSource source,
68 APIPermissionSet* api_permissions, 68 APIPermissionSet* api_permissions,
69 string16* error, 69 base::string16* error,
70 std::vector<std::string>* unhandled_permissions) { 70 std::vector<std::string>* unhandled_permissions) {
71 if (permission_value) { 71 if (permission_value) {
72 const base::ListValue* permissions; 72 const base::ListValue* permissions;
73 if (!permission_value->GetAsList(&permissions)) { 73 if (!permission_value->GetAsList(&permissions)) {
74 if (error) { 74 if (error) {
75 *error = ErrorUtils::FormatErrorMessageUTF16( 75 *error = ErrorUtils::FormatErrorMessageUTF16(
76 errors::kInvalidPermission, base_name); 76 errors::kInvalidPermission, base_name);
77 return false; 77 return false;
78 } 78 }
79 LOG(WARNING) << "Permission value is not a list."; 79 LOG(WARNING) << "Permission value is not a list.";
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
117 117
118 void APIPermissionSet::insert(APIPermission* permission) { 118 void APIPermissionSet::insert(APIPermission* permission) {
119 BaseSetOperators<APIPermissionSet>::insert(permission); 119 BaseSetOperators<APIPermissionSet>::insert(permission);
120 } 120 }
121 121
122 // static 122 // static
123 bool APIPermissionSet::ParseFromJSON( 123 bool APIPermissionSet::ParseFromJSON(
124 const base::ListValue* permissions, 124 const base::ListValue* permissions,
125 APIPermissionSet::ParseSource source, 125 APIPermissionSet::ParseSource source,
126 APIPermissionSet* api_permissions, 126 APIPermissionSet* api_permissions,
127 string16* error, 127 base::string16* error,
128 std::vector<std::string>* unhandled_permissions) { 128 std::vector<std::string>* unhandled_permissions) {
129 for (size_t i = 0; i < permissions->GetSize(); ++i) { 129 for (size_t i = 0; i < permissions->GetSize(); ++i) {
130 std::string permission_str; 130 std::string permission_str;
131 const base::Value* permission_value = NULL; 131 const base::Value* permission_value = NULL;
132 if (!permissions->GetString(i, &permission_str)) { 132 if (!permissions->GetString(i, &permission_str)) {
133 const base::DictionaryValue* dict = NULL; 133 const base::DictionaryValue* dict = NULL;
134 // permission should be a string or a single key dict. 134 // permission should be a string or a single key dict.
135 if (!permissions->GetDictionary(i, &dict) || dict->size() != 1) { 135 if (!permissions->GetDictionary(i, &dict) || dict->size() != 1) {
136 if (error) { 136 if (error) {
137 *error = ErrorUtils::FormatErrorMessageUTF16( 137 *error = ErrorUtils::FormatErrorMessageUTF16(
(...skipping 28 matching lines...) Expand all
166 // The fileSystem.write and fileSystem.directory permissions imply 166 // The fileSystem.write and fileSystem.directory permissions imply
167 // fileSystem.writeDirectory. 167 // fileSystem.writeDirectory.
168 // TODO(sammc): Remove this. See http://crbug.com/284849. 168 // TODO(sammc): Remove this. See http://crbug.com/284849.
169 if (ContainsKey(map(), APIPermission::kFileSystemWrite) && 169 if (ContainsKey(map(), APIPermission::kFileSystemWrite) &&
170 ContainsKey(map(), APIPermission::kFileSystemDirectory)) { 170 ContainsKey(map(), APIPermission::kFileSystemDirectory)) {
171 insert(APIPermission::kFileSystemWriteDirectory); 171 insert(APIPermission::kFileSystemWriteDirectory);
172 } 172 }
173 } 173 }
174 174
175 } // namespace extensions 175 } // namespace extensions
OLDNEW
« no previous file with comments | « extensions/common/permissions/api_permission_set.h ('k') | extensions/common/permissions/manifest_permission_set.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698