Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4)

Side by Side Diff: headless/public/util/generic_url_request_job.h

Issue 2822473002: Add GetPostData and ID to headless::Request plus fix GetFrameTreeNodeId (Closed)
Patch Set: Add a test for GetPostData Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | headless/public/util/generic_url_request_job.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 #ifndef HEADLESS_PUBLIC_UTIL_GENERIC_URL_REQUEST_JOB_H_ 5 #ifndef HEADLESS_PUBLIC_UTIL_GENERIC_URL_REQUEST_JOB_H_
6 #define HEADLESS_PUBLIC_UTIL_GENERIC_URL_REQUEST_JOB_H_ 6 #define HEADLESS_PUBLIC_UTIL_GENERIC_URL_REQUEST_JOB_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 #include <functional> 9 #include <functional>
10 #include <memory> 10 #include <memory>
(...skipping 18 matching lines...) Expand all
29 class ResourceRequestInfo; 29 class ResourceRequestInfo;
30 } // namespace content 30 } // namespace content
31 31
32 namespace headless { 32 namespace headless {
33 33
34 class URLRequestDispatcher; 34 class URLRequestDispatcher;
35 35
36 // Wrapper around net::URLRequest with helpers to access select metadata. 36 // Wrapper around net::URLRequest with helpers to access select metadata.
37 class Request { 37 class Request {
38 public: 38 public:
39 virtual uint64_t GetRequestId() const = 0;
40
39 virtual const net::URLRequest* GetURLRequest() const = 0; 41 virtual const net::URLRequest* GetURLRequest() const = 0;
40 42
41 // The frame from which the request came from. 43 // The frame from which the request came from.
42 virtual int GetFrameTreeNodeId() const = 0; 44 virtual int GetFrameTreeNodeId() const = 0;
43 45
44 // The devtools agent host id for the page where the request came from. 46 // The devtools agent host id for the page where the request came from.
45 virtual std::string GetDevToolsAgentHostId() const = 0; 47 virtual std::string GetDevToolsAgentHostId() const = 0;
46 48
49 // Gets the POST data, if any, from the net::URLRequest.
50 virtual std::string GetPostData() const = 0;
51
47 enum class ResourceType { 52 enum class ResourceType {
48 MAIN_FRAME = 0, 53 MAIN_FRAME = 0,
49 SUB_FRAME = 1, 54 SUB_FRAME = 1,
50 STYLESHEET = 2, 55 STYLESHEET = 2,
51 SCRIPT = 3, 56 SCRIPT = 3,
52 IMAGE = 4, 57 IMAGE = 4,
53 FONT_RESOURCE = 5, 58 FONT_RESOURCE = 5,
54 SUB_RESOURCE = 6, 59 SUB_RESOURCE = 6,
55 OBJECT = 7, 60 OBJECT = 7,
56 MEDIA = 8, 61 MEDIA = 8,
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 // URLFetcher::FetchResultListener implementation: 176 // URLFetcher::FetchResultListener implementation:
172 void OnFetchStartError(net::Error error) override; 177 void OnFetchStartError(net::Error error) override;
173 void OnFetchComplete(const GURL& final_url, 178 void OnFetchComplete(const GURL& final_url,
174 int http_response_code, 179 int http_response_code,
175 scoped_refptr<net::HttpResponseHeaders> response_headers, 180 scoped_refptr<net::HttpResponseHeaders> response_headers,
176 const char* body, 181 const char* body,
177 size_t body_size) override; 182 size_t body_size) override;
178 183
179 protected: 184 protected:
180 // Request implementation: 185 // Request implementation:
186 uint64_t GetRequestId() const override;
181 const net::URLRequest* GetURLRequest() const override; 187 const net::URLRequest* GetURLRequest() const override;
182 int GetFrameTreeNodeId() const override; 188 int GetFrameTreeNodeId() const override;
183 std::string GetDevToolsAgentHostId() const override; 189 std::string GetDevToolsAgentHostId() const override;
190 std::string GetPostData() const override;
184 ResourceType GetResourceType() const override; 191 ResourceType GetResourceType() const override;
185 192
186 // PendingRequest implementation: 193 // PendingRequest implementation:
187 const Request* GetRequest() const override; 194 const Request* GetRequest() const override;
188 void AllowRequest() override; 195 void AllowRequest() override;
189 void BlockRequest(net::Error error) override; 196 void BlockRequest(net::Error error) override;
190 void ModifyRequest(const GURL& url, 197 void ModifyRequest(const GURL& url,
191 const std::string& method, 198 const std::string& method,
192 const std::string& post_data, 199 const std::string& post_data,
193 const net::HttpRequestHeaders& request_headers) override; 200 const net::HttpRequestHeaders& request_headers) override;
(...skipping 14 matching lines...) Expand all
208 scoped_refptr<net::HttpResponseHeaders> response_headers_; 215 scoped_refptr<net::HttpResponseHeaders> response_headers_;
209 scoped_refptr<base::SingleThreadTaskRunner> origin_task_runner_; 216 scoped_refptr<base::SingleThreadTaskRunner> origin_task_runner_;
210 std::unique_ptr<MockResponseData> mock_response_; 217 std::unique_ptr<MockResponseData> mock_response_;
211 Delegate* delegate_; // Not owned. 218 Delegate* delegate_; // Not owned.
212 const content::ResourceRequestInfo* request_resource_info_; // Not owned. 219 const content::ResourceRequestInfo* request_resource_info_; // Not owned.
213 const char* body_ = nullptr; // Not owned. 220 const char* body_ = nullptr; // Not owned.
214 int http_response_code_ = 0; 221 int http_response_code_ = 0;
215 size_t body_size_ = 0; 222 size_t body_size_ = 0;
216 size_t read_offset_ = 0; 223 size_t read_offset_ = 0;
217 base::TimeTicks response_time_; 224 base::TimeTicks response_time_;
225 const uint64_t request_id_;
226 static uint64_t next_request_id_;
218 227
219 base::WeakPtrFactory<GenericURLRequestJob> weak_factory_; 228 base::WeakPtrFactory<GenericURLRequestJob> weak_factory_;
220 229
221 DISALLOW_COPY_AND_ASSIGN(GenericURLRequestJob); 230 DISALLOW_COPY_AND_ASSIGN(GenericURLRequestJob);
222 }; 231 };
223 232
224 } // namespace headless 233 } // namespace headless
225 234
226 #endif // HEADLESS_PUBLIC_UTIL_GENERIC_URL_REQUEST_JOB_H_ 235 #endif // HEADLESS_PUBLIC_UTIL_GENERIC_URL_REQUEST_JOB_H_
OLDNEW
« no previous file with comments | « no previous file | headless/public/util/generic_url_request_job.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698