/// <summary>
 /// Initializes a new message instance and set the ids and event.
 /// </summary>
 /// <param name="anIds">Ids to use (a copy is stored)</param>
 /// <param name="anEvent">Event the message encapsulates</param>
 internal IQUMessage(IQUIds anIds, IDictionary<string, object> anEvent)
 {
     // store event as JSON string (no need to convert it every time)
       this.m_event = MiniJSON.Json.Serialize(anEvent);
       // get type
       this.m_eventType = anEvent.ContainsKey("type") ? anEvent["type"].ToString() : "";
       // use copy of ids.
       this.m_ids = anIds.Clone();
       // no queue
       this.m_queue = null;
 }