예제 #1
0
        /// <summary>
        /// 构建远程路径
        /// </summary>
        /// <param name="time"></param>
        /// <param name="fileType"></param>
        /// <returns></returns>
        private string BuildUrl(Time time, string fileType)
        {
            Dictionary <string, string> dic = ELMarkerReplaceService.GetTimeKeyWordDictionary(time);

            dic.Add(ELMarker.ProductType, fileType.ToString());
            ELMarkerReplaceService elService = new Geo.ELMarkerReplaceService(dic);
            var url = elService.Get(urlModel);

            return(url);
        }
        /// <summary>
        /// 构建
        /// </summary>
        /// <param name="time"></param>
        /// <returns></returns>
        public string [] Build(Time time)
        {
            var urlModels = BuildWithUrlDirectory(new List <String>(UrlModels));

            urlModels = BuildWithProductType(urlModels);
            urlModels = ELMarkerReplaceService.BuildWithTime(urlModels, time);
            urlModels = BuildWithSourceName(urlModels);
            urlModels = BuildWithSiteNames(urlModels);
            urlModels = RemoveRedundancy(urlModels);

            return(urlModels.ToArray());
        }
예제 #3
0
        private void button_gen_urls_Click(object sender, EventArgs e)
        {
            string   urlModel = this.textBox1_uriModel.Text;
            DateTime timeFrom = timePeriodControl1.TimePeriod.StartDateTime;    //.TimeFrom;
            DateTime timeTo   = this.timePeriodControl1.TimePeriod.EndDateTime; //.TimeTo;

            var           daySpan = TimeSpan.FromDays(1);
            List <string> urls    = ELMarkerReplaceService.BuildWithTime(urlModel, timeFrom, timeTo, TimeSpan.FromDays(1));

            this.richTextBoxControl1.Lines = urls.ToArray();

            log.Info("生成 " + urls.Count + " 条地址。");
        }
        private List <string> BuildWithTime(List <string> urlModels)
        {
            Time          from   = Time.Parse(TimeFrom);
            Time          to     = Time.Parse(TimeTo);
            List <string> pathes = new List <string>();

            for (Time ifrom = from; ifrom <= to; ifrom = ifrom + TimeIntervalInSeconds)
            {
                List <string> subPathes = ELMarkerReplaceService.BuildWithTime(urlModels, ifrom);
                pathes.AddRange(subPathes);
            }
            return(pathes.Distinct().ToList());
        }
예제 #5
0
        /// <summary>
        /// 获取后缀名称
        /// </summary>
        /// <param name="type"></param>
        /// <param name="time"></param>
        /// <returns></returns>
        public static string GetFileExtension(IgsProductType type, Time time)
        {
            var fileNameZipModel = Gnsser.Data.IgsProductFileNameModel.Instance.GetExtensionModel(type);
            TimeBasedFilePathBuilder FilePathBuilder = new  TimeBasedFilePathBuilder(fileNameZipModel);
            var models = FilePathBuilder.Get(time);

            Dictionary <string, string> dic = new Dictionary <string, string>();

            dic.Add(ELMarker.ProductType, type.ToString());
            ELMarkerReplaceService service = new ELMarkerReplaceService(dic);
            var extensoin = service.Get(models.FilePath);

            return(extensoin);
        }
예제 #6
0
        private static List <string> BuildFileNameModel(string name, IgsProductType type, bool IsWeekly)
        {
            var fileNameZipModel = Gnsser.Data.IgsProductFileNameModel.Instance.Get(type);
            var fileNameModel    = fileNameZipModel.TrimEnd('Z', '.');
            var pathModels       = new List <string> {
                fileNameModel, fileNameZipModel
            };

            Dictionary <string, string> dic = new Dictionary <string, string>();

            dic.Add(ELMarker.SourceName, name);
            dic.Add(ELMarker.ProductType, type.ToString());
            ELMarkerReplaceService service = new ELMarkerReplaceService(dic);
            var models = service.Get(pathModels);

            return(models);
        }
예제 #7
0
        private void button_gen_urls_Click(object sender, EventArgs e)
        {
            string   urlModel = this.textBox1_uriModel.Text;
            DateTime timeFrom = timePeriodControl1.TimePeriod.StartDateTime;    //.TimeFrom;
            DateTime timeTo   = this.timePeriodControl1.TimePeriod.EndDateTime; //.TimeTo;

            string[] siteNames = namedStringControl_siteNames.GetValue().Split(new char[] { ',', ',', ' ' }, StringSplitOptions.RemoveEmptyEntries);

            var           daySpan = TimeSpan.FromDays(1);
            List <string> urls    = ELMarkerReplaceService.BuildWithTime(urlModel, timeFrom, timeTo, TimeSpan.FromDays(1));

            urls = ELMarkerReplaceService.BuildWithKeys(urls, ELMarker.SiteName, siteNames);

            richTextBoxControl_allUrls.Lines = urls.ToArray();

            var info = "生成 " + urls.Count + " 条数据。";

            ShowInfo(info);
            Geo.Utils.FormUtil.ShowOkMessageBox(info);
        }