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

Side by Side Diff: chrome/browser/renderer_host/resource_dispatcher_host_request_info.h

Issue 3165062: Deletable file references. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: '' Created 10 years, 3 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 CHROME_BROWSER_RENDERER_HOST_RESOURCE_DISPATCHER_HOST_REQUEST_INFO_H_ 5 #ifndef CHROME_BROWSER_RENDERER_HOST_RESOURCE_DISPATCHER_HOST_REQUEST_INFO_H_
6 #define CHROME_BROWSER_RENDERER_HOST_RESOURCE_DISPATCHER_HOST_REQUEST_INFO_H_ 6 #define CHROME_BROWSER_RENDERER_HOST_RESOURCE_DISPATCHER_HOST_REQUEST_INFO_H_
7 #pragma once 7 #pragma once
8 8
9 #include <string> 9 #include <string>
10 10
11 #include "base/basictypes.h" 11 #include "base/basictypes.h"
12 #include "base/time.h" 12 #include "base/time.h"
13 #include "chrome/common/child_process_info.h" 13 #include "chrome/common/child_process_info.h"
14 #include "net/base/load_states.h" 14 #include "net/base/load_states.h"
15 #include "net/url_request/url_request.h" 15 #include "net/url_request/url_request.h"
16 #include "webkit/glue/resource_type.h" 16 #include "webkit/glue/resource_type.h"
17 17
18 class CrossSiteResourceHandler; 18 class CrossSiteResourceHandler;
19 class LoginHandler; 19 class LoginHandler;
20 class ResourceDispatcherHost; 20 class ResourceDispatcherHost;
21 class ResourceHandler; 21 class ResourceHandler;
22 class SSLClientAuthHandler; 22 class SSLClientAuthHandler;
23 23
24 namespace webkit_blob {
25 class BlobData;
26 }
27
24 // Holds the data ResourceDispatcherHost associates with each request. 28 // Holds the data ResourceDispatcherHost associates with each request.
25 // Retrieve this data by calling ResourceDispatcherHost::InfoForRequest. 29 // Retrieve this data by calling ResourceDispatcherHost::InfoForRequest.
26 class ResourceDispatcherHostRequestInfo : public URLRequest::UserData { 30 class ResourceDispatcherHostRequestInfo : public URLRequest::UserData {
27 public: 31 public:
28 // This will take a reference to the handler. 32 // This will take a reference to the handler.
29 ResourceDispatcherHostRequestInfo( 33 ResourceDispatcherHostRequestInfo(
30 ResourceHandler* handler, 34 ResourceHandler* handler,
31 ChildProcessInfo::ProcessType process_type, 35 ChildProcessInfo::ProcessType process_type,
32 int child_id, 36 int child_id,
33 int route_id, 37 int route_id,
(...skipping 119 matching lines...) Expand 10 before | Expand all | Expand 10 after
153 } 157 }
154 158
155 // The approximate in-memory size (bytes) that we credited this request 159 // The approximate in-memory size (bytes) that we credited this request
156 // as consuming in |outstanding_requests_memory_cost_map_|. 160 // as consuming in |outstanding_requests_memory_cost_map_|.
157 int memory_cost() const { return memory_cost_; } 161 int memory_cost() const { return memory_cost_; }
158 void set_memory_cost(int cost) { memory_cost_ = cost; } 162 void set_memory_cost(int cost) { memory_cost_ = cost; }
159 163
160 int host_renderer_id() const { return host_renderer_id_; } 164 int host_renderer_id() const { return host_renderer_id_; }
161 int host_render_view_id() const { return host_render_view_id_; } 165 int host_render_view_id() const { return host_render_view_id_; }
162 166
167 // We hold a reference to the requested blob data to ensure it doesn't
168 // get finally released prior to the URLRequestJob being started.
169 webkit_blob::BlobData* requested_blob_data() const {
170 return requested_blob_data_.get();
171 }
172 void set_requested_blob_data(webkit_blob::BlobData* data);
173
163 private: 174 private:
164 friend class ResourceDispatcherHost; 175 friend class ResourceDispatcherHost;
165 176
166 // Request is temporarily not handling network data. Should be used only 177 // Request is temporarily not handling network data. Should be used only
167 // by the ResourceDispatcherHost, not the event handlers (accessors are 178 // by the ResourceDispatcherHost, not the event handlers (accessors are
168 // provided for consistency with the rest of the interface). 179 // provided for consistency with the rest of the interface).
169 bool is_paused() const { return is_paused_; } 180 bool is_paused() const { return is_paused_; }
170 void set_is_paused(bool paused) { is_paused_ = paused; } 181 void set_is_paused(bool paused) { is_paused_ = paused; }
171 182
172 // Whether we called OnResponseStarted for this request or not. Should be used 183 // Whether we called OnResponseStarted for this request or not. Should be used
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
207 std::string frame_origin_; 218 std::string frame_origin_;
208 std::string main_frame_origin_; 219 std::string main_frame_origin_;
209 ResourceType::Type resource_type_; 220 ResourceType::Type resource_type_;
210 bool replace_extension_localization_templates_; 221 bool replace_extension_localization_templates_;
211 net::LoadState last_load_state_; 222 net::LoadState last_load_state_;
212 uint64 upload_size_; 223 uint64 upload_size_;
213 uint64 last_upload_position_; 224 uint64 last_upload_position_;
214 base::TimeTicks last_upload_ticks_; 225 base::TimeTicks last_upload_ticks_;
215 bool waiting_for_upload_progress_ack_; 226 bool waiting_for_upload_progress_ack_;
216 int memory_cost_; 227 int memory_cost_;
228 scoped_refptr<webkit_blob::BlobData> requested_blob_data_;
217 229
218 // "Private" data accessible only to ResourceDispatcherHost (use the 230 // "Private" data accessible only to ResourceDispatcherHost (use the
219 // accessors above for consistency). 231 // accessors above for consistency).
220 bool is_paused_; 232 bool is_paused_;
221 bool called_on_response_started_; 233 bool called_on_response_started_;
222 bool has_started_reading_; 234 bool has_started_reading_;
223 int paused_read_bytes_; 235 int paused_read_bytes_;
224 236
225 // The following two members are specified if the request is initiated by 237 // The following two members are specified if the request is initiated by
226 // a plugin like Gears. 238 // a plugin like Gears.
227 239
228 // Contains the id of the host renderer. 240 // Contains the id of the host renderer.
229 int host_renderer_id_; 241 int host_renderer_id_;
230 // Contains the id of the host render view. 242 // Contains the id of the host render view.
231 int host_render_view_id_; 243 int host_render_view_id_;
232 244
233 DISALLOW_COPY_AND_ASSIGN(ResourceDispatcherHostRequestInfo); 245 DISALLOW_COPY_AND_ASSIGN(ResourceDispatcherHostRequestInfo);
234 }; 246 };
235 247
236 #endif // CHROME_BROWSER_RENDERER_HOST_RESOURCE_DISPATCHER_HOST_REQUEST_INFO_H_ 248 #endif // CHROME_BROWSER_RENDERER_HOST_RESOURCE_DISPATCHER_HOST_REQUEST_INFO_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698