fake_generic_change_processor.cc revision cedac228d2dd51db4b79ea1e72c7f249408ee061
10529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch// Copyright 2014 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
50529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch#include "components/sync_driver/fake_generic_change_processor.h"
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/location.h"
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/memory/weak_ptr.h"
9cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)#include "sync/api/attachments/attachment_service_impl.h"
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "sync/api/syncable_service.h"
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace browser_sync {
135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
14cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)FakeGenericChangeProcessor::FakeGenericChangeProcessor(
15cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    SyncApiComponentFactory* sync_factory)
16e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch    : GenericChangeProcessor(NULL,
17e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch                             base::WeakPtr<syncer::SyncableService>(),
18e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch                             base::WeakPtr<syncer::SyncMergeResult>(),
19e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch                             NULL,
20cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)                             sync_factory),
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)      sync_model_has_user_created_nodes_(true),
22010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      sync_model_has_user_created_nodes_success_(true) {}
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)FakeGenericChangeProcessor::~FakeGenericChangeProcessor() {}
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeGenericChangeProcessor::set_sync_model_has_user_created_nodes(
275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    bool has_nodes) {
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  sync_model_has_user_created_nodes_ = has_nodes;
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)void FakeGenericChangeProcessor::set_sync_model_has_user_created_nodes_success(
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    bool success) {
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  sync_model_has_user_created_nodes_success_ = success;
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)syncer::SyncError FakeGenericChangeProcessor::ProcessSyncChanges(
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    const tracked_objects::Location& from_here,
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    const syncer::SyncChangeList& change_list) {
38010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)  return syncer::SyncError();
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
4158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)syncer::SyncError FakeGenericChangeProcessor::GetAllSyncDataReturnError(
4258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    syncer::ModelType type, syncer::SyncDataList* current_sync_data) const {
43010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)  return syncer::SyncError();
445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
455821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
46a02191e04bc25c4935f804f2c080ae28663d096dBen Murdochbool FakeGenericChangeProcessor::GetDataTypeContext(
47a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch    syncer::ModelType type,
48a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch    std::string* context) const {
49a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch  return false;
50a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch}
51a02191e04bc25c4935f804f2c080ae28663d096dBen Murdoch
522a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)int FakeGenericChangeProcessor::GetSyncCountForType(syncer::ModelType type) {
532a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  return 0;
542a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
552a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
565821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)bool FakeGenericChangeProcessor::SyncModelHasUserCreatedNodes(
575821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    syncer::ModelType type, bool* has_nodes) {
585821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  *has_nodes = sync_model_has_user_created_nodes_;
595821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  return sync_model_has_user_created_nodes_success_;
605821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
615821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
625821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)bool FakeGenericChangeProcessor::CryptoReadyIfNecessary(
635821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)    syncer::ModelType type) {
64010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)  return true;
65010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)}
66010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)
67010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)FakeGenericChangeProcessorFactory::FakeGenericChangeProcessorFactory(
68010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    scoped_ptr<FakeGenericChangeProcessor> processor)
69010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    : processor_(processor.Pass()) {}
70010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)
71010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)FakeGenericChangeProcessorFactory::~FakeGenericChangeProcessorFactory() {}
72010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)
73010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)scoped_ptr<GenericChangeProcessor>
74010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)FakeGenericChangeProcessorFactory::CreateGenericChangeProcessor(
75010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    syncer::UserShare* user_share,
76010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    browser_sync::DataTypeErrorHandler* error_handler,
77010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    const base::WeakPtr<syncer::SyncableService>& local_service,
78010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    const base::WeakPtr<syncer::SyncMergeResult>& merge_result,
79cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    SyncApiComponentFactory* sync_factory) {
80010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)  return processor_.PassAs<GenericChangeProcessor>();
815821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
825821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
835821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}  // namespace browser_sync
84