| 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 "base/command_line.h" | 5 #include "base/command_line.h" |
| 6 #include "build/build_config.h" | 6 #include "build/build_config.h" |
| 7 #include "chrome/browser/bookmarks/bookmark_model_factory.h" | 7 #include "chrome/browser/bookmarks/bookmark_model_factory.h" |
| 8 #include "chrome/browser/bookmarks/enhanced_bookmarks_features.h" | 8 #include "chrome/browser/bookmarks/enhanced_bookmarks_features.h" |
| 9 #include "chrome/browser/dom_distiller/dom_distiller_service_factory.h" | 9 #include "chrome/browser/dom_distiller/dom_distiller_service_factory.h" |
| 10 #include "chrome/browser/history/history_service.h" | 10 #include "chrome/browser/history/history_service.h" |
| 11 #include "chrome/browser/history/history_service_factory.h" | 11 #include "chrome/browser/history/history_service_factory.h" |
| 12 #include "chrome/browser/notifications/sync_notifier/chrome_notifier_service.h" | 12 #include "chrome/browser/notifications/sync_notifier/chrome_notifier_service.h" |
| 13 #include "chrome/browser/notifications/sync_notifier/chrome_notifier_service_fac
tory.h" | 13 #include "chrome/browser/notifications/sync_notifier/chrome_notifier_service_fac
tory.h" |
| 14 #include "chrome/browser/password_manager/password_store_factory.h" | 14 #include "chrome/browser/password_manager/password_store_factory.h" |
| 15 #include "chrome/browser/pref_service_flags_storage.h" | 15 #include "chrome/browser/pref_service_flags_storage.h" |
| 16 #include "chrome/browser/prefs/pref_model_associator.h" | 16 #include "chrome/browser/prefs/pref_model_associator.h" |
| 17 #include "chrome/browser/prefs/pref_service_syncable.h" | 17 #include "chrome/browser/prefs/pref_service_syncable.h" |
| 18 #include "chrome/browser/profiles/profile.h" | 18 #include "chrome/browser/profiles/profile.h" |
| 19 #include "chrome/browser/search_engines/template_url_service_factory.h" | 19 #include "chrome/browser/search_engines/template_url_service_factory.h" |
| 20 #include "chrome/browser/signin/signin_manager_factory.h" | 20 #include "chrome/browser/signin/signin_manager_factory.h" |
| 21 #include "chrome/browser/sync/glue/autofill_data_type_controller.h" | 21 #include "chrome/browser/sync/glue/autofill_data_type_controller.h" |
| 22 #include "chrome/browser/sync/glue/autofill_profile_data_type_controller.h" | 22 #include "chrome/browser/sync/glue/autofill_profile_data_type_controller.h" |
| 23 #include "chrome/browser/sync/glue/bookmark_change_processor.h" | 23 #include "chrome/browser/sync/glue/bookmark_change_processor.h" |
| 24 #include "chrome/browser/sync/glue/bookmark_data_type_controller.h" | 24 #include "chrome/browser/sync/glue/bookmark_data_type_controller.h" |
| 25 #include "chrome/browser/sync/glue/bookmark_model_associator.h" | 25 #include "chrome/browser/sync/glue/bookmark_model_associator.h" |
| 26 #include "chrome/browser/sync/glue/chrome_report_unrecoverable_error.h" | 26 #include "chrome/browser/sync/glue/chrome_report_unrecoverable_error.h" |
| 27 #include "chrome/browser/sync/glue/extension_backed_data_type_controller.h" | 27 #include "chrome/browser/sync/glue/extension_backed_data_type_controller.h" |
| 28 #include "chrome/browser/sync/glue/extension_data_type_controller.h" | 28 #include "chrome/browser/sync/glue/extension_data_type_controller.h" |
| 29 #include "chrome/browser/sync/glue/extension_setting_data_type_controller.h" | 29 #include "chrome/browser/sync/glue/extension_setting_data_type_controller.h" |
| 30 #include "chrome/browser/sync/glue/history_delete_directives_data_type_controlle
r.h" |
| 30 #include "chrome/browser/sync/glue/local_device_info_provider_impl.h" | 31 #include "chrome/browser/sync/glue/local_device_info_provider_impl.h" |
| 31 #include "chrome/browser/sync/glue/password_data_type_controller.h" | 32 #include "chrome/browser/sync/glue/password_data_type_controller.h" |
| 32 #include "chrome/browser/sync/glue/search_engine_data_type_controller.h" | 33 #include "chrome/browser/sync/glue/search_engine_data_type_controller.h" |
| 33 #include "chrome/browser/sync/glue/sync_backend_host.h" | 34 #include "chrome/browser/sync/glue/sync_backend_host.h" |
| 34 #include "chrome/browser/sync/glue/sync_backend_host_impl.h" | 35 #include "chrome/browser/sync/glue/sync_backend_host_impl.h" |
| 35 #include "chrome/browser/sync/glue/theme_data_type_controller.h" | 36 #include "chrome/browser/sync/glue/theme_data_type_controller.h" |
| 36 #include "chrome/browser/sync/glue/typed_url_change_processor.h" | 37 #include "chrome/browser/sync/glue/typed_url_change_processor.h" |
| 37 #include "chrome/browser/sync/glue/typed_url_data_type_controller.h" | 38 #include "chrome/browser/sync/glue/typed_url_data_type_controller.h" |
| 38 #include "chrome/browser/sync/glue/typed_url_model_associator.h" | 39 #include "chrome/browser/sync/glue/typed_url_model_associator.h" |
| 39 #include "chrome/browser/sync/profile_sync_components_factory_impl.h" | 40 #include "chrome/browser/sync/profile_sync_components_factory_impl.h" |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 | 100 |
| 100 using browser_sync::AutofillDataTypeController; | 101 using browser_sync::AutofillDataTypeController; |
| 101 using browser_sync::AutofillProfileDataTypeController; | 102 using browser_sync::AutofillProfileDataTypeController; |
| 102 using browser_sync::BookmarkChangeProcessor; | 103 using browser_sync::BookmarkChangeProcessor; |
| 103 using browser_sync::BookmarkDataTypeController; | 104 using browser_sync::BookmarkDataTypeController; |
| 104 using browser_sync::BookmarkModelAssociator; | 105 using browser_sync::BookmarkModelAssociator; |
| 105 using browser_sync::ChromeReportUnrecoverableError; | 106 using browser_sync::ChromeReportUnrecoverableError; |
| 106 using browser_sync::ExtensionBackedDataTypeController; | 107 using browser_sync::ExtensionBackedDataTypeController; |
| 107 using browser_sync::ExtensionDataTypeController; | 108 using browser_sync::ExtensionDataTypeController; |
| 108 using browser_sync::ExtensionSettingDataTypeController; | 109 using browser_sync::ExtensionSettingDataTypeController; |
| 110 using browser_sync::HistoryDeleteDirectivesDataTypeController; |
| 109 using browser_sync::PasswordDataTypeController; | 111 using browser_sync::PasswordDataTypeController; |
| 110 using browser_sync::SearchEngineDataTypeController; | 112 using browser_sync::SearchEngineDataTypeController; |
| 111 using browser_sync::SessionDataTypeController; | 113 using browser_sync::SessionDataTypeController; |
| 112 using browser_sync::SyncBackendHost; | 114 using browser_sync::SyncBackendHost; |
| 113 using browser_sync::ThemeDataTypeController; | 115 using browser_sync::ThemeDataTypeController; |
| 114 using browser_sync::TypedUrlChangeProcessor; | 116 using browser_sync::TypedUrlChangeProcessor; |
| 115 using browser_sync::TypedUrlDataTypeController; | 117 using browser_sync::TypedUrlDataTypeController; |
| 116 using browser_sync::TypedUrlModelAssociator; | 118 using browser_sync::TypedUrlModelAssociator; |
| 117 using content::BrowserThread; | 119 using content::BrowserThread; |
| 118 using sync_driver::DataTypeController; | 120 using sync_driver::DataTypeController; |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 208 profile_->GetPrefs()->GetBoolean(prefs::kSavingBrowserHistoryDisabled); | 210 profile_->GetPrefs()->GetBoolean(prefs::kSavingBrowserHistoryDisabled); |
| 209 // TypedUrl sync is enabled by default. Register unless explicitly disabled, | 211 // TypedUrl sync is enabled by default. Register unless explicitly disabled, |
| 210 // or if saving history is disabled. | 212 // or if saving history is disabled. |
| 211 if (!disabled_types.Has(syncer::TYPED_URLS) && !history_disabled) { | 213 if (!disabled_types.Has(syncer::TYPED_URLS) && !history_disabled) { |
| 212 pss->RegisterDataTypeController( | 214 pss->RegisterDataTypeController( |
| 213 new TypedUrlDataTypeController(this, profile_, pss)); | 215 new TypedUrlDataTypeController(this, profile_, pss)); |
| 214 } | 216 } |
| 215 | 217 |
| 216 // Delete directive sync is enabled by default. Register unless full history | 218 // Delete directive sync is enabled by default. Register unless full history |
| 217 // sync is disabled. | 219 // sync is disabled. |
| 218 if (!disabled_types.Has(syncer::HISTORY_DELETE_DIRECTIVES)) { | 220 if (!disabled_types.Has(syncer::HISTORY_DELETE_DIRECTIVES) && |
| 221 !history_disabled) { |
| 219 pss->RegisterDataTypeController( | 222 pss->RegisterDataTypeController( |
| 220 new UIDataTypeController( | 223 new HistoryDeleteDirectivesDataTypeController(this, pss)); |
| 221 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI), | |
| 222 base::Bind(&ChromeReportUnrecoverableError), | |
| 223 syncer::HISTORY_DELETE_DIRECTIVES, | |
| 224 this)); | |
| 225 } | 224 } |
| 226 | 225 |
| 227 // Session sync is enabled by default. Register unless explicitly disabled. | 226 // Session sync is enabled by default. Register unless explicitly disabled. |
| 228 // This is also disabled if the browser history is disabled, because the | 227 // This is also disabled if the browser history is disabled, because the |
| 229 // tab sync data is added to the web history on the server. | 228 // tab sync data is added to the web history on the server. |
| 230 if (!disabled_types.Has(syncer::PROXY_TABS) && !history_disabled) { | 229 if (!disabled_types.Has(syncer::PROXY_TABS) && !history_disabled) { |
| 231 pss->RegisterDataTypeController(new ProxyDataTypeController( | 230 pss->RegisterDataTypeController(new ProxyDataTypeController( |
| 232 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI), | 231 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI), |
| 233 syncer::PROXY_TABS)); | 232 syncer::PROXY_TABS)); |
| 234 pss->RegisterDataTypeController( | 233 pss->RegisterDataTypeController( |
| 235 new SessionDataTypeController(this, | 234 new SessionDataTypeController(this, |
| 236 profile_, | 235 profile_, |
| 237 pss->GetSyncedWindowDelegatesGetter(), | 236 pss->GetSyncedWindowDelegatesGetter(), |
| 238 pss->GetLocalDeviceInfoProvider())); | 237 pss->GetLocalDeviceInfoProvider())); |
| 239 } | 238 } |
| 240 | 239 |
| 241 // Favicon sync is enabled by default. Register unless explicitly disabled. | 240 // Favicon sync is enabled by default. Register unless explicitly disabled. |
| 242 if (!disabled_types.Has(syncer::FAVICON_IMAGES) && | 241 if (!disabled_types.Has(syncer::FAVICON_IMAGES) && |
| 243 !disabled_types.Has(syncer::FAVICON_TRACKING)) { | 242 !disabled_types.Has(syncer::FAVICON_TRACKING) && |
| 243 !history_disabled) { |
| 244 // crbug/384552. We disable error uploading for this data types for now. | 244 // crbug/384552. We disable error uploading for this data types for now. |
| 245 pss->RegisterDataTypeController( | 245 pss->RegisterDataTypeController( |
| 246 new UIDataTypeController( | 246 new UIDataTypeController( |
| 247 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI), | 247 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI), |
| 248 base::Closure(), | 248 base::Closure(), |
| 249 syncer::FAVICON_IMAGES, | 249 syncer::FAVICON_IMAGES, |
| 250 this)); | 250 this)); |
| 251 pss->RegisterDataTypeController( | 251 pss->RegisterDataTypeController( |
| 252 new UIDataTypeController( | 252 new UIDataTypeController( |
| 253 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI), | 253 BrowserThread::GetMessageLoopProxyForThread(BrowserThread::UI), |
| (...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 404 profile_)); | 404 profile_)); |
| 405 #endif | 405 #endif |
| 406 } | 406 } |
| 407 | 407 |
| 408 DataTypeManager* ProfileSyncComponentsFactoryImpl::CreateDataTypeManager( | 408 DataTypeManager* ProfileSyncComponentsFactoryImpl::CreateDataTypeManager( |
| 409 const syncer::WeakHandle<syncer::DataTypeDebugInfoListener>& | 409 const syncer::WeakHandle<syncer::DataTypeDebugInfoListener>& |
| 410 debug_info_listener, | 410 debug_info_listener, |
| 411 const DataTypeController::TypeMap* controllers, | 411 const DataTypeController::TypeMap* controllers, |
| 412 const sync_driver::DataTypeEncryptionHandler* encryption_handler, | 412 const sync_driver::DataTypeEncryptionHandler* encryption_handler, |
| 413 SyncBackendHost* backend, | 413 SyncBackendHost* backend, |
| 414 DataTypeManagerObserver* observer, | 414 DataTypeManagerObserver* observer) { |
| 415 sync_driver::DataTypeStatusTable* data_type_status_table) { | |
| 416 return new DataTypeManagerImpl(base::Bind(ChromeReportUnrecoverableError), | 415 return new DataTypeManagerImpl(base::Bind(ChromeReportUnrecoverableError), |
| 417 debug_info_listener, | 416 debug_info_listener, |
| 418 controllers, | 417 controllers, |
| 419 encryption_handler, | 418 encryption_handler, |
| 420 backend, | 419 backend, |
| 421 observer, | 420 observer); |
| 422 data_type_status_table); | |
| 423 } | 421 } |
| 424 | 422 |
| 425 browser_sync::SyncBackendHost* | 423 browser_sync::SyncBackendHost* |
| 426 ProfileSyncComponentsFactoryImpl::CreateSyncBackendHost( | 424 ProfileSyncComponentsFactoryImpl::CreateSyncBackendHost( |
| 427 const std::string& name, | 425 const std::string& name, |
| 428 Profile* profile, | 426 Profile* profile, |
| 429 invalidation::InvalidationService* invalidator, | 427 invalidation::InvalidationService* invalidator, |
| 430 const base::WeakPtr<sync_driver::SyncPrefs>& sync_prefs, | 428 const base::WeakPtr<sync_driver::SyncPrefs>& sync_prefs, |
| 431 const base::FilePath& sync_folder) { | 429 const base::FilePath& sync_folder) { |
| 432 return new browser_sync::SyncBackendHostImpl(name, profile, invalidator, | 430 return new browser_sync::SyncBackendHostImpl(name, profile, invalidator, |
| (...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 680 new TypedUrlModelAssociator(profile_sync_service, | 678 new TypedUrlModelAssociator(profile_sync_service, |
| 681 history_backend, | 679 history_backend, |
| 682 error_handler); | 680 error_handler); |
| 683 TypedUrlChangeProcessor* change_processor = | 681 TypedUrlChangeProcessor* change_processor = |
| 684 new TypedUrlChangeProcessor(profile_, | 682 new TypedUrlChangeProcessor(profile_, |
| 685 model_associator, | 683 model_associator, |
| 686 history_backend, | 684 history_backend, |
| 687 error_handler); | 685 error_handler); |
| 688 return SyncComponents(model_associator, change_processor); | 686 return SyncComponents(model_associator, change_processor); |
| 689 } | 687 } |
| OLD | NEW |