fake_generic_change_processor.cc revision 5f1c94371a64b3196d4be9466099bb892df9b88e
1// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "components/sync_driver/fake_generic_change_processor.h"
6
7#include "base/location.h"
8#include "base/memory/weak_ptr.h"
9#include "sync/api/syncable_service.h"
10#include "sync/internal_api/public/attachments/attachment_service_impl.h"
11
12namespace sync_driver {
13
14FakeGenericChangeProcessor::FakeGenericChangeProcessor(
15    SyncApiComponentFactory* sync_factory)
16    : GenericChangeProcessor(NULL,
17                             base::WeakPtr<syncer::SyncableService>(),
18                             base::WeakPtr<syncer::SyncMergeResult>(),
19                             NULL,
20                             sync_factory),
21      sync_model_has_user_created_nodes_(true),
22      sync_model_has_user_created_nodes_success_(true) {}
23
24FakeGenericChangeProcessor::~FakeGenericChangeProcessor() {}
25
26void FakeGenericChangeProcessor::set_sync_model_has_user_created_nodes(
27    bool has_nodes) {
28  sync_model_has_user_created_nodes_ = has_nodes;
29}
30void FakeGenericChangeProcessor::set_sync_model_has_user_created_nodes_success(
31    bool success) {
32  sync_model_has_user_created_nodes_success_ = success;
33}
34
35syncer::SyncError FakeGenericChangeProcessor::ProcessSyncChanges(
36    const tracked_objects::Location& from_here,
37    const syncer::SyncChangeList& change_list) {
38  return syncer::SyncError();
39}
40
41syncer::SyncError FakeGenericChangeProcessor::GetAllSyncDataReturnError(
42    syncer::ModelType type, syncer::SyncDataList* current_sync_data) const {
43  return syncer::SyncError();
44}
45
46bool FakeGenericChangeProcessor::GetDataTypeContext(
47    syncer::ModelType type,
48    std::string* context) const {
49  return false;
50}
51
52int FakeGenericChangeProcessor::GetSyncCountForType(syncer::ModelType type) {
53  return 0;
54}
55
56bool FakeGenericChangeProcessor::SyncModelHasUserCreatedNodes(
57    syncer::ModelType type, bool* has_nodes) {
58  *has_nodes = sync_model_has_user_created_nodes_;
59  return sync_model_has_user_created_nodes_success_;
60}
61
62bool FakeGenericChangeProcessor::CryptoReadyIfNecessary(
63    syncer::ModelType type) {
64  return true;
65}
66
67FakeGenericChangeProcessorFactory::FakeGenericChangeProcessorFactory(
68    scoped_ptr<FakeGenericChangeProcessor> processor)
69    : processor_(processor.Pass()) {}
70
71FakeGenericChangeProcessorFactory::~FakeGenericChangeProcessorFactory() {}
72
73scoped_ptr<GenericChangeProcessor>
74FakeGenericChangeProcessorFactory::CreateGenericChangeProcessor(
75    syncer::UserShare* user_share,
76    DataTypeErrorHandler* error_handler,
77    const base::WeakPtr<syncer::SyncableService>& local_service,
78    const base::WeakPtr<syncer::SyncMergeResult>& merge_result,
79    SyncApiComponentFactory* sync_factory) {
80  return processor_.PassAs<GenericChangeProcessor>();
81}
82
83}  // namespace sync_driver
84