| 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 EXTENSIONS_COMMON_FEATURES_FEATURE_H_ | 5 #ifndef EXTENSIONS_COMMON_FEATURES_FEATURE_H_ |
| 6 #define EXTENSIONS_COMMON_FEATURES_FEATURE_H_ | 6 #define EXTENSIONS_COMMON_FEATURES_FEATURE_H_ |
| 7 | 7 |
| 8 #include <set> | 8 #include <set> |
| 9 #include <string> | 9 #include <string> |
| 10 | 10 |
| (...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 134 Availability IsAvailableToContext(const Extension* extension, | 134 Availability IsAvailableToContext(const Extension* extension, |
| 135 Context context, | 135 Context context, |
| 136 const GURL& url) const { | 136 const GURL& url) const { |
| 137 return IsAvailableToContext(extension, context, url, GetCurrentPlatform()); | 137 return IsAvailableToContext(extension, context, url, GetCurrentPlatform()); |
| 138 } | 138 } |
| 139 virtual Availability IsAvailableToContext(const Extension* extension, | 139 virtual Availability IsAvailableToContext(const Extension* extension, |
| 140 Context context, | 140 Context context, |
| 141 const GURL& url, | 141 const GURL& url, |
| 142 Platform platform) const = 0; | 142 Platform platform) const = 0; |
| 143 | 143 |
| 144 virtual std::string GetAvailabilityMessage(AvailabilityResult result, | |
| 145 Manifest::Type type, | |
| 146 const GURL& url, | |
| 147 Context context) const = 0; | |
| 148 | |
| 149 // Returns true if the feature is available to the current environment, | 144 // Returns true if the feature is available to the current environment, |
| 150 // without needing to know information about an Extension or any other | 145 // without needing to know information about an Extension or any other |
| 151 // contextual information. Typically used when the Feature is purely | 146 // contextual information. Typically used when the Feature is purely |
| 152 // configured by command line flags and/or Chrome channel. | 147 // configured by command line flags and/or Chrome channel. |
| 153 // | 148 // |
| 154 // Generally try not to use this function. Even if you don't think a Feature | 149 // Generally try not to use this function. Even if you don't think a Feature |
| 155 // relies on an Extension now - maybe it will, one day, so if there's an | 150 // relies on an Extension now - maybe it will, one day, so if there's an |
| 156 // Extension available (or a runtime context, etc) then use the more targeted | 151 // Extension available (or a runtime context, etc) then use the more targeted |
| 157 // method instead. | 152 // method instead. |
| 158 Availability IsAvailableToEnvironment() const; | 153 Availability IsAvailableToEnvironment() const; |
| 159 | 154 |
| 160 virtual bool IsIdInBlacklist(const std::string& extension_id) const = 0; | 155 virtual bool IsIdInBlacklist(const std::string& extension_id) const = 0; |
| 161 virtual bool IsIdInWhitelist(const std::string& extension_id) const = 0; | 156 virtual bool IsIdInWhitelist(const std::string& extension_id) const = 0; |
| 162 | 157 |
| 163 protected: | 158 protected: |
| 164 std::string name_; | 159 std::string name_; |
| 165 bool no_parent_; | 160 bool no_parent_; |
| 166 }; | 161 }; |
| 167 | 162 |
| 168 } // namespace extensions | 163 } // namespace extensions |
| 169 | 164 |
| 170 #endif // EXTENSIONS_COMMON_FEATURES_FEATURE_H_ | 165 #endif // EXTENSIONS_COMMON_FEATURES_FEATURE_H_ |
| OLD | NEW |