Upstream version 7.36.149.0
[platform/framework/web/crosswalk.git] / src / sync / test / fake_server / permanent_entity.h
index 3579720..ea84cfc 100644 (file)
@@ -26,10 +26,17 @@ class PermanentEntity : public FakeServerEntity {
                                   const std::string& name,
                                   const std::string& parent_server_tag);
 
-  // Factory function for a top level BookmarkEntity. Top level means that the
+  // Factory function for a top level PermanentEntity. Top level means that the
   // entity's parent is the root entity (no PermanentEntity exists for root).
   static FakeServerEntity* CreateTopLevel(const syncer::ModelType& model_type);
 
+  // Factory function for creating an updated version of a PermanentEntity.
+  // This function should only be called for the Nigori entity and will return
+  // NULL if any other type is specified.
+  static FakeServerEntity* CreateUpdatedNigoriEntity(
+      const sync_pb::SyncEntity& client_entity,
+      FakeServerEntity* current_server_entity);
+
   // FakeServerEntity implementation.
   virtual std::string GetParentId() const OVERRIDE;
   virtual sync_pb::SyncEntity* SerializeAsProto() OVERRIDE;
@@ -41,11 +48,13 @@ class PermanentEntity : public FakeServerEntity {
                   const syncer::ModelType& model_type,
                   const std::string& name,
                   const std::string& parent_id,
-                  const std::string& server_defined_unique_tag);
+                  const std::string& server_defined_unique_tag,
+                  const sync_pb::EntitySpecifics& entity_specifics);
 
   // All member values have equivalent fields in SyncEntity.
   std::string server_defined_unique_tag_;
   std::string parent_id_;
+  sync_pb::EntitySpecifics specifics_;
 };
 
 }  // namespace fake_server