cygprofile: increase timeouts to allow showing web contents
[chromium-blink-merge.git] / ios / chrome / browser / search_engines / template_url_service_client_impl.h
blob65f5328b4fc9c04ed5525c8886681cd9498952f1
1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef IOS_CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_CLIENT_IMPL_H_
6 #define IOS_CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_CLIENT_IMPL_H_
8 #include "base/macros.h"
9 #include "components/history/core/browser/history_service_observer.h"
10 #include "components/search_engines/template_url_service_client.h"
12 class TemplateURLService;
14 namespace history {
15 class HistoryService;
18 namespace ios {
20 // TemplateURLServiceClientImpl provides keyword related history functionality
21 // for TemplateURLService.
22 class TemplateURLServiceClientImpl : public TemplateURLServiceClient,
23 public history::HistoryServiceObserver {
24 public:
25 explicit TemplateURLServiceClientImpl(
26 history::HistoryService* history_service);
27 ~TemplateURLServiceClientImpl() override;
29 private:
30 // TemplateURLServiceClient:
31 void Shutdown() override;
32 void SetOwner(TemplateURLService* owner) override;
33 void DeleteAllSearchTermsForKeyword(history::KeywordID keyword_id) override;
34 void SetKeywordSearchTermsForURL(const GURL& url,
35 TemplateURLID id,
36 const base::string16& term) override;
37 void AddKeywordGeneratedVisit(const GURL& url) override;
38 void RestoreExtensionInfoIfNecessary(TemplateURL* template_url) override;
40 // history::HistoryServiceObserver:
41 void OnURLVisited(history::HistoryService* history_service,
42 ui::PageTransition transition,
43 const history::URLRow& row,
44 const history::RedirectList& redirects,
45 base::Time visit_time) override;
47 TemplateURLService* owner_;
48 history::HistoryService* history_service_;
50 DISALLOW_COPY_AND_ASSIGN(TemplateURLServiceClientImpl);
53 } // namespace ios
55 #endif // IOS_CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_CLIENT_IMPL_H_