public DataUpdateContainer(
     LotteryUpdateConfig lotteryUpdateConfig,
     ILotteryDataAppService lotteryDataAppService,
     LotteryDataJob lotteryDataJob)
 {
     _lotteryUpdateConfig   = lotteryUpdateConfig;
     _lotteryDataAppService = lotteryDataAppService;
     _lotteryDataJob        = lotteryDataJob;
 }
Example #2
0
        protected LotteryDataJob(LotteryType lotteryType)
        {
            HostingEnvironment.RegisterObject(this);
            _LotteryType               = lotteryType;
            _lotteryDataAppService     = ServiceLocator.Current.GetInstance <ILotteryDataAppService>();
            _lotteryUpdateConfigLoader = ServiceLocator.Current.GetInstance <ILotteryUpdateConfigLoader>();
            _lotteryUpdateConfig       = _lotteryUpdateConfigLoader.GetLotteryUpdateConfigs().Single(p => p.Name == lotteryType.ToString());
            //_nextLotteryTime = _lotteryUpdateConfig.NextLotteryTime;

            _dataUpdateContainer = new DataUpdateContainer(_lotteryUpdateConfig, _lotteryDataAppService, this);
        }
        private void LoaderLotteryUpdateConfig()
        {
            var xmlDoc      = new XmlDocument();
            var xmlFilePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "LotteryData.config");

            xmlDoc.Load(xmlFilePath);
            var lotteries = xmlDoc.SelectSingleNode("/lotterys")?.ChildNodes;

            foreach (XmlNode node in lotteries)
            {
                Debug.Assert(node.Attributes != null, "node.Attributes != null");
                var lottery = new LotteryUpdateConfig()
                {
                    Name      = node.Attributes["name"]?.InnerText,
                    Cname     = node.Attributes["cname"]?.InnerText,
                    Interval  = Convert.ToInt32(node.Attributes["interval"]?.InnerText),
                    TimeRules = LoaderTimeRules(node),
                    DataSites = LoaderDataSites(node),
                    Weekdays  = LoaderWeekdays(node),
                };
                _lotteryUpdateConfigs.Add(lottery);
            }
        }