public static JsonEncodedEventMessage Deserialize(string jsonString) { JsonEncodedEventMessage msg = null; try { msg = (JsonEncodedEventMessage)MiniJSON.Json.Deserialize(jsonString); } catch (Exception ex) { Trace.WriteLine(ex); } return(msg); }
public static EventMessage Deserialize(string rawMessage) { EventMessage evtMsg = new EventMessage(); // '5:' [message id ('+')] ':' [message endpoint] ':' [json encoded event] // 5:1::{"a":"b"} evtMsg.RawMessage = rawMessage; try { string[] args = rawMessage.Split(SPLITCHARS, 4); // limit the number of pieces if (args.Length == 4) { int id; if (int.TryParse(args[1], out id)) { evtMsg.AckId = id; } evtMsg.Endpoint = args[2]; evtMsg.MessageText = args[3]; if (!string.IsNullOrEmpty(evtMsg.MessageText) && evtMsg.MessageText.Contains("name") && evtMsg.MessageText.Contains("args")) { evtMsg.Json = JsonEncodedEventMessage.Deserialize(evtMsg.MessageText); evtMsg.Event = evtMsg.Json.name; } else { evtMsg.Json = new JsonEncodedEventMessage(); } } } catch (Exception ex) { Trace.WriteLine(ex); } return(evtMsg); }