Chromium Code Reviews| Index: chrome/browser/autocomplete/zero_suggest_provider.h |
| diff --git a/chrome/browser/autocomplete/zero_suggest_provider.h b/chrome/browser/autocomplete/zero_suggest_provider.h |
| index 23dc2fe1e6d8217ed75dc94f74098062df029a57..1bf9f841ddddf0a8df55e74b58f7ddc9fe9e4214 100644 |
| --- a/chrome/browser/autocomplete/zero_suggest_provider.h |
| +++ b/chrome/browser/autocomplete/zero_suggest_provider.h |
| @@ -21,7 +21,9 @@ |
| #include "chrome/browser/autocomplete/search_provider.h" |
| #include "chrome/browser/history/history_types.h" |
| #include "components/metrics/proto/omnibox_event.pb.h" |
| +#include "net/url_request/url_fetcher_delegate.h" |
| +class AutocompleteProviderListener; |
| class TemplateURLService; |
| namespace base { |
| @@ -47,7 +49,8 @@ class PrefRegistrySyncable; |
| // TODO(jered): Consider deleting this class and building this functionality |
| // into SearchProvider after dogfood and after we break the association between |
| // omnibox text and suggestions. |
| -class ZeroSuggestProvider : public BaseSearchProvider { |
| +class ZeroSuggestProvider : public BaseSearchProvider, |
| + public net::URLFetcherDelegate { |
| public: |
| // Creates and returns an instance of this provider. |
| static ZeroSuggestProvider* Create(AutocompleteProviderListener* listener, |
| @@ -77,22 +80,20 @@ class ZeroSuggestProvider : public BaseSearchProvider { |
| virtual ~ZeroSuggestProvider(); |
| + // Optionally, cache the received |json_data| and return true if we want |
| + // to stop processing results at this point. The |parsed_data| is the parsed |
| + // version of |json_data| used to determine if we received an empty result. |
| + bool StoreSuggestionResponse(const std::string& json_data, |
| + const base::Value& parsed_data); |
|
Peter Kasting
2014/08/08 17:33:24
Nit: See previous comments about function ordering
hashimoto
2014/08/11 05:15:04
Done.
|
| + |
| // BaseSearchProvider: |
| - virtual bool StoreSuggestionResponse(const std::string& json_data, |
| - const base::Value& parsed_data) OVERRIDE; |
| virtual const TemplateURL* GetTemplateURL(bool is_keyword) const OVERRIDE; |
| virtual const AutocompleteInput GetInput(bool is_keyword) const OVERRIDE; |
| - virtual SearchSuggestionParser::Results* GetResultsToFill( |
| - bool is_keyword) OVERRIDE; |
| virtual bool ShouldAppendExtraParams( |
| const SearchSuggestionParser::SuggestResult& result) const OVERRIDE; |
| virtual void StopSuggest() OVERRIDE; |
| virtual void ClearAllResults() OVERRIDE; |
| - virtual int GetDefaultResultRelevance() const OVERRIDE; |
| virtual void RecordDeletionResult(bool success) OVERRIDE; |
| - virtual void LogFetchComplete(bool success, bool is_keyword) OVERRIDE; |
| - virtual bool IsKeywordFetcher(const net::URLFetcher* fetcher) const OVERRIDE; |
| - virtual void UpdateMatches() OVERRIDE; |
| // Adds AutocompleteMatches for each of the suggestions in |results| to |
| // |map|. |
| @@ -107,6 +108,9 @@ class ZeroSuggestProvider : public BaseSearchProvider { |
| // Fetches zero-suggest suggestions by sending a request using |suggest_url|. |
| void Run(const GURL& suggest_url); |
| + // net::URLFetcherDelegate: |
| + virtual void OnURLFetchComplete(const net::URLFetcher* source) OVERRIDE; |
|
Peter Kasting
2014/08/08 17:33:24
Nit: Same nit.
hashimoto
2014/08/11 05:15:04
Done.
|
| + |
| // Converts the parsed results to a set of AutocompleteMatches and adds them |
| // to |matches_|. Also update the histograms for how many results were |
| // received. |
| @@ -134,6 +138,8 @@ class ZeroSuggestProvider : public BaseSearchProvider { |
| // populates |matches_| with cached results. |
| void MaybeUseCachedSuggestions(); |
| + AutocompleteProviderListener* listener_; |
| + |
| // The URL for which a suggestion fetch is pending. |
| std::string current_query_; |