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

Unified Diff: trunk/src/chrome/common/extensions/features/base_feature_provider.cc

Issue 12770020: Revert 190836 "Implement API features for the Extension API feat..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 7 years, 9 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
Index: trunk/src/chrome/common/extensions/features/base_feature_provider.cc
===================================================================
--- trunk/src/chrome/common/extensions/features/base_feature_provider.cc (revision 190861)
+++ trunk/src/chrome/common/extensions/features/base_feature_provider.cc (working copy)
@@ -6,7 +6,6 @@
#include "base/json/json_reader.h"
#include "base/lazy_instance.h"
-#include "chrome/common/extensions/features/api_feature.h"
#include "chrome/common/extensions/features/complex_feature.h"
#include "chrome/common/extensions/features/manifest_feature.h"
#include "chrome/common/extensions/features/permission_feature.h"
@@ -24,11 +23,7 @@
struct Static {
Static()
- : api_features(
- LoadProvider("api",
- &CreateFeature<APIFeature>,
- IDR_EXTENSION_API_FEATURES)),
- manifest_features(
+ : manifest_features(
LoadProvider("manifest",
&CreateFeature<ManifestFeature>,
IDR_EXTENSION_MANIFEST_FEATURES)),
@@ -38,7 +33,6 @@
IDR_EXTENSION_PERMISSION_FEATURES)) {
}
- scoped_ptr<BaseFeatureProvider> api_features;
scoped_ptr<BaseFeatureProvider> manifest_features;
scoped_ptr<BaseFeatureProvider> permission_features;
@@ -73,10 +67,20 @@
const std::string& name,
SimpleFeature* feature) {
feature->set_name(name);
- std::string error = feature->Parse(value);
- if (!error.empty())
- LOG(ERROR) << error;
- return error.empty();
+ feature->Parse(value);
+
+ if (feature->extension_types()->empty()) {
+ LOG(ERROR) << name << ": Simple features must specify at least one "
+ << "value for extension_types.";
+ return false;
+ }
+
+ if (!feature->GetContexts()->empty()) {
+ LOG(ERROR) << name << ": Simple features do not support contexts.";
+ return false;
+ }
+
+ return true;
}
base::LazyInstance<Static> g_static = LAZY_INSTANCE_INITIALIZER;
@@ -137,11 +141,6 @@
}
// static
-BaseFeatureProvider* BaseFeatureProvider::GetApiFeatures() {
- return g_static.Get().api_features.get();
-}
-
-// static
BaseFeatureProvider* BaseFeatureProvider::GetManifestFeatures() {
return g_static.Get().manifest_features.get();
}

Powered by Google App Engine
This is Rietveld 408576698