OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 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 // This file contains URLFetcher, a wrapper around URLRequest that handles | 5 // This file contains URLFetcher, a wrapper around URLRequest that handles |
6 // low-level details like thread safety, ref counting, and incremental buffer | 6 // low-level details like thread safety, ref counting, and incremental buffer |
7 // reading. This is useful for callers who simply want to get the data from a | 7 // reading. This is useful for callers who simply want to get the data from a |
8 // URL and don't care about all the nitty-gritty details. | 8 // URL and don't care about all the nitty-gritty details. |
9 // | 9 // |
10 // NOTE(willchan): Only one "IO" thread is supported for URLFetcher. This is a | 10 // NOTE(willchan): Only one "IO" thread is supported for URLFetcher. This is a |
(...skipping 20 matching lines...) Expand all Loading... |
31 // |url| is the URL to send the request to. | 31 // |url| is the URL to send the request to. |
32 // |request_type| is the type of request to make. | 32 // |request_type| is the type of request to make. |
33 // |d| the object that will receive the callback on fetch completion. | 33 // |d| the object that will receive the callback on fetch completion. |
34 URLFetcherImpl(const GURL& url, | 34 URLFetcherImpl(const GURL& url, |
35 RequestType request_type, | 35 RequestType request_type, |
36 URLFetcherDelegate* d); | 36 URLFetcherDelegate* d); |
37 virtual ~URLFetcherImpl(); | 37 virtual ~URLFetcherImpl(); |
38 | 38 |
39 // URLFetcher implementation: | 39 // URLFetcher implementation: |
40 virtual void SetUploadData(const std::string& upload_content_type, | 40 virtual void SetUploadData(const std::string& upload_content_type, |
41 const std::string& upload_content) OVERRIDE; | 41 const std::string& upload_content) override; |
42 virtual void SetUploadFilePath( | 42 virtual void SetUploadFilePath( |
43 const std::string& upload_content_type, | 43 const std::string& upload_content_type, |
44 const base::FilePath& file_path, | 44 const base::FilePath& file_path, |
45 uint64 range_offset, | 45 uint64 range_offset, |
46 uint64 range_length, | 46 uint64 range_length, |
47 scoped_refptr<base::TaskRunner> file_task_runner) OVERRIDE; | 47 scoped_refptr<base::TaskRunner> file_task_runner) override; |
48 virtual void SetChunkedUpload( | 48 virtual void SetChunkedUpload( |
49 const std::string& upload_content_type) OVERRIDE; | 49 const std::string& upload_content_type) override; |
50 virtual void AppendChunkToUpload(const std::string& data, | 50 virtual void AppendChunkToUpload(const std::string& data, |
51 bool is_last_chunk) OVERRIDE; | 51 bool is_last_chunk) override; |
52 virtual void SetLoadFlags(int load_flags) OVERRIDE; | 52 virtual void SetLoadFlags(int load_flags) override; |
53 virtual int GetLoadFlags() const OVERRIDE; | 53 virtual int GetLoadFlags() const override; |
54 virtual void SetReferrer(const std::string& referrer) OVERRIDE; | 54 virtual void SetReferrer(const std::string& referrer) override; |
55 virtual void SetReferrerPolicy( | 55 virtual void SetReferrerPolicy( |
56 URLRequest::ReferrerPolicy referrer_policy) OVERRIDE; | 56 URLRequest::ReferrerPolicy referrer_policy) override; |
57 virtual void SetExtraRequestHeaders( | 57 virtual void SetExtraRequestHeaders( |
58 const std::string& extra_request_headers) OVERRIDE; | 58 const std::string& extra_request_headers) override; |
59 virtual void AddExtraRequestHeader(const std::string& header_line) OVERRIDE; | 59 virtual void AddExtraRequestHeader(const std::string& header_line) override; |
60 virtual void SetRequestContext( | 60 virtual void SetRequestContext( |
61 URLRequestContextGetter* request_context_getter) OVERRIDE; | 61 URLRequestContextGetter* request_context_getter) override; |
62 virtual void SetFirstPartyForCookies( | 62 virtual void SetFirstPartyForCookies( |
63 const GURL& first_party_for_cookies) OVERRIDE; | 63 const GURL& first_party_for_cookies) override; |
64 virtual void SetURLRequestUserData( | 64 virtual void SetURLRequestUserData( |
65 const void* key, | 65 const void* key, |
66 const CreateDataCallback& create_data_callback) OVERRIDE; | 66 const CreateDataCallback& create_data_callback) override; |
67 virtual void SetStopOnRedirect(bool stop_on_redirect) OVERRIDE; | 67 virtual void SetStopOnRedirect(bool stop_on_redirect) override; |
68 virtual void SetAutomaticallyRetryOn5xx(bool retry) OVERRIDE; | 68 virtual void SetAutomaticallyRetryOn5xx(bool retry) override; |
69 virtual void SetMaxRetriesOn5xx(int max_retries) OVERRIDE; | 69 virtual void SetMaxRetriesOn5xx(int max_retries) override; |
70 virtual int GetMaxRetriesOn5xx() const OVERRIDE; | 70 virtual int GetMaxRetriesOn5xx() const override; |
71 virtual base::TimeDelta GetBackoffDelay() const OVERRIDE; | 71 virtual base::TimeDelta GetBackoffDelay() const override; |
72 virtual void SetAutomaticallyRetryOnNetworkChanges(int max_retries) OVERRIDE; | 72 virtual void SetAutomaticallyRetryOnNetworkChanges(int max_retries) override; |
73 virtual void SaveResponseToFileAtPath( | 73 virtual void SaveResponseToFileAtPath( |
74 const base::FilePath& file_path, | 74 const base::FilePath& file_path, |
75 scoped_refptr<base::SequencedTaskRunner> file_task_runner) OVERRIDE; | 75 scoped_refptr<base::SequencedTaskRunner> file_task_runner) override; |
76 virtual void SaveResponseToTemporaryFile( | 76 virtual void SaveResponseToTemporaryFile( |
77 scoped_refptr<base::SequencedTaskRunner> file_task_runner) OVERRIDE; | 77 scoped_refptr<base::SequencedTaskRunner> file_task_runner) override; |
78 virtual void SaveResponseWithWriter( | 78 virtual void SaveResponseWithWriter( |
79 scoped_ptr<URLFetcherResponseWriter> response_writer) OVERRIDE; | 79 scoped_ptr<URLFetcherResponseWriter> response_writer) override; |
80 virtual HttpResponseHeaders* GetResponseHeaders() const OVERRIDE; | 80 virtual HttpResponseHeaders* GetResponseHeaders() const override; |
81 virtual HostPortPair GetSocketAddress() const OVERRIDE; | 81 virtual HostPortPair GetSocketAddress() const override; |
82 virtual bool WasFetchedViaProxy() const OVERRIDE; | 82 virtual bool WasFetchedViaProxy() const override; |
83 virtual void Start() OVERRIDE; | 83 virtual void Start() override; |
84 virtual const GURL& GetOriginalURL() const OVERRIDE; | 84 virtual const GURL& GetOriginalURL() const override; |
85 virtual const GURL& GetURL() const OVERRIDE; | 85 virtual const GURL& GetURL() const override; |
86 virtual const URLRequestStatus& GetStatus() const OVERRIDE; | 86 virtual const URLRequestStatus& GetStatus() const override; |
87 virtual int GetResponseCode() const OVERRIDE; | 87 virtual int GetResponseCode() const override; |
88 virtual const ResponseCookies& GetCookies() const OVERRIDE; | 88 virtual const ResponseCookies& GetCookies() const override; |
89 virtual void ReceivedContentWasMalformed() OVERRIDE; | 89 virtual void ReceivedContentWasMalformed() override; |
90 virtual bool GetResponseAsString( | 90 virtual bool GetResponseAsString( |
91 std::string* out_response_string) const OVERRIDE; | 91 std::string* out_response_string) const override; |
92 virtual bool GetResponseAsFilePath( | 92 virtual bool GetResponseAsFilePath( |
93 bool take_ownership, | 93 bool take_ownership, |
94 base::FilePath* out_response_path) const OVERRIDE; | 94 base::FilePath* out_response_path) const override; |
95 | 95 |
96 static void CancelAll(); | 96 static void CancelAll(); |
97 | 97 |
98 static void SetEnableInterceptionForTests(bool enabled); | 98 static void SetEnableInterceptionForTests(bool enabled); |
99 static void SetIgnoreCertificateRequests(bool ignored); | 99 static void SetIgnoreCertificateRequests(bool ignored); |
100 | 100 |
101 // TODO(akalin): Make these private again once URLFetcher::Create() | 101 // TODO(akalin): Make these private again once URLFetcher::Create() |
102 // is in net/. | 102 // is in net/. |
103 | 103 |
104 static URLFetcherFactory* factory(); | 104 static URLFetcherFactory* factory(); |
(...skipping 17 matching lines...) Expand all Loading... |
122 static int GetNumFetcherCores(); | 122 static int GetNumFetcherCores(); |
123 | 123 |
124 const scoped_refptr<URLFetcherCore> core_; | 124 const scoped_refptr<URLFetcherCore> core_; |
125 | 125 |
126 DISALLOW_COPY_AND_ASSIGN(URLFetcherImpl); | 126 DISALLOW_COPY_AND_ASSIGN(URLFetcherImpl); |
127 }; | 127 }; |
128 | 128 |
129 } // namespace net | 129 } // namespace net |
130 | 130 |
131 #endif // NET_URL_REQUEST_URL_FETCHER_IMPL_H_ | 131 #endif // NET_URL_REQUEST_URL_FETCHER_IMPL_H_ |
OLD | NEW |