Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(714)

Side by Side Diff: ios/web/navigation/serialized_navigation_manager_builder.mm

Issue 1361173005: Created SerializedUserDataManager. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@serialized_navigation_manager
Patch Set: Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/serialized_navigation_manager_builder.h" 5 #import "ios/web/navigation/serialized_navigation_manager_builder.h"
6 6
7 #include "base/logging.h" 7 #include "base/logging.h"
8 #import "ios/web/navigation/crw_serialized_navigation_manager.h" 8 #import "ios/web/navigation/crw_serialized_navigation_manager.h"
9 #import "ios/web/navigation/crw_session_controller.h" 9 #import "ios/web/navigation/crw_session_controller.h"
10 #include "ios/web/navigation/navigation_manager_impl.h" 10 #include "ios/web/navigation/navigation_manager_impl.h"
11 #include "ios/web/public/serialized_user_data_manager.h"
11 12
12 // CRWSessionController's readonly properties redefined as readwrite. These 13 // CRWSessionController's readonly properties redefined as readwrite. These
13 // will be removed and NavigationManagerImpl's ivars will be written directly 14 // will be removed and NavigationManagerImpl's ivars will be written directly
14 // as this functionality moves from CRWSessionController to 15 // as this functionality moves from CRWSessionController to
15 // NavigationManagerImpl; 16 // NavigationManagerImpl;
16 @interface CRWSessionController (ExposedForSerialization) 17 @interface CRWSessionController (ExposedForSerialization)
17 @property(nonatomic, readwrite, retain) NSString* tabId; 18 @property(nonatomic, readwrite, retain) NSString* tabId;
18 @property(nonatomic, readwrite, copy) NSString* openerId; 19 @property(nonatomic, readwrite, copy) NSString* openerId;
19 @property(nonatomic, readwrite, getter=isOpenedByDOM) BOOL openedByDOM; 20 @property(nonatomic, readwrite, getter=isOpenedByDOM) BOOL openedByDOM;
20 @property(nonatomic, readwrite, assign) NSInteger openerNavigationIndex; 21 @property(nonatomic, readwrite, assign) NSInteger openerNavigationIndex;
(...skipping 25 matching lines...) Expand all
46 session_controller.currentNavigationIndex; 47 session_controller.currentNavigationIndex;
47 serialized_navigation_manager.previousNavigationIndex = 48 serialized_navigation_manager.previousNavigationIndex =
48 session_controller.previousNavigationIndex; 49 session_controller.previousNavigationIndex;
49 serialized_navigation_manager.lastVisitedTimestamp = 50 serialized_navigation_manager.lastVisitedTimestamp =
50 session_controller.lastVisitedTimestamp; 51 session_controller.lastVisitedTimestamp;
51 serialized_navigation_manager.entries = session_controller.entries; 52 serialized_navigation_manager.entries = session_controller.entries;
52 serialized_navigation_manager.sessionCertificatePolicyManager = 53 serialized_navigation_manager.sessionCertificatePolicyManager =
53 session_controller.sessionCertificatePolicyManager; 54 session_controller.sessionCertificatePolicyManager;
54 serialized_navigation_manager.xCallbackParameters = 55 serialized_navigation_manager.xCallbackParameters =
55 session_controller.xCallbackParameters; 56 session_controller.xCallbackParameters;
57 web::SerializedUserDataManager* userDataManager =
58 web::SerializedUserDataManager::FromNavigationManager(navigation_manager);
59 serialized_navigation_manager.serializedUserData =
60 userDataManager->GetSerializationDictionary();
61
56 return serialized_navigation_manager; 62 return serialized_navigation_manager;
57 } 63 }
58 64
59 // static 65 // static
60 scoped_ptr<NavigationManagerImpl> 66 scoped_ptr<NavigationManagerImpl>
61 SerializedNavigationManagerBuilder::ToNavigationManager( 67 SerializedNavigationManagerBuilder::ToNavigationManager(
62 CRWSerializedNavigationManager* serialized_navigation_manager) { 68 CRWSerializedNavigationManager* serialized_navigation_manager) {
63 DCHECK(serialized_navigation_manager); 69 DCHECK(serialized_navigation_manager);
64 CRWSessionController* session_controller = 70 CRWSessionController* session_controller =
65 [[[CRWSessionController alloc] init] autorelease]; 71 [[[CRWSessionController alloc] init] autorelease];
(...skipping 10 matching lines...) Expand all
76 session_controller.lastVisitedTimestamp = 82 session_controller.lastVisitedTimestamp =
77 serialized_navigation_manager.lastVisitedTimestamp; 83 serialized_navigation_manager.lastVisitedTimestamp;
78 session_controller.entries = serialized_navigation_manager.entries; 84 session_controller.entries = serialized_navigation_manager.entries;
79 session_controller.sessionCertificatePolicyManager = 85 session_controller.sessionCertificatePolicyManager =
80 serialized_navigation_manager.sessionCertificatePolicyManager; 86 serialized_navigation_manager.sessionCertificatePolicyManager;
81 session_controller.xCallbackParameters = 87 session_controller.xCallbackParameters =
82 serialized_navigation_manager.xCallbackParameters; 88 serialized_navigation_manager.xCallbackParameters;
83 scoped_ptr<NavigationManagerImpl> navigation_manager( 89 scoped_ptr<NavigationManagerImpl> navigation_manager(
84 new NavigationManagerImpl()); 90 new NavigationManagerImpl());
85 navigation_manager->SetSessionController(session_controller); 91 navigation_manager->SetSessionController(session_controller);
92 web::SerializedUserDataManager* userDataManager =
93 web::SerializedUserDataManager::FromNavigationManager(
94 navigation_manager.get());
95 userDataManager->AddValuesFromDictionary(
96 serialized_navigation_manager.serializedUserData);
86 return navigation_manager.Pass(); 97 return navigation_manager.Pass();
87 } 98 }
88 99
89 } // namespace web 100 } // namespace web
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698