Beispiel #1
0
        private IEnumerator Send(CachedRequest request)
        {
            string HitRequest = request.RequestBody;

            if (GA_Settings.Instance.IsQueueTimeEnabled)
            {
                HitRequest += "&qt" + request.Delay;
            }


            WWW www = Manager.SendSkipCache(HitRequest);

            // Wait for request complete
            yield return(www);


            if (www.error != null)
            {
                Stop();
            }
            else
            {
                yield return(new WaitForSeconds(2f));

                Continue();
            }

            yield return(null);
        }
Beispiel #2
0
        public static void SaveRequest(string cache)
        {
            CachedRequest r = new CachedRequest(cache, DateTime.Now.Ticks);

            List <CachedRequest> current = CurrenCachedRequests;

            current.Add(r);

            Debug.Log(current.Count);
            CacheRequests(current);
        }
        public static void SaveRequest(string cache)
        {
            if (!GA_Settings.Instance.IsRequetsCachingEnabled)
            {
                return;
            }

            CachedRequest r = new CachedRequest(cache, DateTime.Now.Ticks);

            List <CachedRequest> current = CurrenCachedRequests;

            current.Add(r);
            CacheRequests(current);
        }
Beispiel #4
0
        private void Continue()
        {
            _CurrentQueue.Remove(_CurrentRequest);

            if (_CurrentQueue.Count == 0)
            {
                RequestCache.Clear();
                Stop();
            }
            else
            {
                RequestCache.CacheRequests(_CurrentQueue);
                _CurrentRequest = _CurrentQueue [0];
                StartCoroutine(Send(_CurrentRequest));
            }
        }
Beispiel #5
0
        public void Run()
        {
            if (IsWorking)
            {
                return;
            }


            IsWorking     = true;
            _CurrentQueue = RequestCache.CurrenCachedRequests;
            if (_CurrentQueue.Count == 0)
            {
                Stop();
            }
            else
            {
                _CurrentRequest = _CurrentQueue [0];
                StartCoroutine(Send(_CurrentRequest));
            }
        }
Beispiel #6
0
 private void Stop()
 {
     IsWorking       = false;
     _CurrentRequest = null;
     _CurrentQueue   = null;
 }