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

Side by Side Diff: chrome/browser/sync_file_system/drive_backend/sync_engine.cc

Issue 2826943002: Rewrite base::Bind to base::BindOnce with base_bind_rewriters in //chrome/browser/sync_file_system (Closed)
Patch Set: Created 3 years, 8 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 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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_file_system/drive_backend/sync_engine.h" 5 #include "chrome/browser/sync_file_system/drive_backend/sync_engine.h"
6 6
7 #include <utility> 7 #include <utility>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
119 119
120 void OnPendingFileListUpdated(int item_count) override { 120 void OnPendingFileListUpdated(int item_count) override {
121 if (ui_task_runner_->RunsTasksOnCurrentThread()) { 121 if (ui_task_runner_->RunsTasksOnCurrentThread()) {
122 if (sync_engine_) 122 if (sync_engine_)
123 sync_engine_->OnPendingFileListUpdated(item_count); 123 sync_engine_->OnPendingFileListUpdated(item_count);
124 return; 124 return;
125 } 125 }
126 126
127 DCHECK(sequence_checker_.CalledOnValidSequence()); 127 DCHECK(sequence_checker_.CalledOnValidSequence());
128 ui_task_runner_->PostTask( 128 ui_task_runner_->PostTask(
129 FROM_HERE, 129 FROM_HERE, base::BindOnce(&SyncEngine::OnPendingFileListUpdated,
130 base::Bind(&SyncEngine::OnPendingFileListUpdated, 130 sync_engine_, item_count));
131 sync_engine_,
132 item_count));
133 } 131 }
134 132
135 void OnFileStatusChanged(const storage::FileSystemURL& url, 133 void OnFileStatusChanged(const storage::FileSystemURL& url,
136 SyncFileType file_type, 134 SyncFileType file_type,
137 SyncFileStatus file_status, 135 SyncFileStatus file_status,
138 SyncAction sync_action, 136 SyncAction sync_action,
139 SyncDirection direction) override { 137 SyncDirection direction) override {
140 if (ui_task_runner_->RunsTasksOnCurrentThread()) { 138 if (ui_task_runner_->RunsTasksOnCurrentThread()) {
141 if (sync_engine_) 139 if (sync_engine_)
142 sync_engine_->OnFileStatusChanged( 140 sync_engine_->OnFileStatusChanged(
143 url, file_type, file_status, sync_action, direction); 141 url, file_type, file_status, sync_action, direction);
144 return; 142 return;
145 } 143 }
146 144
147 DCHECK(sequence_checker_.CalledOnValidSequence()); 145 DCHECK(sequence_checker_.CalledOnValidSequence());
148 ui_task_runner_->PostTask( 146 ui_task_runner_->PostTask(
149 FROM_HERE, 147 FROM_HERE,
150 base::Bind(&SyncEngine::OnFileStatusChanged, 148 base::BindOnce(&SyncEngine::OnFileStatusChanged, sync_engine_, url,
151 sync_engine_, 149 file_type, file_status, sync_action, direction));
152 url, file_type, file_status, sync_action, direction));
153 } 150 }
154 151
155 void UpdateServiceState(RemoteServiceState state, 152 void UpdateServiceState(RemoteServiceState state,
156 const std::string& description) override { 153 const std::string& description) override {
157 if (ui_task_runner_->RunsTasksOnCurrentThread()) { 154 if (ui_task_runner_->RunsTasksOnCurrentThread()) {
158 if (sync_engine_) 155 if (sync_engine_)
159 sync_engine_->UpdateServiceState(state, description); 156 sync_engine_->UpdateServiceState(state, description);
160 return; 157 return;
161 } 158 }
162 159
163 DCHECK(sequence_checker_.CalledOnValidSequence()); 160 DCHECK(sequence_checker_.CalledOnValidSequence());
164 ui_task_runner_->PostTask( 161 ui_task_runner_->PostTask(
165 FROM_HERE, 162 FROM_HERE, base::BindOnce(&SyncEngine::UpdateServiceState, sync_engine_,
166 base::Bind(&SyncEngine::UpdateServiceState, 163 state, description));
167 sync_engine_, state, description));
168 } 164 }
169 165
170 void DetachFromSequence() { 166 void DetachFromSequence() {
171 sequence_checker_.DetachFromSequence(); 167 sequence_checker_.DetachFromSequence();
172 } 168 }
173 169
174 private: 170 private:
175 scoped_refptr<base::SequencedTaskRunner> ui_task_runner_; 171 scoped_refptr<base::SequencedTaskRunner> ui_task_runner_;
176 base::WeakPtr<SyncEngine> sync_engine_; 172 base::WeakPtr<SyncEngine> sync_engine_;
177 173
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 sync_worker.reset(new SyncWorker( 334 sync_worker.reset(new SyncWorker(
339 sync_file_system_dir_, 335 sync_file_system_dir_,
340 extension_service_weak_ptr, 336 extension_service_weak_ptr,
341 env_override_)); 337 env_override_));
342 } 338 }
343 339
344 sync_worker_ = std::move(sync_worker); 340 sync_worker_ = std::move(sync_worker);
345 sync_worker_->AddObserver(worker_observer_.get()); 341 sync_worker_->AddObserver(worker_observer_.get());
346 342
347 worker_task_runner_->PostTask( 343 worker_task_runner_->PostTask(
348 FROM_HERE, 344 FROM_HERE, base::BindOnce(&SyncWorkerInterface::Initialize,
349 base::Bind(&SyncWorkerInterface::Initialize, 345 base::Unretained(sync_worker_.get()),
350 base::Unretained(sync_worker_.get()), 346 base::Passed(&sync_engine_context)));
351 base::Passed(&sync_engine_context)));
352 if (remote_change_processor_) 347 if (remote_change_processor_)
353 SetRemoteChangeProcessor(remote_change_processor_); 348 SetRemoteChangeProcessor(remote_change_processor_);
354 349
355 drive_service_->AddObserver(this); 350 drive_service_->AddObserver(this);
356 351
357 service_state_ = REMOTE_SERVICE_TEMPORARY_UNAVAILABLE; 352 service_state_ = REMOTE_SERVICE_TEMPORARY_UNAVAILABLE;
358 OnNetworkChanged(net::NetworkChangeNotifier::GetConnectionType()); 353 OnNetworkChanged(net::NetworkChangeNotifier::GetConnectionType());
359 if (drive_service_->HasRefreshToken()) 354 if (drive_service_->HasRefreshToken())
360 OnReadyToSendRequests(); 355 OnReadyToSendRequests();
361 else 356 else
(...skipping 18 matching lines...) Expand all
380 else 375 else
381 callback.Run(SYNC_STATUS_ABORT); 376 callback.Run(SYNC_STATUS_ABORT);
382 return; 377 return;
383 } 378 }
384 379
385 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread( 380 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread(
386 FROM_HERE, base::Bind(&DidRegisterOrigin, base::TimeTicks::Now(), 381 FROM_HERE, base::Bind(&DidRegisterOrigin, base::TimeTicks::Now(),
387 TrackCallback(callback))); 382 TrackCallback(callback)));
388 383
389 worker_task_runner_->PostTask( 384 worker_task_runner_->PostTask(
390 FROM_HERE, 385 FROM_HERE, base::BindOnce(&SyncWorkerInterface::RegisterOrigin,
391 base::Bind(&SyncWorkerInterface::RegisterOrigin, 386 base::Unretained(sync_worker_.get()), origin,
392 base::Unretained(sync_worker_.get()), 387 relayed_callback));
393 origin, relayed_callback));
394 } 388 }
395 389
396 void SyncEngine::EnableOrigin( 390 void SyncEngine::EnableOrigin(
397 const GURL& origin, const SyncStatusCallback& callback) { 391 const GURL& origin, const SyncStatusCallback& callback) {
398 if (!sync_worker_) { 392 if (!sync_worker_) {
399 // It's safe to return OK immediately since this is also checked in 393 // It's safe to return OK immediately since this is also checked in
400 // SyncWorker initialization. 394 // SyncWorker initialization.
401 callback.Run(SYNC_STATUS_OK); 395 callback.Run(SYNC_STATUS_OK);
402 return; 396 return;
403 } 397 }
404 398
405 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread( 399 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread(
406 FROM_HERE, TrackCallback(callback)); 400 FROM_HERE, TrackCallback(callback));
407 401
408 worker_task_runner_->PostTask( 402 worker_task_runner_->PostTask(
409 FROM_HERE, 403 FROM_HERE, base::BindOnce(&SyncWorkerInterface::EnableOrigin,
410 base::Bind(&SyncWorkerInterface::EnableOrigin, 404 base::Unretained(sync_worker_.get()), origin,
411 base::Unretained(sync_worker_.get()), 405 relayed_callback));
412 origin, relayed_callback));
413 } 406 }
414 407
415 void SyncEngine::DisableOrigin( 408 void SyncEngine::DisableOrigin(
416 const GURL& origin, const SyncStatusCallback& callback) { 409 const GURL& origin, const SyncStatusCallback& callback) {
417 if (!sync_worker_) { 410 if (!sync_worker_) {
418 // It's safe to return OK immediately since this is also checked in 411 // It's safe to return OK immediately since this is also checked in
419 // SyncWorker initialization. 412 // SyncWorker initialization.
420 callback.Run(SYNC_STATUS_OK); 413 callback.Run(SYNC_STATUS_OK);
421 return; 414 return;
422 } 415 }
423 416
424 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread( 417 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread(
425 FROM_HERE, TrackCallback(callback)); 418 FROM_HERE, TrackCallback(callback));
426 419
427 worker_task_runner_->PostTask( 420 worker_task_runner_->PostTask(
428 FROM_HERE, 421 FROM_HERE, base::BindOnce(&SyncWorkerInterface::DisableOrigin,
429 base::Bind(&SyncWorkerInterface::DisableOrigin, 422 base::Unretained(sync_worker_.get()), origin,
430 base::Unretained(sync_worker_.get()), 423 relayed_callback));
431 origin,
432 relayed_callback));
433 } 424 }
434 425
435 void SyncEngine::UninstallOrigin( 426 void SyncEngine::UninstallOrigin(
436 const GURL& origin, 427 const GURL& origin,
437 UninstallFlag flag, 428 UninstallFlag flag,
438 const SyncStatusCallback& callback) { 429 const SyncStatusCallback& callback) {
439 if (!sync_worker_) { 430 if (!sync_worker_) {
440 // It's safe to return OK immediately since this is also checked in 431 // It's safe to return OK immediately since this is also checked in
441 // SyncWorker initialization. 432 // SyncWorker initialization.
442 callback.Run(SYNC_STATUS_OK); 433 callback.Run(SYNC_STATUS_OK);
443 return; 434 return;
444 } 435 }
445 436
446 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread( 437 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread(
447 FROM_HERE, TrackCallback(callback)); 438 FROM_HERE, TrackCallback(callback));
448 worker_task_runner_->PostTask( 439 worker_task_runner_->PostTask(
449 FROM_HERE, 440 FROM_HERE, base::BindOnce(&SyncWorkerInterface::UninstallOrigin,
450 base::Bind(&SyncWorkerInterface::UninstallOrigin, 441 base::Unretained(sync_worker_.get()), origin,
451 base::Unretained(sync_worker_.get()), 442 flag, relayed_callback));
452 origin, flag, relayed_callback));
453 } 443 }
454 444
455 void SyncEngine::ProcessRemoteChange(const SyncFileCallback& callback) { 445 void SyncEngine::ProcessRemoteChange(const SyncFileCallback& callback) {
456 if (GetCurrentState() == REMOTE_SERVICE_DISABLED) { 446 if (GetCurrentState() == REMOTE_SERVICE_DISABLED) {
457 callback.Run(SYNC_STATUS_SYNC_DISABLED, storage::FileSystemURL()); 447 callback.Run(SYNC_STATUS_SYNC_DISABLED, storage::FileSystemURL());
458 return; 448 return;
459 } 449 }
460 450
461 base::Closure abort_closure = 451 base::Closure abort_closure =
462 base::Bind(callback, SYNC_STATUS_ABORT, storage::FileSystemURL()); 452 base::Bind(callback, SYNC_STATUS_ABORT, storage::FileSystemURL());
463 453
464 if (!sync_worker_) { 454 if (!sync_worker_) {
465 abort_closure.Run(); 455 abort_closure.Run();
466 return; 456 return;
467 } 457 }
468 458
469 SyncFileCallback tracked_callback = callback_tracker_.Register( 459 SyncFileCallback tracked_callback = callback_tracker_.Register(
470 abort_closure, callback); 460 abort_closure, callback);
471 SyncFileCallback relayed_callback = RelayCallbackToCurrentThread( 461 SyncFileCallback relayed_callback = RelayCallbackToCurrentThread(
472 FROM_HERE, tracked_callback); 462 FROM_HERE, tracked_callback);
473 worker_task_runner_->PostTask( 463 worker_task_runner_->PostTask(
474 FROM_HERE, 464 FROM_HERE,
475 base::Bind(&SyncWorkerInterface::ProcessRemoteChange, 465 base::BindOnce(&SyncWorkerInterface::ProcessRemoteChange,
476 base::Unretained(sync_worker_.get()), 466 base::Unretained(sync_worker_.get()), relayed_callback));
477 relayed_callback));
478 } 467 }
479 468
480 void SyncEngine::SetRemoteChangeProcessor(RemoteChangeProcessor* processor) { 469 void SyncEngine::SetRemoteChangeProcessor(RemoteChangeProcessor* processor) {
481 remote_change_processor_ = processor; 470 remote_change_processor_ = processor;
482 471
483 if (!sync_worker_) 472 if (!sync_worker_)
484 return; 473 return;
485 474
486 remote_change_processor_wrapper_.reset( 475 remote_change_processor_wrapper_.reset(
487 new RemoteChangeProcessorWrapper(processor)); 476 new RemoteChangeProcessorWrapper(processor));
488 477
489 remote_change_processor_on_worker_.reset(new RemoteChangeProcessorOnWorker( 478 remote_change_processor_on_worker_.reset(new RemoteChangeProcessorOnWorker(
490 remote_change_processor_wrapper_->AsWeakPtr(), 479 remote_change_processor_wrapper_->AsWeakPtr(),
491 ui_task_runner_.get(), 480 ui_task_runner_.get(),
492 worker_task_runner_.get())); 481 worker_task_runner_.get()));
493 482
494 worker_task_runner_->PostTask( 483 worker_task_runner_->PostTask(
495 FROM_HERE, 484 FROM_HERE, base::BindOnce(&SyncWorkerInterface::SetRemoteChangeProcessor,
496 base::Bind(&SyncWorkerInterface::SetRemoteChangeProcessor, 485 base::Unretained(sync_worker_.get()),
497 base::Unretained(sync_worker_.get()), 486 remote_change_processor_on_worker_.get()));
498 remote_change_processor_on_worker_.get()));
499 } 487 }
500 488
501 LocalChangeProcessor* SyncEngine::GetLocalChangeProcessor() { 489 LocalChangeProcessor* SyncEngine::GetLocalChangeProcessor() {
502 return this; 490 return this;
503 } 491 }
504 492
505 RemoteServiceState SyncEngine::GetCurrentState() const { 493 RemoteServiceState SyncEngine::GetCurrentState() const {
506 if (!sync_enabled_) 494 if (!sync_enabled_)
507 return REMOTE_SERVICE_DISABLED; 495 return REMOTE_SERVICE_DISABLED;
508 if (!has_refresh_token_) 496 if (!has_refresh_token_)
(...skipping 10 matching lines...) Expand all
519 return; 507 return;
520 } 508 }
521 509
522 StatusMapCallback tracked_callback = 510 StatusMapCallback tracked_callback =
523 callback_tracker_.Register(abort_closure, callback); 511 callback_tracker_.Register(abort_closure, callback);
524 StatusMapCallback relayed_callback = 512 StatusMapCallback relayed_callback =
525 RelayCallbackToCurrentThread(FROM_HERE, tracked_callback); 513 RelayCallbackToCurrentThread(FROM_HERE, tracked_callback);
526 514
527 worker_task_runner_->PostTask( 515 worker_task_runner_->PostTask(
528 FROM_HERE, 516 FROM_HERE,
529 base::Bind(&SyncWorkerInterface::GetOriginStatusMap, 517 base::BindOnce(&SyncWorkerInterface::GetOriginStatusMap,
530 base::Unretained(sync_worker_.get()), 518 base::Unretained(sync_worker_.get()), relayed_callback));
531 relayed_callback));
532 } 519 }
533 520
534 void SyncEngine::DumpFiles(const GURL& origin, 521 void SyncEngine::DumpFiles(const GURL& origin,
535 const ListCallback& callback) { 522 const ListCallback& callback) {
536 base::Closure abort_closure = 523 base::Closure abort_closure =
537 base::Bind(callback, base::Passed(std::unique_ptr<base::ListValue>())); 524 base::Bind(callback, base::Passed(std::unique_ptr<base::ListValue>()));
538 525
539 if (!sync_worker_) { 526 if (!sync_worker_) {
540 abort_closure.Run(); 527 abort_closure.Run();
541 return; 528 return;
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
579 if (sync_enabled_) { 566 if (sync_enabled_) {
580 if (!sync_worker_) 567 if (!sync_worker_)
581 Initialize(); 568 Initialize();
582 569
583 // Have no login credential. 570 // Have no login credential.
584 if (!sync_worker_) 571 if (!sync_worker_)
585 return; 572 return;
586 573
587 worker_task_runner_->PostTask( 574 worker_task_runner_->PostTask(
588 FROM_HERE, 575 FROM_HERE,
589 base::Bind(&SyncWorkerInterface::SetSyncEnabled, 576 base::BindOnce(&SyncWorkerInterface::SetSyncEnabled,
590 base::Unretained(sync_worker_.get()), 577 base::Unretained(sync_worker_.get()), sync_enabled_));
591 sync_enabled_));
592 return; 578 return;
593 } 579 }
594 580
595 if (!sync_worker_) 581 if (!sync_worker_)
596 return; 582 return;
597 583
598 // TODO(tzik): Consider removing SyncWorkerInterface::SetSyncEnabled and 584 // TODO(tzik): Consider removing SyncWorkerInterface::SetSyncEnabled and
599 // let SyncEngine handle the flag. 585 // let SyncEngine handle the flag.
600 worker_task_runner_->PostTask( 586 worker_task_runner_->PostTask(
601 FROM_HERE, 587 FROM_HERE,
602 base::Bind(&SyncWorkerInterface::SetSyncEnabled, 588 base::BindOnce(&SyncWorkerInterface::SetSyncEnabled,
603 base::Unretained(sync_worker_.get()), 589 base::Unretained(sync_worker_.get()), sync_enabled_));
604 sync_enabled_));
605 Reset(); 590 Reset();
606 } 591 }
607 592
608 void SyncEngine::PromoteDemotedChanges(const base::Closure& callback) { 593 void SyncEngine::PromoteDemotedChanges(const base::Closure& callback) {
609 if (!sync_worker_) { 594 if (!sync_worker_) {
610 callback.Run(); 595 callback.Run();
611 return; 596 return;
612 } 597 }
613 598
614 base::Closure relayed_callback = RelayCallbackToCurrentThread( 599 base::Closure relayed_callback = RelayCallbackToCurrentThread(
615 FROM_HERE, callback_tracker_.Register(callback, callback)); 600 FROM_HERE, callback_tracker_.Register(callback, callback));
616 601
617 worker_task_runner_->PostTask( 602 worker_task_runner_->PostTask(
618 FROM_HERE, 603 FROM_HERE,
619 base::Bind(&SyncWorkerInterface::PromoteDemotedChanges, 604 base::BindOnce(&SyncWorkerInterface::PromoteDemotedChanges,
620 base::Unretained(sync_worker_.get()), 605 base::Unretained(sync_worker_.get()), relayed_callback));
621 relayed_callback));
622 } 606 }
623 607
624 void SyncEngine::ApplyLocalChange(const FileChange& local_change, 608 void SyncEngine::ApplyLocalChange(const FileChange& local_change,
625 const base::FilePath& local_path, 609 const base::FilePath& local_path,
626 const SyncFileMetadata& local_metadata, 610 const SyncFileMetadata& local_metadata,
627 const storage::FileSystemURL& url, 611 const storage::FileSystemURL& url,
628 const SyncStatusCallback& callback) { 612 const SyncStatusCallback& callback) {
629 if (GetCurrentState() == REMOTE_SERVICE_DISABLED) { 613 if (GetCurrentState() == REMOTE_SERVICE_DISABLED) {
630 callback.Run(SYNC_STATUS_SYNC_DISABLED); 614 callback.Run(SYNC_STATUS_SYNC_DISABLED);
631 return; 615 return;
632 } 616 }
633 617
634 if (!sync_worker_) { 618 if (!sync_worker_) {
635 callback.Run(SYNC_STATUS_ABORT); 619 callback.Run(SYNC_STATUS_ABORT);
636 return; 620 return;
637 } 621 }
638 622
639 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread( 623 SyncStatusCallback relayed_callback = RelayCallbackToCurrentThread(
640 FROM_HERE, TrackCallback(callback)); 624 FROM_HERE, TrackCallback(callback));
641 worker_task_runner_->PostTask( 625 worker_task_runner_->PostTask(
642 FROM_HERE, 626 FROM_HERE,
643 base::Bind(&SyncWorkerInterface::ApplyLocalChange, 627 base::BindOnce(&SyncWorkerInterface::ApplyLocalChange,
644 base::Unretained(sync_worker_.get()), 628 base::Unretained(sync_worker_.get()), local_change,
645 local_change, 629 local_path, local_metadata, url, relayed_callback));
646 local_path,
647 local_metadata,
648 url,
649 relayed_callback));
650 } 630 }
651 631
652 void SyncEngine::OnNotificationReceived() { 632 void SyncEngine::OnNotificationReceived() {
653 if (!sync_worker_) 633 if (!sync_worker_)
654 return; 634 return;
655 635
656 worker_task_runner_->PostTask( 636 worker_task_runner_->PostTask(
657 FROM_HERE, 637 FROM_HERE,
658 base::Bind(&SyncWorkerInterface::ActivateService, 638 base::BindOnce(&SyncWorkerInterface::ActivateService,
659 base::Unretained(sync_worker_.get()), 639 base::Unretained(sync_worker_.get()), REMOTE_SERVICE_OK,
660 REMOTE_SERVICE_OK, 640 "Got push notification for Drive"));
661 "Got push notification for Drive"));
662 } 641 }
663 642
664 void SyncEngine::OnPushNotificationEnabled(bool /* enabled */) {} 643 void SyncEngine::OnPushNotificationEnabled(bool /* enabled */) {}
665 644
666 void SyncEngine::OnReadyToSendRequests() { 645 void SyncEngine::OnReadyToSendRequests() {
667 has_refresh_token_ = true; 646 has_refresh_token_ = true;
668 if (!sync_worker_) 647 if (!sync_worker_)
669 return; 648 return;
670 649
671 worker_task_runner_->PostTask( 650 worker_task_runner_->PostTask(
672 FROM_HERE, 651 FROM_HERE, base::BindOnce(&SyncWorkerInterface::ActivateService,
673 base::Bind(&SyncWorkerInterface::ActivateService, 652 base::Unretained(sync_worker_.get()),
674 base::Unretained(sync_worker_.get()), 653 REMOTE_SERVICE_OK, "Authenticated"));
675 REMOTE_SERVICE_OK,
676 "Authenticated"));
677 } 654 }
678 655
679 void SyncEngine::OnRefreshTokenInvalid() { 656 void SyncEngine::OnRefreshTokenInvalid() {
680 has_refresh_token_ = false; 657 has_refresh_token_ = false;
681 if (!sync_worker_) 658 if (!sync_worker_)
682 return; 659 return;
683 660
684 worker_task_runner_->PostTask( 661 worker_task_runner_->PostTask(
685 FROM_HERE, 662 FROM_HERE, base::BindOnce(&SyncWorkerInterface::DeactivateService,
686 base::Bind(&SyncWorkerInterface::DeactivateService, 663 base::Unretained(sync_worker_.get()),
687 base::Unretained(sync_worker_.get()), 664 "Found invalid refresh token."));
688 "Found invalid refresh token."));
689 } 665 }
690 666
691 void SyncEngine::OnNetworkChanged( 667 void SyncEngine::OnNetworkChanged(
692 net::NetworkChangeNotifier::ConnectionType type) { 668 net::NetworkChangeNotifier::ConnectionType type) {
693 if (!sync_worker_) 669 if (!sync_worker_)
694 return; 670 return;
695 671
696 bool network_available_old = network_available_; 672 bool network_available_old = network_available_;
697 network_available_ = (type != net::NetworkChangeNotifier::CONNECTION_NONE); 673 network_available_ = (type != net::NetworkChangeNotifier::CONNECTION_NONE);
698 674
699 if (!network_available_old && network_available_) { 675 if (!network_available_old && network_available_) {
700 worker_task_runner_->PostTask( 676 worker_task_runner_->PostTask(
701 FROM_HERE, 677 FROM_HERE, base::BindOnce(&SyncWorkerInterface::ActivateService,
702 base::Bind(&SyncWorkerInterface::ActivateService, 678 base::Unretained(sync_worker_.get()),
703 base::Unretained(sync_worker_.get()), 679 REMOTE_SERVICE_OK, "Connected"));
704 REMOTE_SERVICE_OK,
705 "Connected"));
706 } else if (network_available_old && !network_available_) { 680 } else if (network_available_old && !network_available_) {
707 worker_task_runner_->PostTask( 681 worker_task_runner_->PostTask(
708 FROM_HERE, 682 FROM_HERE,
709 base::Bind(&SyncWorkerInterface::DeactivateService, 683 base::BindOnce(&SyncWorkerInterface::DeactivateService,
710 base::Unretained(sync_worker_.get()), 684 base::Unretained(sync_worker_.get()), "Disconnected"));
711 "Disconnected"));
712 } 685 }
713 } 686 }
714 687
715 void SyncEngine::GoogleSigninFailed(const GoogleServiceAuthError& error) { 688 void SyncEngine::GoogleSigninFailed(const GoogleServiceAuthError& error) {
716 Reset(); 689 Reset();
717 UpdateServiceState(REMOTE_SERVICE_AUTHENTICATION_REQUIRED, 690 UpdateServiceState(REMOTE_SERVICE_AUTHENTICATION_REQUIRED,
718 "Failed to sign in."); 691 "Failed to sign in.");
719 } 692 }
720 693
721 void SyncEngine::GoogleSigninSucceeded(const std::string& account_id, 694 void SyncEngine::GoogleSigninSucceeded(const std::string& account_id,
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
798 771
799 SyncStatusCallback SyncEngine::TrackCallback( 772 SyncStatusCallback SyncEngine::TrackCallback(
800 const SyncStatusCallback& callback) { 773 const SyncStatusCallback& callback) {
801 return callback_tracker_.Register( 774 return callback_tracker_.Register(
802 base::Bind(callback, SYNC_STATUS_ABORT), 775 base::Bind(callback, SYNC_STATUS_ABORT),
803 callback); 776 callback);
804 } 777 }
805 778
806 } // namespace drive_backend 779 } // namespace drive_backend
807 } // namespace sync_file_system 780 } // namespace sync_file_system
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698