/// <exclude />
public static string Serialize(EntityToken entityToken, bool includeHashValue)
{
Verify.ArgumentNotNull(entityToken, "entityToken");
var sb = new StringBuilder();
StringConversionServices.SerializeKeyValuePair(sb, "entityTokenType", TypeManager.SerializeType(entityToken.GetType()));
string serializedEntityToken = entityToken.Serialize();
if (serializedEntityToken == null)
{
throw new InvalidCastException(string.Format("'{0}' Serialize returned null", entityToken.GetType()));
}
StringConversionServices.SerializeKeyValuePair(sb, "entityToken", serializedEntityToken);
if (includeHashValue)
{
StringConversionServices.SerializeKeyValuePair(sb, "entityTokenHash", HashSigner.GetSignedHash(serializedEntityToken).Serialize());
}
return(sb.ToString());
}