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

Side by Side Diff: net/base/cookie_monster.h

Issue 2832061: Break out histogram counter variables as CookieMonster instance variables. (Closed)
Patch Set: Removed syntactic sugar and get() check. Created 10 years, 5 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 unified diff | Download patch
« no previous file with comments | « chrome/test/data/reliability/known_crashes.txt ('k') | net/base/cookie_monster.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 // Brought to you by the letter D and the number 2. 5 // Brought to you by the letter D and the number 2.
6 6
7 #ifndef NET_BASE_COOKIE_MONSTER_H_ 7 #ifndef NET_BASE_COOKIE_MONSTER_H_
8 #define NET_BASE_COOKIE_MONSTER_H_ 8 #define NET_BASE_COOKIE_MONSTER_H_
9 9
10 #include <map> 10 #include <map>
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 #ifdef UNIT_TEST 65 #ifdef UNIT_TEST
66 CookieMonster(PersistentCookieStore* store, 66 CookieMonster(PersistentCookieStore* store,
67 Delegate* delegate, 67 Delegate* delegate,
68 int last_access_threshold_milliseconds) 68 int last_access_threshold_milliseconds)
69 : initialized_(false), 69 : initialized_(false),
70 store_(store), 70 store_(store),
71 last_access_threshold_(base::TimeDelta::FromMilliseconds( 71 last_access_threshold_(base::TimeDelta::FromMilliseconds(
72 last_access_threshold_milliseconds)), 72 last_access_threshold_milliseconds)),
73 delegate_(delegate), 73 delegate_(delegate),
74 last_statistic_record_time_(base::Time::Now()) { 74 last_statistic_record_time_(base::Time::Now()) {
75 InitializeHistograms();
75 SetDefaultCookieableSchemes(); 76 SetDefaultCookieableSchemes();
76 } 77 }
77 #endif 78 #endif
78 79
79 // Parse the string with the cookie time (very forgivingly). 80 // Parse the string with the cookie time (very forgivingly).
80 static base::Time ParseCookieTime(const std::string& time_string); 81 static base::Time ParseCookieTime(const std::string& time_string);
81 82
82 // Returns true if a domain string represents a host-only cookie, 83 // Returns true if a domain string represents a host-only cookie,
83 // i.e. it doesn't begin with a leading '.' character. 84 // i.e. it doesn't begin with a leading '.' character.
84 static bool DomainIsHostOnly(const std::string& domain_string); 85 static bool DomainIsHostOnly(const std::string& domain_string);
(...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after
280 bool HasCookieableScheme(const GURL& url); 281 bool HasCookieableScheme(const GURL& url);
281 282
282 // Statistics support 283 // Statistics support
283 // Record statistics every kRecordStatisticsIntervalSeconds of uptime. 284 // Record statistics every kRecordStatisticsIntervalSeconds of uptime.
284 static const int kRecordStatisticsIntervalSeconds = 10 * 60; 285 static const int kRecordStatisticsIntervalSeconds = 10 * 60;
285 286
286 // This function should be called repeatedly, and will record 287 // This function should be called repeatedly, and will record
287 // statistics if a sufficient time period has passed. 288 // statistics if a sufficient time period has passed.
288 void RecordPeriodicStats(const base::Time& current_time); 289 void RecordPeriodicStats(const base::Time& current_time);
289 290
291 // Histogram variables; see CookieMonster::InitializeHistograms() in
292 // cookie_monster.cc for details.
293 scoped_refptr<Histogram> histogram_expiration_duration_minutes_;
294 scoped_refptr<Histogram> histogram_between_access_interval_minutes_;
295 scoped_refptr<Histogram> histogram_evicted_last_access_minutes_;
296 scoped_refptr<Histogram> histogram_count_;
297 scoped_refptr<Histogram> histogram_number_duplicate_db_cookies_;
298 scoped_refptr<Histogram> histogram_cookie_deletion_cause_;
299
300 // Initialize the above variables; should only be called from
301 // the constructor.
302 void InitializeHistograms();
303
290 CookieMap cookies_; 304 CookieMap cookies_;
291 305
292 // Indicates whether the cookie store has been initialized. This happens 306 // Indicates whether the cookie store has been initialized. This happens
293 // lazily in InitStoreIfNecessary(). 307 // lazily in InitStoreIfNecessary().
294 bool initialized_; 308 bool initialized_;
295 309
296 scoped_refptr<PersistentCookieStore> store_; 310 scoped_refptr<PersistentCookieStore> store_;
297 311
298 // The resolution of our time isn't enough, so we do something 312 // The resolution of our time isn't enough, so we do something
299 // ugly and increment when we've seen the same time twice. 313 // ugly and increment when we've seen the same time twice.
(...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after
538 protected: 552 protected:
539 PersistentCookieStore() { } 553 PersistentCookieStore() { }
540 554
541 private: 555 private:
542 DISALLOW_COPY_AND_ASSIGN(PersistentCookieStore); 556 DISALLOW_COPY_AND_ASSIGN(PersistentCookieStore);
543 }; 557 };
544 558
545 } // namespace net 559 } // namespace net
546 560
547 #endif // NET_BASE_COOKIE_MONSTER_H_ 561 #endif // NET_BASE_COOKIE_MONSTER_H_
OLDNEW
« no previous file with comments | « chrome/test/data/reliability/known_crashes.txt ('k') | net/base/cookie_monster.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698