| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "sync/api/fake_syncable_service.h" |
| |
| #include "base/location.h" |
| #include "sync/api/sync_error_factory.h" |
| |
| namespace syncer { |
| |
| FakeSyncableService::FakeSyncableService() |
| : syncing_(false), |
| type_(UNSPECIFIED) {} |
| |
| FakeSyncableService::~FakeSyncableService() {} |
| |
| void FakeSyncableService::set_merge_data_and_start_syncing_error( |
| const SyncError& error) { |
| merge_data_and_start_syncing_error_ = error; |
| } |
| |
| void FakeSyncableService::set_process_sync_changes_error( |
| const SyncError& error) { |
| process_sync_changes_error_ = error; |
| } |
| |
| void FakeSyncableService::set_attachment_store( |
| const scoped_refptr<AttachmentStore>& attachment_store) { |
| attachment_store_ = attachment_store; |
| } |
| |
| const AttachmentService* FakeSyncableService::attachment_service() const { |
| return attachment_service_.get(); |
| } |
| |
| bool FakeSyncableService::syncing() const { |
| return syncing_; |
| } |
| |
| // SyncableService implementation. |
| SyncMergeResult FakeSyncableService::MergeDataAndStartSyncing( |
| ModelType type, |
| const SyncDataList& initial_sync_data, |
| scoped_ptr<SyncChangeProcessor> sync_processor, |
| scoped_ptr<SyncErrorFactory> sync_error_factory) { |
| SyncMergeResult merge_result(type); |
| sync_processor_ = sync_processor.Pass(); |
| type_ = type; |
| if (!merge_data_and_start_syncing_error_.IsSet()) { |
| syncing_ = true; |
| } else { |
| merge_result.set_error(merge_data_and_start_syncing_error_); |
| } |
| return merge_result; |
| } |
| |
| void FakeSyncableService::StopSyncing(ModelType type) { |
| syncing_ = false; |
| sync_processor_.reset(); |
| } |
| |
| SyncDataList FakeSyncableService::GetAllSyncData(ModelType type) const { |
| return SyncDataList(); |
| } |
| |
| SyncError FakeSyncableService::ProcessSyncChanges( |
| const tracked_objects::Location& from_here, |
| const SyncChangeList& change_list) { |
| return process_sync_changes_error_; |
| } |
| |
| scoped_refptr<AttachmentStore> FakeSyncableService::GetAttachmentStore() { |
| return attachment_store_; |
| } |
| |
| void FakeSyncableService::SetAttachmentService( |
| scoped_ptr<AttachmentService> attachment_service) { |
| attachment_service_ = attachment_service.Pass(); |
| } |
| |
| } // namespace syncer |