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

Side by Side Diff: components/omnibox/browser/search_provider.cc

Issue 1983773002: Cache SearchEngineType of TemplateURL (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@refactor-extracting-terms-from-template-url
Patch Set: Fix typo Created 4 years, 6 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
OLDNEW
1 // Copyright 2012 The Chromium Authors. All rights reserved. 1 // Copyright 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 "components/omnibox/browser/search_provider.h" 5 #include "components/omnibox/browser/search_provider.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <algorithm> 8 #include <algorithm>
9 #include <cmath> 9 #include <cmath>
10 #include <utility> 10 #include <utility>
(...skipping 15 matching lines...) Expand all
26 #include "components/history/core/browser/keyword_search_term.h" 26 #include "components/history/core/browser/keyword_search_term.h"
27 #include "components/metrics/proto/omnibox_input_type.pb.h" 27 #include "components/metrics/proto/omnibox_input_type.pb.h"
28 #include "components/omnibox/browser/autocomplete_provider_client.h" 28 #include "components/omnibox/browser/autocomplete_provider_client.h"
29 #include "components/omnibox/browser/autocomplete_provider_listener.h" 29 #include "components/omnibox/browser/autocomplete_provider_listener.h"
30 #include "components/omnibox/browser/autocomplete_result.h" 30 #include "components/omnibox/browser/autocomplete_result.h"
31 #include "components/omnibox/browser/keyword_provider.h" 31 #include "components/omnibox/browser/keyword_provider.h"
32 #include "components/omnibox/browser/omnibox_field_trial.h" 32 #include "components/omnibox/browser/omnibox_field_trial.h"
33 #include "components/omnibox/browser/suggestion_answer.h" 33 #include "components/omnibox/browser/suggestion_answer.h"
34 #include "components/omnibox/browser/url_prefix.h" 34 #include "components/omnibox/browser/url_prefix.h"
35 #include "components/search/search.h" 35 #include "components/search/search.h"
36 #include "components/search_engines/template_url_prepopulate_data.h"
37 #include "components/search_engines/template_url_service.h" 36 #include "components/search_engines/template_url_service.h"
38 #include "components/url_formatter/url_formatter.h" 37 #include "components/url_formatter/url_formatter.h"
39 #include "components/variations/net/variations_http_headers.h" 38 #include "components/variations/net/variations_http_headers.h"
40 #include "grit/components_strings.h" 39 #include "grit/components_strings.h"
41 #include "net/base/escape.h" 40 #include "net/base/escape.h"
42 #include "net/base/load_flags.h" 41 #include "net/base/load_flags.h"
43 #include "net/http/http_request_headers.h" 42 #include "net/http/http_request_headers.h"
44 #include "net/url_request/url_fetcher.h" 43 #include "net/url_request/url_fetcher.h"
45 #include "net/url_request/url_request_status.h" 44 #include "net/url_request/url_request_status.h"
46 #include "ui/base/l10n/l10n_util.h" 45 #include "ui/base/l10n/l10n_util.h"
(...skipping 434 matching lines...) Expand 10 before | Expand all | Expand 10 after
481 comparator); 480 comparator);
482 } 481 }
483 482
484 void SearchProvider::LogFetchComplete(bool success, bool is_keyword) { 483 void SearchProvider::LogFetchComplete(bool success, bool is_keyword) {
485 LogOmniboxSuggestRequest(REPLY_RECEIVED); 484 LogOmniboxSuggestRequest(REPLY_RECEIVED);
486 // Record response time for suggest requests sent to Google. We care 485 // Record response time for suggest requests sent to Google. We care
487 // only about the common case: the Google default provider used in 486 // only about the common case: the Google default provider used in
488 // non-keyword mode. 487 // non-keyword mode.
489 const TemplateURL* default_url = providers_.GetDefaultProviderURL(); 488 const TemplateURL* default_url = providers_.GetDefaultProviderURL();
490 if (!is_keyword && default_url && 489 if (!is_keyword && default_url &&
491 (TemplateURLPrepopulateData::GetEngineType( 490 (default_url->GetEngineType(
492 *default_url, 491 client()->GetTemplateURLService()->search_terms_data()) ==
493 client()->GetTemplateURLService()->search_terms_data()) ==
494 SEARCH_ENGINE_GOOGLE)) { 492 SEARCH_ENGINE_GOOGLE)) {
495 const base::TimeDelta elapsed_time = 493 const base::TimeDelta elapsed_time =
496 base::TimeTicks::Now() - time_suggest_request_sent_; 494 base::TimeTicks::Now() - time_suggest_request_sent_;
497 if (success) { 495 if (success) {
498 UMA_HISTOGRAM_TIMES("Omnibox.SuggestRequest.Success.GoogleResponseTime", 496 UMA_HISTOGRAM_TIMES("Omnibox.SuggestRequest.Success.GoogleResponseTime",
499 elapsed_time); 497 elapsed_time);
500 } else { 498 } else {
501 UMA_HISTOGRAM_TIMES("Omnibox.SuggestRequest.Failure.GoogleResponseTime", 499 UMA_HISTOGRAM_TIMES("Omnibox.SuggestRequest.Failure.GoogleResponseTime",
502 elapsed_time); 500 elapsed_time);
503 } 501 }
(...skipping 994 matching lines...) Expand 10 before | Expand all | Expand 10 after
1498 for (MatchMap::const_iterator i(map.begin()); i != map.end(); ++i) 1496 for (MatchMap::const_iterator i(map.begin()); i != map.end(); ++i)
1499 matches.push_back(i->second); 1497 matches.push_back(i->second);
1500 std::sort(matches.begin(), matches.end(), &AutocompleteMatch::MoreRelevant); 1498 std::sort(matches.begin(), matches.end(), &AutocompleteMatch::MoreRelevant);
1501 1499
1502 // If there is a top scoring entry, find the corresponding answer. 1500 // If there is a top scoring entry, find the corresponding answer.
1503 if (!matches.empty()) 1501 if (!matches.empty())
1504 return answers_cache_.GetTopAnswerEntry(matches[0].contents); 1502 return answers_cache_.GetTopAnswerEntry(matches[0].contents);
1505 1503
1506 return AnswersQueryData(); 1504 return AnswersQueryData();
1507 } 1505 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698