Esempio n. 1
0
        /// <summary>
        /// Method fakes a json error from the server and sends
        /// it along to the response callbacks.
        /// </summary>
        /// <param name="in_status">In_status.</param>
        /// <param name="in_reasonCode">In_reason code.</param>
        /// <param name="in_statusMessage">In_status message.</param>
        private void TriggerCommsError(int in_status, int in_reasonCode, string in_statusMessage)
        {
            // error json format is
            // {
            // "reason_code": 40316,
            // "status": 403,
            // "status_message": "Processing exception: Invalid game ID in authentication request",
            // "severity": "ERROR"
            // }

            int numMessagesToReturn = 0;

            lock (m_serviceCallsInProgress)
            {
                numMessagesToReturn = m_serviceCallsInProgress.Count;
            }
            if (numMessagesToReturn <= 0)
            {
                return;
            }

            JsonResponseErrorBundleV2 bundleObj = new JsonResponseErrorBundleV2();

            bundleObj.packetId  = m_expectedIncomingPacketId;
            bundleObj.responses = new JsonErrorMessage[numMessagesToReturn];
            for (int i = 0; i < numMessagesToReturn; ++i)
            {
                bundleObj.responses[i] = new JsonErrorMessage(in_status, in_reasonCode, in_statusMessage);
            }
            string jsonError = JsonWriter.Serialize(bundleObj);

            HandleResponseBundle(jsonError);
        }
        /// <summary>
        /// Method fakes a json error from the server and sends
        /// it along to the response callbacks.
        /// </summary>
        /// <param name="in_status">In_status.</param>
        /// <param name="in_reasonCode">In_reason code.</param>
        /// <param name="in_statusMessage">In_status message.</param>
        private void TriggerCommsError(int in_status, int in_reasonCode, string in_statusMessage)
        {
            // error json format is
            // {
            // "reason_code": 40316,
            // "status": 403,
            // "status_message": "Processing exception: Invalid game ID in authentication request",
            // "severity": "ERROR"
            // }

            int numMessagesToReturn = 0;
            lock(m_serviceCallsInProgress)
            {
                numMessagesToReturn = m_serviceCallsInProgress.Count;
            }
            if (numMessagesToReturn <= 0)
            {
                return;
            }

            JsonResponseErrorBundleV2 bundleObj = new JsonResponseErrorBundleV2();
            bundleObj.packetId = m_expectedIncomingPacketId;
            bundleObj.responses = new JsonErrorMessage[numMessagesToReturn];
            for (int i = 0; i < numMessagesToReturn; ++i)
            {
                bundleObj.responses[i] = new JsonErrorMessage(in_status, in_reasonCode, in_statusMessage);
            }
            string jsonError = JsonWriter.Serialize(bundleObj);
            HandleResponseBundle(jsonError);
        }