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

Side by Side Diff: extensions/browser/api/declarative_webrequest/webrequest_rules_registry.cc

Issue 2494113003: Do not typedef ExtensionId/ID, since it's already available in extension_id.h (Closed)
Patch Set: fix includes from comments Created 4 years, 1 month 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 #include "extensions/browser/api/declarative_webrequest/webrequest_rules_registr y.h" 5 #include "extensions/browser/api/declarative_webrequest/webrequest_rules_registr y.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <limits> 8 #include <limits>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 ordered_matches.reserve(matches.size()); 92 ordered_matches.reserve(matches.size());
93 for (const WebRequestRule* rule : matches) 93 for (const WebRequestRule* rule : matches)
94 ordered_matches.push_back(make_pair(rule->priority(), rule->id())); 94 ordered_matches.push_back(make_pair(rule->priority(), rule->id()));
95 // Sort from rbegin to rend in order to get descending priority order. 95 // Sort from rbegin to rend in order to get descending priority order.
96 std::sort(ordered_matches.rbegin(), ordered_matches.rend()); 96 std::sort(ordered_matches.rbegin(), ordered_matches.rend());
97 97
98 // Build a map that maps each extension id to the minimum required priority 98 // Build a map that maps each extension id to the minimum required priority
99 // for rules of that extension. Initially, this priority is -infinite and 99 // for rules of that extension. Initially, this priority is -infinite and
100 // will be increased when the rules are processed and raise the bar via 100 // will be increased when the rules are processed and raise the bar via
101 // WebRequestIgnoreRulesActions. 101 // WebRequestIgnoreRulesActions.
102 typedef std::string ExtensionId;
103 typedef std::map<ExtensionId, WebRequestRule::Priority> MinPriorities; 102 typedef std::map<ExtensionId, WebRequestRule::Priority> MinPriorities;
104 typedef std::map<ExtensionId, std::set<std::string> > IgnoreTags; 103 typedef std::map<ExtensionId, std::set<std::string> > IgnoreTags;
105 MinPriorities min_priorities; 104 MinPriorities min_priorities;
106 IgnoreTags ignore_tags; 105 IgnoreTags ignore_tags;
107 for (const PriorityRuleIdPair& priority_rule_id_pair : ordered_matches) { 106 for (const PriorityRuleIdPair& priority_rule_id_pair : ordered_matches) {
108 const WebRequestRule::GlobalRuleId& rule_id = priority_rule_id_pair.second; 107 const WebRequestRule::GlobalRuleId& rule_id = priority_rule_id_pair.second;
109 const ExtensionId& extension_id = rule_id.first; 108 const ExtensionId& extension_id = rule_id.first;
110 min_priorities[extension_id] = std::numeric_limits<int>::min(); 109 min_priorities[extension_id] = std::numeric_limits<int>::min();
111 } 110 }
112 111
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
282 } 281 }
283 rules_with_untriggered_conditions_.erase(rule); 282 rules_with_untriggered_conditions_.erase(rule);
284 } 283 }
285 284
286 bool WebRequestRulesRegistry::IsEmpty() const { 285 bool WebRequestRulesRegistry::IsEmpty() const {
287 // Easy first. 286 // Easy first.
288 if (!rule_triggers_.empty() && url_matcher_.IsEmpty()) 287 if (!rule_triggers_.empty() && url_matcher_.IsEmpty())
289 return false; 288 return false;
290 289
291 // Now all the registered rules for each extensions. 290 // Now all the registered rules for each extensions.
292 for (const std::pair<WebRequestRule::ExtensionId, RulesMap>& 291 for (const std::pair<ExtensionId, RulesMap>& extension_id_rules_map_pair :
293 extension_id_rules_map_pair : webrequest_rules_) { 292 webrequest_rules_) {
294 if (!extension_id_rules_map_pair.second.empty()) 293 if (!extension_id_rules_map_pair.second.empty())
295 return false; 294 return false;
296 } 295 }
297 return true; 296 return true;
298 } 297 }
299 298
300 WebRequestRulesRegistry::~WebRequestRulesRegistry() {} 299 WebRequestRulesRegistry::~WebRequestRulesRegistry() {}
301 300
302 base::Time WebRequestRulesRegistry::GetExtensionInstallationTime( 301 base::Time WebRequestRulesRegistry::GetExtensionInstallationTime(
303 const std::string& extension_id) const { 302 const std::string& extension_id) const {
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
374 for (url_matcher::URLMatcherConditionSet::ID url_match : url_matches) { 373 for (url_matcher::URLMatcherConditionSet::ID url_match : url_matches) {
375 RuleTriggers::const_iterator rule_trigger = rule_triggers_.find(url_match); 374 RuleTriggers::const_iterator rule_trigger = rule_triggers_.find(url_match);
376 CHECK(rule_trigger != rule_triggers_.end()); 375 CHECK(rule_trigger != rule_triggers_.end());
377 if (!base::ContainsKey(*result, rule_trigger->second) && 376 if (!base::ContainsKey(*result, rule_trigger->second) &&
378 rule_trigger->second->conditions().IsFulfilled(url_match, request_data)) 377 rule_trigger->second->conditions().IsFulfilled(url_match, request_data))
379 result->insert(rule_trigger->second); 378 result->insert(rule_trigger->second);
380 } 379 }
381 } 380 }
382 381
383 } // namespace extensions 382 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698