1// Copyright 2014 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.
4
5#ifndef CONTENT_BROWSER_FRAME_HOST_NAVIGATION_REQUEST_INFO_H_
6#define CONTENT_BROWSER_FRAME_HOST_NAVIGATION_REQUEST_INFO_H_
7
8#include <string>
9
10#include "base/basictypes.h"
11#include "content/common/frame_messages.h"
12#include "content/public/common/referrer.h"
13#include "url/gurl.h"
14
15namespace content {
16
17// A struct to hold the parameters needed to start a navigation request in
18// ResourceDispatcherHost. It is initialized on the UI thread, and then passed
19// to the IO thread by a NavigationRequest object.
20struct NavigationRequestInfo {
21  NavigationRequestInfo(const FrameHostMsg_BeginNavigation_Params& params);
22
23  const FrameHostMsg_BeginNavigation_Params navigation_params;
24
25  // ---------------------------------------------------------------------------
26  // The following parameters should be filled in by RenderFrameHostManager
27  // before the navigation request is sent to the ResourceDispatcherHost.
28
29  // Usually the URL of the document in the top-level window, which may be
30  // checked by the third-party cookie blocking policy.
31  GURL first_party_for_cookies;
32  bool is_main_frame;
33  bool parent_is_main_frame;
34};
35
36}  // namespace content
37
38#endif  // CONTENT_BROWSER_FRAME_HOST_NAVIGATION_REQUEST_INFO_H_
39