blob: 485f5bb70f1100e5c52d0c3acd43fdf1e0f0dc91 [file] [log] [blame]
[email protected]9045b8822012-01-13 20:35:351// Copyright (c) 2012 The Chromium Authors. All rights reserved.
[email protected]0651b812011-02-24 00:22:502// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "net/base/network_delegate.h"
6
7#include "base/logging.h"
[email protected]9c8ae8c2012-03-09 13:13:358#include "net/base/load_flags.h"
9#include "net/url_request/url_request.h"
[email protected]0651b812011-02-24 00:22:5010
11namespace net {
12
[email protected]084262c2011-12-01 21:12:4713int NetworkDelegate::NotifyBeforeURLRequest(
14 URLRequest* request, const CompletionCallback& callback,
15 GURL* new_url) {
[email protected]0651b812011-02-24 00:22:5016 DCHECK(CalledOnValidThread());
17 DCHECK(request);
[email protected]084262c2011-12-01 21:12:4718 DCHECK(!callback.is_null());
[email protected]4c76d7c2011-04-15 19:14:1219 return OnBeforeURLRequest(request, callback, new_url);
[email protected]0651b812011-02-24 00:22:5020}
21
[email protected]084262c2011-12-01 21:12:4722int NetworkDelegate::NotifyBeforeSendHeaders(
23 URLRequest* request, const CompletionCallback& callback,
24 HttpRequestHeaders* headers) {
[email protected]0651b812011-02-24 00:22:5025 DCHECK(CalledOnValidThread());
26 DCHECK(headers);
[email protected]084262c2011-12-01 21:12:4727 DCHECK(!callback.is_null());
[email protected]636eccd2011-06-28 12:28:0128 return OnBeforeSendHeaders(request, callback, headers);
[email protected]0651b812011-02-24 00:22:5029}
30
[email protected]5796dc942011-07-14 19:26:1031void NetworkDelegate::NotifySendHeaders(URLRequest* request,
32 const HttpRequestHeaders& headers) {
[email protected]82b42302011-04-20 16:28:1633 DCHECK(CalledOnValidThread());
[email protected]5796dc942011-07-14 19:26:1034 OnSendHeaders(request, headers);
[email protected]82b42302011-04-20 16:28:1635}
36
[email protected]ea8141e2011-10-05 13:12:5137int NetworkDelegate::NotifyHeadersReceived(
38 URLRequest* request,
[email protected]084262c2011-12-01 21:12:4739 const CompletionCallback& callback,
[email protected]507af8f2012-10-20 00:42:3240 const HttpResponseHeaders* original_response_headers,
[email protected]ea8141e2011-10-05 13:12:5141 scoped_refptr<HttpResponseHeaders>* override_response_headers) {
42 DCHECK(CalledOnValidThread());
43 DCHECK(original_response_headers);
[email protected]084262c2011-12-01 21:12:4744 DCHECK(!callback.is_null());
[email protected]ea8141e2011-10-05 13:12:5145 return OnHeadersReceived(request, callback, original_response_headers,
46 override_response_headers);
47}
48
[email protected]0651b812011-02-24 00:22:5049void NetworkDelegate::NotifyResponseStarted(URLRequest* request) {
50 DCHECK(CalledOnValidThread());
51 DCHECK(request);
52 OnResponseStarted(request);
53}
54
[email protected]8523ba52011-05-22 19:00:5855void NetworkDelegate::NotifyRawBytesRead(const URLRequest& request,
56 int bytes_read) {
57 DCHECK(CalledOnValidThread());
58 OnRawBytesRead(request, bytes_read);
59}
60
[email protected]31b2e5f2011-04-20 16:58:3261void NetworkDelegate::NotifyBeforeRedirect(URLRequest* request,
62 const GURL& new_location) {
63 DCHECK(CalledOnValidThread());
64 DCHECK(request);
65 OnBeforeRedirect(request, new_location);
66}
67
[email protected]9045b8822012-01-13 20:35:3568void NetworkDelegate::NotifyCompleted(URLRequest* request, bool started) {
[email protected]0651b812011-02-24 00:22:5069 DCHECK(CalledOnValidThread());
70 DCHECK(request);
[email protected]9045b8822012-01-13 20:35:3571 OnCompleted(request, started);
[email protected]0651b812011-02-24 00:22:5072}
73
[email protected]4875ba12011-03-30 22:31:5174void NetworkDelegate::NotifyURLRequestDestroyed(URLRequest* request) {
[email protected]5aa20132011-04-27 23:11:3475 DCHECK(CalledOnValidThread());
[email protected]4875ba12011-03-30 22:31:5176 DCHECK(request);
[email protected]5aa20132011-04-27 23:11:3477 OnURLRequestDestroyed(request);
78}
79
[email protected]82a37672011-05-03 12:02:4180void NetworkDelegate::NotifyPACScriptError(int line_number,
[email protected]42cba2fb2013-03-29 19:58:5781 const base::string16& error) {
[email protected]82a37672011-05-03 12:02:4182 DCHECK(CalledOnValidThread());
83 OnPACScriptError(line_number, error);
84}
85
[email protected]c2911d72011-10-03 22:16:3686NetworkDelegate::AuthRequiredResponse NetworkDelegate::NotifyAuthRequired(
87 URLRequest* request,
88 const AuthChallengeInfo& auth_info,
89 const AuthCallback& callback,
90 AuthCredentials* credentials) {
[email protected]7efc582d2011-08-03 20:46:3591 DCHECK(CalledOnValidThread());
[email protected]c2911d72011-10-03 22:16:3692 return OnAuthRequired(request, auth_info, callback, credentials);
[email protected]7efc582d2011-08-03 20:46:3593}
94
[email protected]4c219e22012-05-05 19:41:0495bool NetworkDelegate::CanGetCookies(const URLRequest& request,
96 const CookieList& cookie_list) {
[email protected]9c8ae8c2012-03-09 13:13:3597 DCHECK(CalledOnValidThread());
[email protected]4c219e22012-05-05 19:41:0498 DCHECK(!(request.load_flags() & net::LOAD_DO_NOT_SEND_COOKIES));
99 return OnCanGetCookies(request, cookie_list);
[email protected]9c8ae8c2012-03-09 13:13:35100}
101
[email protected]f33e6872013-05-07 07:00:37102bool NetworkDelegate::CanSetCookie(const URLRequest& request,
103 const std::string& cookie_line,
104 CookieOptions* options) {
[email protected]9c8ae8c2012-03-09 13:13:35105 DCHECK(CalledOnValidThread());
[email protected]4c219e22012-05-05 19:41:04106 DCHECK(!(request.load_flags() & net::LOAD_DO_NOT_SAVE_COOKIES));
107 return OnCanSetCookie(request, cookie_line, options);
108}
109
110bool NetworkDelegate::CanAccessFile(const URLRequest& request,
[email protected]a3ef4832013-02-02 05:12:33111 const base::FilePath& path) const {
[email protected]4c219e22012-05-05 19:41:04112 DCHECK(CalledOnValidThread());
113 return OnCanAccessFile(request, path);
[email protected]9c8ae8c2012-03-09 13:13:35114}
115
[email protected]a1d4ab072012-06-07 13:21:15116bool NetworkDelegate::CanThrottleRequest(const URLRequest& request) const {
117 DCHECK(CalledOnValidThread());
118 return OnCanThrottleRequest(request);
119}
120
[email protected]aa28181e2012-06-13 00:53:58121int NetworkDelegate::NotifyBeforeSocketStreamConnect(
122 SocketStream* socket,
123 const CompletionCallback& callback) {
124 DCHECK(CalledOnValidThread());
125 DCHECK(socket);
126 DCHECK(!callback.is_null());
127 return OnBeforeSocketStreamConnect(socket, callback);
128}
129
[email protected]a9e0d1412012-08-20 22:13:01130void NetworkDelegate::NotifyRequestWaitStateChange(const URLRequest& request,
131 RequestWaitState state) {
[email protected]5a07c192012-07-30 20:18:22132 DCHECK(CalledOnValidThread());
[email protected]a9e0d1412012-08-20 22:13:01133 OnRequestWaitStateChange(request, state);
[email protected]5a07c192012-07-30 20:18:22134}
135
[email protected]0651b812011-02-24 00:22:50136} // namespace net