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 3 // found in the LICENSE file. 4 5 #ifndef SYNC_API_FAKE_SYNC_CHANGE_PROCESSOR_H_ 6 #define SYNC_API_FAKE_SYNC_CHANGE_PROCESSOR_H_ 7 8 #include "sync/api/sync_change_processor.h" 9 10 namespace syncer { 11 12 class FakeSyncChangeProcessor : public SyncChangeProcessor { 13 public: 14 FakeSyncChangeProcessor(); 15 virtual ~FakeSyncChangeProcessor(); 16 17 // SyncChangeProcessor implementation. 18 // 19 // ProcessSyncChanges will accumulate changes in changes() until they are 20 // cleared. 21 virtual syncer::SyncError ProcessSyncChanges( 22 const tracked_objects::Location& from_here, 23 const syncer::SyncChangeList& change_list) OVERRIDE; 24 25 // SyncChangeProcessor implementation. 26 // 27 // Returns data(). 28 virtual syncer::SyncDataList GetAllSyncData(syncer::ModelType type) 29 const OVERRIDE; 30 31 // SyncChangeProcessor implementation. 32 // 33 // Updates context(). 34 virtual syncer::SyncError UpdateDataTypeContext( 35 ModelType type, 36 ContextRefreshStatus refresh_status, 37 const std::string& context) OVERRIDE; 38 39 virtual const syncer::SyncChangeList& changes() const; 40 virtual syncer::SyncChangeList& changes(); 41 42 virtual const syncer::SyncDataList& data() const; 43 virtual syncer::SyncDataList& data(); 44 45 virtual const std::string& context() const; 46 virtual std::string& context(); 47 48 private: 49 syncer::SyncChangeList changes_; 50 syncer::SyncDataList data_; 51 std::string context_; 52 53 DISALLOW_COPY_AND_ASSIGN(FakeSyncChangeProcessor); 54 }; 55 56 } // namespace syncer 57 58 #endif // SYNC_API_FAKE_SYNC_CHANGE_PROCESSOR_H_ 59