/// <summary>
 /// Initializes an empty message instance.
 /// </summary>
 internal IQUMessage()
 {
     this.m_event = "";
       this.m_eventType = "";
       this.m_ids = new IQUIds();
       this.m_queue = null;
 }
 /// <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;
 }
 /// <summary>
 /// Clears references to used instances.
 /// </summary>
 private void ClearReferences()
 {
     if (this.m_gameObject != null)
       {
     GameObject.Destroy(this.m_gameObject);
     this.m_gameObject = null;
     this.m_helper = null;
       }
       if (this.m_localStorage != null)
       {
     this.m_localStorage.Destroy();
     this.m_localStorage = null;
       }
       if (this.m_network != null)
       {
     this.m_network.Destroy();
     this.m_network = null;
       }
       if (this.m_pendingMessages != null)
       {
     this.m_pendingMessages.Destroy();
     this.m_pendingMessages = null;
       }
       if (this.m_sendingMessages != null)
       {
     this.m_sendingMessages.Destroy();
     this.m_sendingMessages = null;
       }
       if (this.m_ids != null)
       {
     this.m_ids.Destroy();
     this.m_ids = null;
       }
 }
 /// <summary>
 /// Creates the instance and initializes all private variables.
 /// </summary>
 private IQUSDK()
 {
     this.m_checkServerInterval = IQUSDK.DefaultCheckServerInterval;
       this.m_checkServerTime = -IQUSDK.DefaultCheckServerInterval;
       this.m_device = null;
       this.m_analyticsEnabled = true;
       this.m_gameObject = null;
       this.m_heartbeatTime = -IQUSDK.HeartbeatInterval;
       this.m_helper = null;
       this.m_ids = new IQUIds();
       this.m_initialized = false;
       this.m_localStorage = null;
       this.m_log = "";
     #if DEBUG || UNITY_EDITOR
       this.m_logEnabled = true;
     #else
       this.m_logEnabled = false;
     #endif
       this.m_network = null;
       this.m_paused = false;
       this.m_payable = true;
       this.m_pendingMessages = null;
       this.m_sendingMessages = null;
       this.m_serverAvailable = true;
       this.m_state = State.None;
       this.m_testMode = IQUTestMode.None;
 }
 /// <summary>
 /// Creates ids container using another ids container as source.
 /// </summary>
 /// <param name="aSource">Source to make copy from.</param> 
 private IQUIds(IQUIds aSource)
 {
     this.m_ids = (string[])aSource.m_ids.Clone();
 }
 /// <summary>
 /// Removes references and resources.
 /// </summary>
 internal void Destroy()
 {
     this.m_next = null;
       this.m_queue = null;
       if (this.m_ids != null)
       {
     this.m_ids.Destroy();
     this.m_ids = null;
       }
 }