• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef CONTENT_SHELL_BROWSER_SHELL_NETWORK_DELEGATE_H_
6 #define CONTENT_SHELL_BROWSER_SHELL_NETWORK_DELEGATE_H_
7 
8 #include "base/basictypes.h"
9 #include "base/compiler_specific.h"
10 #include "net/base/network_delegate.h"
11 
12 namespace content {
13 
14 class ShellNetworkDelegate : public net::NetworkDelegate {
15  public:
16   ShellNetworkDelegate();
17   virtual ~ShellNetworkDelegate();
18 
19   static void SetAcceptAllCookies(bool accept);
20 
21  private:
22   // net::NetworkDelegate implementation.
23   virtual int OnBeforeURLRequest(net::URLRequest* request,
24                                  const net::CompletionCallback& callback,
25                                  GURL* new_url) OVERRIDE;
26   virtual int OnBeforeSendHeaders(net::URLRequest* request,
27                                   const net::CompletionCallback& callback,
28                                   net::HttpRequestHeaders* headers) OVERRIDE;
29   virtual void OnSendHeaders(net::URLRequest* request,
30                              const net::HttpRequestHeaders& headers) OVERRIDE;
31   virtual int OnHeadersReceived(
32       net::URLRequest* request,
33       const net::CompletionCallback& callback,
34       const net::HttpResponseHeaders* original_response_headers,
35       scoped_refptr<net::HttpResponseHeaders>* override_response_headers,
36       GURL* allowed_unsafe_redirect_url) OVERRIDE;
37   virtual void OnBeforeRedirect(net::URLRequest* request,
38                                 const GURL& new_location) OVERRIDE;
39   virtual void OnResponseStarted(net::URLRequest* request) OVERRIDE;
40   virtual void OnRawBytesRead(const net::URLRequest& request,
41                               int bytes_read) OVERRIDE;
42   virtual void OnCompleted(net::URLRequest* request, bool started) OVERRIDE;
43   virtual void OnURLRequestDestroyed(net::URLRequest* request) OVERRIDE;
44   virtual void OnPACScriptError(int line_number,
45                                 const base::string16& error) OVERRIDE;
46   virtual AuthRequiredResponse OnAuthRequired(
47       net::URLRequest* request,
48       const net::AuthChallengeInfo& auth_info,
49       const AuthCallback& callback,
50       net::AuthCredentials* credentials) OVERRIDE;
51   virtual bool OnCanGetCookies(const net::URLRequest& request,
52                                const net::CookieList& cookie_list) OVERRIDE;
53   virtual bool OnCanSetCookie(const net::URLRequest& request,
54                               const std::string& cookie_line,
55                               net::CookieOptions* options) OVERRIDE;
56   virtual bool OnCanAccessFile(const net::URLRequest& request,
57                                const base::FilePath& path) const OVERRIDE;
58   virtual bool OnCanThrottleRequest(
59       const net::URLRequest& request) const OVERRIDE;
60   virtual int OnBeforeSocketStreamConnect(
61       net::SocketStream* stream,
62       const net::CompletionCallback& callback) OVERRIDE;
63 
64   DISALLOW_COPY_AND_ASSIGN(ShellNetworkDelegate);
65 };
66 
67 }  // namespace content
68 
69 #endif  // CONTENT_SHELL_BROWSER_SHELL_NETWORK_DELEGATE_H_
70