summaryrefslogtreecommitdiffstats
path: root/sync/api/model_type_change_processor.h
diff options
context:
space:
mode:
Diffstat (limited to 'sync/api/model_type_change_processor.h')
-rw-r--r--sync/api/model_type_change_processor.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/sync/api/model_type_change_processor.h b/sync/api/model_type_change_processor.h
index 85f8d16..7781a0e 100644
--- a/sync/api/model_type_change_processor.h
+++ b/sync/api/model_type_change_processor.h
@@ -5,16 +5,36 @@
#ifndef SYNC_API_MODEL_TYPE_CHANGE_PROCESSOR_H_
#define SYNC_API_MODEL_TYPE_CHANGE_PROCESSOR_H_
+#include <string>
+
+#include "base/memory/scoped_ptr.h"
+#include "sync/api/entity_data.h"
#include "sync/base/sync_export.h"
+namespace syncer {
+class SyncError;
+} // namespace syncer
+
namespace syncer_v2 {
+class MetadataChanges;
+
// Interface used by the ModelTypeService to inform sync of local
// changes.
class SYNC_EXPORT ModelTypeChangeProcessor {
public:
ModelTypeChangeProcessor();
virtual ~ModelTypeChangeProcessor();
+
+ // Inform the processor of a new or updated entity.
+ virtual void Put(const std::string& client_key,
+ const std::string& non_unique_name,
+ const sync_pb::EntitySpecifics& specifics,
+ MetadataChanges* metadata_changes) = 0;
+
+ // Inform the processor of a deleted entity.
+ virtual void Delete(const std::string& client_key,
+ MetadataChanges* metadata_changes) = 0;
};
} // namespace syncer_v2