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

Side by Side Diff: chrome/browser/extensions/extension_function_dispatcher.cc

Issue 7432006: Add an experimental permissions API for extensions. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: . Created 9 years, 5 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) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/browser/extensions/extension_function_dispatcher.h" 5 #include "chrome/browser/extensions/extension_function_dispatcher.h"
6 6
7 #include <map> 7 #include <map>
8 8
9 #include "base/memory/ref_counted.h" 9 #include "base/memory/ref_counted.h"
10 #include "base/memory/singleton.h" 10 #include "base/memory/singleton.h"
(...skipping 14 matching lines...) Expand all
25 #include "chrome/browser/extensions/extension_function.h" 25 #include "chrome/browser/extensions/extension_function.h"
26 #include "chrome/browser/extensions/extension_history_api.h" 26 #include "chrome/browser/extensions/extension_history_api.h"
27 #include "chrome/browser/extensions/extension_i18n_api.h" 27 #include "chrome/browser/extensions/extension_i18n_api.h"
28 #include "chrome/browser/extensions/extension_idle_api.h" 28 #include "chrome/browser/extensions/extension_idle_api.h"
29 #include "chrome/browser/extensions/extension_infobar_module.h" 29 #include "chrome/browser/extensions/extension_infobar_module.h"
30 #include "chrome/browser/extensions/extension_management_api.h" 30 #include "chrome/browser/extensions/extension_management_api.h"
31 #include "chrome/browser/extensions/extension_metrics_module.h" 31 #include "chrome/browser/extensions/extension_metrics_module.h"
32 #include "chrome/browser/extensions/extension_module.h" 32 #include "chrome/browser/extensions/extension_module.h"
33 #include "chrome/browser/extensions/extension_omnibox_api.h" 33 #include "chrome/browser/extensions/extension_omnibox_api.h"
34 #include "chrome/browser/extensions/extension_page_actions_module.h" 34 #include "chrome/browser/extensions/extension_page_actions_module.h"
35 #include "chrome/browser/extensions/extension_permissions_api.h"
35 #include "chrome/browser/extensions/extension_preference_api.h" 36 #include "chrome/browser/extensions/extension_preference_api.h"
36 #include "chrome/browser/extensions/extension_processes_api.h" 37 #include "chrome/browser/extensions/extension_processes_api.h"
37 #include "chrome/browser/extensions/extension_proxy_api.h" 38 #include "chrome/browser/extensions/extension_proxy_api.h"
38 #include "chrome/browser/extensions/extension_rlz_module.h" 39 #include "chrome/browser/extensions/extension_rlz_module.h"
39 #include "chrome/browser/extensions/extension_service.h" 40 #include "chrome/browser/extensions/extension_service.h"
40 #include "chrome/browser/extensions/extension_sidebar_api.h" 41 #include "chrome/browser/extensions/extension_sidebar_api.h"
41 #include "chrome/browser/extensions/extension_tabs_module.h" 42 #include "chrome/browser/extensions/extension_tabs_module.h"
42 #include "chrome/browser/extensions/extension_test_api.h" 43 #include "chrome/browser/extensions/extension_test_api.h"
43 #include "chrome/browser/extensions/extension_tts_api.h" 44 #include "chrome/browser/extensions/extension_tts_api.h"
44 #include "chrome/browser/extensions/extension_tts_engine_api.h" 45 #include "chrome/browser/extensions/extension_tts_engine_api.h"
(...skipping 335 matching lines...) Expand 10 before | Expand all | Expand 10 after
380 RegisterFunction<ClearContentSettingsFunction>(); 381 RegisterFunction<ClearContentSettingsFunction>();
381 RegisterFunction<GetContentSettingFunction>(); 382 RegisterFunction<GetContentSettingFunction>();
382 RegisterFunction<SetContentSettingFunction>(); 383 RegisterFunction<SetContentSettingFunction>();
383 384
384 // ChromeAuth settings. 385 // ChromeAuth settings.
385 RegisterFunction<SetCloudPrintCredentialsFunction>(); 386 RegisterFunction<SetCloudPrintCredentialsFunction>();
386 387
387 // Experimental App API. 388 // Experimental App API.
388 RegisterFunction<AppNotifyFunction>(); 389 RegisterFunction<AppNotifyFunction>();
389 RegisterFunction<AppClearAllNotificationsFunction>(); 390 RegisterFunction<AppClearAllNotificationsFunction>();
391
392 // Permissions
393 RegisterFunction<ContainsPermissionsFunction>();
394 RegisterFunction<GetAllPermissionsFunction>();
395 RegisterFunction<RemovePermissionsFunction>();
396 RegisterFunction<RequestPermissionsFunction>();
390 } 397 }
391 398
392 void FactoryRegistry::GetAllNames(std::vector<std::string>* names) { 399 void FactoryRegistry::GetAllNames(std::vector<std::string>* names) {
393 for (FactoryMap::iterator iter = factories_.begin(); 400 for (FactoryMap::iterator iter = factories_.begin();
394 iter != factories_.end(); ++iter) { 401 iter != factories_.end(); ++iter) {
395 names->push_back(iter->first); 402 names->push_back(iter->first);
396 } 403 }
397 } 404 }
398 405
399 bool FactoryRegistry::OverrideFunction(const std::string& name, 406 bool FactoryRegistry::OverrideFunction(const std::string& name,
(...skipping 199 matching lines...) Expand 10 before | Expand all | Expand 10 after
599 return function; 606 return function;
600 } 607 }
601 608
602 // static 609 // static
603 void ExtensionFunctionDispatcher::SendAccessDenied( 610 void ExtensionFunctionDispatcher::SendAccessDenied(
604 IPC::Message::Sender* ipc_sender, int routing_id, int request_id) { 611 IPC::Message::Sender* ipc_sender, int routing_id, int request_id) {
605 ipc_sender->Send(new ExtensionMsg_Response( 612 ipc_sender->Send(new ExtensionMsg_Response(
606 routing_id, request_id, false, std::string(), 613 routing_id, request_id, false, std::string(),
607 "Access to extension API denied.")); 614 "Access to extension API denied."));
608 } 615 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698