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

Side by Side Diff: chrome/common/extensions/api/extension_api.cc

Issue 10141008: Make managedMode extension API component-only. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 8 years, 8 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/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 143 matching lines...) Expand 10 before | Expand all | Expand 10 after
154 const DictionaryValue* schema = NULL; 154 const DictionaryValue* schema = NULL;
155 { 155 {
156 Value* value = NULL; 156 Value* value = NULL;
157 schema_list->Remove(schema_list->GetSize() - 1, &value); 157 schema_list->Remove(schema_list->GetSize() - 1, &value);
158 CHECK(value->IsType(Value::TYPE_DICTIONARY)); 158 CHECK(value->IsType(Value::TYPE_DICTIONARY));
159 schema = static_cast<const DictionaryValue*>(value); 159 schema = static_cast<const DictionaryValue*>(value);
160 } 160 }
161 161
162 CHECK(schema->GetString("namespace", &schema_namespace)); 162 CHECK(schema->GetString("namespace", &schema_namespace));
163 schemas_[schema_namespace] = make_linked_ptr(schema); 163 schemas_[schema_namespace] = make_linked_ptr(schema);
164 unloaded_schemas_.erase(schema_namespace); 164 CHECK_EQ(1u, unloaded_schemas_.erase(schema_namespace));
165 165
166 // Populate |{completely,partially}_unprivileged_apis_|. 166 // Populate |{completely,partially}_unprivileged_apis_|.
167 // 167 //
168 // For "partially", only need to look at functions/events; even though 168 // For "partially", only need to look at functions/events; even though
169 // there are unprivileged properties (e.g. in extensions), access to those 169 // there are unprivileged properties (e.g. in extensions), access to those
170 // never reaches C++ land. 170 // never reaches C++ land.
171 if (schema->HasKey("unprivileged")) { 171 if (schema->HasKey("unprivileged")) {
172 completely_unprivileged_apis_.insert(schema_namespace); 172 completely_unprivileged_apis_.insert(schema_namespace);
173 } else if (HasUnprivilegedChild(schema, "functions") || 173 } else if (HasUnprivilegedChild(schema, "functions") ||
174 HasUnprivilegedChild(schema, "events")) { 174 HasUnprivilegedChild(schema, "events")) {
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after
288 RegisterSchema("experimental.identity", ReadFromResource( 288 RegisterSchema("experimental.identity", ReadFromResource(
289 IDR_EXTENSION_API_JSON_EXPERIMENTAL_IDENTITY)); 289 IDR_EXTENSION_API_JSON_EXPERIMENTAL_IDENTITY));
290 RegisterSchema("experimental.infobars", ReadFromResource( 290 RegisterSchema("experimental.infobars", ReadFromResource(
291 IDR_EXTENSION_API_JSON_EXPERIMENTAL_INFOBARS)); 291 IDR_EXTENSION_API_JSON_EXPERIMENTAL_INFOBARS));
292 RegisterSchema("experimental.input.ui", ReadFromResource( 292 RegisterSchema("experimental.input.ui", ReadFromResource(
293 IDR_EXTENSION_API_JSON_EXPERIMENTAL_INPUT_UI)); 293 IDR_EXTENSION_API_JSON_EXPERIMENTAL_INPUT_UI));
294 RegisterSchema("experimental.input.virtualKeyboard", ReadFromResource( 294 RegisterSchema("experimental.input.virtualKeyboard", ReadFromResource(
295 IDR_EXTENSION_API_JSON_EXPERIMENTAL_INPUT_VIRTUALKEYBOARD)); 295 IDR_EXTENSION_API_JSON_EXPERIMENTAL_INPUT_VIRTUALKEYBOARD));
296 RegisterSchema("experimental.keybinding", ReadFromResource( 296 RegisterSchema("experimental.keybinding", ReadFromResource(
297 IDR_EXTENSION_API_JSON_EXPERIMENTAL_KEYBINDING)); 297 IDR_EXTENSION_API_JSON_EXPERIMENTAL_KEYBINDING));
298 RegisterSchema("experimental.managedMode", ReadFromResource(
299 IDR_EXTENSION_API_JSON_EXPERIMENTAL_MANAGEDMODE));
300 RegisterSchema("experimental.offscreenTabs", ReadFromResource( 298 RegisterSchema("experimental.offscreenTabs", ReadFromResource(
301 IDR_EXTENSION_API_JSON_EXPERIMENTAL_OFFSCREENTABS)); 299 IDR_EXTENSION_API_JSON_EXPERIMENTAL_OFFSCREENTABS));
302 RegisterSchema("experimental.processes", ReadFromResource( 300 RegisterSchema("experimental.processes", ReadFromResource(
303 IDR_EXTENSION_API_JSON_EXPERIMENTAL_PROCESSES)); 301 IDR_EXTENSION_API_JSON_EXPERIMENTAL_PROCESSES));
304 RegisterSchema("experimental.rlz", ReadFromResource( 302 RegisterSchema("experimental.rlz", ReadFromResource(
305 IDR_EXTENSION_API_JSON_EXPERIMENTAL_RLZ)); 303 IDR_EXTENSION_API_JSON_EXPERIMENTAL_RLZ));
306 RegisterSchema("experimental.runtime", ReadFromResource( 304 RegisterSchema("experimental.runtime", ReadFromResource(
307 IDR_EXTENSION_API_JSON_EXPERIMENTAL_RUNTIME)); 305 IDR_EXTENSION_API_JSON_EXPERIMENTAL_RUNTIME));
308 RegisterSchema("experimental.speechInput", ReadFromResource( 306 RegisterSchema("experimental.speechInput", ReadFromResource(
309 IDR_EXTENSION_API_JSON_EXPERIMENTAL_SPEECHINPUT)); 307 IDR_EXTENSION_API_JSON_EXPERIMENTAL_SPEECHINPUT));
310 RegisterSchema("experimental.webRequest", ReadFromResource( 308 RegisterSchema("experimental.webRequest", ReadFromResource(
311 IDR_EXTENSION_API_JSON_EXPERIMENTAL_WEBREQUEST)); 309 IDR_EXTENSION_API_JSON_EXPERIMENTAL_WEBREQUEST));
312 RegisterSchema("extension", ReadFromResource( 310 RegisterSchema("extension", ReadFromResource(
313 IDR_EXTENSION_API_JSON_EXTENSION)); 311 IDR_EXTENSION_API_JSON_EXTENSION));
314 RegisterSchema("fileBrowserHandler", ReadFromResource( 312 RegisterSchema("fileBrowserHandler", ReadFromResource(
315 IDR_EXTENSION_API_JSON_FILEBROWSERHANDLER)); 313 IDR_EXTENSION_API_JSON_FILEBROWSERHANDLER));
316 RegisterSchema("fileBrowserPrivate", ReadFromResource( 314 RegisterSchema("fileBrowserPrivate", ReadFromResource(
317 IDR_EXTENSION_API_JSON_FILEBROWSERPRIVATE)); 315 IDR_EXTENSION_API_JSON_FILEBROWSERPRIVATE));
318 RegisterSchema("history", ReadFromResource( 316 RegisterSchema("history", ReadFromResource(
319 IDR_EXTENSION_API_JSON_HISTORY)); 317 IDR_EXTENSION_API_JSON_HISTORY));
320 RegisterSchema("i18n", ReadFromResource( 318 RegisterSchema("i18n", ReadFromResource(
321 IDR_EXTENSION_API_JSON_I18N)); 319 IDR_EXTENSION_API_JSON_I18N));
322 RegisterSchema("idle", ReadFromResource( 320 RegisterSchema("idle", ReadFromResource(
323 IDR_EXTENSION_API_JSON_IDLE)); 321 IDR_EXTENSION_API_JSON_IDLE));
324 RegisterSchema("input.ime", ReadFromResource( 322 RegisterSchema("input.ime", ReadFromResource(
325 IDR_EXTENSION_API_JSON_INPUT_IME)); 323 IDR_EXTENSION_API_JSON_INPUT_IME));
326 RegisterSchema("inputMethodPrivate", ReadFromResource( 324 RegisterSchema("inputMethodPrivate", ReadFromResource(
327 IDR_EXTENSION_API_JSON_INPUTMETHODPRIVATE)); 325 IDR_EXTENSION_API_JSON_INPUTMETHODPRIVATE));
326 RegisterSchema("managedModePrivate", ReadFromResource(
327 IDR_EXTENSION_API_JSON_MANAGEDMODEPRIVATE));
328 RegisterSchema("management", ReadFromResource( 328 RegisterSchema("management", ReadFromResource(
329 IDR_EXTENSION_API_JSON_MANAGEMENT)); 329 IDR_EXTENSION_API_JSON_MANAGEMENT));
330 RegisterSchema("mediaPlayerPrivate", ReadFromResource( 330 RegisterSchema("mediaPlayerPrivate", ReadFromResource(
331 IDR_EXTENSION_API_JSON_MEDIAPLAYERPRIVATE)); 331 IDR_EXTENSION_API_JSON_MEDIAPLAYERPRIVATE));
332 RegisterSchema("metricsPrivate", ReadFromResource( 332 RegisterSchema("metricsPrivate", ReadFromResource(
333 IDR_EXTENSION_API_JSON_METRICSPRIVATE)); 333 IDR_EXTENSION_API_JSON_METRICSPRIVATE));
334 RegisterSchema("echoPrivate", ReadFromResource( 334 RegisterSchema("echoPrivate", ReadFromResource(
335 IDR_EXTENSION_API_JSON_ECHOPRIVATE)); 335 IDR_EXTENSION_API_JSON_ECHOPRIVATE));
336 RegisterSchema("omnibox", ReadFromResource( 336 RegisterSchema("omnibox", ReadFromResource(
337 IDR_EXTENSION_API_JSON_OMNIBOX)); 337 IDR_EXTENSION_API_JSON_OMNIBOX));
(...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after
714 } 714 }
715 } 715 }
716 716
717 void ExtensionAPI::LoadAllSchemas() { 717 void ExtensionAPI::LoadAllSchemas() {
718 while (unloaded_schemas_.size()) { 718 while (unloaded_schemas_.size()) {
719 LoadSchema(unloaded_schemas_.begin()->second); 719 LoadSchema(unloaded_schemas_.begin()->second);
720 } 720 }
721 } 721 }
722 722
723 } // namespace extensions 723 } // namespace extensions
OLDNEW
« no previous file with comments | « chrome/common/extensions/api/experimental.managedMode.json ('k') | chrome/common/extensions/api/managedModePrivate.json » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698