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

Side by Side Diff: chrome/browser/extensions/extension_management_api.h

Issue 10071035: RefCounted types should not have public destructors, chrome/browser/extensions (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Compile fix Created 8 years, 7 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 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_MANAGEMENT_API_H__ 5 #ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_MANAGEMENT_API_H__
6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_MANAGEMENT_API_H__ 6 #define CHROME_BROWSER_EXTENSIONS_EXTENSION_MANAGEMENT_API_H__
7 #pragma once 7 #pragma once
8 8
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "chrome/browser/extensions/extension_function.h" 10 #include "chrome/browser/extensions/extension_function.h"
11 #include "chrome/browser/extensions/extension_install_ui.h" 11 #include "chrome/browser/extensions/extension_install_ui.h"
12 #include "content/public/browser/notification_observer.h" 12 #include "content/public/browser/notification_observer.h"
13 #include "content/public/browser/notification_registrar.h" 13 #include "content/public/browser/notification_registrar.h"
14 14
15 class ExtensionService; 15 class ExtensionService;
16 16
17 class ExtensionManagementFunction : public SyncExtensionFunction { 17 class ExtensionManagementFunction : public SyncExtensionFunction {
18 protected: 18 protected:
19 virtual ~ExtensionManagementFunction() {}
20
19 ExtensionService* service(); 21 ExtensionService* service();
20 }; 22 };
21 23
22 class AsyncExtensionManagementFunction : public AsyncExtensionFunction { 24 class AsyncExtensionManagementFunction : public AsyncExtensionFunction {
23 protected: 25 protected:
26 virtual ~AsyncExtensionManagementFunction() {}
27
24 ExtensionService* service(); 28 ExtensionService* service();
25 }; 29 };
26 30
27 class GetAllExtensionsFunction : public ExtensionManagementFunction { 31 class GetAllExtensionsFunction : public ExtensionManagementFunction {
32 public:
33 DECLARE_EXTENSION_FUNCTION_NAME("management.getAll");
34
35 protected:
28 virtual ~GetAllExtensionsFunction() {} 36 virtual ~GetAllExtensionsFunction() {}
37
38 // ExtensionFunction:
29 virtual bool RunImpl() OVERRIDE; 39 virtual bool RunImpl() OVERRIDE;
30 DECLARE_EXTENSION_FUNCTION_NAME("management.getAll");
31 }; 40 };
32 41
33 class GetExtensionByIdFunction : public ExtensionManagementFunction { 42 class GetExtensionByIdFunction : public ExtensionManagementFunction {
43 public:
44 DECLARE_EXTENSION_FUNCTION_NAME("management.get");
45
46 protected:
34 virtual ~GetExtensionByIdFunction() {} 47 virtual ~GetExtensionByIdFunction() {}
48
49 // ExtensionFunction:
35 virtual bool RunImpl() OVERRIDE; 50 virtual bool RunImpl() OVERRIDE;
36 DECLARE_EXTENSION_FUNCTION_NAME("management.get");
37 }; 51 };
38 52
39 class GetPermissionWarningsByIdFunction : public ExtensionManagementFunction { 53 class GetPermissionWarningsByIdFunction : public ExtensionManagementFunction {
54 public:
55 DECLARE_EXTENSION_FUNCTION_NAME("management.getPermissionWarningsById");
56
57 protected:
40 virtual ~GetPermissionWarningsByIdFunction() {} 58 virtual ~GetPermissionWarningsByIdFunction() {}
59
60 // ExtensionFunction:
41 virtual bool RunImpl() OVERRIDE; 61 virtual bool RunImpl() OVERRIDE;
42 DECLARE_EXTENSION_FUNCTION_NAME("management.getPermissionWarningsById");
43 }; 62 };
44 63
45 class GetPermissionWarningsByManifestFunction : public AsyncExtensionFunction { 64 class GetPermissionWarningsByManifestFunction : public AsyncExtensionFunction {
46 public: 65 public:
66 DECLARE_EXTENSION_FUNCTION_NAME(
67 "management.getPermissionWarningsByManifest");
68
47 // Called when utility process finishes. 69 // Called when utility process finishes.
48 void OnParseSuccess(base::DictionaryValue* parsed_manifest); 70 void OnParseSuccess(base::DictionaryValue* parsed_manifest);
49 void OnParseFailure(const std::string& error); 71 void OnParseFailure(const std::string& error);
72
50 protected: 73 protected:
51 virtual ~GetPermissionWarningsByManifestFunction() {} 74 virtual ~GetPermissionWarningsByManifestFunction() {}
75
76 // ExtensionFunction:
52 virtual bool RunImpl() OVERRIDE; 77 virtual bool RunImpl() OVERRIDE;
53 DECLARE_EXTENSION_FUNCTION_NAME(
54 "management.getPermissionWarningsByManifest");
55 }; 78 };
56 79
57 class LaunchAppFunction : public ExtensionManagementFunction { 80 class LaunchAppFunction : public ExtensionManagementFunction {
81 public:
82 DECLARE_EXTENSION_FUNCTION_NAME("management.launchApp");
83
84 protected:
58 virtual ~LaunchAppFunction() {} 85 virtual ~LaunchAppFunction() {}
86
87 // ExtensionFunction:
59 virtual bool RunImpl() OVERRIDE; 88 virtual bool RunImpl() OVERRIDE;
60 DECLARE_EXTENSION_FUNCTION_NAME("management.launchApp");
61 }; 89 };
62 90
63 class SetEnabledFunction : public AsyncExtensionManagementFunction, 91 class SetEnabledFunction : public AsyncExtensionManagementFunction,
64 public ExtensionInstallUI::Delegate { 92 public ExtensionInstallUI::Delegate {
65 public: 93 public:
94 DECLARE_EXTENSION_FUNCTION_NAME("management.setEnabled");
95
66 SetEnabledFunction(); 96 SetEnabledFunction();
97
98 protected:
67 virtual ~SetEnabledFunction(); 99 virtual ~SetEnabledFunction();
100
101 // ExtensionFunction:
68 virtual bool RunImpl() OVERRIDE; 102 virtual bool RunImpl() OVERRIDE;
69 103
70 protected:
71 // ExtensionInstalUI::Delegate. 104 // ExtensionInstalUI::Delegate.
72 virtual void InstallUIProceed() OVERRIDE; 105 virtual void InstallUIProceed() OVERRIDE;
73 virtual void InstallUIAbort(bool user_initiated) OVERRIDE; 106 virtual void InstallUIAbort(bool user_initiated) OVERRIDE;
74 107
75 private: 108 private:
76 std::string extension_id_; 109 std::string extension_id_;
77 110
78 // Used for prompting to re-enable items with permissions escalation updates. 111 // Used for prompting to re-enable items with permissions escalation updates.
79 scoped_ptr<ExtensionInstallUI> install_ui_; 112 scoped_ptr<ExtensionInstallUI> install_ui_;
80
81 DECLARE_EXTENSION_FUNCTION_NAME("management.setEnabled");
82 }; 113 };
83 114
84 class UninstallFunction : public ExtensionManagementFunction { 115 class UninstallFunction : public ExtensionManagementFunction {
116 public:
117 DECLARE_EXTENSION_FUNCTION_NAME("management.uninstall");
118
119 protected:
85 virtual ~UninstallFunction() {} 120 virtual ~UninstallFunction() {}
121
122 // ExtensionFunction:
86 virtual bool RunImpl() OVERRIDE; 123 virtual bool RunImpl() OVERRIDE;
87 DECLARE_EXTENSION_FUNCTION_NAME("management.uninstall");
88 }; 124 };
89 125
90 class ExtensionManagementEventRouter : public content::NotificationObserver { 126 class ExtensionManagementEventRouter : public content::NotificationObserver {
91 public: 127 public:
92 explicit ExtensionManagementEventRouter(Profile* profile); 128 explicit ExtensionManagementEventRouter(Profile* profile);
93 virtual ~ExtensionManagementEventRouter(); 129 virtual ~ExtensionManagementEventRouter();
94 130
95 void Init(); 131 void Init();
96 132
97 private: 133 private:
98 // content::NotificationObserver implementation. 134 // content::NotificationObserver implementation.
99 virtual void Observe(int type, 135 virtual void Observe(int type,
100 const content::NotificationSource& source, 136 const content::NotificationSource& source,
101 const content::NotificationDetails& details) OVERRIDE; 137 const content::NotificationDetails& details) OVERRIDE;
102 138
103 content::NotificationRegistrar registrar_; 139 content::NotificationRegistrar registrar_;
104 140
105 Profile* profile_; 141 Profile* profile_;
106 142
107 DISALLOW_COPY_AND_ASSIGN(ExtensionManagementEventRouter); 143 DISALLOW_COPY_AND_ASSIGN(ExtensionManagementEventRouter);
108 }; 144 };
109 145
110 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_MANAGEMENT_API_H__ 146 #endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_MANAGEMENT_API_H__
OLDNEW
« no previous file with comments | « chrome/browser/extensions/extension_managed_mode_api.h ('k') | chrome/browser/extensions/extension_metrics_module.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698