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

Side by Side Diff: chrome/browser/sync/chrome_sync_client.cc

Issue 2376123003: [Sync] Move //components/sync to the syncer namespace. (Closed)
Patch Set: Fix tools and iOS. Created 4 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 #include "chrome/browser/sync/chrome_sync_client.h" 5 #include "chrome/browser/sync/chrome_sync_client.h"
6 6
7 #include <memory> 7 #include <memory>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 #include "components/wifi_sync/wifi_credential_syncable_service.h" 108 #include "components/wifi_sync/wifi_credential_syncable_service.h"
109 #include "components/wifi_sync/wifi_credential_syncable_service_factory.h" 109 #include "components/wifi_sync/wifi_credential_syncable_service_factory.h"
110 #endif 110 #endif
111 111
112 using content::BrowserThread; 112 using content::BrowserThread;
113 #if defined(ENABLE_EXTENSIONS) 113 #if defined(ENABLE_EXTENSIONS)
114 using browser_sync::ExtensionDataTypeController; 114 using browser_sync::ExtensionDataTypeController;
115 using browser_sync::ExtensionSettingDataTypeController; 115 using browser_sync::ExtensionSettingDataTypeController;
116 #endif 116 #endif
117 using browser_sync::SearchEngineDataTypeController; 117 using browser_sync::SearchEngineDataTypeController;
118 using sync_driver::UIDataTypeController; 118 using syncer::UIDataTypeController;
119 119
120 namespace browser_sync { 120 namespace browser_sync {
121 121
122 // Chrome implementation of SyncSessionsClient. Needs to be in a separate class 122 // Chrome implementation of SyncSessionsClient. Needs to be in a separate class
123 // due to possible multiple inheritance issues, wherein ChromeSyncClient might 123 // due to possible multiple inheritance issues, wherein ChromeSyncClient might
124 // inherit from other interfaces with same methods. 124 // inherit from other interfaces with same methods.
125 class SyncSessionsClientImpl : public sync_sessions::SyncSessionsClient { 125 class SyncSessionsClientImpl : public sync_sessions::SyncSessionsClient {
126 public: 126 public:
127 explicit SyncSessionsClientImpl(Profile* profile) : profile_(profile) { 127 explicit SyncSessionsClientImpl(Profile* profile) : profile_(profile) {
128 window_delegates_getter_.reset( 128 window_delegates_getter_.reset(
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
193 void ChromeSyncClient::Initialize() { 193 void ChromeSyncClient::Initialize() {
194 DCHECK_CURRENTLY_ON(BrowserThread::UI); 194 DCHECK_CURRENTLY_ON(BrowserThread::UI);
195 195
196 web_data_service_ = WebDataServiceFactory::GetAutofillWebDataForProfile( 196 web_data_service_ = WebDataServiceFactory::GetAutofillWebDataForProfile(
197 profile_, ServiceAccessType::IMPLICIT_ACCESS); 197 profile_, ServiceAccessType::IMPLICIT_ACCESS);
198 password_store_ = PasswordStoreFactory::GetForProfile( 198 password_store_ = PasswordStoreFactory::GetForProfile(
199 profile_, ServiceAccessType::IMPLICIT_ACCESS); 199 profile_, ServiceAccessType::IMPLICIT_ACCESS);
200 200
201 // Component factory may already be set in tests. 201 // Component factory may already be set in tests.
202 if (!GetSyncApiComponentFactory()) { 202 if (!GetSyncApiComponentFactory()) {
203 const GURL sync_service_url = GetSyncServiceURL( 203 const GURL sync_service_url = syncer::GetSyncServiceURL(
204 *base::CommandLine::ForCurrentProcess(), chrome::GetChannel()); 204 *base::CommandLine::ForCurrentProcess(), chrome::GetChannel());
205 ProfileOAuth2TokenService* token_service = 205 ProfileOAuth2TokenService* token_service =
206 ProfileOAuth2TokenServiceFactory::GetForProfile(profile_); 206 ProfileOAuth2TokenServiceFactory::GetForProfile(profile_);
207 net::URLRequestContextGetter* url_request_context_getter = 207 net::URLRequestContextGetter* url_request_context_getter =
208 profile_->GetRequestContext(); 208 profile_->GetRequestContext();
209 209
210 component_factory_.reset(new ProfileSyncComponentsFactoryImpl( 210 component_factory_.reset(new ProfileSyncComponentsFactoryImpl(
211 this, chrome::GetChannel(), chrome::GetVersionString(), 211 this, chrome::GetChannel(), chrome::GetVersionString(),
212 ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_TABLET, 212 ui::GetDeviceFormFactor() == ui::DEVICE_FORM_FACTOR_TABLET,
213 *base::CommandLine::ForCurrentProcess(), 213 *base::CommandLine::ForCurrentProcess(),
214 prefs::kSavingBrowserHistoryDisabled, sync_service_url, 214 prefs::kSavingBrowserHistoryDisabled, sync_service_url,
215 content::BrowserThread::GetTaskRunnerForThread( 215 content::BrowserThread::GetTaskRunnerForThread(
216 content::BrowserThread::UI), 216 content::BrowserThread::UI),
217 content::BrowserThread::GetTaskRunnerForThread( 217 content::BrowserThread::GetTaskRunnerForThread(
218 content::BrowserThread::DB), 218 content::BrowserThread::DB),
219 token_service, url_request_context_getter, web_data_service_, 219 token_service, url_request_context_getter, web_data_service_,
220 password_store_)); 220 password_store_));
221 } 221 }
222 } 222 }
223 223
224 sync_driver::SyncService* ChromeSyncClient::GetSyncService() { 224 syncer::SyncService* ChromeSyncClient::GetSyncService() {
225 DCHECK_CURRENTLY_ON(BrowserThread::UI); 225 DCHECK_CURRENTLY_ON(BrowserThread::UI);
226 return ProfileSyncServiceFactory::GetSyncServiceForBrowserContext(profile_); 226 return ProfileSyncServiceFactory::GetSyncServiceForBrowserContext(profile_);
227 } 227 }
228 228
229 PrefService* ChromeSyncClient::GetPrefService() { 229 PrefService* ChromeSyncClient::GetPrefService() {
230 DCHECK_CURRENTLY_ON(BrowserThread::UI); 230 DCHECK_CURRENTLY_ON(BrowserThread::UI);
231 return profile_->GetPrefs(); 231 return profile_->GetPrefs();
232 } 232 }
233 233
234 bookmarks::BookmarkModel* ChromeSyncClient::GetBookmarkModel() { 234 bookmarks::BookmarkModel* ChromeSyncClient::GetBookmarkModel() {
(...skipping 17 matching lines...) Expand all
252 DCHECK_CURRENTLY_ON(BrowserThread::UI); 252 DCHECK_CURRENTLY_ON(BrowserThread::UI);
253 return autofill::PersonalDataManagerFactory::GetForProfile(profile_); 253 return autofill::PersonalDataManagerFactory::GetForProfile(profile_);
254 } 254 }
255 255
256 base::Closure ChromeSyncClient::GetPasswordStateChangedCallback() { 256 base::Closure ChromeSyncClient::GetPasswordStateChangedCallback() {
257 return base::Bind( 257 return base::Bind(
258 &PasswordStoreFactory::OnPasswordsSyncedStatePotentiallyChanged, 258 &PasswordStoreFactory::OnPasswordsSyncedStatePotentiallyChanged,
259 base::Unretained(profile_)); 259 base::Unretained(profile_));
260 } 260 }
261 261
262 sync_driver::SyncApiComponentFactory::RegisterDataTypesMethod 262 syncer::SyncApiComponentFactory::RegisterDataTypesMethod
263 ChromeSyncClient::GetRegisterPlatformTypesCallback() { 263 ChromeSyncClient::GetRegisterPlatformTypesCallback() {
264 return base::Bind( 264 return base::Bind(
265 #if BUILDFLAG(ANDROID_JAVA_UI) 265 #if BUILDFLAG(ANDROID_JAVA_UI)
266 &ChromeSyncClient::RegisterAndroidDataTypes, 266 &ChromeSyncClient::RegisterAndroidDataTypes,
267 #else 267 #else
268 &ChromeSyncClient::RegisterDesktopDataTypes, 268 &ChromeSyncClient::RegisterDesktopDataTypes,
269 #endif // BUILDFLAG(ANDROID_JAVA_UI) 269 #endif // BUILDFLAG(ANDROID_JAVA_UI)
270 weak_ptr_factory_.GetWeakPtr()); 270 weak_ptr_factory_.GetWeakPtr());
271 } 271 }
272 272
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after
420 #endif 420 #endif
421 default: 421 default:
422 // The following datatypes still need to be transitioned to the 422 // The following datatypes still need to be transitioned to the
423 // syncer::SyncableService API: 423 // syncer::SyncableService API:
424 // Bookmarks 424 // Bookmarks
425 NOTREACHED(); 425 NOTREACHED();
426 return base::WeakPtr<syncer::SyncableService>(); 426 return base::WeakPtr<syncer::SyncableService>();
427 } 427 }
428 } 428 }
429 429
430 base::WeakPtr<syncer_v2::ModelTypeService> 430 base::WeakPtr<syncer::ModelTypeService>
431 ChromeSyncClient::GetModelTypeServiceForType(syncer::ModelType type) { 431 ChromeSyncClient::GetModelTypeServiceForType(syncer::ModelType type) {
432 switch (type) { 432 switch (type) {
433 case syncer::DEVICE_INFO: 433 case syncer::DEVICE_INFO:
434 return ProfileSyncServiceFactory::GetForProfile(profile_) 434 return ProfileSyncServiceFactory::GetForProfile(profile_)
435 ->GetDeviceInfoService() 435 ->GetDeviceInfoService()
436 ->AsWeakPtr(); 436 ->AsWeakPtr();
437 default: 437 default:
438 NOTREACHED(); 438 NOTREACHED();
439 return base::WeakPtr<syncer_v2::ModelTypeService>(); 439 return base::WeakPtr<syncer::ModelTypeService>();
440 } 440 }
441 } 441 }
442 442
443 scoped_refptr<syncer::ModelSafeWorker> 443 scoped_refptr<syncer::ModelSafeWorker>
444 ChromeSyncClient::CreateModelWorkerForGroup( 444 ChromeSyncClient::CreateModelWorkerForGroup(
445 syncer::ModelSafeGroup group, 445 syncer::ModelSafeGroup group,
446 syncer::WorkerLoopDestructionObserver* observer) { 446 syncer::WorkerLoopDestructionObserver* observer) {
447 DCHECK_CURRENTLY_ON(BrowserThread::UI); 447 DCHECK_CURRENTLY_ON(BrowserThread::UI);
448 switch (group) { 448 switch (group) {
449 case syncer::GROUP_DB: 449 case syncer::GROUP_DB:
450 return new BrowserThreadModelWorker( 450 return new syncer::BrowserThreadModelWorker(
451 BrowserThread::GetTaskRunnerForThread(BrowserThread::DB), 451 BrowserThread::GetTaskRunnerForThread(BrowserThread::DB),
452 syncer::GROUP_DB, observer); 452 syncer::GROUP_DB, observer);
453 case syncer::GROUP_FILE: 453 case syncer::GROUP_FILE:
454 return new BrowserThreadModelWorker( 454 return new syncer::BrowserThreadModelWorker(
455 BrowserThread::GetTaskRunnerForThread(BrowserThread::FILE), 455 BrowserThread::GetTaskRunnerForThread(BrowserThread::FILE),
456 syncer::GROUP_FILE, observer); 456 syncer::GROUP_FILE, observer);
457 case syncer::GROUP_UI: 457 case syncer::GROUP_UI:
458 return new UIModelWorker( 458 return new syncer::UIModelWorker(
459 BrowserThread::GetTaskRunnerForThread(BrowserThread::UI), observer); 459 BrowserThread::GetTaskRunnerForThread(BrowserThread::UI), observer);
460 case syncer::GROUP_PASSIVE: 460 case syncer::GROUP_PASSIVE:
461 return new syncer::PassiveModelWorker(observer); 461 return new syncer::PassiveModelWorker(observer);
462 case syncer::GROUP_HISTORY: { 462 case syncer::GROUP_HISTORY: {
463 history::HistoryService* history_service = GetHistoryService(); 463 history::HistoryService* history_service = GetHistoryService();
464 if (!history_service) 464 if (!history_service)
465 return nullptr; 465 return nullptr;
466 return new HistoryModelWorker( 466 return new HistoryModelWorker(
467 history_service->AsWeakPtr(), 467 history_service->AsWeakPtr(),
468 BrowserThread::GetTaskRunnerForThread(BrowserThread::UI), observer); 468 BrowserThread::GetTaskRunnerForThread(BrowserThread::UI), observer);
469 } 469 }
470 case syncer::GROUP_PASSWORD: { 470 case syncer::GROUP_PASSWORD: {
471 if (!password_store_.get()) 471 if (!password_store_.get())
472 return nullptr; 472 return nullptr;
473 return new PasswordModelWorker(password_store_, observer); 473 return new PasswordModelWorker(password_store_, observer);
474 } 474 }
475 default: 475 default:
476 return nullptr; 476 return nullptr;
477 } 477 }
478 } 478 }
479 479
480 sync_driver::SyncApiComponentFactory* 480 syncer::SyncApiComponentFactory*
481 ChromeSyncClient::GetSyncApiComponentFactory() { 481 ChromeSyncClient::GetSyncApiComponentFactory() {
482 return component_factory_.get(); 482 return component_factory_.get();
483 } 483 }
484 484
485 void ChromeSyncClient::SetSyncApiComponentFactoryForTesting( 485 void ChromeSyncClient::SetSyncApiComponentFactoryForTesting(
486 std::unique_ptr<sync_driver::SyncApiComponentFactory> component_factory) { 486 std::unique_ptr<syncer::SyncApiComponentFactory> component_factory) {
487 component_factory_ = std::move(component_factory); 487 component_factory_ = std::move(component_factory);
488 } 488 }
489 489
490 // static 490 // static
491 void ChromeSyncClient::GetDeviceInfoTrackers( 491 void ChromeSyncClient::GetDeviceInfoTrackers(
492 std::vector<const sync_driver::DeviceInfoTracker*>* trackers) { 492 std::vector<const syncer::DeviceInfoTracker*>* trackers) {
493 DCHECK(trackers); 493 DCHECK(trackers);
494 ProfileManager* profile_manager = g_browser_process->profile_manager(); 494 ProfileManager* profile_manager = g_browser_process->profile_manager();
495 std::vector<Profile*> profile_list = profile_manager->GetLoadedProfiles(); 495 std::vector<Profile*> profile_list = profile_manager->GetLoadedProfiles();
496 for (Profile* profile : profile_list) { 496 for (Profile* profile : profile_list) {
497 const browser_sync::ProfileSyncService* profile_sync_service = 497 const browser_sync::ProfileSyncService* profile_sync_service =
498 ProfileSyncServiceFactory::GetForProfile(profile); 498 ProfileSyncServiceFactory::GetForProfile(profile);
499 if (profile_sync_service != nullptr) { 499 if (profile_sync_service != nullptr) {
500 const sync_driver::DeviceInfoTracker* tracker = 500 const syncer::DeviceInfoTracker* tracker =
501 profile_sync_service->GetDeviceInfoTracker(); 501 profile_sync_service->GetDeviceInfoTracker();
502 if (tracker != nullptr) { 502 if (tracker != nullptr) {
503 // Even when sync is disabled and/or user is signed out, a tracker will 503 // Even when sync is disabled and/or user is signed out, a tracker will
504 // still be present. It will only be missing when the ProfileSyncService 504 // still be present. It will only be missing when the ProfileSyncService
505 // has not sufficiently initialized yet. 505 // has not sufficiently initialized yet.
506 trackers->push_back(tracker); 506 trackers->push_back(tracker);
507 } 507 }
508 } 508 }
509 } 509 }
510 } 510 }
511 511
512 void ChromeSyncClient::RegisterDesktopDataTypes( 512 void ChromeSyncClient::RegisterDesktopDataTypes(
513 sync_driver::SyncService* sync_service, 513 syncer::SyncService* sync_service,
514 syncer::ModelTypeSet disabled_types, 514 syncer::ModelTypeSet disabled_types,
515 syncer::ModelTypeSet enabled_types) { 515 syncer::ModelTypeSet enabled_types) {
516 base::Closure error_callback = 516 base::Closure error_callback =
517 base::Bind(&ChromeReportUnrecoverableError, chrome::GetChannel()); 517 base::Bind(&syncer::ChromeReportUnrecoverableError, chrome::GetChannel());
518 518
519 #if defined(ENABLE_EXTENSIONS) 519 #if defined(ENABLE_EXTENSIONS)
520 // App sync is enabled by default. Register unless explicitly 520 // App sync is enabled by default. Register unless explicitly
521 // disabled. 521 // disabled.
522 if (!disabled_types.Has(syncer::APPS)) { 522 if (!disabled_types.Has(syncer::APPS)) {
523 sync_service->RegisterDataTypeController( 523 sync_service->RegisterDataTypeController(
524 base::MakeUnique<ExtensionDataTypeController>( 524 base::MakeUnique<ExtensionDataTypeController>(
525 syncer::APPS, error_callback, this, profile_)); 525 syncer::APPS, error_callback, this, profile_));
526 } 526 }
527 527
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
612 error_callback, this)); 612 error_callback, this));
613 } 613 }
614 // TODO(lgcheng): Add switch for this. 614 // TODO(lgcheng): Add switch for this.
615 sync_service->RegisterDataTypeController( 615 sync_service->RegisterDataTypeController(
616 base::MakeUnique<ArcPackageSyncDataTypeController>( 616 base::MakeUnique<ArcPackageSyncDataTypeController>(
617 syncer::ARC_PACKAGE, error_callback, this, profile_)); 617 syncer::ARC_PACKAGE, error_callback, this, profile_));
618 #endif 618 #endif
619 } 619 }
620 620
621 void ChromeSyncClient::RegisterAndroidDataTypes( 621 void ChromeSyncClient::RegisterAndroidDataTypes(
622 sync_driver::SyncService* sync_service, 622 syncer::SyncService* sync_service,
623 syncer::ModelTypeSet disabled_types, 623 syncer::ModelTypeSet disabled_types,
624 syncer::ModelTypeSet enabled_types) { 624 syncer::ModelTypeSet enabled_types) {
625 base::Closure error_callback = 625 base::Closure error_callback =
626 base::Bind(&ChromeReportUnrecoverableError, chrome::GetChannel()); 626 base::Bind(&syncer::ChromeReportUnrecoverableError, chrome::GetChannel());
627 #if defined(ENABLE_SUPERVISED_USERS) 627 #if defined(ENABLE_SUPERVISED_USERS)
628 sync_service->RegisterDataTypeController( 628 sync_service->RegisterDataTypeController(
629 base::MakeUnique<SupervisedUserSyncDataTypeController>( 629 base::MakeUnique<SupervisedUserSyncDataTypeController>(
630 syncer::SUPERVISED_USER_SETTINGS, error_callback, this, profile_)); 630 syncer::SUPERVISED_USER_SETTINGS, error_callback, this, profile_));
631 sync_service->RegisterDataTypeController( 631 sync_service->RegisterDataTypeController(
632 base::MakeUnique<SupervisedUserSyncDataTypeController>( 632 base::MakeUnique<SupervisedUserSyncDataTypeController>(
633 syncer::SUPERVISED_USER_WHITELISTS, error_callback, this, profile_)); 633 syncer::SUPERVISED_USER_WHITELISTS, error_callback, this, profile_));
634 #endif 634 #endif
635 } 635 }
636 636
637 } // namespace browser_sync 637 } // namespace browser_sync
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698