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

Side by Side Diff: chrome/browser/web_resource/web_resource_service.cc

Issue 7099004: Use the System URL Request Context in the web resource service instead of the default profile's c... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 6 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « chrome/browser/web_resource/web_resource_service.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/web_resource/web_resource_service.h" 5 #include "chrome/browser/web_resource/web_resource_service.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/file_path.h" 8 #include "base/file_path.h"
9 #include "base/string_number_conversions.h" 9 #include "base/string_number_conversions.h"
10 #include "base/string_util.h" 10 #include "base/string_util.h"
11 #include "base/threading/thread_restrictions.h" 11 #include "base/threading/thread_restrictions.h"
12 #include "base/time.h" 12 #include "base/time.h"
13 #include "base/utf_string_conversions.h" 13 #include "base/utf_string_conversions.h"
14 #include "base/values.h" 14 #include "base/values.h"
15 #include "chrome/browser/browser_process.h" 15 #include "chrome/browser/browser_process.h"
16 #include "chrome/browser/prefs/pref_service.h" 16 #include "chrome/browser/prefs/pref_service.h"
17 #include "chrome/browser/profiles/profile.h"
18 #include "chrome/browser/sync/sync_ui_util.h" 17 #include "chrome/browser/sync/sync_ui_util.h"
19 #include "chrome/common/chrome_switches.h" 18 #include "chrome/common/chrome_switches.h"
20 #include "chrome/common/extensions/extension.h" 19 #include "chrome/common/extensions/extension.h"
21 #include "chrome/common/web_resource/web_resource_unpacker.h" 20 #include "chrome/common/web_resource/web_resource_unpacker.h"
22 #include "content/browser/browser_thread.h" 21 #include "content/browser/browser_thread.h"
23 #include "content/common/notification_service.h" 22 #include "content/common/notification_service.h"
24 #include "content/common/url_fetcher.h" 23 #include "content/common/url_fetcher.h"
25 #include "googleurl/src/gurl.h" 24 #include "googleurl/src/gurl.h"
26 #include "net/base/load_flags.h" 25 #include "net/base/load_flags.h"
27 #include "net/url_request/url_request_status.h" 26 #include "net/url_request/url_request_status.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 std::string web_resource_server = 59 std::string web_resource_server =
61 web_resource_service_->web_resource_server_; 60 web_resource_service_->web_resource_server_;
62 if (web_resource_service_->apply_locale_to_url_) { 61 if (web_resource_service_->apply_locale_to_url_) {
63 std::string locale = g_browser_process->GetApplicationLocale(); 62 std::string locale = g_browser_process->GetApplicationLocale();
64 web_resource_server.append(locale); 63 web_resource_server.append(locale);
65 } 64 }
66 65
67 url_fetcher_.reset(new URLFetcher(GURL( 66 url_fetcher_.reset(new URLFetcher(GURL(
68 web_resource_server), 67 web_resource_server),
69 URLFetcher::GET, this)); 68 URLFetcher::GET, this));
70 // Do not let url fetcher affect existing state in profile (by setting 69 // Use system request context and do not save state in cookies or cache.
71 // cookies, for example.
72 url_fetcher_->set_load_flags(net::LOAD_DISABLE_CACHE | 70 url_fetcher_->set_load_flags(net::LOAD_DISABLE_CACHE |
73 net::LOAD_DO_NOT_SAVE_COOKIES); 71 net::LOAD_DO_NOT_SAVE_COOKIES);
74 net::URLRequestContextGetter* url_request_context_getter = 72 net::URLRequestContextGetter* url_request_context_getter =
75 web_resource_service_->profile_->GetRequestContext(); 73 g_browser_process->system_request_context();
76 url_fetcher_->set_request_context(url_request_context_getter); 74 url_fetcher_->set_request_context(url_request_context_getter);
77 url_fetcher_->Start(); 75 url_fetcher_->Start();
78 } 76 }
79 77
80 // From URLFetcher::Delegate. 78 // From URLFetcher::Delegate.
81 void OnURLFetchComplete(const URLFetcher* source, 79 void OnURLFetchComplete(const URLFetcher* source,
82 const GURL& url, 80 const GURL& url,
83 const net::URLRequestStatus& status, 81 const net::URLRequestStatus& status,
84 int response_code, 82 int response_code,
85 const net::ResponseCookies& cookies, 83 const net::ResponseCookies& cookies,
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 188
191 // Holds raw JSON string. 189 // Holds raw JSON string.
192 const std::string& json_data_; 190 const std::string& json_data_;
193 191
194 // True if we got a response from the utility process and have cleaned up 192 // True if we got a response from the utility process and have cleaned up
195 // already. 193 // already.
196 bool got_response_; 194 bool got_response_;
197 }; 195 };
198 196
199 WebResourceService::WebResourceService( 197 WebResourceService::WebResourceService(
200 Profile* profile,
201 PrefService* prefs, 198 PrefService* prefs,
202 const char* web_resource_server, 199 const char* web_resource_server,
203 bool apply_locale_to_url, 200 bool apply_locale_to_url,
204 NotificationType::Type notification_type, 201 NotificationType::Type notification_type,
205 const char* last_update_time_pref_name, 202 const char* last_update_time_pref_name,
206 int start_fetch_delay, 203 int start_fetch_delay,
207 int cache_update_delay) 204 int cache_update_delay)
208 : prefs_(prefs), 205 : prefs_(prefs),
209 profile_(profile),
210 ALLOW_THIS_IN_INITIALIZER_LIST(service_factory_(this)), 206 ALLOW_THIS_IN_INITIALIZER_LIST(service_factory_(this)),
211 in_fetch_(false), 207 in_fetch_(false),
212 web_resource_server_(web_resource_server), 208 web_resource_server_(web_resource_server),
213 apply_locale_to_url_(apply_locale_to_url), 209 apply_locale_to_url_(apply_locale_to_url),
214 notification_type_(notification_type), 210 notification_type_(notification_type),
215 last_update_time_pref_name_(last_update_time_pref_name), 211 last_update_time_pref_name_(last_update_time_pref_name),
216 start_fetch_delay_(start_fetch_delay), 212 start_fetch_delay_(start_fetch_delay),
217 cache_update_delay_(cache_update_delay), 213 cache_update_delay_(cache_update_delay),
218 web_resource_update_scheduled_(false) { 214 web_resource_update_scheduled_(false) {
219 DCHECK(prefs); 215 DCHECK(prefs);
220 DCHECK(profile);
221 prefs_->RegisterStringPref(last_update_time_pref_name, 216 prefs_->RegisterStringPref(last_update_time_pref_name,
222 "0", 217 "0",
223 PrefService::UNSYNCABLE_PREF); 218 PrefService::UNSYNCABLE_PREF);
224 resource_dispatcher_host_ = g_browser_process->resource_dispatcher_host(); 219 resource_dispatcher_host_ = g_browser_process->resource_dispatcher_host();
225 web_resource_fetcher_.reset(new WebResourceFetcher(this)); 220 web_resource_fetcher_.reset(new WebResourceFetcher(this));
226 } 221 }
227 222
228 WebResourceService::~WebResourceService() { } 223 WebResourceService::~WebResourceService() { }
229 224
230 void WebResourceService::PostNotification(int64 delay_ms) { 225 void WebResourceService::PostNotification(int64 delay_ms) {
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
283 } 278 }
284 279
285 void WebResourceService::UpdateResourceCache(const std::string& json_data) { 280 void WebResourceService::UpdateResourceCache(const std::string& json_data) {
286 UnpackerClient* client = new UnpackerClient(this, json_data); 281 UnpackerClient* client = new UnpackerClient(this, json_data);
287 client->Start(); 282 client->Start();
288 283
289 // Set cache update time in preferences. 284 // Set cache update time in preferences.
290 prefs_->SetString(last_update_time_pref_name_, 285 prefs_->SetString(last_update_time_pref_name_,
291 base::DoubleToString(base::Time::Now().ToDoubleT())); 286 base::DoubleToString(base::Time::Now().ToDoubleT()));
292 } 287 }
OLDNEW
« no previous file with comments | « chrome/browser/web_resource/web_resource_service.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698