Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(275)

Unified Diff: components/sync/api/fake_model_type_service.h

Issue 2401223002: [Sync] Renaming sync/api* to sync/model*. (Closed)
Patch Set: Missed a comment in a DEPS file, and rebasing. Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/sync/api/fake_model_type_service.h
diff --git a/components/sync/api/fake_model_type_service.h b/components/sync/api/fake_model_type_service.h
deleted file mode 100644
index 0107b3eecd08dac6a7f074444401455cd5fae242..0000000000000000000000000000000000000000
--- a/components/sync/api/fake_model_type_service.h
+++ /dev/null
@@ -1,149 +0,0 @@
-// Copyright 2015 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.
-
-#ifndef COMPONENTS_SYNC_API_FAKE_MODEL_TYPE_SERVICE_H_
-#define COMPONENTS_SYNC_API_FAKE_MODEL_TYPE_SERVICE_H_
-
-#include <map>
-#include <memory>
-#include <string>
-
-#include "components/sync/api/entity_data.h"
-#include "components/sync/api/metadata_batch.h"
-#include "components/sync/api/model_type_service.h"
-#include "components/sync/core/non_blocking_sync_common.h"
-#include "components/sync/protocol/entity_metadata.pb.h"
-#include "components/sync/protocol/model_type_state.pb.h"
-
-namespace syncer {
-
-// A basic, functional implementation of ModelTypeService for testing purposes.
-// It uses the PREFERENCES type to provide a simple key/value interface, and
-// uses its own simple in-memory Store class.
-class FakeModelTypeService : public ModelTypeService {
- public:
- // Generate a client tag with the given key.
- static std::string ClientTagFromKey(const std::string& key);
-
- // Generates the tag hash for a given key.
- static std::string TagHashFromKey(const std::string& key);
-
- // Generates entity specifics for the given key and value.
- static sync_pb::EntitySpecifics GenerateSpecifics(const std::string& key,
- const std::string& value);
-
- // Generates an EntityData for the given key and value.
- static std::unique_ptr<EntityData> GenerateEntityData(
- const std::string& key,
- const std::string& value);
-
- // A basic in-memory storage mechanism for data and metadata. This makes it
- // easier to test more complex behaviors involving when entities are written,
- // committed, etc. Having a separate class helps keep the main one cleaner.
- class Store {
- public:
- Store();
- virtual ~Store();
-
- void PutData(const std::string& key, const EntityData& data);
- void PutMetadata(const std::string& key,
- const sync_pb::EntityMetadata& metadata);
- void RemoveData(const std::string& key);
- void RemoveMetadata(const std::string& key);
- bool HasData(const std::string& key) const;
- bool HasMetadata(const std::string& key) const;
- const EntityData& GetData(const std::string& key) const;
- const std::string& GetValue(const std::string& key) const;
- const sync_pb::EntityMetadata& GetMetadata(const std::string& key) const;
-
- const std::map<std::string, std::unique_ptr<EntityData>>& all_data() const {
- return data_store_;
- }
-
- size_t data_count() const { return data_store_.size(); }
- size_t metadata_count() const { return metadata_store_.size(); }
- size_t data_change_count() const { return data_change_count_; }
- size_t metadata_change_count() const { return metadata_change_count_; }
-
- const sync_pb::ModelTypeState& model_type_state() const {
- return model_type_state_;
- }
-
- void set_model_type_state(const sync_pb::ModelTypeState& model_type_state) {
- model_type_state_ = model_type_state;
- }
-
- std::unique_ptr<MetadataBatch> CreateMetadataBatch() const;
- void Reset();
-
- private:
- size_t data_change_count_ = 0;
- size_t metadata_change_count_ = 0;
- std::map<std::string, std::unique_ptr<EntityData>> data_store_;
- std::map<std::string, sync_pb::EntityMetadata> metadata_store_;
- sync_pb::ModelTypeState model_type_state_;
- };
-
- explicit FakeModelTypeService(
- const ChangeProcessorFactory& change_processor_factory);
- ~FakeModelTypeService() override;
-
- // Local data modification. Emulates signals from the model thread.
- sync_pb::EntitySpecifics WriteItem(const std::string& key,
- const std::string& value);
-
- // Overloaded form to allow passing of custom entity data.
- void WriteItem(const std::string& key,
- std::unique_ptr<EntityData> entity_data);
-
- // Local data deletion.
- void DeleteItem(const std::string& key);
-
- // ModelTypeService implementation
- std::unique_ptr<MetadataChangeList> CreateMetadataChangeList() override;
- SyncError MergeSyncData(
- std::unique_ptr<MetadataChangeList> metadata_change_list,
- EntityDataMap entity_data_map) override;
- SyncError ApplySyncChanges(
- std::unique_ptr<MetadataChangeList> metadata_change_list,
- EntityChangeList entity_changes) override;
- void GetData(StorageKeyList storage_keys, DataCallback callback) override;
- void GetAllData(DataCallback callback) override;
- std::string GetClientTag(const EntityData& entity_data) override;
- std::string GetStorageKey(const EntityData& entity_data) override;
- void OnChangeProcessorSet() override;
- ConflictResolution ResolveConflict(
- const EntityData& local_data,
- const EntityData& remote_data) const override;
-
- // Store a resolution for the next call to ResolveConflict. Note that if this
- // is a USE_NEW resolution, the data will only exist for one resolve call.
- void SetConflictResolution(ConflictResolution resolution);
-
- // Sets the error that the next fallible call to the service will generate.
- void SetServiceError(SyncError::ErrorType error_type);
-
- const Store& db() const { return db_; }
-
- protected:
- // Used to verify conditions upon destruction.
- virtual void CheckPostConditions();
-
- // Contains all of the data and metadata state.
- Store db_;
-
- private:
- // Applies |change_list| to the metadata store.
- void ApplyMetadataChangeList(std::unique_ptr<MetadataChangeList> change_list);
-
- // The conflict resolution to use for calls to ResolveConflict.
- std::unique_ptr<ConflictResolution> conflict_resolution_;
-
- // The error to produce on the next service call.
- SyncError service_error_;
-};
-
-} // namespace syncer
-
-#endif // COMPONENTS_SYNC_API_FAKE_MODEL_TYPE_SERVICE_H_
« no previous file with comments | « components/sync/api/fake_model_type_change_processor.cc ('k') | components/sync/api/fake_model_type_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698