OLD | NEW |
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/common/extensions/api/extension_api.h" | 5 #include "chrome/common/extensions/api/extension_api.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <string> | 8 #include <string> |
9 #include <vector> | 9 #include <vector> |
10 | 10 |
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
68 static base::ListValue* LoadSchemaList(int resource_id) { | 68 static base::ListValue* LoadSchemaList(int resource_id) { |
69 const bool kAllowTrailingCommas = false; | 69 const bool kAllowTrailingCommas = false; |
70 std::string error_message; | 70 std::string error_message; |
71 Value* result = | 71 Value* result = |
72 base::JSONReader::ReadAndReturnError( | 72 base::JSONReader::ReadAndReturnError( |
73 ResourceBundle::GetSharedInstance().GetRawDataResource( | 73 ResourceBundle::GetSharedInstance().GetRawDataResource( |
74 resource_id).as_string(), | 74 resource_id).as_string(), |
75 kAllowTrailingCommas, | 75 kAllowTrailingCommas, |
76 NULL, // error code | 76 NULL, // error code |
77 &error_message); | 77 &error_message); |
78 CHECK(result) << error_message; | |
79 CHECK(result->IsType(base::Value::TYPE_LIST)); | 78 CHECK(result->IsType(base::Value::TYPE_LIST)); |
80 return static_cast<base::ListValue*>(result); | 79 return static_cast<base::ListValue*>(result); |
81 } | 80 } |
82 | 81 |
83 void ExtensionAPI::LoadSchemaFromResource(int resource_id) { | 82 void ExtensionAPI::LoadSchemaFromResource(int resource_id) { |
84 scoped_ptr<base::ListValue> loaded(LoadSchemaList(resource_id)); | 83 scoped_ptr<base::ListValue> loaded(LoadSchemaList(resource_id)); |
85 Value* value = NULL; | 84 Value* value = NULL; |
86 std::string schema_namespace; | 85 std::string schema_namespace; |
87 while (!loaded->empty()) { | 86 while (!loaded->empty()) { |
88 loaded->Remove(loaded->GetSize() - 1, &value); | 87 loaded->Remove(loaded->GetSize() - 1, &value); |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
120 IDR_EXTENSION_API_JSON_EXPERIMENTAL_KEYBINDING, | 119 IDR_EXTENSION_API_JSON_EXPERIMENTAL_KEYBINDING, |
121 IDR_EXTENSION_API_JSON_EXPERIMENTAL_PROCESSES, | 120 IDR_EXTENSION_API_JSON_EXPERIMENTAL_PROCESSES, |
122 IDR_EXTENSION_API_JSON_EXPERIMENTAL_RLZ, | 121 IDR_EXTENSION_API_JSON_EXPERIMENTAL_RLZ, |
123 IDR_EXTENSION_API_JSON_EXPERIMENTAL_SERIAL, | 122 IDR_EXTENSION_API_JSON_EXPERIMENTAL_SERIAL, |
124 IDR_EXTENSION_API_JSON_EXPERIMENTAL_SOCKET, | 123 IDR_EXTENSION_API_JSON_EXPERIMENTAL_SOCKET, |
125 IDR_EXTENSION_API_JSON_EXPERIMENTAL_SPEECHINPUT, | 124 IDR_EXTENSION_API_JSON_EXPERIMENTAL_SPEECHINPUT, |
126 IDR_EXTENSION_API_JSON_EXPERIMENTAL_TOPSITES, | 125 IDR_EXTENSION_API_JSON_EXPERIMENTAL_TOPSITES, |
127 IDR_EXTENSION_API_JSON_EXTENSION, | 126 IDR_EXTENSION_API_JSON_EXTENSION, |
128 IDR_EXTENSION_API_JSON_FILEBROWSERHANDLER, | 127 IDR_EXTENSION_API_JSON_FILEBROWSERHANDLER, |
129 IDR_EXTENSION_API_JSON_FILEBROWSERPRIVATE, | 128 IDR_EXTENSION_API_JSON_FILEBROWSERPRIVATE, |
| 129 IDR_EXTENSION_API_JSON_GENERATED, |
130 IDR_EXTENSION_API_JSON_HISTORY, | 130 IDR_EXTENSION_API_JSON_HISTORY, |
131 IDR_EXTENSION_API_JSON_I18N, | 131 IDR_EXTENSION_API_JSON_I18N, |
132 IDR_EXTENSION_API_JSON_IDLE, | 132 IDR_EXTENSION_API_JSON_IDLE, |
| 133 IDR_EXTENSION_API_JSON_INPUTMETHODPRIVATE, |
133 IDR_EXTENSION_API_JSON_INPUT_IME, | 134 IDR_EXTENSION_API_JSON_INPUT_IME, |
134 IDR_EXTENSION_API_JSON_INPUTMETHODPRIVATE, | |
135 IDR_EXTENSION_API_JSON_MANAGEMENT, | 135 IDR_EXTENSION_API_JSON_MANAGEMENT, |
136 IDR_EXTENSION_API_JSON_MEDIAPLAYERPRIVATE, | 136 IDR_EXTENSION_API_JSON_MEDIAPLAYERPRIVATE, |
137 IDR_EXTENSION_API_JSON_METRICSPRIVATE, | 137 IDR_EXTENSION_API_JSON_METRICSPRIVATE, |
138 IDR_EXTENSION_API_JSON_OMNIBOX, | 138 IDR_EXTENSION_API_JSON_OMNIBOX, |
139 IDR_EXTENSION_API_JSON_PAGEACTION, | 139 IDR_EXTENSION_API_JSON_PAGEACTION, |
140 IDR_EXTENSION_API_JSON_PAGEACTIONS, | 140 IDR_EXTENSION_API_JSON_PAGEACTIONS, |
141 IDR_EXTENSION_API_JSON_PAGECAPTURE, | 141 IDR_EXTENSION_API_JSON_PAGECAPTURE, |
142 IDR_EXTENSION_API_JSON_PERMISSIONS, | 142 IDR_EXTENSION_API_JSON_PERMISSIONS, |
143 IDR_EXTENSION_API_JSON_PRIVACY, | 143 IDR_EXTENSION_API_JSON_PRIVACY, |
144 IDR_EXTENSION_API_JSON_PROXY, | 144 IDR_EXTENSION_API_JSON_PROXY, |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
305 (*out)[it->first] = it->second; | 305 (*out)[it->first] = it->second; |
306 } | 306 } |
307 } | 307 } |
308 | 308 |
309 bool ExtensionAPI::IsWholeAPIPrivileged(const std::string& api_name) const { | 309 bool ExtensionAPI::IsWholeAPIPrivileged(const std::string& api_name) const { |
310 return !completely_unprivileged_apis_.count(api_name) && | 310 return !completely_unprivileged_apis_.count(api_name) && |
311 !partially_unprivileged_apis_.count(api_name); | 311 !partially_unprivileged_apis_.count(api_name); |
312 } | 312 } |
313 | 313 |
314 } // namespace extensions | 314 } // namespace extensions |
OLD | NEW |