Exemple #1
0
        private void retry()
        {
            if (!keepRetrying)
            {
                return;
            }

            HTTPRequest req = request.getClone();

            req.execute(HTTPCallback);

            if (retryPosition < retryDelayTable.Length && (!useDeadline || Time.realtimeSinceStartup < retryDeadline))
            {
                int delay = retryDelayTable[retryPosition++];

                if (delay > 0)
                {
                    AsyncExec.runWithDelay(delay, retry);
                }
                else
                {
                    keepRetrying = false;
                }
            }
            else
            {
                keepRetrying = false;
            }
        }
Exemple #2
0
        public void execute(System.Action <HTTPResponse> eventCallback)
        {
            callback = eventCallback;

            keepRetrying      = true;
            callbackDelivered = false;

            if (useDeadline)
            {
                retryDeadline = Time.realtimeSinceStartup + deadlineDelay;
            }

            retry();

            if (useDeadline)
            {
                AsyncExec.runWithDelay(deadlineDelay, executeDeadline);
            }
        }