Automated Commit: Committing new LKGM version 6953.0.0 for chromeos.
[chromium-blink-merge.git] / components / search_engines / template_url_service_client.h
blob46147aee3982973bdcd80b53decb7327f08cf6d4
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 COMPONENTS_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_CLIENT_H_
6 #define COMPONENTS_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_CLIENT_H_
8 #include "base/strings/string16.h"
9 #include "components/search_engines/template_url_id.h"
11 class GURL;
12 class TemplateURL;
13 class TemplateURLService;
15 // This interface provides history related functionality required by
16 // TemplateURLService.
17 // TODO(hashimoto): Get rid of this once HistoryService gets componentized.
18 class TemplateURLServiceClient {
19 public:
20 virtual ~TemplateURLServiceClient() {}
22 // Called by TemplateURLService::Shutdown as part of the two phase shutdown
23 // of the KeyedService.
24 virtual void Shutdown() = 0;
26 // Sets the pointer to the owner of this object.
27 virtual void SetOwner(TemplateURLService* owner) = 0;
29 // Deletes all search terms for the specified keyword.
30 virtual void DeleteAllSearchTermsForKeyword(TemplateURLID id) = 0;
32 // Sets the search terms for the specified url and keyword.
33 virtual void SetKeywordSearchTermsForURL(const GURL& url,
34 TemplateURLID id,
35 const base::string16& term) = 0;
37 // Adds the given URL to history as a keyword generated visit.
38 virtual void AddKeywordGeneratedVisit(const GURL& url) = 0;
40 // Restores the extension info of a TemplateURL loaded from the database.
41 virtual void RestoreExtensionInfoIfNecessary(TemplateURL* template_url) = 0;
44 #endif // COMPONENTS_SEARCH_ENGINES_TEMPLATE_URL_SERVICE_CLIENT_H_