Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5571)

Unified Diff: chrome/browser/search_engines/template_url_fetcher.h

Issue 367413003: No chrome dependencies in TemplateURLFetcher and TemplateURLParser (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Address comments Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/search_engines/template_url_fetcher.h
diff --git a/chrome/browser/search_engines/template_url_fetcher.h b/chrome/browser/search_engines/template_url_fetcher.h
index d85ec19bae2a1dd92f216a08f0ef15f01e4a8300..df66ba489966bf83578bff965e0bce20611e2b24 100644
--- a/chrome/browser/search_engines/template_url_fetcher.h
+++ b/chrome/browser/search_engines/template_url_fetcher.h
@@ -5,33 +5,42 @@
#ifndef CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_FETCHER_H_
#define CHROME_BROWSER_SEARCH_ENGINES_TEMPLATE_URL_FETCHER_H_
+#include "base/callback_forward.h"
+#include "base/memory/ref_counted.h"
+#include "base/memory/scoped_ptr.h"
#include "base/memory/scoped_vector.h"
#include "base/strings/string16.h"
#include "components/keyed_service/core/keyed_service.h"
-#include "ui/gfx/native_widget_types.h"
class GURL;
-class Profile;
class TemplateURL;
-class TemplateURLFetcherCallbacks;
+class TemplateURLService;
namespace content {
class WebContents;
}
+namespace net {
+class URLRequestContextGetter;
+}
+
// TemplateURLFetcher is responsible for downloading OpenSearch description
// documents, creating a TemplateURL from the OSDD, and adding the TemplateURL
// to the TemplateURLService. Downloading is done in the background.
//
class TemplateURLFetcher : public KeyedService {
public:
+ typedef base::Callback<void(
+ scoped_ptr<TemplateURL> template_url)> ConfirmAddSearchProviderCallback;
+
enum ProviderType {
AUTODETECTED_PROVIDER,
EXPLICIT_PROVIDER // Supplied by Javascript.
};
- // Creates a TemplateURLFetcher with the specified Profile.
- explicit TemplateURLFetcher(Profile* profile);
+ // Creates a TemplateURLFetcher.
+ TemplateURLFetcher(TemplateURLService* template_url_service,
+ net::URLRequestContextGetter* request_context);
virtual ~TemplateURLFetcher();
// If TemplateURLFetcher is not already downloading the OSDD for osdd_url,
@@ -50,7 +59,7 @@ class TemplateURLFetcher : public KeyedService {
const GURL& osdd_url,
const GURL& favicon_url,
content::WebContents* web_contents,
- TemplateURLFetcherCallbacks* callbacks,
+ const ConfirmAddSearchProviderCallback& callback,
ProviderType provider_type);
// The current number of outstanding requests.
@@ -64,12 +73,11 @@ class TemplateURLFetcher : public KeyedService {
typedef ScopedVector<RequestDelegate> Requests;
- Profile* profile() const { return profile_; }
-
// Invoked from the RequestDelegate when done downloading.
void RequestCompleted(RequestDelegate* request);
- Profile* profile_;
+ TemplateURLService* template_url_service_;
+ scoped_refptr<net::URLRequestContextGetter> request_context_;
// In progress requests.
Requests requests_;
« no previous file with comments | « chrome/browser/importer/in_process_importer_bridge.cc ('k') | chrome/browser/search_engines/template_url_fetcher.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698