OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_components_factory_impl.h" | 5 #include "components/browser_sync/profile_sync_components_factory_impl.h" |
6 | 6 |
7 #include <utility> | 7 #include <utility> |
8 | 8 |
9 #include "base/command_line.h" | 9 #include "base/command_line.h" |
10 #include "base/feature_list.h" | 10 #include "base/feature_list.h" |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
42 #include "components/sync/driver/ui_model_type_controller.h" | 42 #include "components/sync/driver/ui_model_type_controller.h" |
43 #include "components/sync_bookmarks/bookmark_change_processor.h" | 43 #include "components/sync_bookmarks/bookmark_change_processor.h" |
44 #include "components/sync_bookmarks/bookmark_data_type_controller.h" | 44 #include "components/sync_bookmarks/bookmark_data_type_controller.h" |
45 #include "components/sync_bookmarks/bookmark_model_associator.h" | 45 #include "components/sync_bookmarks/bookmark_model_associator.h" |
46 #include "components/sync_sessions/session_data_type_controller.h" | 46 #include "components/sync_sessions/session_data_type_controller.h" |
47 #include "google_apis/gaia/oauth2_token_service.h" | 47 #include "google_apis/gaia/oauth2_token_service.h" |
48 #include "google_apis/gaia/oauth2_token_service_request.h" | 48 #include "google_apis/gaia/oauth2_token_service_request.h" |
49 #include "net/url_request/url_request_context_getter.h" | 49 #include "net/url_request/url_request_context_getter.h" |
50 | 50 |
51 using bookmarks::BookmarkModel; | 51 using bookmarks::BookmarkModel; |
52 using browser_sync::AutofillDataTypeController; | |
53 using browser_sync::AutofillProfileDataTypeController; | |
54 using browser_sync::ChromeReportUnrecoverableError; | |
55 using browser_sync::HistoryDeleteDirectivesDataTypeController; | |
56 using browser_sync::PasswordDataTypeController; | |
57 using browser_sync::SyncBackendHost; | |
58 using browser_sync::TypedUrlDataTypeController; | |
59 using sync_bookmarks::BookmarkChangeProcessor; | 52 using sync_bookmarks::BookmarkChangeProcessor; |
60 using sync_bookmarks::BookmarkDataTypeController; | 53 using sync_bookmarks::BookmarkDataTypeController; |
61 using sync_bookmarks::BookmarkModelAssociator; | 54 using sync_bookmarks::BookmarkModelAssociator; |
62 using sync_driver::DataTypeController; | 55 using sync_driver::DataTypeController; |
63 using sync_driver::DataTypeManager; | 56 using sync_driver::DataTypeManager; |
64 using sync_driver::DataTypeManagerImpl; | 57 using sync_driver::DataTypeManagerImpl; |
65 using sync_driver::DataTypeManagerObserver; | 58 using sync_driver::DataTypeManagerObserver; |
66 using sync_driver::DeviceInfoDataTypeController; | 59 using sync_driver::DeviceInfoDataTypeController; |
67 using sync_driver::ProxyDataTypeController; | 60 using sync_driver::ProxyDataTypeController; |
68 using sync_driver::UIDataTypeController; | 61 using sync_driver::UIDataTypeController; |
69 using sync_driver_v2::UIModelTypeController; | 62 using sync_driver_v2::UIModelTypeController; |
70 using sync_sessions::SessionDataTypeController; | 63 using sync_sessions::SessionDataTypeController; |
71 | 64 |
| 65 namespace browser_sync { |
| 66 |
72 namespace { | 67 namespace { |
73 | 68 |
74 syncer::ModelTypeSet GetDisabledTypesFromCommandLine( | 69 syncer::ModelTypeSet GetDisabledTypesFromCommandLine( |
75 const base::CommandLine& command_line) { | 70 const base::CommandLine& command_line) { |
76 syncer::ModelTypeSet disabled_types; | 71 syncer::ModelTypeSet disabled_types; |
77 std::string disabled_types_str = | 72 std::string disabled_types_str = |
78 command_line.GetSwitchValueASCII(switches::kDisableSyncTypes); | 73 command_line.GetSwitchValueASCII(switches::kDisableSyncTypes); |
79 | 74 |
80 disabled_types = syncer::ModelTypeSetFromString(disabled_types_str); | 75 disabled_types = syncer::ModelTypeSetFromString(disabled_types_str); |
81 return disabled_types; | 76 return disabled_types; |
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
175 sync_service->RegisterDataTypeController( | 170 sync_service->RegisterDataTypeController( |
176 base::MakeUnique<AutofillProfileDataTypeController>( | 171 base::MakeUnique<AutofillProfileDataTypeController>( |
177 db_thread_, error_callback, sync_client_, web_data_service_)); | 172 db_thread_, error_callback, sync_client_, web_data_service_)); |
178 } | 173 } |
179 | 174 |
180 // Wallet data sync is enabled by default, but behind a syncer experiment | 175 // Wallet data sync is enabled by default, but behind a syncer experiment |
181 // enforced by the datatype controller. Register unless explicitly disabled. | 176 // enforced by the datatype controller. Register unless explicitly disabled. |
182 bool wallet_disabled = disabled_types.Has(syncer::AUTOFILL_WALLET_DATA); | 177 bool wallet_disabled = disabled_types.Has(syncer::AUTOFILL_WALLET_DATA); |
183 if (!wallet_disabled) { | 178 if (!wallet_disabled) { |
184 sync_service->RegisterDataTypeController( | 179 sync_service->RegisterDataTypeController( |
185 base::MakeUnique<browser_sync::AutofillWalletDataTypeController>( | 180 base::MakeUnique<AutofillWalletDataTypeController>( |
186 syncer::AUTOFILL_WALLET_DATA, db_thread_, error_callback, | 181 syncer::AUTOFILL_WALLET_DATA, db_thread_, error_callback, |
187 sync_client_, web_data_service_)); | 182 sync_client_, web_data_service_)); |
188 } | 183 } |
189 | 184 |
190 // Wallet metadata sync depends on Wallet data sync. Register if Wallet data | 185 // Wallet metadata sync depends on Wallet data sync. Register if Wallet data |
191 // is syncing and metadata sync is not explicitly disabled. | 186 // is syncing and metadata sync is not explicitly disabled. |
192 if (!wallet_disabled && | 187 if (!wallet_disabled && |
193 !disabled_types.Has(syncer::AUTOFILL_WALLET_METADATA)) { | 188 !disabled_types.Has(syncer::AUTOFILL_WALLET_METADATA)) { |
194 sync_service->RegisterDataTypeController( | 189 sync_service->RegisterDataTypeController( |
195 base::MakeUnique<browser_sync::AutofillWalletDataTypeController>( | 190 base::MakeUnique<AutofillWalletDataTypeController>( |
196 syncer::AUTOFILL_WALLET_METADATA, db_thread_, error_callback, | 191 syncer::AUTOFILL_WALLET_METADATA, db_thread_, error_callback, |
197 sync_client_, web_data_service_)); | 192 sync_client_, web_data_service_)); |
198 } | 193 } |
199 | 194 |
200 // Bookmark sync is enabled by default. Register unless explicitly | 195 // Bookmark sync is enabled by default. Register unless explicitly |
201 // disabled. | 196 // disabled. |
202 if (!disabled_types.Has(syncer::BOOKMARKS)) { | 197 if (!disabled_types.Has(syncer::BOOKMARKS)) { |
203 sync_service->RegisterDataTypeController( | 198 sync_service->RegisterDataTypeController( |
204 base::MakeUnique<BookmarkDataTypeController>(error_callback, | 199 base::MakeUnique<BookmarkDataTypeController>(error_callback, |
205 sync_client_)); | 200 sync_client_)); |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
289 const syncer::WeakHandle<syncer::DataTypeDebugInfoListener>& | 284 const syncer::WeakHandle<syncer::DataTypeDebugInfoListener>& |
290 debug_info_listener, | 285 debug_info_listener, |
291 const DataTypeController::TypeMap* controllers, | 286 const DataTypeController::TypeMap* controllers, |
292 const sync_driver::DataTypeEncryptionHandler* encryption_handler, | 287 const sync_driver::DataTypeEncryptionHandler* encryption_handler, |
293 SyncBackendHost* backend, | 288 SyncBackendHost* backend, |
294 DataTypeManagerObserver* observer) { | 289 DataTypeManagerObserver* observer) { |
295 return new DataTypeManagerImpl(debug_info_listener, controllers, | 290 return new DataTypeManagerImpl(debug_info_listener, controllers, |
296 encryption_handler, backend, observer); | 291 encryption_handler, backend, observer); |
297 } | 292 } |
298 | 293 |
299 browser_sync::SyncBackendHost* | 294 SyncBackendHost* ProfileSyncComponentsFactoryImpl::CreateSyncBackendHost( |
300 ProfileSyncComponentsFactoryImpl::CreateSyncBackendHost( | |
301 const std::string& name, | 295 const std::string& name, |
302 invalidation::InvalidationService* invalidator, | 296 invalidation::InvalidationService* invalidator, |
303 const base::WeakPtr<sync_driver::SyncPrefs>& sync_prefs, | 297 const base::WeakPtr<sync_driver::SyncPrefs>& sync_prefs, |
304 const base::FilePath& sync_folder) { | 298 const base::FilePath& sync_folder) { |
305 return new browser_sync::SyncBackendHostImpl( | 299 return new SyncBackendHostImpl(name, sync_client_, ui_thread_, invalidator, |
306 name, sync_client_, ui_thread_, invalidator, sync_prefs, sync_folder); | 300 sync_prefs, sync_folder); |
307 } | 301 } |
308 | 302 |
309 std::unique_ptr<sync_driver::LocalDeviceInfoProvider> | 303 std::unique_ptr<sync_driver::LocalDeviceInfoProvider> |
310 ProfileSyncComponentsFactoryImpl::CreateLocalDeviceInfoProvider() { | 304 ProfileSyncComponentsFactoryImpl::CreateLocalDeviceInfoProvider() { |
311 return base::MakeUnique<browser_sync::LocalDeviceInfoProviderImpl>( | 305 return base::MakeUnique<LocalDeviceInfoProviderImpl>(channel_, version_, |
312 channel_, version_, is_tablet_); | 306 is_tablet_); |
313 } | 307 } |
314 | 308 |
315 class TokenServiceProvider | 309 class TokenServiceProvider |
316 : public OAuth2TokenServiceRequest::TokenServiceProvider { | 310 : public OAuth2TokenServiceRequest::TokenServiceProvider { |
317 public: | 311 public: |
318 TokenServiceProvider( | 312 TokenServiceProvider( |
319 const scoped_refptr<base::SingleThreadTaskRunner>& task_runner, | 313 const scoped_refptr<base::SingleThreadTaskRunner>& task_runner, |
320 OAuth2TokenService* token_service); | 314 OAuth2TokenService* token_service); |
321 | 315 |
322 // OAuth2TokenServiceRequest::TokenServiceProvider implementation. | 316 // OAuth2TokenServiceRequest::TokenServiceProvider implementation. |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
419 return SyncComponents(model_associator, change_processor); | 413 return SyncComponents(model_associator, change_processor); |
420 } | 414 } |
421 | 415 |
422 // static | 416 // static |
423 void ProfileSyncComponentsFactoryImpl::OverridePrefsForUssTest(bool use_uss) { | 417 void ProfileSyncComponentsFactoryImpl::OverridePrefsForUssTest(bool use_uss) { |
424 override_prefs_controller_to_uss_for_test_ = use_uss; | 418 override_prefs_controller_to_uss_for_test_ = use_uss; |
425 } | 419 } |
426 | 420 |
427 bool ProfileSyncComponentsFactoryImpl:: | 421 bool ProfileSyncComponentsFactoryImpl:: |
428 override_prefs_controller_to_uss_for_test_ = false; | 422 override_prefs_controller_to_uss_for_test_ = false; |
| 423 |
| 424 } // namespace browser_sync |
OLD | NEW |