network_delegate.h 3.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. // Copyright (c) 2012 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-CHROMIUM file.
  4. #ifndef BRIGHTRAY_BROWSER_NETWORK_DELEGATE_H_
  5. #define BRIGHTRAY_BROWSER_NETWORK_DELEGATE_H_
  6. #include <string>
  7. #include <vector>
  8. #include "net/base/network_delegate.h"
  9. namespace brightray {
  10. class NetworkDelegate : public net::NetworkDelegate {
  11. public:
  12. NetworkDelegate();
  13. virtual ~NetworkDelegate();
  14. protected:
  15. int OnBeforeURLRequest(net::URLRequest* request,
  16. const net::CompletionCallback& callback,
  17. GURL* new_url) override;
  18. int OnBeforeStartTransaction(net::URLRequest* request,
  19. const net::CompletionCallback& callback,
  20. net::HttpRequestHeaders* headers) override;
  21. void OnBeforeSendHeaders(net::URLRequest* request,
  22. const net::ProxyInfo& proxy_info,
  23. const net::ProxyRetryInfoMap& proxy_retry_info,
  24. net::HttpRequestHeaders* headers) override;
  25. void OnStartTransaction(net::URLRequest* request,
  26. const net::HttpRequestHeaders& headers) override;
  27. int OnHeadersReceived(
  28. net::URLRequest* request,
  29. const net::CompletionCallback& callback,
  30. const net::HttpResponseHeaders* original_response_headers,
  31. scoped_refptr<net::HttpResponseHeaders>* override_response_headers,
  32. GURL* allowed_unsafe_redirect_url) override;
  33. void OnBeforeRedirect(net::URLRequest* request,
  34. const GURL& new_location) override;
  35. void OnResponseStarted(net::URLRequest* request) override;
  36. void OnNetworkBytesReceived(net::URLRequest* request,
  37. int64_t bytes_read) override;
  38. void OnNetworkBytesSent(net::URLRequest* request,
  39. int64_t bytes_sent) override;
  40. void OnCompleted(net::URLRequest* request, bool started) override;
  41. void OnURLRequestDestroyed(net::URLRequest* request) override;
  42. void OnPACScriptError(int line_number,
  43. const base::string16& error) override;
  44. AuthRequiredResponse OnAuthRequired(
  45. net::URLRequest* request,
  46. const net::AuthChallengeInfo& auth_info,
  47. const AuthCallback& callback,
  48. net::AuthCredentials* credentials) override;
  49. bool OnCanGetCookies(const net::URLRequest& request,
  50. const net::CookieList& cookie_list) override;
  51. bool OnCanSetCookie(const net::URLRequest& request,
  52. const std::string& cookie_line,
  53. net::CookieOptions* options) override;
  54. bool OnCanAccessFile(const net::URLRequest& request,
  55. const base::FilePath& path) const override;
  56. bool OnCanEnablePrivacyMode(
  57. const GURL& url,
  58. const GURL& first_party_for_cookies) const override;
  59. bool OnAreExperimentalCookieFeaturesEnabled() const override;
  60. bool OnCancelURLRequestWithPolicyViolatingReferrerHeader(
  61. const net::URLRequest& request,
  62. const GURL& target_url,
  63. const GURL& referrer_url) const override;
  64. private:
  65. std::vector<std::string> ignore_connections_limit_domains_;
  66. DISALLOW_COPY_AND_ASSIGN(NetworkDelegate);
  67. };
  68. } // namespace brightray
  69. #endif // BRIGHTRAY_BROWSER_NETWORK_DELEGATE_H_