OLD | NEW |
---|---|
1 // Copyright (c) 2010 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 "net/proxy/proxy_script_fetcher_impl.h" | 5 #include "net/proxy/proxy_script_fetcher_impl.h" |
6 | 6 |
7 #include "base/compiler_specific.h" | 7 #include "base/compiler_specific.h" |
8 #include "base/i18n/icu_string_conversions.h" | 8 #include "base/i18n/icu_string_conversions.h" |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/message_loop.h" | 10 #include "base/message_loop.h" |
11 #include "base/string_util.h" | 11 #include "base/string_util.h" |
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
63 // outside of |charset| (i.e. invalid), then substitute them with | 63 // outside of |charset| (i.e. invalid), then substitute them with |
64 // U+FFFD rather than failing. | 64 // U+FFFD rather than failing. |
65 base::CodepageToUTF16(bytes, codepage, | 65 base::CodepageToUTF16(bytes, codepage, |
66 base::OnStringConversionError::SUBSTITUTE, | 66 base::OnStringConversionError::SUBSTITUTE, |
67 utf16); | 67 utf16); |
68 } | 68 } |
69 | 69 |
70 } // namespace | 70 } // namespace |
71 | 71 |
72 ProxyScriptFetcherImpl::ProxyScriptFetcherImpl( | 72 ProxyScriptFetcherImpl::ProxyScriptFetcherImpl( |
73 URLRequestContext* url_request_context) | 73 net::URLRequestContext* url_request_context) |
wtc
2011/01/15 17:54:23
Undo the changes to this file (already in the 'net
| |
74 : ALLOW_THIS_IN_INITIALIZER_LIST(task_factory_(this)), | 74 : ALLOW_THIS_IN_INITIALIZER_LIST(task_factory_(this)), |
75 url_request_context_(url_request_context), | 75 url_request_context_(url_request_context), |
76 buf_(new net::IOBuffer(kBufSize)), | 76 buf_(new net::IOBuffer(kBufSize)), |
77 next_id_(0), | 77 next_id_(0), |
78 cur_request_(NULL), | 78 cur_request_(NULL), |
79 cur_request_id_(0), | 79 cur_request_id_(0), |
80 callback_(NULL), | 80 callback_(NULL), |
81 result_code_(OK), | 81 result_code_(OK), |
82 result_text_(NULL), | 82 result_text_(NULL), |
83 max_response_bytes_(kDefaultMaxResponseBytes), | 83 max_response_bytes_(kDefaultMaxResponseBytes), |
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
127 cur_request_->Start(); | 127 cur_request_->Start(); |
128 return ERR_IO_PENDING; | 128 return ERR_IO_PENDING; |
129 } | 129 } |
130 | 130 |
131 void ProxyScriptFetcherImpl::Cancel() { | 131 void ProxyScriptFetcherImpl::Cancel() { |
132 // ResetCurRequestState will free the net::URLRequest, which will cause | 132 // ResetCurRequestState will free the net::URLRequest, which will cause |
133 // cancellation. | 133 // cancellation. |
134 ResetCurRequestState(); | 134 ResetCurRequestState(); |
135 } | 135 } |
136 | 136 |
137 URLRequestContext* ProxyScriptFetcherImpl::GetRequestContext() { | 137 net::URLRequestContext* ProxyScriptFetcherImpl::GetRequestContext() { |
138 return url_request_context_; | 138 return url_request_context_; |
139 } | 139 } |
140 | 140 |
141 void ProxyScriptFetcherImpl::OnAuthRequired(net::URLRequest* request, | 141 void ProxyScriptFetcherImpl::OnAuthRequired(net::URLRequest* request, |
142 AuthChallengeInfo* auth_info) { | 142 AuthChallengeInfo* auth_info) { |
143 DCHECK_EQ(request, cur_request_.get()); | 143 DCHECK_EQ(request, cur_request_.get()); |
144 // TODO(eroman): | 144 // TODO(eroman): |
145 LOG(WARNING) << "Auth required to fetch PAC script, aborting."; | 145 LOG(WARNING) << "Auth required to fetch PAC script, aborting."; |
146 result_code_ = ERR_NOT_IMPLEMENTED; | 146 result_code_ = ERR_NOT_IMPLEMENTED; |
147 request->CancelAuth(); | 147 request->CancelAuth(); |
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
253 cur_request_->GetCharset(&charset); | 253 cur_request_->GetCharset(&charset); |
254 ConvertResponseToUTF16(charset, bytes_read_so_far_, result_text_); | 254 ConvertResponseToUTF16(charset, bytes_read_so_far_, result_text_); |
255 } else { | 255 } else { |
256 // On error, the caller expects empty string for bytes. | 256 // On error, the caller expects empty string for bytes. |
257 result_text_->clear(); | 257 result_text_->clear(); |
258 } | 258 } |
259 | 259 |
260 int result_code = result_code_; | 260 int result_code = result_code_; |
261 CompletionCallback* callback = callback_; | 261 CompletionCallback* callback = callback_; |
262 | 262 |
263 // Hold a reference to the URLRequestContext to prevent re-entrancy from | 263 // Hold a reference to the net::URLRequestContext to prevent re-entrancy from |
264 // ~URLRequestContext. | 264 // ~net::URLRequestContext. |
265 scoped_refptr<URLRequestContext> context(cur_request_->context()); | 265 scoped_refptr<net::URLRequestContext> context(cur_request_->context()); |
266 ResetCurRequestState(); | 266 ResetCurRequestState(); |
267 | 267 |
268 callback->Run(result_code); | 268 callback->Run(result_code); |
269 } | 269 } |
270 | 270 |
271 void ProxyScriptFetcherImpl::ResetCurRequestState() { | 271 void ProxyScriptFetcherImpl::ResetCurRequestState() { |
272 cur_request_.reset(); | 272 cur_request_.reset(); |
273 cur_request_id_ = 0; | 273 cur_request_id_ = 0; |
274 callback_ = NULL; | 274 callback_ = NULL; |
275 result_code_ = OK; | 275 result_code_ = OK; |
(...skipping 18 matching lines...) Expand all Loading... | |
294 return prev; | 294 return prev; |
295 } | 295 } |
296 | 296 |
297 size_t ProxyScriptFetcherImpl::SetSizeConstraint(size_t size_bytes) { | 297 size_t ProxyScriptFetcherImpl::SetSizeConstraint(size_t size_bytes) { |
298 size_t prev = max_response_bytes_; | 298 size_t prev = max_response_bytes_; |
299 max_response_bytes_ = size_bytes; | 299 max_response_bytes_ = size_bytes; |
300 return prev; | 300 return prev; |
301 } | 301 } |
302 | 302 |
303 } // namespace net | 303 } // namespace net |
OLD | NEW |