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 #import "ios/web/navigation/navigation_manager_storage_builder.h" | 5 #import "ios/web/navigation/navigation_manager_storage_builder.h" |
6 | 6 |
7 #include "base/logging.h" | 7 #include "base/logging.h" |
8 #include "base/mac/foundation_util.h" | 8 #include "base/mac/foundation_util.h" |
9 #import "ios/web/navigation/crw_session_controller+private_constructors.h" | 9 #import "ios/web/navigation/crw_session_controller+private_constructors.h" |
10 #import "ios/web/navigation/crw_session_controller.h" | 10 #import "ios/web/navigation/crw_session_controller.h" |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
47 session_controller.currentNavigationIndex; | 47 session_controller.currentNavigationIndex; |
48 serialized_navigation_manager.previousNavigationIndex = | 48 serialized_navigation_manager.previousNavigationIndex = |
49 session_controller.previousNavigationIndex; | 49 session_controller.previousNavigationIndex; |
50 serialized_navigation_manager.lastVisitedTimestamp = | 50 serialized_navigation_manager.lastVisitedTimestamp = |
51 session_controller.lastVisitedTimestamp; | 51 session_controller.lastVisitedTimestamp; |
52 serialized_navigation_manager.sessionCertificatePolicyManager = | 52 serialized_navigation_manager.sessionCertificatePolicyManager = |
53 session_controller.sessionCertificatePolicyManager; | 53 session_controller.sessionCertificatePolicyManager; |
54 NSMutableArray* item_storages = [[NSMutableArray alloc] init]; | 54 NSMutableArray* item_storages = [[NSMutableArray alloc] init]; |
55 NavigationItemStorageBuilder item_storage_builder; | 55 NavigationItemStorageBuilder item_storage_builder; |
56 for (size_t index = 0; index < session_controller.items.size(); ++index) { | 56 for (size_t index = 0; index < session_controller.items.size(); ++index) { |
57 web::NavigationItemImpl* item = | 57 web::NavigationItemImpl* item = session_controller.items[index].get(); |
58 static_cast<web::NavigationItemImpl*>(session_controller.items[index]); | |
59 [item_storages addObject:item_storage_builder.BuildStorage(item)]; | 58 [item_storages addObject:item_storage_builder.BuildStorage(item)]; |
60 } | 59 } |
61 serialized_navigation_manager.itemStorages = item_storages; | 60 serialized_navigation_manager.itemStorages = item_storages; |
62 return serialized_navigation_manager; | 61 return serialized_navigation_manager; |
63 } | 62 } |
64 | 63 |
65 std::unique_ptr<NavigationManagerImpl> | 64 std::unique_ptr<NavigationManagerImpl> |
66 NavigationManagerStorageBuilder::BuildNavigationManagerImpl( | 65 NavigationManagerStorageBuilder::BuildNavigationManagerImpl( |
67 CRWNavigationManagerStorage* navigation_manager_serialization) const { | 66 CRWNavigationManagerStorage* navigation_manager_serialization) const { |
68 DCHECK(navigation_manager_serialization); | 67 DCHECK(navigation_manager_serialization); |
(...skipping 27 matching lines...) Expand all Loading... |
96 [session_controller | 95 [session_controller |
97 setSessionCertificatePolicyManager:navigation_manager_serialization | 96 setSessionCertificatePolicyManager:navigation_manager_serialization |
98 .sessionCertificatePolicyManager]; | 97 .sessionCertificatePolicyManager]; |
99 std::unique_ptr<NavigationManagerImpl> navigation_manager( | 98 std::unique_ptr<NavigationManagerImpl> navigation_manager( |
100 new NavigationManagerImpl()); | 99 new NavigationManagerImpl()); |
101 navigation_manager->SetSessionController(session_controller); | 100 navigation_manager->SetSessionController(session_controller); |
102 return navigation_manager; | 101 return navigation_manager; |
103 } | 102 } |
104 | 103 |
105 } // namespace web | 104 } // namespace web |
OLD | NEW |