| Index: chrome/browser/search_engines/template_url.h
|
| diff --git a/chrome/browser/search_engines/template_url.h b/chrome/browser/search_engines/template_url.h
|
| index 32642205a7b20e5dcf9daa91520c31c2fe391c81..9468fccfa94efaac5971d6f2b504b651137a650c 100644
|
| --- a/chrome/browser/search_engines/template_url.h
|
| +++ b/chrome/browser/search_engines/template_url.h
|
| @@ -48,6 +48,28 @@ class TemplateURLRef {
|
| INSTANT,
|
| };
|
|
|
| + // This struct encapsulates arguments passed to
|
| + // TemplateURLRef::ReplaceSearchTerms methods. By default, only search_terms
|
| + // is required and is passed in the constructor.
|
| + struct SearchTermsArgs {
|
| + explicit SearchTermsArgs(const string16& search_terms);
|
| +
|
| + // The search terms (query).
|
| + const string16 search_terms;
|
| + // The original (input) query.
|
| + string16 original_query;
|
| + // The optional assisted query stats, aka AQS, used for logging purposes.
|
| + // This string contains impressions of all autocomplete matches shown
|
| + // at the query submission time. For privacy reasons, we require the
|
| + // search provider to support HTTPS protocol in order to receive the AQS
|
| + // param.
|
| + // For more details, see http://goto.google.com/binary-clients-logging .
|
| + std::string assisted_query_stats;
|
| +
|
| + // TODO: Remove along with "aq" CGI param.
|
| + int accepted_suggestion;
|
| + };
|
| +
|
| TemplateURLRef(TemplateURL* owner, Type type);
|
| ~TemplateURLRef();
|
|
|
| @@ -62,22 +84,18 @@ class TemplateURLRef {
|
| const SearchTermsData& search_terms_data) const;
|
|
|
| // Returns a string that is the result of replacing the search terms in
|
| - // the url with the specified value. We use our owner's input encoding.
|
| + // the url with the specified arguments. We use our owner's input encoding.
|
| //
|
| // If this TemplateURLRef does not support replacement (SupportsReplacement
|
| // returns false), an empty string is returned.
|
| std::string ReplaceSearchTerms(
|
| - const string16& terms,
|
| - int accepted_suggestion,
|
| - const string16& original_query_for_suggestion) const;
|
| + const SearchTermsArgs& search_terms_args) const;
|
|
|
| // Just like ReplaceSearchTerms except that it takes SearchTermsData to supply
|
| // the data for some search terms. Most of the time ReplaceSearchTerms should
|
| // be called.
|
| std::string ReplaceSearchTermsUsingTermsData(
|
| - const string16& terms,
|
| - int accepted_suggestion,
|
| - const string16& original_query_for_suggestion,
|
| + const SearchTermsArgs& search_terms_args,
|
| const SearchTermsData& search_terms_data) const;
|
|
|
| // Returns true if the TemplateURLRef is valid. An invalid TemplateURLRef is
|
| @@ -126,6 +144,7 @@ class TemplateURLRef {
|
| enum ReplacementType {
|
| ENCODING,
|
| GOOGLE_ACCEPTED_SUGGESTION,
|
| + GOOGLE_ASSISTED_QUERY_STATS,
|
| GOOGLE_BASE_URL,
|
| GOOGLE_BASE_SUGGEST_URL,
|
| GOOGLE_INSTANT_ENABLED,
|
|
|