示例#1
0
        public void AddCronRefreshExcuter(string name, IDictionary rule)
        {
            CronRefreshExcuter excuter = new CronRefreshExcuter(name);

            excuter.Init(rule);
            AddCronRefreshExcuter(excuter);
        }
示例#2
0
        void AddUserPrizeDataRefreshExcuter()
        {
            string taskRefreshTime = "0 0 0 * * *";
            //DataLookupsCache.Instance.SearchDataByID<string>("userTaskStatus.refreshTaskTime", out taskRefreshTime);
            Hashtable rule = Johny.HashtablePool.Claim();

            rule.Add("regular", TimerScheduler.AmendCronFormat(taskRefreshTime));
            rule.Add("url", "/sign_in/getUserPrizeData");
            CronRefreshExcuter excuter = new CronRefreshExcuter("refreshUserPrizeData", false);

            excuter.Init(rule, delegate(Hashtable hash) {
                if (hash != null)
                {
                    DataLookupsCache.Instance.CacheData(hash);
                    GameDataSparxManager.Instance.ProcessIncomingData(hash, false);
                }
            });
            AddCronRefreshExcuter(excuter);
        }
示例#3
0
        void AddTaskRefreshExcuter()
        {
            string taskRefreshTime;

            DataLookupsCache.Instance.SearchDataByID <string>("userTaskStatus.refreshTaskTime", out taskRefreshTime);
            Hashtable rule = Johny.HashtablePool.Claim();

            rule.Add("regular", TimerScheduler.AmendCronFormat(taskRefreshTime));
            rule.Add("url", "/mhjtasks/refreshTaskState");
            CronRefreshExcuter excuter = new CronRefreshExcuter("refreshTaskState");

            excuter.Init(rule, delegate(Hashtable hash) {
                string npcLocator;
                DataLookupsCache.Instance.SearchDataByID <string>(string.Format("tasks.{0}.event_count.locator", LTBountyTaskHudController.TaskID()), out npcLocator);
                LTBountyTaskHudController.DeleteMonster(npcLocator);
                DataLookupsCache.Instance.CacheData("user_prize_data.taskliveness_reward", string.Empty);      //重置任务完成情况
                DataLookupsCache.Instance.CacheData("user_prize_data.taskliveness.curr", 0);
                DataLookupsCache.Instance.CacheData("user_prize_data.taskliveness_week_reward", string.Empty); //重置任务完成情况
                DataLookupsCache.Instance.CacheData("user_prize_data.taskweekliveness.curr", 0);
                DataLookupsCache.Instance.CacheData("task_refresh", 1);
            });
            AddCronRefreshExcuter(excuter);
        }
示例#4
0
        CronRefreshExcuter CreateShopRefresher()
        {
            var    tpl  = Hotfix_LT.Data.ShopTemplateManager.Instance.GetShop(m_StoreId);
            string time = "";
            int    i    = 0;

            if (tpl.refresh_time_1 != -1)
            {
                time = time + tpl.refresh_time_1;
                i    = 1;
            }
            if (tpl.refresh_time_2 != -1)
            {
                if (i == 0)
                {
                    time = time + tpl.refresh_time_2;
                    i    = 1;
                }
                else
                {
                    time = time + "," + tpl.refresh_time_2;
                }
            }

            if (tpl.refresh_time_3 != -1)
            {
                if (i == 0)
                {
                    time = time + tpl.refresh_time_3;
                    i    = 1;
                }
                else
                {
                    time = time + "," + tpl.refresh_time_3;
                }
            }

            if (tpl.refresh_time_4 != -1)
            {
                if (i == 0)
                {
                    time = time + tpl.refresh_time_4;
                    i    = 1;
                }
                else
                {
                    time = time + "," + tpl.refresh_time_4;
                }
            }
            time = string.Format("0 {0} * * *", time);
            CronRefreshExcuter re   = new CronRefreshExcuter(m_DataID);
            Hashtable          data = Johny.HashtablePool.Claim();

            data.Add("regular", time);
            data.Add("url", "/shops/getShopInfo");
            data.Add("time_path", "");
            data.Add("level", 0);
            var ht = Johny.HashtablePool.Claim();

            ht.Add("shopType", tpl.shop_type);
            data.Add("parameters", ht);
            re.Init(data);
            return(re);
        }