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

Side by Side Diff: net/proxy/proxy_script_fetcher.cc

Issue 155897: Add support to URLRequest for deferring redirects.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 11 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2008 The Chromium Authors. All rights reserved. Use of this 1 // Copyright (c) 2008 The Chromium Authors. All rights reserved. Use of this
2 // source code is governed by a BSD-style license that can be found in the 2 // source code is governed by a BSD-style license that can be found in the
3 // LICENSE file. 3 // LICENSE file.
4 4
5 #include "net/proxy/proxy_script_fetcher.h" 5 #include "net/proxy/proxy_script_fetcher.h"
6 6
7 #include "base/compiler_specific.h" 7 #include "base/compiler_specific.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/message_loop.h" 9 #include "base/message_loop.h"
10 #include "base/ref_counted.h" 10 #include "base/ref_counted.h"
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 virtual void Fetch(const GURL& url, std::string* bytes, 60 virtual void Fetch(const GURL& url, std::string* bytes,
61 CompletionCallback* callback); 61 CompletionCallback* callback);
62 virtual void Cancel(); 62 virtual void Cancel();
63 63
64 // URLRequest::Delegate methods: 64 // URLRequest::Delegate methods:
65 65
66 virtual void OnAuthRequired(URLRequest* request, 66 virtual void OnAuthRequired(URLRequest* request,
67 AuthChallengeInfo* auth_info); 67 AuthChallengeInfo* auth_info);
68 virtual void OnSSLCertificateError(URLRequest* request, int cert_error, 68 virtual void OnSSLCertificateError(URLRequest* request, int cert_error,
69 X509Certificate* cert); 69 X509Certificate* cert);
70 virtual void OnReceivedRedirect(URLRequest* request, const GURL& to_url);
71 virtual void OnResponseStarted(URLRequest* request); 70 virtual void OnResponseStarted(URLRequest* request);
72 virtual void OnReadCompleted(URLRequest* request, int num_bytes); 71 virtual void OnReadCompleted(URLRequest* request, int num_bytes);
73 virtual void OnResponseCompleted(URLRequest* request); 72 virtual void OnResponseCompleted(URLRequest* request);
74 73
75 private: 74 private:
76 // Read more bytes from the response. 75 // Read more bytes from the response.
77 void ReadBody(URLRequest* request); 76 void ReadBody(URLRequest* request);
78 77
79 // Called once the request has completed to notify the caller of 78 // Called once the request has completed to notify the caller of
80 // |response_code_| and |response_bytes_|. 79 // |response_code_| and |response_bytes_|.
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 void ProxyScriptFetcherImpl::OnSSLCertificateError(URLRequest* request, 191 void ProxyScriptFetcherImpl::OnSSLCertificateError(URLRequest* request,
193 int cert_error, 192 int cert_error,
194 X509Certificate* cert) { 193 X509Certificate* cert) {
195 DCHECK(request == cur_request_.get()); 194 DCHECK(request == cur_request_.get());
196 LOG(WARNING) << "SSL certificate error when fetching PAC script, aborting."; 195 LOG(WARNING) << "SSL certificate error when fetching PAC script, aborting.";
197 // Certificate errors are in same space as net errors. 196 // Certificate errors are in same space as net errors.
198 result_code_ = cert_error; 197 result_code_ = cert_error;
199 request->Cancel(); 198 request->Cancel();
200 } 199 }
201 200
202 void ProxyScriptFetcherImpl::OnReceivedRedirect(URLRequest* request,
203 const GURL& to_url) {
204 DCHECK(request == cur_request_.get());
205 // OK, thanks for telling.
206 }
207
208 void ProxyScriptFetcherImpl::OnResponseStarted(URLRequest* request) { 201 void ProxyScriptFetcherImpl::OnResponseStarted(URLRequest* request) {
209 DCHECK(request == cur_request_.get()); 202 DCHECK(request == cur_request_.get());
210 203
211 if (!request->status().is_success()) { 204 if (!request->status().is_success()) {
212 OnResponseCompleted(request); 205 OnResponseCompleted(request);
213 return; 206 return;
214 } 207 }
215 208
216 // Require HTTP responses to have a success status code. 209 // Require HTTP responses to have a success status code.
217 if (request->url().SchemeIs("http") || request->url().SchemeIs("https")) { 210 if (request->url().SchemeIs("http") || request->url().SchemeIs("https")) {
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
325 } 318 }
326 319
327 // static 320 // static
328 size_t ProxyScriptFetcher::SetSizeConstraintForUnittest(size_t size_bytes) { 321 size_t ProxyScriptFetcher::SetSizeConstraintForUnittest(size_t size_bytes) {
329 size_t prev = max_response_bytes; 322 size_t prev = max_response_bytes;
330 max_response_bytes = size_bytes; 323 max_response_bytes = size_bytes;
331 return prev; 324 return prev;
332 } 325 }
333 326
334 } // namespace net 327 } // namespace net
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698