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

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

Issue 7108035: Revert 88400 (Probable breaker of XP Tests(dbg)(5), 10.6 Tests (dbg)(2), 10.5 Tests (dbg)(2)) (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"
17 #include "chrome/browser/sync/sync_ui_util.h" 18 #include "chrome/browser/sync/sync_ui_util.h"
18 #include "chrome/common/chrome_switches.h" 19 #include "chrome/common/chrome_switches.h"
19 #include "chrome/common/extensions/extension.h" 20 #include "chrome/common/extensions/extension.h"
20 #include "chrome/common/web_resource/web_resource_unpacker.h" 21 #include "chrome/common/web_resource/web_resource_unpacker.h"
21 #include "content/browser/browser_thread.h" 22 #include "content/browser/browser_thread.h"
22 #include "content/common/notification_service.h" 23 #include "content/common/notification_service.h"
23 #include "content/common/url_fetcher.h" 24 #include "content/common/url_fetcher.h"
24 #include "googleurl/src/gurl.h" 25 #include "googleurl/src/gurl.h"
25 #include "net/base/load_flags.h" 26 #include "net/base/load_flags.h"
26 #include "net/url_request/url_request_status.h" 27 #include "net/url_request/url_request_status.h"
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 std::string web_resource_server = 60 std::string web_resource_server =
60 web_resource_service_->web_resource_server_; 61 web_resource_service_->web_resource_server_;
61 if (web_resource_service_->apply_locale_to_url_) { 62 if (web_resource_service_->apply_locale_to_url_) {
62 std::string locale = g_browser_process->GetApplicationLocale(); 63 std::string locale = g_browser_process->GetApplicationLocale();
63 web_resource_server.append(locale); 64 web_resource_server.append(locale);
64 } 65 }
65 66
66 url_fetcher_.reset(new URLFetcher(GURL( 67 url_fetcher_.reset(new URLFetcher(GURL(
67 web_resource_server), 68 web_resource_server),
68 URLFetcher::GET, this)); 69 URLFetcher::GET, this));
69 // Use system request context and do not save state in cookies or cache. 70 // Do not let url fetcher affect existing state in profile (by setting
71 // cookies, for example.
70 url_fetcher_->set_load_flags(net::LOAD_DISABLE_CACHE | 72 url_fetcher_->set_load_flags(net::LOAD_DISABLE_CACHE |
71 net::LOAD_DO_NOT_SAVE_COOKIES); 73 net::LOAD_DO_NOT_SAVE_COOKIES);
72 net::URLRequestContextGetter* url_request_context_getter = 74 net::URLRequestContextGetter* url_request_context_getter =
73 g_browser_process->system_request_context(); 75 web_resource_service_->profile_->GetRequestContext();
74 url_fetcher_->set_request_context(url_request_context_getter); 76 url_fetcher_->set_request_context(url_request_context_getter);
75 url_fetcher_->Start(); 77 url_fetcher_->Start();
76 } 78 }
77 79
78 // From URLFetcher::Delegate. 80 // From URLFetcher::Delegate.
79 void OnURLFetchComplete(const URLFetcher* source, 81 void OnURLFetchComplete(const URLFetcher* source,
80 const GURL& url, 82 const GURL& url,
81 const net::URLRequestStatus& status, 83 const net::URLRequestStatus& status,
82 int response_code, 84 int response_code,
83 const net::ResponseCookies& cookies, 85 const net::ResponseCookies& cookies,
(...skipping 104 matching lines...) Expand 10 before | Expand all | Expand 10 after
188 190
189 // Holds raw JSON string. 191 // Holds raw JSON string.
190 const std::string& json_data_; 192 const std::string& json_data_;
191 193
192 // True if we got a response from the utility process and have cleaned up 194 // True if we got a response from the utility process and have cleaned up
193 // already. 195 // already.
194 bool got_response_; 196 bool got_response_;
195 }; 197 };
196 198
197 WebResourceService::WebResourceService( 199 WebResourceService::WebResourceService(
200 Profile* profile,
198 PrefService* prefs, 201 PrefService* prefs,
199 const char* web_resource_server, 202 const char* web_resource_server,
200 bool apply_locale_to_url, 203 bool apply_locale_to_url,
201 NotificationType::Type notification_type, 204 NotificationType::Type notification_type,
202 const char* last_update_time_pref_name, 205 const char* last_update_time_pref_name,
203 int start_fetch_delay, 206 int start_fetch_delay,
204 int cache_update_delay) 207 int cache_update_delay)
205 : prefs_(prefs), 208 : prefs_(prefs),
209 profile_(profile),
206 ALLOW_THIS_IN_INITIALIZER_LIST(service_factory_(this)), 210 ALLOW_THIS_IN_INITIALIZER_LIST(service_factory_(this)),
207 in_fetch_(false), 211 in_fetch_(false),
208 web_resource_server_(web_resource_server), 212 web_resource_server_(web_resource_server),
209 apply_locale_to_url_(apply_locale_to_url), 213 apply_locale_to_url_(apply_locale_to_url),
210 notification_type_(notification_type), 214 notification_type_(notification_type),
211 last_update_time_pref_name_(last_update_time_pref_name), 215 last_update_time_pref_name_(last_update_time_pref_name),
212 start_fetch_delay_(start_fetch_delay), 216 start_fetch_delay_(start_fetch_delay),
213 cache_update_delay_(cache_update_delay), 217 cache_update_delay_(cache_update_delay),
214 web_resource_update_scheduled_(false) { 218 web_resource_update_scheduled_(false) {
215 DCHECK(prefs); 219 DCHECK(prefs);
220 DCHECK(profile);
216 prefs_->RegisterStringPref(last_update_time_pref_name, 221 prefs_->RegisterStringPref(last_update_time_pref_name,
217 "0", 222 "0",
218 PrefService::UNSYNCABLE_PREF); 223 PrefService::UNSYNCABLE_PREF);
219 resource_dispatcher_host_ = g_browser_process->resource_dispatcher_host(); 224 resource_dispatcher_host_ = g_browser_process->resource_dispatcher_host();
220 web_resource_fetcher_.reset(new WebResourceFetcher(this)); 225 web_resource_fetcher_.reset(new WebResourceFetcher(this));
221 } 226 }
222 227
223 WebResourceService::~WebResourceService() { } 228 WebResourceService::~WebResourceService() { }
224 229
225 void WebResourceService::PostNotification(int64 delay_ms) { 230 void WebResourceService::PostNotification(int64 delay_ms) {
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
278 } 283 }
279 284
280 void WebResourceService::UpdateResourceCache(const std::string& json_data) { 285 void WebResourceService::UpdateResourceCache(const std::string& json_data) {
281 UnpackerClient* client = new UnpackerClient(this, json_data); 286 UnpackerClient* client = new UnpackerClient(this, json_data);
282 client->Start(); 287 client->Start();
283 288
284 // Set cache update time in preferences. 289 // Set cache update time in preferences.
285 prefs_->SetString(last_update_time_pref_name_, 290 prefs_->SetString(last_update_time_pref_name_,
286 base::DoubleToString(base::Time::Now().ToDoubleT())); 291 base::DoubleToString(base::Time::Now().ToDoubleT()));
287 } 292 }
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