Chromium Code Reviews| Index: net/url_request/url_request.cc |
| =================================================================== |
| --- net/url_request/url_request.cc (revision 255909) |
| +++ net/url_request/url_request.cc (working copy) |
| @@ -209,38 +209,17 @@ |
| RequestPriority priority, |
| Delegate* delegate, |
| const URLRequestContext* context) |
| - : context_(context), |
| - network_delegate_(context->network_delegate()), |
| - net_log_(BoundNetLog::Make(context->net_log(), |
| - NetLog::SOURCE_URL_REQUEST)), |
| - url_chain_(1, url), |
| - method_("GET"), |
| - referrer_policy_(CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE), |
| - load_flags_(LOAD_NORMAL), |
| - delegate_(delegate), |
| - is_pending_(false), |
| - is_redirecting_(false), |
| - redirect_limit_(kMaxRedirects), |
| - priority_(priority), |
| - identifier_(GenerateURLRequestIdentifier()), |
| - calling_delegate_(false), |
| - use_blocked_by_as_load_param_(false), |
| - before_request_callback_(base::Bind(&URLRequest::BeforeRequestComplete, |
| - base::Unretained(this))), |
| - has_notified_completion_(false), |
| - received_response_content_length_(0), |
| - creation_time_(base::TimeTicks::Now()), |
| - notified_before_network_start_(false) { |
| - SIMPLE_STATS_COUNTER("URLRequestCount"); |
| + : identifier_(GenerateURLRequestIdentifier()) { |
| + Init(url, priority, delegate, context, NULL); |
| +} |
| - // Sanity check out environment. |
| - DCHECK(base::MessageLoop::current()) |
| - << "The current base::MessageLoop must exist"; |
| - |
| - CHECK(context); |
| - context->url_requests()->insert(this); |
| - |
| - net_log_.BeginEvent(NetLog::TYPE_REQUEST_ALIVE); |
| +URLRequest::URLRequest(const GURL& url, |
| + RequestPriority priority, |
| + Delegate* delegate, |
| + const URLRequestContext* context, |
| + CookieStore* cookie_store) |
| + : identifier_(GenerateURLRequestIdentifier()) { |
| + Init(url, priority, delegate, context, cookie_store); |
| } |
| URLRequest::~URLRequest() { |
| @@ -284,6 +263,47 @@ |
| interceptor); |
| } |
| +void URLRequest::Init(const GURL& url, |
| + RequestPriority priority, |
| + Delegate* delegate, |
| + const URLRequestContext* context, |
| + CookieStore* cookie_store) { |
| + context_ = context; |
| + network_delegate_ = context->network_delegate(); |
| + net_log_ = BoundNetLog::Make(context->net_log(), NetLog::SOURCE_URL_REQUEST); |
| + url_chain_.push_back(url); |
| + method_ = "GET"; |
| + referrer_policy_ = CLEAR_REFERRER_ON_TRANSITION_FROM_SECURE_TO_INSECURE; |
| + load_flags_ = LOAD_NORMAL; |
| + delegate_ = delegate; |
| + is_pending_ = false; |
| + is_redirecting_ = false; |
| + redirect_limit_ = kMaxRedirects; |
| + priority_ = priority; |
| + calling_delegate_ = false; |
| + use_blocked_by_as_load_param_ =false; |
| + before_request_callback_ = base::Bind(&URLRequest::BeforeRequestComplete, |
| + base::Unretained(this)); |
| + has_notified_completion_ = false; |
| + received_response_content_length_ = 0; |
| + creation_time_ = base::TimeTicks::Now(); |
| + notified_before_network_start_ = false; |
| + |
| + SIMPLE_STATS_COUNTER("URLRequestCount"); |
| + |
| + // Sanity check out environment. |
| + DCHECK(base::MessageLoop::current()) |
| + << "The current base::MessageLoop must exist"; |
| + |
| + CHECK(context); |
| + context->url_requests()->insert(this); |
| + cookie_store_ = cookie_store; |
| + if (cookie_store_ == NULL) |
| + cookie_store_ = context->cookie_store(); |
| + |
| + net_log_.BeginEvent(NetLog::TYPE_REQUEST_ALIVE); |
| +} |
| + |
| void URLRequest::EnableChunkedUpload() { |
| DCHECK(!upload_data_stream_ || upload_data_stream_->is_chunked()); |
| if (!upload_data_stream_) { |
| @@ -1242,4 +1262,8 @@ |
| return stack_trace_.get(); |
| } |
| +CookieStore* URLRequest::cookie_store() const { |
|
mmenke
2014/03/11 14:45:49
Definition order should match declaration order.
tburkard
2014/03/12 14:37:27
Done.
|
| + return cookie_store_; |
| +} |
| + |
| } // namespace net |