diff options
author | tburkard@chromium.org <tburkard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-07 22:08:58 +0000 |
---|---|---|
committer | tburkard@chromium.org <tburkard@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-06-07 22:08:58 +0000 |
commit | dc931aeb9cb53a29b41f3a347c47a22461d24c3f (patch) | |
tree | 1befca4e5ef4f5efbf20e4023ba628b289090796 /chrome/browser/prerender/prerender_local_predictor.cc | |
parent | c87282692f04571330a9b06cccf8f22b52af8568 (diff) | |
download | chromium_src-dc931aeb9cb53a29b41f3a347c47a22461d24c3f.zip chromium_src-dc931aeb9cb53a29b41f3a347c47a22461d24c3f.tar.gz chromium_src-dc931aeb9cb53a29b41f3a347c47a22461d24c3f.tar.bz2 |
Add events to categorize prerender URLs for the local predictor.
R=dominich, cbentzel
Review URL: https://chromiumcodereview.appspot.com/10541062
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@141093 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/prerender/prerender_local_predictor.cc')
-rw-r--r-- | chrome/browser/prerender/prerender_local_predictor.cc | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/chrome/browser/prerender/prerender_local_predictor.cc b/chrome/browser/prerender/prerender_local_predictor.cc index 4e90bbd..5fee136 100644 --- a/chrome/browser/prerender/prerender_local_predictor.cc +++ b/chrome/browser/prerender/prerender_local_predictor.cc @@ -4,6 +4,7 @@ #include "chrome/browser/prerender/prerender_local_predictor.h" +#include <algorithm> #include <map> #include <set> @@ -118,6 +119,12 @@ base::Time GetCurrentTime() { return base::Time::Now(); } +bool StrCaseStr(std::string haystack, std::string needle) { + std::transform(haystack.begin(), haystack.end(), haystack.begin(), ::tolower); + std::transform(needle.begin(), needle.end(), needle.begin(), ::tolower); + return (haystack.find(needle)!=std::string::npos); +} + } // namespace struct PrerenderLocalPredictor::PrerenderData { @@ -272,6 +279,19 @@ void PrerenderLocalPredictor::OnLookupURL(history::URLID url_id, current_prerender_->url = url; RecordEvent(EVENT_GOT_PRERENDER_URL); } + RecordEvent(EVENT_PRERENDER_URL_LOOKUP_RESULT); + if ((url.path() == "/" || url.path() == "") && (!url.has_query())) + RecordEvent(EVENT_PRERENDER_URL_LOOKUP_RESULT_ROOT_PAGE); + if (url.SchemeIs("http")) + RecordEvent(EVENT_PRERENDER_URL_LOOKUP_RESULT_IS_HTTP); + if (url.has_query()) + RecordEvent(EVENT_PRERENDER_URL_LOOKUP_RESULT_HAS_QUERY_STRING); + if (StrCaseStr(url.spec().c_str(), "logout") || + StrCaseStr(url.spec().c_str(), "signout")) + RecordEvent(EVENT_PRERENDER_URL_LOOKUP_RESULT_CONTAINS_LOGOUT); + if (StrCaseStr(url.spec().c_str(), "login") || + StrCaseStr(url.spec().c_str(), "signin")) + RecordEvent(EVENT_PRERENDER_URL_LOOKUP_RESULT_CONTAINS_LOGIN); } void PrerenderLocalPredictor::OnGetInitialVisitHistory( |