aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Tango.BL/Serialization
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2019-01-06 16:42:20 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2019-01-06 16:42:20 +0200
commit6da42fd28ffbb680d85bb9e695520713ff51022a (patch)
tree4569c171a0d3a482374fe44d506d35549a677765 /Software/Visual_Studio/Tango.BL/Serialization
parenta7137c1f053ba48c3ce22bee483fe7f716cc90cb (diff)
downloadTango-6da42fd28ffbb680d85bb9e695520713ff51022a.tar.gz
Tango-6da42fd28ffbb680d85bb9e695520713ff51022a.zip
Some work on entity serialization.
Diffstat (limited to 'Software/Visual_Studio/Tango.BL/Serialization')
-rw-r--r--Software/Visual_Studio/Tango.BL/Serialization/EntitySerializationFlags.cs2
-rw-r--r--Software/Visual_Studio/Tango.BL/Serialization/ISerializableEntity.cs25
2 files changed, 27 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Tango.BL/Serialization/EntitySerializationFlags.cs b/Software/Visual_Studio/Tango.BL/Serialization/EntitySerializationFlags.cs
index 1491fb2e5..1993b64a0 100644
--- a/Software/Visual_Studio/Tango.BL/Serialization/EntitySerializationFlags.cs
+++ b/Software/Visual_Studio/Tango.BL/Serialization/EntitySerializationFlags.cs
@@ -12,5 +12,7 @@ namespace Tango.BL.Serialization
IgnoreGuids = 1,
IgnoreReferenceTypes = 2,
IgnoreCollections = 4,
+ PreserveReferencesHandling = 8,
+ Indented = 16,
}
}
diff --git a/Software/Visual_Studio/Tango.BL/Serialization/ISerializableEntity.cs b/Software/Visual_Studio/Tango.BL/Serialization/ISerializableEntity.cs
index 8a3c7d54b..80ac96046 100644
--- a/Software/Visual_Studio/Tango.BL/Serialization/ISerializableEntity.cs
+++ b/Software/Visual_Studio/Tango.BL/Serialization/ISerializableEntity.cs
@@ -11,6 +11,31 @@ namespace Tango.BL.Serialization
/// </summary>
public interface ISerializableEntity
{
+ /// <summary>
+ /// Gets the default serialization strategy.
+ /// </summary>
+ /// <param name="flags">The serialization flags.</param>
+ /// <returns></returns>
EntitySerializationStrategy GetDefaultSerializationStrategy(EntitySerializationFlags flags);
+
+ /// <summary>
+ /// Converts the entity to a json string using the specified serialization strategy.
+ /// </summary>
+ /// <param name="serializationStrategy">The serialization strategy.</param>
+ /// <param name="flags">The flags.</param>
+ /// <returns></returns>
+ String ToJson(EntitySerializationStrategy serializationStrategy, EntitySerializationFlags flags);
+
+ /// <summary>
+ /// Converts the entity to a json string using the default serialization strategy.
+ /// </summary>
+ /// <returns></returns>
+ String ToJson();
+
+ /// <summary>
+ /// Merges the specified json string into this entity.
+ /// </summary>
+ /// <param name="json">The json.</param>
+ void PopulateFromJson(String json);
}
}