OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 APPS_SHELL_COMMON_SHELL_EXTENSIONS_CLIENT_H_ | 5 #ifndef APPS_SHELL_COMMON_SHELL_EXTENSIONS_CLIENT_H_ |
6 #define APPS_SHELL_COMMON_SHELL_EXTENSIONS_CLIENT_H_ | 6 #define APPS_SHELL_COMMON_SHELL_EXTENSIONS_CLIENT_H_ |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
10 #include "extensions/common/extensions_client.h" | 10 #include "extensions/common/extensions_client.h" |
11 #include "extensions/common/permissions/extensions_api_permissions.h" | 11 #include "extensions/common/permissions/extensions_api_permissions.h" |
12 | 12 |
13 namespace apps { | 13 namespace apps { |
14 | 14 |
15 // The app_shell implementation of ExtensionsClient. | 15 // The app_shell implementation of ExtensionsClient. |
16 class ShellExtensionsClient : public extensions::ExtensionsClient { | 16 class ShellExtensionsClient : public extensions::ExtensionsClient { |
17 public: | 17 public: |
18 ShellExtensionsClient(); | 18 ShellExtensionsClient(); |
19 virtual ~ShellExtensionsClient(); | 19 virtual ~ShellExtensionsClient(); |
20 | 20 |
21 // extensions::ExtensionsClient overrides: | 21 // extensions::ExtensionsClient overrides: |
22 virtual void Initialize() OVERRIDE; | 22 virtual void Initialize() OVERRIDE; |
23 virtual const extensions::PermissionMessageProvider& | 23 virtual const extensions::PermissionMessageProvider& |
24 GetPermissionMessageProvider() const OVERRIDE; | 24 GetPermissionMessageProvider() const OVERRIDE; |
25 virtual scoped_ptr<extensions::FeatureProvider> CreateFeatureProvider( | 25 virtual scoped_ptr<extensions::FeatureProvider> CreateFeatureProvider( |
26 const std::string& name) const OVERRIDE; | 26 const std::string& name) const OVERRIDE; |
| 27 virtual scoped_ptr<extensions::JSONFeatureProviderSource> |
| 28 CreateFeatureProviderSource(const std::string& name) const OVERRIDE; |
27 virtual void FilterHostPermissions( | 29 virtual void FilterHostPermissions( |
28 const extensions::URLPatternSet& hosts, | 30 const extensions::URLPatternSet& hosts, |
29 extensions::URLPatternSet* new_hosts, | 31 extensions::URLPatternSet* new_hosts, |
30 std::set<extensions::PermissionMessage>* messages) const OVERRIDE; | 32 std::set<extensions::PermissionMessage>* messages) const OVERRIDE; |
31 virtual void SetScriptingWhitelist(const ScriptingWhitelist& whitelist) | 33 virtual void SetScriptingWhitelist(const ScriptingWhitelist& whitelist) |
32 OVERRIDE; | 34 OVERRIDE; |
33 virtual const ScriptingWhitelist& GetScriptingWhitelist() const OVERRIDE; | 35 virtual const ScriptingWhitelist& GetScriptingWhitelist() const OVERRIDE; |
34 virtual extensions::URLPatternSet GetPermittedChromeSchemeHosts( | 36 virtual extensions::URLPatternSet GetPermittedChromeSchemeHosts( |
35 const extensions::Extension* extension, | 37 const extensions::Extension* extension, |
36 const extensions::APIPermissionSet& api_permissions) const OVERRIDE; | 38 const extensions::APIPermissionSet& api_permissions) const OVERRIDE; |
37 virtual bool IsScriptableURL(const GURL& url, std::string* error) const | 39 virtual bool IsScriptableURL(const GURL& url, std::string* error) const |
38 OVERRIDE; | 40 OVERRIDE; |
39 virtual bool IsAPISchemaGenerated(const std::string& name) const OVERRIDE; | 41 virtual bool IsAPISchemaGenerated(const std::string& name) const OVERRIDE; |
40 virtual base::StringPiece GetAPISchema(const std::string& name) const | 42 virtual base::StringPiece GetAPISchema(const std::string& name) const |
41 OVERRIDE; | 43 OVERRIDE; |
42 virtual bool ShouldSuppressFatalErrors() const OVERRIDE; | 44 virtual bool ShouldSuppressFatalErrors() const OVERRIDE; |
43 | 45 |
44 private: | 46 private: |
45 const extensions::ExtensionsAPIPermissions extensions_api_permissions_; | 47 const extensions::ExtensionsAPIPermissions extensions_api_permissions_; |
46 | 48 |
47 ScriptingWhitelist scripting_whitelist_; | 49 ScriptingWhitelist scripting_whitelist_; |
48 | 50 |
49 DISALLOW_COPY_AND_ASSIGN(ShellExtensionsClient); | 51 DISALLOW_COPY_AND_ASSIGN(ShellExtensionsClient); |
50 }; | 52 }; |
51 | 53 |
52 } // namespace apps | 54 } // namespace apps |
53 | 55 |
54 #endif // APPS_SHELL_COMMON_SHELL_EXTENSIONS_CLIENT_H_ | 56 #endif // APPS_SHELL_COMMON_SHELL_EXTENSIONS_CLIENT_H_ |
OLD | NEW |