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 file.
5 #ifndef CONTENT_CHILD_REQUEST_EXTRA_DATA_H_
6 #define CONTENT_CHILD_REQUEST_EXTRA_DATA_H_
8 #include "base/compiler_specific.h"
9 #include "content/common/content_export.h"
10 #include "content/public/common/page_transition_types.h"
11 #include "webkit/child/weburlrequest_extradata_impl.h"
15 // The RenderView stores an instance of this class in the "extra data" of each
16 // ResourceRequest (see RenderView::willSendRequest).
17 class CONTENT_EXPORT RequestExtraData
18 : NON_EXPORTED_BASE(public webkit_glue::WebURLRequestExtraDataImpl
) {
20 RequestExtraData(WebKit::WebReferrerPolicy referrer_policy
,
21 const WebKit::WebString
& custom_user_agent
,
22 bool was_after_preconnect_request
,
25 const GURL
& frame_origin
,
26 bool parent_is_main_frame
,
27 int64 parent_frame_id
,
29 PageTransition transition_type
,
30 int transferred_request_child_id
,
31 int transferred_request_request_id
);
32 virtual ~RequestExtraData();
34 bool is_main_frame() const { return is_main_frame_
; }
35 int64
frame_id() const { return frame_id_
; }
36 GURL
frame_origin() const { return frame_origin_
; }
37 bool parent_is_main_frame() const { return parent_is_main_frame_
; }
38 int64
parent_frame_id() const { return parent_frame_id_
; }
39 bool allow_download() const { return allow_download_
; }
40 PageTransition
transition_type() const { return transition_type_
; }
41 int transferred_request_child_id() const {
42 return transferred_request_child_id_
;
44 int transferred_request_request_id() const {
45 return transferred_request_request_id_
;
52 bool parent_is_main_frame_
;
53 int64 parent_frame_id_
;
55 PageTransition transition_type_
;
56 int transferred_request_child_id_
;
57 int transferred_request_request_id_
;
59 DISALLOW_COPY_AND_ASSIGN(RequestExtraData
);
62 } // namespace content
64 #endif // CONTENT_CHILD_REQUEST_EXTRA_DATA_H_