Exemplo n.º 1
0
    private IEnumerator DailyPageTaskTimeout(DailyPageContentTask pageTask, float warningTime)
    {
        yield return(new WaitForSeconds(warningTime));

        if (pageTask != null && !pageTask.Completed)
        {
            FMLogger.Log("daily page long load report");
            pageTask.TriggerWarning();
        }
        else
        {
            FMLogger.Log("daily Wtf task is completed");
        }
        this.dailyPageTaskTimeoutCoroutine = null;
        yield break;
    }
Exemplo n.º 2
0
 public void LoadDailyPage(DailyPageContentTask dailyPageTask)
 {
     if (this.dailyPageResponse != null && this.dailyTabInfo != null)
     {
         dailyPageTask.Result(true, this.dailyTabInfo);
     }
     else
     {
         if (this.dailyPageTaskTimeoutCoroutine != null)
         {
             FMLogger.Log("daily Multi page load invocation");
             base.StopCoroutine(this.dailyPageTaskTimeoutCoroutine);
             FMLogger.Log("terminate prev daily page task handler");
         }
         this.dailyPageTaskTimeoutCoroutine = base.StartCoroutine(this.DailyPageTaskTimeout(dailyPageTask, 5f));
         TGFModule.Instance.GetDailyPage(delegate(DailyPageResponse response)
         {
             if (dailyPageTask == null || dailyPageTask.IsCanceled)
             {
                 FMLogger.Log("daily task canceled " + dailyPageTask.Page);
             }
             else if (dailyPageTask != null && dailyPageTask.Completed)
             {
                 FMLogger.Log("daily task already completed " + dailyPageTask.Page);
             }
             else
             {
                 if (this.dailyPageTaskTimeoutCoroutine != null)
                 {
                     this.StopCoroutine(this.dailyPageTaskTimeoutCoroutine);
                     this.dailyPageTaskTimeoutCoroutine = null;
                 }
                 if (response != null)
                 {
                     this.ParseDailyPageContent(response);
                     this.dailyPageResponse = response;
                     dailyPageTask.Result(true, this.dailyTabInfo);
                 }
                 else
                 {
                     dailyPageTask.Result(false, null);
                 }
             }
         });
     }
 }