• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2013 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 COMPONENTS_NAVIGATION_INTERCEPTION_NAVIGATION_PARAMS_H_
6 #define COMPONENTS_NAVIGATION_INTERCEPTION_NAVIGATION_PARAMS_H_
7 
8 #include "content/public/common/page_transition_types.h"
9 #include "content/public/common/page_transition_types.h"
10 #include "content/public/common/referrer.h"
11 #include "url/gurl.h"
12 
13 namespace navigation_interception {
14 
15 class NavigationParams {
16  public:
17   NavigationParams(const GURL& url,
18                    const content::Referrer& referrer,
19                    bool has_user_gesture,
20                    bool is_post,
21                    content::PageTransition page_transition_type,
22                    bool is_redirect);
23   NavigationParams(const NavigationParams& other);
24   void operator=(const NavigationParams& rhs);
25 
url()26   const GURL& url() const { return url_; }
url()27   GURL& url() { return url_; }
referrer()28   const content::Referrer& referrer() const { return referrer_; }
has_user_gesture()29   bool has_user_gesture() const { return has_user_gesture_; }
is_post()30   bool is_post() const { return is_post_; }
transition_type()31   content::PageTransition transition_type() const { return transition_type_; }
is_redirect()32   bool is_redirect() const { return is_redirect_; }
33 
34  private:
35   void Assign(const NavigationParams& other);
36 
37   GURL url_;
38   content::Referrer referrer_;
39   bool has_user_gesture_;
40   bool is_post_;
41   content::PageTransition transition_type_;
42   bool is_redirect_;
43 };
44 
45 }  // namespace navigation_interception
46 
47 #endif  // COMPONENTS_NAVIGATION_INTERCEPTION_NAVIGATION_PARAMS_H_
48