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

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

Issue 12089062: Move API functions registrations out of ExtensionFunctionRegistry. (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: Created 7 years, 10 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/browser/extensions/extension_function_registry.h" 5 #include "chrome/browser/extensions/extension_function_registry.h"
6 6
7 #include "chrome/browser/accessibility/accessibility_extension_api.h"
8 #include "chrome/browser/extensions/api/app/app_api.h" 7 #include "chrome/browser/extensions/api/app/app_api.h"
9 #include "chrome/browser/extensions/api/bookmark_manager_private/bookmark_manage r_private_api.h"
10 #include "chrome/browser/extensions/api/browsing_data/browsing_data_api.h"
11 #include "chrome/browser/extensions/api/commands/commands.h" 8 #include "chrome/browser/extensions/api/commands/commands.h"
12 #include "chrome/browser/extensions/api/idle/idle_api.h"
13 #include "chrome/browser/extensions/api/managed_mode/managed_mode_api.h" 9 #include "chrome/browser/extensions/api/managed_mode/managed_mode_api.h"
14 #include "chrome/browser/extensions/api/metrics/metrics.h"
15 #include "chrome/browser/extensions/api/module/module.h" 10 #include "chrome/browser/extensions/api/module/module.h"
16 #include "chrome/browser/extensions/api/omnibox/omnibox_api.h"
17 #include "chrome/browser/extensions/api/preference/preference_api.h" 11 #include "chrome/browser/extensions/api/preference/preference_api.h"
18 #include "chrome/browser/extensions/api/runtime/runtime_api.h" 12 #include "chrome/browser/extensions/api/runtime/runtime_api.h"
19 #include "chrome/browser/extensions/api/test/test_api.h"
20 #include "chrome/browser/extensions/api/top_sites/top_sites_api.h" 13 #include "chrome/browser/extensions/api/top_sites/top_sites_api.h"
21 #include "chrome/browser/extensions/api/web_request/web_request_api.h" 14 #include "chrome/browser/extensions/api/web_request/web_request_api.h"
22 #include "chrome/browser/extensions/api/web_socket_proxy_private/web_socket_prox y_private_api.h" 15 #include "chrome/browser/extensions/api/web_socket_proxy_private/web_socket_prox y_private_api.h"
23 #include "chrome/browser/extensions/api/webstore_private/webstore_private_api.h" 16 #include "chrome/browser/extensions/api/webstore_private/webstore_private_api.h"
24 #include "chrome/browser/extensions/system/system_api.h" 17 #include "chrome/browser/extensions/system/system_api.h"
25 #include "chrome/browser/infobars/infobar_extension_api.h"
26 #include "chrome/browser/rlz/rlz_extension_api.h" 18 #include "chrome/browser/rlz/rlz_extension_api.h"
27 #include "chrome/common/extensions/api/generated_api.h" 19 #include "chrome/common/extensions/api/generated_api.h"
28 20
29 #if defined(OS_CHROMEOS) 21 #if defined(OS_CHROMEOS)
30 #include "chrome/browser/chromeos/extensions/echo_private_api.h" 22 #include "chrome/browser/chromeos/extensions/echo_private_api.h"
31 #include "chrome/browser/chromeos/extensions/info_private_api.h" 23 #include "chrome/browser/chromeos/extensions/info_private_api.h"
32 #include "chrome/browser/chromeos/extensions/media_player_api.h" 24 #include "chrome/browser/chromeos/extensions/media_player_api.h"
33 #include "chrome/browser/chromeos/extensions/power/power_api.h" 25 #include "chrome/browser/chromeos/extensions/power/power_api.h"
34 #include "chrome/browser/chromeos/extensions/wallpaper_private_api.h" 26 #include "chrome/browser/chromeos/extensions/wallpaper_private_api.h"
35 #include "chrome/browser/extensions/api/terminal/terminal_private_api.h" 27 #include "chrome/browser/extensions/api/terminal/terminal_private_api.h"
36 #endif // defined(OS_CHROMEOS) 28 #endif // defined(OS_CHROMEOS)
37 29
38 // static 30 // static
39 ExtensionFunctionRegistry* ExtensionFunctionRegistry::GetInstance() { 31 ExtensionFunctionRegistry* ExtensionFunctionRegistry::GetInstance() {
40 return Singleton<ExtensionFunctionRegistry>::get(); 32 return Singleton<ExtensionFunctionRegistry>::get();
41 } 33 }
42 34
43 ExtensionFunctionRegistry::ExtensionFunctionRegistry() { 35 ExtensionFunctionRegistry::ExtensionFunctionRegistry() {
44 ResetFunctions(); 36 ResetFunctions();
45 } 37 }
46 38
47 ExtensionFunctionRegistry::~ExtensionFunctionRegistry() { 39 ExtensionFunctionRegistry::~ExtensionFunctionRegistry() {
48 } 40 }
49 41
50 void ExtensionFunctionRegistry::ResetFunctions() { 42 void ExtensionFunctionRegistry::ResetFunctions() {
51 #if defined(ENABLE_EXTENSIONS) 43 #if defined(ENABLE_EXTENSIONS)
52 44
53 // Register all functions here. 45 // Register all functions here.
54 46
55 // Browsing Data.
56 RegisterFunction<RemoveBrowsingDataFunction>();
57 RegisterFunction<RemoveAppCacheFunction>();
58 RegisterFunction<RemoveCacheFunction>();
59 RegisterFunction<RemoveCookiesFunction>();
60 RegisterFunction<RemoveDownloadsFunction>();
61 RegisterFunction<RemoveFileSystemsFunction>();
62 RegisterFunction<RemoveFormDataFunction>();
63 RegisterFunction<RemoveHistoryFunction>();
64 RegisterFunction<RemoveIndexedDBFunction>();
65 RegisterFunction<RemoveLocalStorageFunction>();
66 RegisterFunction<RemovePluginDataFunction>();
67 RegisterFunction<RemovePasswordsFunction>();
68 RegisterFunction<RemoveWebSQLFunction>();
69
70 // Infobars.
71 RegisterFunction<ShowInfoBarFunction>();
72
73 // BookmarkManager
74 RegisterFunction<extensions::CopyBookmarkManagerFunction>();
75 RegisterFunction<extensions::CutBookmarkManagerFunction>();
76 RegisterFunction<extensions::PasteBookmarkManagerFunction>();
77 RegisterFunction<extensions::CanPasteBookmarkManagerFunction>();
78 RegisterFunction<extensions::SortChildrenBookmarkManagerFunction>();
79 RegisterFunction<extensions::BookmarkManagerGetStringsFunction>();
80 RegisterFunction<extensions::StartDragBookmarkManagerFunction>();
81 RegisterFunction<extensions::DropBookmarkManagerFunction>();
82 RegisterFunction<extensions::GetSubtreeBookmarkManagerFunction>();
83 RegisterFunction<extensions::CanEditBookmarkManagerFunction>();
84 RegisterFunction<extensions::CanOpenNewWindowsBookmarkFunction>();
85
86 // Idle
87 RegisterFunction<extensions::IdleQueryStateFunction>();
88 RegisterFunction<extensions::IdleSetDetectionIntervalFunction>();
89
90 // Metrics.
91 RegisterFunction<extensions::MetricsRecordUserActionFunction>();
92 RegisterFunction<extensions::MetricsRecordValueFunction>();
93 RegisterFunction<extensions::MetricsRecordPercentageFunction>();
94 RegisterFunction<extensions::MetricsRecordCountFunction>();
95 RegisterFunction<extensions::MetricsRecordSmallCountFunction>();
96 RegisterFunction<extensions::MetricsRecordMediumCountFunction>();
97 RegisterFunction<extensions::MetricsRecordTimeFunction>();
98 RegisterFunction<extensions::MetricsRecordMediumTimeFunction>();
99 RegisterFunction<extensions::MetricsRecordLongTimeFunction>();
100
101 // RLZ (not supported on ChromeOS yet). 47 // RLZ (not supported on ChromeOS yet).
102 #if defined(ENABLE_RLZ) && !defined(OS_CHROMEOS) 48 #if defined(ENABLE_RLZ) && !defined(OS_CHROMEOS)
103 RegisterFunction<RlzRecordProductEventFunction>(); 49 RegisterFunction<RlzRecordProductEventFunction>();
104 RegisterFunction<RlzGetAccessPointRlzFunction>(); 50 RegisterFunction<RlzGetAccessPointRlzFunction>();
105 RegisterFunction<RlzSendFinancialPingFunction>(); 51 RegisterFunction<RlzSendFinancialPingFunction>();
106 RegisterFunction<RlzClearProductStateFunction>(); 52 RegisterFunction<RlzClearProductStateFunction>();
107 #endif 53 #endif
108 54
109 // Test.
110 RegisterFunction<extensions::TestNotifyPassFunction>();
111 RegisterFunction<extensions::TestFailFunction>();
112 RegisterFunction<extensions::TestLogFunction>();
113 RegisterFunction<extensions::TestResetQuotaFunction>();
114 RegisterFunction<extensions::TestCreateIncognitoTabFunction>();
115 RegisterFunction<extensions::TestSendMessageFunction>();
116 RegisterFunction<extensions::TestGetConfigFunction>();
117
118 // Accessibility.
119 RegisterFunction<GetFocusedControlFunction>();
120 RegisterFunction<SetAccessibilityEnabledFunction>();
121 RegisterFunction<GetAlertsForTabFunction>();
122
123 // Omnibox.
124 RegisterFunction<extensions::OmniboxSendSuggestionsFunction>();
125 RegisterFunction<extensions::OmniboxSetDefaultSuggestionFunction>();
126
127 #if defined(OS_CHROMEOS)
128 // Power
129 RegisterFunction<extensions::power::RequestKeepAwakeFunction>();
130 RegisterFunction<extensions::power::ReleaseKeepAwakeFunction>();
131 #endif
132
133 // Managed mode. 55 // Managed mode.
134 RegisterFunction<extensions::GetManagedModeFunction>(); 56 RegisterFunction<extensions::GetManagedModeFunction>();
135 RegisterFunction<extensions::EnterManagedModeFunction>(); 57 RegisterFunction<extensions::EnterManagedModeFunction>();
136 RegisterFunction<extensions::GetPolicyFunction>(); 58 RegisterFunction<extensions::GetPolicyFunction>();
137 RegisterFunction<extensions::SetPolicyFunction>(); 59 RegisterFunction<extensions::SetPolicyFunction>();
138 60
139 // Extension module. 61 // Extension module.
140 RegisterFunction<extensions::SetUpdateUrlDataFunction>(); 62 RegisterFunction<extensions::SetUpdateUrlDataFunction>();
141 RegisterFunction<extensions::IsAllowedIncognitoAccessFunction>(); 63 RegisterFunction<extensions::IsAllowedIncognitoAccessFunction>();
142 RegisterFunction<extensions::IsAllowedFileSchemeAccessFunction>(); 64 RegisterFunction<extensions::IsAllowedFileSchemeAccessFunction>();
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 170
249 ExtensionFunctionRegistry::FactoryEntry::FactoryEntry() 171 ExtensionFunctionRegistry::FactoryEntry::FactoryEntry()
250 : factory_(0), histogram_value_(extensions::functions::UNKNOWN) { 172 : factory_(0), histogram_value_(extensions::functions::UNKNOWN) {
251 } 173 }
252 174
253 ExtensionFunctionRegistry::FactoryEntry::FactoryEntry( 175 ExtensionFunctionRegistry::FactoryEntry::FactoryEntry(
254 ExtensionFunctionFactory factory, 176 ExtensionFunctionFactory factory,
255 extensions::functions::HistogramValue histogram_value) 177 extensions::functions::HistogramValue histogram_value)
256 : factory_(factory), histogram_value_(histogram_value) { 178 : factory_(factory), histogram_value_(histogram_value) {
257 } 179 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698