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

Unified Diff: extensions/common/features/simple_feature.h

Issue 2255613003: Introduce session type parameter to extension features (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Introduce session type parameter to extension features Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « extensions/common/features/feature.h ('k') | extensions/common/features/simple_feature.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: extensions/common/features/simple_feature.h
diff --git a/extensions/common/features/simple_feature.h b/extensions/common/features/simple_feature.h
index 59db2be5cf856062e0e9aafe45421e8489aad45b..94b39fb9fd0c5b5f4bf5dce5a5f95bd7e1c17b7e 100644
--- a/extensions/common/features/simple_feature.h
+++ b/extensions/common/features/simple_feature.h
@@ -21,6 +21,7 @@
#include "components/version_info/version_info.h"
#include "extensions/common/extension.h"
#include "extensions/common/features/feature.h"
+#include "extensions/common/features/feature_session_type.h"
#include "extensions/common/manifest.h"
namespace extensions {
@@ -106,6 +107,7 @@ class SimpleFeature : public Feature {
void set_contexts(std::initializer_list<Context> contexts);
void set_dependencies(std::initializer_list<const char* const> dependencies);
void set_extension_types(std::initializer_list<Manifest::Type> types);
+ void set_session_types(std::initializer_list<FeatureSessionType> types);
void set_internal(bool is_internal) { is_internal_ = is_internal; }
void set_location(Location location) { location_ = location; }
// set_matches() is an exception to pass-by-value since we construct an
@@ -149,7 +151,8 @@ class SimpleFeature : public Feature {
Manifest::Type type,
const GURL& url,
Context context,
- version_info::Channel channel) const;
+ version_info::Channel channel,
+ FeatureSessionType session_type) const;
// Handy utilities which construct the correct availability message.
Availability CreateAvailability(AvailabilityResult result) const;
@@ -161,6 +164,8 @@ class SimpleFeature : public Feature {
Context context) const;
Availability CreateAvailability(AvailabilityResult result,
version_info::Channel channel) const;
+ Availability CreateAvailability(AvailabilityResult result,
+ FeatureSessionType session_type) const;
private:
friend struct FeatureComparator;
@@ -174,6 +179,7 @@ class SimpleFeature : public Feature {
FRIEND_TEST_ALL_PREFIXES(SimpleFeatureTest, CommandLineSwitch);
FRIEND_TEST_ALL_PREFIXES(SimpleFeatureTest, ComplexFeatureAvailability);
FRIEND_TEST_ALL_PREFIXES(SimpleFeatureTest, Context);
+ FRIEND_TEST_ALL_PREFIXES(SimpleFeatureTest, SessionType);
FRIEND_TEST_ALL_PREFIXES(SimpleFeatureTest, FeatureValidation);
FRIEND_TEST_ALL_PREFIXES(SimpleFeatureTest, HashedIdBlacklist);
FRIEND_TEST_ALL_PREFIXES(SimpleFeatureTest, HashedIdWhitelist);
@@ -213,6 +219,7 @@ class SimpleFeature : public Feature {
std::vector<std::string> whitelist_;
std::vector<std::string> dependencies_;
std::vector<Manifest::Type> extension_types_;
+ std::vector<FeatureSessionType> session_types_;
std::vector<Context> contexts_;
std::vector<Platform> platforms_;
URLPatternSet matches_;
« no previous file with comments | « extensions/common/features/feature.h ('k') | extensions/common/features/simple_feature.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698