OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "components/browser_sync/profile_sync_test_util.h" | 5 #include "components/browser_sync/profile_sync_test_util.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/memory/ptr_util.h" | 9 #include "base/memory/ptr_util.h" |
10 #include "components/bookmarks/browser/bookmark_model.h" | 10 #include "components/bookmarks/browser/bookmark_model.h" |
11 #include "components/history/core/browser/history_model_worker.h" | 11 #include "components/history/core/browser/history_model_worker.h" |
12 #include "components/pref_registry/pref_registry_syncable.h" | 12 #include "components/pref_registry/pref_registry_syncable.h" |
13 #include "components/signin/core/browser/signin_manager_base.h" | 13 #include "components/signin/core/browser/signin_manager_base.h" |
14 #include "components/sync/driver/glue/browser_thread_model_worker.h" | 14 #include "components/sync/driver/glue/browser_thread_model_worker.h" |
15 #include "components/sync/driver/glue/ui_model_worker.h" | 15 #include "components/sync/driver/glue/ui_model_worker.h" |
16 #include "components/sync/driver/signin_manager_wrapper.h" | 16 #include "components/sync/driver/signin_manager_wrapper.h" |
17 #include "components/sync/driver/sync_prefs.h" | 17 #include "components/sync/driver/sync_prefs.h" |
18 #include "components/sync/engine/passive_model_worker.h" | 18 #include "components/sync/engine/passive_model_worker.h" |
19 #include "net/url_request/url_request_test_util.h" | 19 #include "net/url_request/url_request_test_util.h" |
20 | 20 |
21 namespace browser_sync { | 21 namespace browser_sync { |
22 | 22 |
23 namespace { | 23 namespace { |
24 | 24 |
25 class BundleSyncClient : public sync_driver::FakeSyncClient { | 25 class BundleSyncClient : public syncer::FakeSyncClient { |
26 public: | 26 public: |
27 BundleSyncClient(sync_driver::SyncApiComponentFactory* factory, | 27 BundleSyncClient(syncer::SyncApiComponentFactory* factory, |
28 PrefService* pref_service, | 28 PrefService* pref_service, |
29 sync_sessions::SyncSessionsClient* sync_sessions_client, | 29 sync_sessions::SyncSessionsClient* sync_sessions_client, |
30 autofill::PersonalDataManager* personal_data_manager, | 30 autofill::PersonalDataManager* personal_data_manager, |
31 const base::Callback<base::WeakPtr<syncer::SyncableService>( | 31 const base::Callback<base::WeakPtr<syncer::SyncableService>( |
32 syncer::ModelType type)>& get_syncable_service_callback, | 32 syncer::ModelType type)>& get_syncable_service_callback, |
33 const base::Callback<sync_driver::SyncService*(void)>& | 33 const base::Callback<syncer::SyncService*(void)>& |
34 get_sync_service_callback, | 34 get_sync_service_callback, |
35 const base::Callback<bookmarks::BookmarkModel*(void)>& | 35 const base::Callback<bookmarks::BookmarkModel*(void)>& |
36 get_bookmark_model_callback, | 36 get_bookmark_model_callback, |
37 scoped_refptr<base::SingleThreadTaskRunner> db_thread, | 37 scoped_refptr<base::SingleThreadTaskRunner> db_thread, |
38 scoped_refptr<base::SingleThreadTaskRunner> file_thread, | 38 scoped_refptr<base::SingleThreadTaskRunner> file_thread, |
39 history::HistoryService* history_service); | 39 history::HistoryService* history_service); |
40 | 40 |
41 ~BundleSyncClient() override; | 41 ~BundleSyncClient() override; |
42 | 42 |
43 PrefService* GetPrefService() override; | 43 PrefService* GetPrefService() override; |
44 sync_sessions::SyncSessionsClient* GetSyncSessionsClient() override; | 44 sync_sessions::SyncSessionsClient* GetSyncSessionsClient() override; |
45 autofill::PersonalDataManager* GetPersonalDataManager() override; | 45 autofill::PersonalDataManager* GetPersonalDataManager() override; |
46 base::WeakPtr<syncer::SyncableService> GetSyncableServiceForType( | 46 base::WeakPtr<syncer::SyncableService> GetSyncableServiceForType( |
47 syncer::ModelType type) override; | 47 syncer::ModelType type) override; |
48 sync_driver::SyncService* GetSyncService() override; | 48 syncer::SyncService* GetSyncService() override; |
49 scoped_refptr<syncer::ModelSafeWorker> CreateModelWorkerForGroup( | 49 scoped_refptr<syncer::ModelSafeWorker> CreateModelWorkerForGroup( |
50 syncer::ModelSafeGroup group, | 50 syncer::ModelSafeGroup group, |
51 syncer::WorkerLoopDestructionObserver* observer) override; | 51 syncer::WorkerLoopDestructionObserver* observer) override; |
52 history::HistoryService* GetHistoryService() override; | 52 history::HistoryService* GetHistoryService() override; |
53 bookmarks::BookmarkModel* GetBookmarkModel() override; | 53 bookmarks::BookmarkModel* GetBookmarkModel() override; |
54 | 54 |
55 private: | 55 private: |
56 PrefService* const pref_service_; | 56 PrefService* const pref_service_; |
57 sync_sessions::SyncSessionsClient* const sync_sessions_client_; | 57 sync_sessions::SyncSessionsClient* const sync_sessions_client_; |
58 autofill::PersonalDataManager* const personal_data_manager_; | 58 autofill::PersonalDataManager* const personal_data_manager_; |
59 const base::Callback<base::WeakPtr<syncer::SyncableService>( | 59 const base::Callback<base::WeakPtr<syncer::SyncableService>( |
60 syncer::ModelType type)> | 60 syncer::ModelType type)> |
61 get_syncable_service_callback_; | 61 get_syncable_service_callback_; |
62 const base::Callback<sync_driver::SyncService*(void)> | 62 const base::Callback<syncer::SyncService*(void)> get_sync_service_callback_; |
63 get_sync_service_callback_; | |
64 const base::Callback<bookmarks::BookmarkModel*(void)> | 63 const base::Callback<bookmarks::BookmarkModel*(void)> |
65 get_bookmark_model_callback_; | 64 get_bookmark_model_callback_; |
66 // These task runners, if not null, are used in CreateModelWorkerForGroup. | 65 // These task runners, if not null, are used in CreateModelWorkerForGroup. |
67 const scoped_refptr<base::SingleThreadTaskRunner> db_thread_; | 66 const scoped_refptr<base::SingleThreadTaskRunner> db_thread_; |
68 const scoped_refptr<base::SingleThreadTaskRunner> file_thread_; | 67 const scoped_refptr<base::SingleThreadTaskRunner> file_thread_; |
69 history::HistoryService* history_service_; | 68 history::HistoryService* history_service_; |
70 }; | 69 }; |
71 | 70 |
72 BundleSyncClient::BundleSyncClient( | 71 BundleSyncClient::BundleSyncClient( |
73 sync_driver::SyncApiComponentFactory* factory, | 72 syncer::SyncApiComponentFactory* factory, |
74 PrefService* pref_service, | 73 PrefService* pref_service, |
75 sync_sessions::SyncSessionsClient* sync_sessions_client, | 74 sync_sessions::SyncSessionsClient* sync_sessions_client, |
76 autofill::PersonalDataManager* personal_data_manager, | 75 autofill::PersonalDataManager* personal_data_manager, |
77 const base::Callback<base::WeakPtr<syncer::SyncableService>( | 76 const base::Callback<base::WeakPtr<syncer::SyncableService>( |
78 syncer::ModelType type)>& get_syncable_service_callback, | 77 syncer::ModelType type)>& get_syncable_service_callback, |
79 const base::Callback<sync_driver::SyncService*(void)>& | 78 const base::Callback<syncer::SyncService*(void)>& get_sync_service_callback, |
80 get_sync_service_callback, | |
81 const base::Callback<bookmarks::BookmarkModel*(void)>& | 79 const base::Callback<bookmarks::BookmarkModel*(void)>& |
82 get_bookmark_model_callback, | 80 get_bookmark_model_callback, |
83 scoped_refptr<base::SingleThreadTaskRunner> db_thread, | 81 scoped_refptr<base::SingleThreadTaskRunner> db_thread, |
84 scoped_refptr<base::SingleThreadTaskRunner> file_thread, | 82 scoped_refptr<base::SingleThreadTaskRunner> file_thread, |
85 history::HistoryService* history_service) | 83 history::HistoryService* history_service) |
86 : sync_driver::FakeSyncClient(factory), | 84 : syncer::FakeSyncClient(factory), |
87 pref_service_(pref_service), | 85 pref_service_(pref_service), |
88 sync_sessions_client_(sync_sessions_client), | 86 sync_sessions_client_(sync_sessions_client), |
89 personal_data_manager_(personal_data_manager), | 87 personal_data_manager_(personal_data_manager), |
90 get_syncable_service_callback_(get_syncable_service_callback), | 88 get_syncable_service_callback_(get_syncable_service_callback), |
91 get_sync_service_callback_(get_sync_service_callback), | 89 get_sync_service_callback_(get_sync_service_callback), |
92 get_bookmark_model_callback_(get_bookmark_model_callback), | 90 get_bookmark_model_callback_(get_bookmark_model_callback), |
93 db_thread_(db_thread), | 91 db_thread_(db_thread), |
94 file_thread_(file_thread), | 92 file_thread_(file_thread), |
95 history_service_(history_service) { | 93 history_service_(history_service) { |
96 DCHECK_EQ(!!db_thread_, !!file_thread_); | 94 DCHECK_EQ(!!db_thread_, !!file_thread_); |
97 } | 95 } |
98 | 96 |
99 BundleSyncClient::~BundleSyncClient() = default; | 97 BundleSyncClient::~BundleSyncClient() = default; |
100 | 98 |
101 PrefService* BundleSyncClient::GetPrefService() { | 99 PrefService* BundleSyncClient::GetPrefService() { |
102 return pref_service_; | 100 return pref_service_; |
103 } | 101 } |
104 | 102 |
105 sync_sessions::SyncSessionsClient* BundleSyncClient::GetSyncSessionsClient() { | 103 sync_sessions::SyncSessionsClient* BundleSyncClient::GetSyncSessionsClient() { |
106 return sync_sessions_client_; | 104 return sync_sessions_client_; |
107 } | 105 } |
108 | 106 |
109 autofill::PersonalDataManager* BundleSyncClient::GetPersonalDataManager() { | 107 autofill::PersonalDataManager* BundleSyncClient::GetPersonalDataManager() { |
110 return personal_data_manager_; | 108 return personal_data_manager_; |
111 } | 109 } |
112 | 110 |
113 base::WeakPtr<syncer::SyncableService> | 111 base::WeakPtr<syncer::SyncableService> |
114 BundleSyncClient::GetSyncableServiceForType(syncer::ModelType type) { | 112 BundleSyncClient::GetSyncableServiceForType(syncer::ModelType type) { |
115 if (get_syncable_service_callback_.is_null()) | 113 if (get_syncable_service_callback_.is_null()) |
116 return sync_driver::FakeSyncClient::GetSyncableServiceForType(type); | 114 return syncer::FakeSyncClient::GetSyncableServiceForType(type); |
117 return get_syncable_service_callback_.Run(type); | 115 return get_syncable_service_callback_.Run(type); |
118 } | 116 } |
119 | 117 |
120 sync_driver::SyncService* BundleSyncClient::GetSyncService() { | 118 syncer::SyncService* BundleSyncClient::GetSyncService() { |
121 if (get_sync_service_callback_.is_null()) | 119 if (get_sync_service_callback_.is_null()) |
122 return sync_driver::FakeSyncClient::GetSyncService(); | 120 return syncer::FakeSyncClient::GetSyncService(); |
123 return get_sync_service_callback_.Run(); | 121 return get_sync_service_callback_.Run(); |
124 } | 122 } |
125 | 123 |
126 scoped_refptr<syncer::ModelSafeWorker> | 124 scoped_refptr<syncer::ModelSafeWorker> |
127 BundleSyncClient::CreateModelWorkerForGroup( | 125 BundleSyncClient::CreateModelWorkerForGroup( |
128 syncer::ModelSafeGroup group, | 126 syncer::ModelSafeGroup group, |
129 syncer::WorkerLoopDestructionObserver* observer) { | 127 syncer::WorkerLoopDestructionObserver* observer) { |
130 if (!db_thread_) | 128 if (!db_thread_) |
131 return FakeSyncClient::CreateModelWorkerForGroup(group, observer); | 129 return FakeSyncClient::CreateModelWorkerForGroup(group, observer); |
132 DCHECK(file_thread_) << "DB thread was specified but FILE thread was not."; | 130 DCHECK(file_thread_) << "DB thread was specified but FILE thread was not."; |
133 switch (group) { | 131 switch (group) { |
134 case syncer::GROUP_DB: | 132 case syncer::GROUP_DB: |
135 return new BrowserThreadModelWorker(db_thread_, syncer::GROUP_DB, | 133 return new syncer::BrowserThreadModelWorker(db_thread_, syncer::GROUP_DB, |
136 observer); | 134 observer); |
137 case syncer::GROUP_FILE: | 135 case syncer::GROUP_FILE: |
138 return new BrowserThreadModelWorker(file_thread_, syncer::GROUP_FILE, | 136 return new syncer::BrowserThreadModelWorker(file_thread_, |
139 observer); | 137 syncer::GROUP_FILE, observer); |
140 case syncer::GROUP_UI: | 138 case syncer::GROUP_UI: |
141 return new UIModelWorker(base::ThreadTaskRunnerHandle::Get(), observer); | 139 return new syncer::UIModelWorker(base::ThreadTaskRunnerHandle::Get(), |
| 140 observer); |
142 case syncer::GROUP_PASSIVE: | 141 case syncer::GROUP_PASSIVE: |
143 return new syncer::PassiveModelWorker(observer); | 142 return new syncer::PassiveModelWorker(observer); |
144 case syncer::GROUP_HISTORY: { | 143 case syncer::GROUP_HISTORY: { |
145 history::HistoryService* history_service = GetHistoryService(); | 144 history::HistoryService* history_service = GetHistoryService(); |
146 if (!history_service) | 145 if (!history_service) |
147 return nullptr; | 146 return nullptr; |
148 return new HistoryModelWorker(history_service->AsWeakPtr(), | 147 return new HistoryModelWorker(history_service->AsWeakPtr(), |
149 base::ThreadTaskRunnerHandle::Get(), | 148 base::ThreadTaskRunnerHandle::Get(), |
150 observer); | 149 observer); |
151 } | 150 } |
(...skipping 15 matching lines...) Expand all Loading... |
167 } | 166 } |
168 | 167 |
169 } // namespace | 168 } // namespace |
170 | 169 |
171 void EmptyNetworkTimeUpdate(const base::Time&, | 170 void EmptyNetworkTimeUpdate(const base::Time&, |
172 const base::TimeDelta&, | 171 const base::TimeDelta&, |
173 const base::TimeDelta&) {} | 172 const base::TimeDelta&) {} |
174 | 173 |
175 void RegisterPrefsForProfileSyncService( | 174 void RegisterPrefsForProfileSyncService( |
176 user_prefs::PrefRegistrySyncable* registry) { | 175 user_prefs::PrefRegistrySyncable* registry) { |
177 sync_driver::SyncPrefs::RegisterProfilePrefs(registry); | 176 syncer::SyncPrefs::RegisterProfilePrefs(registry); |
178 AccountTrackerService::RegisterPrefs(registry); | 177 AccountTrackerService::RegisterPrefs(registry); |
179 SigninManagerBase::RegisterProfilePrefs(registry); | 178 SigninManagerBase::RegisterProfilePrefs(registry); |
180 SigninManagerBase::RegisterPrefs(registry); | 179 SigninManagerBase::RegisterPrefs(registry); |
181 } | 180 } |
182 | 181 |
183 ProfileSyncServiceBundle::SyncClientBuilder::~SyncClientBuilder() = default; | 182 ProfileSyncServiceBundle::SyncClientBuilder::~SyncClientBuilder() = default; |
184 | 183 |
185 ProfileSyncServiceBundle::SyncClientBuilder::SyncClientBuilder( | 184 ProfileSyncServiceBundle::SyncClientBuilder::SyncClientBuilder( |
186 ProfileSyncServiceBundle* bundle) | 185 ProfileSyncServiceBundle* bundle) |
187 : bundle_(bundle) {} | 186 : bundle_(bundle) {} |
188 | 187 |
189 void ProfileSyncServiceBundle::SyncClientBuilder::SetPersonalDataManager( | 188 void ProfileSyncServiceBundle::SyncClientBuilder::SetPersonalDataManager( |
190 autofill::PersonalDataManager* personal_data_manager) { | 189 autofill::PersonalDataManager* personal_data_manager) { |
191 personal_data_manager_ = personal_data_manager; | 190 personal_data_manager_ = personal_data_manager; |
192 } | 191 } |
193 | 192 |
194 // The client will call this callback to produce the service. | 193 // The client will call this callback to produce the service. |
195 void ProfileSyncServiceBundle::SyncClientBuilder::SetSyncableServiceCallback( | 194 void ProfileSyncServiceBundle::SyncClientBuilder::SetSyncableServiceCallback( |
196 const base::Callback<base::WeakPtr<syncer::SyncableService>( | 195 const base::Callback<base::WeakPtr<syncer::SyncableService>( |
197 syncer::ModelType type)>& get_syncable_service_callback) { | 196 syncer::ModelType type)>& get_syncable_service_callback) { |
198 get_syncable_service_callback_ = get_syncable_service_callback; | 197 get_syncable_service_callback_ = get_syncable_service_callback; |
199 } | 198 } |
200 | 199 |
201 // The client will call this callback to produce the service. | 200 // The client will call this callback to produce the service. |
202 void ProfileSyncServiceBundle::SyncClientBuilder::SetSyncServiceCallback( | 201 void ProfileSyncServiceBundle::SyncClientBuilder::SetSyncServiceCallback( |
203 const base::Callback<sync_driver::SyncService*(void)>& | 202 const base::Callback<syncer::SyncService*(void)>& |
204 get_sync_service_callback) { | 203 get_sync_service_callback) { |
205 get_sync_service_callback_ = get_sync_service_callback; | 204 get_sync_service_callback_ = get_sync_service_callback; |
206 } | 205 } |
207 | 206 |
208 void ProfileSyncServiceBundle::SyncClientBuilder::SetHistoryService( | 207 void ProfileSyncServiceBundle::SyncClientBuilder::SetHistoryService( |
209 history::HistoryService* history_service) { | 208 history::HistoryService* history_service) { |
210 history_service_ = history_service; | 209 history_service_ = history_service; |
211 } | 210 } |
212 | 211 |
213 void ProfileSyncServiceBundle::SyncClientBuilder::SetBookmarkModelCallback( | 212 void ProfileSyncServiceBundle::SyncClientBuilder::SetBookmarkModelCallback( |
214 const base::Callback<bookmarks::BookmarkModel*(void)>& | 213 const base::Callback<bookmarks::BookmarkModel*(void)>& |
215 get_bookmark_model_callback) { | 214 get_bookmark_model_callback) { |
216 get_bookmark_model_callback_ = get_bookmark_model_callback; | 215 get_bookmark_model_callback_ = get_bookmark_model_callback; |
217 } | 216 } |
218 | 217 |
219 std::unique_ptr<sync_driver::FakeSyncClient> | 218 std::unique_ptr<syncer::FakeSyncClient> |
220 ProfileSyncServiceBundle::SyncClientBuilder::Build() { | 219 ProfileSyncServiceBundle::SyncClientBuilder::Build() { |
221 return base::MakeUnique<BundleSyncClient>( | 220 return base::MakeUnique<BundleSyncClient>( |
222 bundle_->component_factory(), bundle_->pref_service(), | 221 bundle_->component_factory(), bundle_->pref_service(), |
223 bundle_->sync_sessions_client(), personal_data_manager_, | 222 bundle_->sync_sessions_client(), personal_data_manager_, |
224 get_syncable_service_callback_, get_sync_service_callback_, | 223 get_syncable_service_callback_, get_sync_service_callback_, |
225 get_bookmark_model_callback_, | 224 get_bookmark_model_callback_, |
226 activate_model_creation_ ? bundle_->db_thread() : nullptr, | 225 activate_model_creation_ ? bundle_->db_thread() : nullptr, |
227 activate_model_creation_ ? base::ThreadTaskRunnerHandle::Get() : nullptr, | 226 activate_model_creation_ ? base::ThreadTaskRunnerHandle::Get() : nullptr, |
228 history_service_); | 227 history_service_); |
229 } | 228 } |
(...skipping 15 matching lines...) Expand all Loading... |
245 RegisterPrefsForProfileSyncService(pref_service_.registry()); | 244 RegisterPrefsForProfileSyncService(pref_service_.registry()); |
246 auth_service_.set_auto_post_fetch_response_on_message_loop(true); | 245 auth_service_.set_auto_post_fetch_response_on_message_loop(true); |
247 account_tracker_.Initialize(&signin_client_); | 246 account_tracker_.Initialize(&signin_client_); |
248 signin_manager_.Initialize(&pref_service_); | 247 signin_manager_.Initialize(&pref_service_); |
249 } | 248 } |
250 | 249 |
251 ProfileSyncServiceBundle::~ProfileSyncServiceBundle() {} | 250 ProfileSyncServiceBundle::~ProfileSyncServiceBundle() {} |
252 | 251 |
253 ProfileSyncService::InitParams ProfileSyncServiceBundle::CreateBasicInitParams( | 252 ProfileSyncService::InitParams ProfileSyncServiceBundle::CreateBasicInitParams( |
254 ProfileSyncService::StartBehavior start_behavior, | 253 ProfileSyncService::StartBehavior start_behavior, |
255 std::unique_ptr<sync_driver::SyncClient> sync_client) { | 254 std::unique_ptr<syncer::SyncClient> sync_client) { |
256 ProfileSyncService::InitParams init_params; | 255 ProfileSyncService::InitParams init_params; |
257 | 256 |
258 init_params.start_behavior = start_behavior; | 257 init_params.start_behavior = start_behavior; |
259 init_params.sync_client = std::move(sync_client); | 258 init_params.sync_client = std::move(sync_client); |
260 init_params.signin_wrapper = | 259 init_params.signin_wrapper = |
261 base::MakeUnique<SigninManagerWrapper>(signin_manager()); | 260 base::MakeUnique<SigninManagerWrapper>(signin_manager()); |
262 init_params.oauth2_token_service = auth_service(); | 261 init_params.oauth2_token_service = auth_service(); |
263 init_params.network_time_update_callback = | 262 init_params.network_time_update_callback = |
264 base::Bind(&EmptyNetworkTimeUpdate); | 263 base::Bind(&EmptyNetworkTimeUpdate); |
265 init_params.base_directory = base::FilePath(FILE_PATH_LITERAL("dummyPath")); | 264 init_params.base_directory = base::FilePath(FILE_PATH_LITERAL("dummyPath")); |
266 init_params.url_request_context = url_request_context(); | 265 init_params.url_request_context = url_request_context(); |
267 init_params.debug_identifier = "dummyDebugName"; | 266 init_params.debug_identifier = "dummyDebugName"; |
268 init_params.channel = version_info::Channel::UNKNOWN; | 267 init_params.channel = version_info::Channel::UNKNOWN; |
269 init_params.db_thread = db_thread_; | 268 init_params.db_thread = db_thread_; |
270 init_params.file_thread = base::ThreadTaskRunnerHandle::Get(); | 269 init_params.file_thread = base::ThreadTaskRunnerHandle::Get(); |
271 init_params.blocking_pool = worker_pool_owner_.pool().get(); | 270 init_params.blocking_pool = worker_pool_owner_.pool().get(); |
272 | 271 |
273 return init_params; | 272 return init_params; |
274 } | 273 } |
275 | 274 |
276 } // namespace browser_sync | 275 } // namespace browser_sync |
OLD | NEW |