| 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 "chrome/browser/sync_file_system/sync_file_system_service.h" | 5 #include "chrome/browser/sync_file_system/sync_file_system_service.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/format_macros.h" | 10 #include "base/format_macros.h" |
| (...skipping 530 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 541 | 541 |
| 542 v2_remote_service_->DumpDatabase( | 542 v2_remote_service_->DumpDatabase( |
| 543 base::Bind(&SyncFileSystemService::DidDumpV2Database, | 543 base::Bind(&SyncFileSystemService::DidDumpV2Database, |
| 544 AsWeakPtr(), callback, base::Passed(&list))); | 544 AsWeakPtr(), callback, base::Passed(&list))); |
| 545 } | 545 } |
| 546 | 546 |
| 547 void SyncFileSystemService::DidDumpV2Database( | 547 void SyncFileSystemService::DidDumpV2Database( |
| 548 const DumpFilesCallback& callback, | 548 const DumpFilesCallback& callback, |
| 549 scoped_ptr<base::ListValue> v1list, | 549 scoped_ptr<base::ListValue> v1list, |
| 550 scoped_ptr<base::ListValue> v2list) { | 550 scoped_ptr<base::ListValue> v2list) { |
| 551 DCHECK(v1list); | 551 if (!v1list) |
| 552 v1list = make_scoped_ptr(new base::ListValue); |
| 552 | 553 |
| 553 if (v2list) { | 554 if (v2list) { |
| 554 for (base::ListValue::iterator itr = v2list->begin(); | 555 for (base::ListValue::iterator itr = v2list->begin(); |
| 555 itr != v2list->end();) { | 556 itr != v2list->end();) { |
| 556 scoped_ptr<base::Value> item; | 557 scoped_ptr<base::Value> item; |
| 557 itr = v2list->Erase(itr, &item); | 558 itr = v2list->Erase(itr, &item); |
| 558 v1list->Append(item.release()); | 559 v1list->Append(item.release()); |
| 559 } | 560 } |
| 560 } | 561 } |
| 561 | 562 |
| 562 callback.Run(*v1list); | 563 callback.Run(*v1list); |
| 563 } | 564 } |
| 564 | 565 |
| 565 void SyncFileSystemService::DidGetExtensionStatusMap( | 566 void SyncFileSystemService::DidGetExtensionStatusMap( |
| 566 const ExtensionStatusMapCallback& callback, | 567 const ExtensionStatusMapCallback& callback, |
| 567 scoped_ptr<RemoteFileSyncService::OriginStatusMap> status_map) { | 568 scoped_ptr<RemoteFileSyncService::OriginStatusMap> status_map) { |
| 569 if (!status_map) |
| 570 status_map = make_scoped_ptr(new RemoteFileSyncService::OriginStatusMap); |
| 568 if (!v2_remote_service_) { | 571 if (!v2_remote_service_) { |
| 569 callback.Run(*status_map); | 572 callback.Run(*status_map); |
| 570 return; | 573 return; |
| 571 } | 574 } |
| 572 | 575 |
| 573 v2_remote_service_->GetOriginStatusMap( | 576 v2_remote_service_->GetOriginStatusMap( |
| 574 base::Bind(&SyncFileSystemService::DidGetV2ExtensionStatusMap, | 577 base::Bind(&SyncFileSystemService::DidGetV2ExtensionStatusMap, |
| 575 AsWeakPtr(), | 578 AsWeakPtr(), |
| 576 callback, | 579 callback, |
| 577 base::Passed(&status_map))); | 580 base::Passed(&status_map))); |
| 578 } | 581 } |
| 579 | 582 |
| 580 void SyncFileSystemService::DidGetV2ExtensionStatusMap( | 583 void SyncFileSystemService::DidGetV2ExtensionStatusMap( |
| 581 const ExtensionStatusMapCallback& callback, | 584 const ExtensionStatusMapCallback& callback, |
| 582 scoped_ptr<RemoteFileSyncService::OriginStatusMap> status_map_v1, | 585 scoped_ptr<RemoteFileSyncService::OriginStatusMap> status_map_v1, |
| 583 scoped_ptr<RemoteFileSyncService::OriginStatusMap> status_map_v2) { | 586 scoped_ptr<RemoteFileSyncService::OriginStatusMap> status_map_v2) { |
| 584 // Merge |status_map_v2| into |status_map_v1|. | 587 // Merge |status_map_v2| into |status_map_v1|. |
| 585 status_map_v1->insert(status_map_v2->begin(), status_map_v2->end()); | 588 if (!status_map_v1) |
| 589 status_map_v1 = make_scoped_ptr(new RemoteFileSyncService::OriginStatusMap); |
| 590 if (status_map_v2) |
| 591 status_map_v1->insert(status_map_v2->begin(), status_map_v2->end()); |
| 586 | 592 |
| 587 callback.Run(*status_map_v1); | 593 callback.Run(*status_map_v1); |
| 588 } | 594 } |
| 589 | 595 |
| 590 void SyncFileSystemService::SetSyncEnabledForTesting(bool enabled) { | 596 void SyncFileSystemService::SetSyncEnabledForTesting(bool enabled) { |
| 591 sync_enabled_ = enabled; | 597 sync_enabled_ = enabled; |
| 592 remote_service_->SetSyncEnabled(sync_enabled_); | 598 remote_service_->SetSyncEnabled(sync_enabled_); |
| 593 if (v2_remote_service_) | 599 if (v2_remote_service_) |
| 594 v2_remote_service_->SetSyncEnabled(sync_enabled_); | 600 v2_remote_service_->SetSyncEnabled(sync_enabled_); |
| 595 } | 601 } |
| (...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 753 v2_remote_service_->AddServiceObserver(v2_remote_syncer.get()); | 759 v2_remote_service_->AddServiceObserver(v2_remote_syncer.get()); |
| 754 v2_remote_service_->AddFileStatusObserver(this); | 760 v2_remote_service_->AddFileStatusObserver(this); |
| 755 v2_remote_service_->SetRemoteChangeProcessor(local_service_.get()); | 761 v2_remote_service_->SetRemoteChangeProcessor(local_service_.get()); |
| 756 v2_remote_service_->SetSyncEnabled(sync_enabled_); | 762 v2_remote_service_->SetSyncEnabled(sync_enabled_); |
| 757 remote_sync_runners_.push_back(v2_remote_syncer.release()); | 763 remote_sync_runners_.push_back(v2_remote_syncer.release()); |
| 758 } | 764 } |
| 759 return v2_remote_service_.get(); | 765 return v2_remote_service_.get(); |
| 760 } | 766 } |
| 761 | 767 |
| 762 } // namespace sync_file_system | 768 } // namespace sync_file_system |
| OLD | NEW |