Move Webstore URL concepts to //extensions and out
[chromium-blink-merge.git] / chrome / browser / search_engines / chrome_template_url_service_client.h
blobfba81d85ad4ad89e7dee1a823017c64386a34920
1 // Copyright 2014 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 CHROME_BROWSER_SEARCH_ENGINES_CHROME_TEMPLATE_URL_SERVICE_CLIENT_H_
6 #define CHROME_BROWSER_SEARCH_ENGINES_CHROME_TEMPLATE_URL_SERVICE_CLIENT_H_
8 #include "components/search_engines/template_url_service_client.h"
9 #include "content/public/browser/notification_observer.h"
10 #include "content/public/browser/notification_registrar.h"
12 class HistoryService;
13 class Profile;
15 // ChromeTemplateURLServiceClient provides keyword related history
16 // functionality for TemplateURLService.
17 class ChromeTemplateURLServiceClient : public TemplateURLServiceClient,
18 public content::NotificationObserver {
19 public:
20 explicit ChromeTemplateURLServiceClient(Profile* profile);
21 virtual ~ChromeTemplateURLServiceClient();
23 // TemplateURLServiceClient:
24 virtual void SetOwner(TemplateURLService* owner) OVERRIDE;
25 virtual void DeleteAllSearchTermsForKeyword(
26 history::KeywordID keyword_Id) OVERRIDE;
27 virtual void SetKeywordSearchTermsForURL(const GURL& url,
28 TemplateURLID id,
29 const base::string16& term) OVERRIDE;
30 virtual void AddKeywordGeneratedVisit(const GURL& url) OVERRIDE;
31 virtual void RestoreExtensionInfoIfNecessary(
32 TemplateURL* template_url) OVERRIDE;
34 // content::NotificationObserver:
35 virtual void Observe(int type,
36 const content::NotificationSource& source,
37 const content::NotificationDetails& details) OVERRIDE;
39 private:
40 Profile* profile_;
41 TemplateURLService* owner_;
42 content::NotificationRegistrar notification_registrar_;
44 DISALLOW_COPY_AND_ASSIGN(ChromeTemplateURLServiceClient);
47 #endif // CHROME_BROWSER_SEARCH_ENGINES_CHROME_TEMPLATE_URL_SERVICE_CLIENT_H_