OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 #include "content/browser/frame_host/frame_navigation_entry.h" | 5 #include "content/browser/frame_host/frame_navigation_entry.h" |
6 | 6 |
7 namespace content { | 7 namespace content { |
8 | 8 |
9 FrameNavigationEntry::FrameNavigationEntry(int frame_tree_node_id) | 9 FrameNavigationEntry::FrameNavigationEntry(int frame_tree_node_id) |
10 : frame_tree_node_id_(frame_tree_node_id), | 10 : frame_tree_node_id_(frame_tree_node_id), |
11 item_sequence_number_(-1), | 11 item_sequence_number_(-1), |
12 document_sequence_number_(-1) { | 12 document_sequence_number_(-1) { |
13 } | 13 } |
14 | 14 |
15 FrameNavigationEntry::FrameNavigationEntry(int frame_tree_node_id, | 15 FrameNavigationEntry::FrameNavigationEntry(int frame_tree_node_id, |
| 16 const std::string& frame_unique_name, |
16 int64 item_sequence_number, | 17 int64 item_sequence_number, |
17 int64 document_sequence_number, | 18 int64 document_sequence_number, |
18 SiteInstanceImpl* site_instance, | 19 SiteInstanceImpl* site_instance, |
19 const GURL& url, | 20 const GURL& url, |
20 const Referrer& referrer) | 21 const Referrer& referrer) |
21 : frame_tree_node_id_(frame_tree_node_id), | 22 : frame_tree_node_id_(frame_tree_node_id), |
| 23 frame_unique_name_(frame_unique_name), |
22 item_sequence_number_(item_sequence_number), | 24 item_sequence_number_(item_sequence_number), |
23 document_sequence_number_(document_sequence_number), | 25 document_sequence_number_(document_sequence_number), |
24 site_instance_(site_instance), | 26 site_instance_(site_instance), |
25 url_(url), | 27 url_(url), |
26 referrer_(referrer) { | 28 referrer_(referrer) { |
27 } | 29 } |
28 | 30 |
29 FrameNavigationEntry::~FrameNavigationEntry() { | 31 FrameNavigationEntry::~FrameNavigationEntry() { |
30 } | 32 } |
31 | 33 |
32 FrameNavigationEntry* FrameNavigationEntry::Clone() const { | 34 FrameNavigationEntry* FrameNavigationEntry::Clone() const { |
33 FrameNavigationEntry* copy = new FrameNavigationEntry(frame_tree_node_id_); | 35 FrameNavigationEntry* copy = new FrameNavigationEntry(frame_tree_node_id_); |
34 copy->UpdateEntry(item_sequence_number_, document_sequence_number_, | 36 copy->UpdateEntry(frame_unique_name_, item_sequence_number_, |
35 site_instance_.get(), url_, referrer_, page_state_); | 37 document_sequence_number_, site_instance_.get(), url_, |
| 38 referrer_, page_state_); |
36 return copy; | 39 return copy; |
37 } | 40 } |
38 | 41 |
39 void FrameNavigationEntry::UpdateEntry(int64 item_sequence_number, | 42 void FrameNavigationEntry::UpdateEntry(const std::string& frame_unique_name, |
| 43 int64 item_sequence_number, |
40 int64 document_sequence_number, | 44 int64 document_sequence_number, |
41 SiteInstanceImpl* site_instance, | 45 SiteInstanceImpl* site_instance, |
42 const GURL& url, | 46 const GURL& url, |
43 const Referrer& referrer, | 47 const Referrer& referrer, |
44 const PageState& page_state) { | 48 const PageState& page_state) { |
| 49 frame_unique_name_ = frame_unique_name; |
45 item_sequence_number_ = item_sequence_number; | 50 item_sequence_number_ = item_sequence_number; |
46 document_sequence_number_ = document_sequence_number; | 51 document_sequence_number_ = document_sequence_number; |
47 site_instance_ = site_instance; | 52 site_instance_ = site_instance; |
48 url_ = url; | 53 url_ = url; |
49 referrer_ = referrer; | 54 referrer_ = referrer; |
50 page_state_ = page_state; | 55 page_state_ = page_state; |
51 } | 56 } |
52 | 57 |
53 void FrameNavigationEntry::set_item_sequence_number( | 58 void FrameNavigationEntry::set_item_sequence_number( |
54 int64 item_sequence_number) { | 59 int64 item_sequence_number) { |
55 // Once assigned, the item sequence number shouldn't change. | 60 // Once assigned, the item sequence number shouldn't change. |
56 DCHECK(item_sequence_number_ == -1 || | 61 DCHECK(item_sequence_number_ == -1 || |
57 item_sequence_number_ == item_sequence_number); | 62 item_sequence_number_ == item_sequence_number); |
58 item_sequence_number_ = item_sequence_number; | 63 item_sequence_number_ = item_sequence_number; |
59 } | 64 } |
60 | 65 |
61 void FrameNavigationEntry::set_document_sequence_number( | 66 void FrameNavigationEntry::set_document_sequence_number( |
62 int64 document_sequence_number) { | 67 int64 document_sequence_number) { |
63 // Once assigned, the document sequence number shouldn't change. | 68 // Once assigned, the document sequence number shouldn't change. |
64 DCHECK(document_sequence_number_ == -1 || | 69 DCHECK(document_sequence_number_ == -1 || |
65 document_sequence_number_ == document_sequence_number); | 70 document_sequence_number_ == document_sequence_number); |
66 document_sequence_number_ = document_sequence_number; | 71 document_sequence_number_ = document_sequence_number; |
67 } | 72 } |
68 | 73 |
69 } // namespace content | 74 } // namespace content |
OLD | NEW |