Пример #1
0
        /// <summary>
        /// 获取所有配置
        /// </summary>
        /// <param name="files">获取到的所有file配置</param>
        /// <param name="items">所有到的所有item配置</param>
        public void GetAllConfigs(out IEnumerable <string> files, out IDictionary <string, string> items)
        {
            files = new HashSet <string>();
            items = new Dictionary <string, string>();
            var content = _fetcher.GetAllConfigs(new FetchFilter
            {
                AppName     = config.ClientInfo.AppName,
                Version     = config.ClientInfo.Version,
                Environment = config.ClientInfo.Environment
            });

            var dic = JsonConvert.DeserializeObject <Dictionary <ConfigType, Dictionary <string, string> > >(content);

            if (dic != null)
            {
                if (dic.ContainsKey(ConfigType.File) && dic[ConfigType.File] != null)
                {
                    var fileDic = dic[ConfigType.File];
                    files = fileDic.Keys;
                    foreach (var key in fileDic.Keys)
                    {
                        SaveAndCopyFile(key, fileDic[key]);
                    }
                    SaveFileList(files);
                }
                if (dic.ContainsKey(ConfigType.Item) && dic[ConfigType.Item] != null)
                {
                    items = dic[ConfigType.Item];
                    SaveItems(items);
                }
            }
        }