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); }
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); }
private void Continue() { _CurrentQueue.Remove(_CurrentRequest); if (_CurrentQueue.Count == 0) { RequestCache.Clear(); Stop(); } else { RequestCache.CacheRequests(_CurrentQueue); _CurrentRequest = _CurrentQueue [0]; StartCoroutine(Send(_CurrentRequest)); } }
public void Run() { if (IsWorking) { return; } IsWorking = true; _CurrentQueue = RequestCache.CurrenCachedRequests; if (_CurrentQueue.Count == 0) { Stop(); } else { _CurrentRequest = _CurrentQueue [0]; StartCoroutine(Send(_CurrentRequest)); } }
private void Stop() { IsWorking = false; _CurrentRequest = null; _CurrentQueue = null; }