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

Unified Diff: chrome/browser/extensions/api/declarative_webrequest/webrequest_rules_registry.h

Issue 11569007: Refactoring how conditions without URL attributes are handled. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Polished 1st version Created 8 years 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: chrome/browser/extensions/api/declarative_webrequest/webrequest_rules_registry.h
diff --git a/chrome/browser/extensions/api/declarative_webrequest/webrequest_rules_registry.h b/chrome/browser/extensions/api/declarative_webrequest/webrequest_rules_registry.h
index 953dac3bf1b7c05002b1fc0ccd76c65bc6f8664c..7998e055a3375d9b0c0abc999847d9e560af494f 100644
--- a/chrome/browser/extensions/api/declarative_webrequest/webrequest_rules_registry.h
+++ b/chrome/browser/extensions/api/declarative_webrequest/webrequest_rules_registry.h
@@ -100,6 +100,11 @@ class WebRequestRulesRegistry : public RulesRegistryWithCache {
const std::string& extension_id) const;
virtual void ClearCacheOnNavigation();
+ const std::set<const WebRequestRule*>&
+ rules_with_untriggered_conditions_for_test() const {
vabr (Chromium) 2012/12/13 12:18:06 Here I'm not sure about the indenting. I've seen o
Jeffrey Yasskin 2012/12/18 02:24:32 My editor doesn't indent the function name, so I'd
battre 2012/12/18 08:20:44 I have seen both styles. I think that no spaces is
vabr (Chromium) 2012/12/18 18:26:42 For the private-getter: note that this is protecte
vabr (Chromium) 2012/12/18 18:26:42 Thanks both for the advice on indenting. I changed
+ return rules_with_untriggered_conditions_;
+ }
+
private:
typedef std::map<URLMatcherConditionSet::ID, WebRequestRule*> RuleTriggers;
typedef std::map<WebRequestRule::GlobalRuleId, linked_ptr<WebRequestRule> >
@@ -109,6 +114,11 @@ class WebRequestRulesRegistry : public RulesRegistryWithCache {
// the URLMatcherConditionSet::ID was returned by the |url_matcher_|.
RuleTriggers rule_triggers_;
+ // These rules contain condition sets with conditions without URL attributes.
+ // Such conditions are not triggered by URL matcher, so we need to test them
+ // separately.
+ std::set<const WebRequestRule*> rules_with_untriggered_conditions_;
+
RulesMap webrequest_rules_;
URLMatcher url_matcher_;

Powered by Google App Engine
This is Rietveld 408576698