using System; using System.Collections.Generic; namespace SUISS.Cloud { public class ReceivedMessage : IReceivedMessage { public string MessageUuid { get; private set; } public string FromAccountUuid { get; private set; } public string FromInstallUuid { get; private set; } public IDictionary Data { get; private set; } public string MessageType { get; private set; } public DateTime CreatedAt { get; private set; } public int Version { get; private set; } public static ReceivedMessage FromJson(object json) { if (json is Dictionary) { Dictionary dictionary = (Dictionary)json; if (dictionary.ContainsKey("messageUuid")) { return new ReceivedMessage { MessageUuid = (string)dictionary["messageUuid"], MessageType = (string)dictionary["messageType"], Data = (IDictionary)dictionary["data"], FromAccountUuid = (string)dictionary["fromAccountUuid"], FromInstallUuid = (string)dictionary["fromInstallUuid"], Version = Convert.ToInt32((double)dictionary["version"]) }; } } return null; } } }