private void RemoveEndpoints(JsonFileItem jfi, JsonItem ji) { var jis = jfi.JsonItems.Where(x => x.ParentId == ji.Id && !ji.IsDeleted); foreach (var item in jis) { RemoveEndpoints(jfi, item); } ji.IsDeleted = true; }
private void ReplaceValue4Fragment(JsonFileItem jfi, List <JsonItem> fragments) { foreach (var fragment in fragments) { if (!fragment.IsObject && !fragment.IsDeleted) { fragment.Value = SetValue(jfi, fragment.Value); } } }
private string SetValue(JsonFileItem jfi, string value) { value = value.Replace("{R}", jfi.Release == null ? "" : jfi.Release.ToUpper()); value = value.Replace("{N}", jfi.Number == null ? "" : jfi.Number.ToUpper()); value = value.Replace("{I}", jfi.InstanceName == null ? "" : jfi.InstanceName.ToUpper()); value = value.Replace("{r}", jfi.Release == null ? "" : jfi.Release.ToLower()); value = value.Replace("{n}", jfi.Number == null ? "" : jfi.Number.ToLower()); value = value.Replace("{i}", jfi.InstanceName == null ? "" : jfi.InstanceName.ToLower()); return(value); }
private void AnalysePathes(IList<string> filePathes) { foreach (var item in filePathes) { var jfi = new JsonFileItem(); jfi.Id = Guid.NewGuid().ToString(); jfi.Path = item; if (!FileHelper.ExistFile(item)) { jfi.HasError = true; jfi.ErrorMessage += "文件不存在\r\n"; this.JsonFileList.Add(jfi); continue; } if(Path.GetExtension(item)!=".json") { continue; } if (this.JsonFileList.FirstOrDefault(x => x.Path == item) != null) { jfi.HasError = true; jfi.ErrorMessage += "已经存在\r\n"; continue; //this.JsonFileList.Add(jfi); } jfi.Name = GetPathName(jfi.Path); GetInstaceInfo(jfi.Name, jfi); jfi.NameAsPara = jfi.Name; //jfi.Order = 0; try { jfi.Content = FileHelper.ReadFile(jfi.Path); JsonOperator jo = new JsonOperator(); jo.SetJsonToItemList(jfi.Content); jfi.JsonItems = jo.JsonItemList; } catch (Exception ex) { jfi.HasError = true; jfi.ErrorMessage = ex.Message; } this.JsonFileList.Add(jfi); } }
private void GetInstaceInfo(string name, JsonFileItem jfi) { try { var strs = name.Split('_'); jfi.Release = strs[1]; jfi.InstanceName = strs[2]; if (strs.Length == 3) { jfi.Number = FormatHelper.GetLastNumber(strs[2]).ToString(); jfi.InstanceName= FormatHelper.GetExecptNumber(strs[2]).ToString(); } if (strs.Length >= 4) jfi.Number = strs[3]; } catch { } }
private void RemoveEIMASElements(JsonFileItem jfi) { var list = new List <string> { "APIBaseURL", "ida_clientId", "ida_appKey", "ida_metadataAddress", "ida_redirectUri", "ida_postLogoutRedirectUri", "ida_authority" }; foreach (var item in list) { var needToRemove = jfi.JsonItems.FirstOrDefault(x => x.Key == item && !x.IsDeleted); if (needToRemove != null) { needToRemove.IsDeleted = true; } } }
private void Add41Endpoint(JsonFileItem jfi, List <string> selectedEndpints, bool isErms) { var jId = jfi.JsonItems.FirstOrDefault(x => x.Key == "id" && !x.IsDeleted && !x.IsObject); var idValue = jId.Value; var strs = idValue.Split('_'); var sender = ""; for (int i = 1; i < strs.Length; i++) { sender += strs[i].ToUpper(); } foreach (var eId in selectedEndpints) { var ermsBase = jfi.JsonItems.FirstOrDefault(x => x.Key == "erms_config" && !x.IsDeleted); //var ji = new JsonItem(); //ji.Id = Guid.NewGuid().ToString(); //ji.IsObject = true; //ji.ParentId = ermsBase.Id; //jfi.JsonItems.Add(ji); jfi.JsonItems.AddRange(this.ermsConfig.GetJsonItemsByIdWith(ermsBase.Id, eId, isErms, sender)); } }
private void AddEIMASElements(JsonFileItem jfi, string parentId, List <KeyValue> paraList) { var value = paraList.FirstOrDefault(x => x.Key == "EIMASAPIBaseUrl").Value; var newJfi = new JsonItem { Id = Guid.NewGuid().ToString(), Key = "APIBaseURL", Order = jfi.JsonItems.Count + 1, Value = value, ParentId = parentId }; jfi.JsonItems.Add(newJfi); value = paraList.FirstOrDefault(x => x.Key == "EIMASClientId").Value; newJfi = new JsonItem { Id = Guid.NewGuid().ToString(), Key = "ida_clientId", Order = jfi.JsonItems.Count + 1, Value = value, ParentId = parentId }; jfi.JsonItems.Add(newJfi); value = paraList.FirstOrDefault(x => x.Key == "EIMASAppKey").Value; newJfi = new JsonItem { Id = Guid.NewGuid().ToString(), Key = "ida_appKey", Order = jfi.JsonItems.Count + 1, Value = value, ParentId = parentId }; jfi.JsonItems.Add(newJfi); var eimasUrl = paraList.FirstOrDefault(x => x.Key == "EIMASUrl").Value; newJfi = new JsonItem { Id = Guid.NewGuid().ToString(), Key = "ida_metadataAddress", Order = jfi.JsonItems.Count + 1, Value = $"{eimasUrl}/adfs/.well-known/openid-configuration", ParentId = parentId }; jfi.JsonItems.Add(newJfi); newJfi = new JsonItem { Id = Guid.NewGuid().ToString(), Key = "ida_redirectUri", Order = jfi.JsonItems.Count + 1, Value = $"https://qa-{jfi.Release}-{jfi.InstanceName}{jfi.Number}-testing.eol-test.eurofins.local/", ParentId = parentId }; jfi.JsonItems.Add(newJfi); newJfi = new JsonItem { Id = Guid.NewGuid().ToString(), Key = "ida_postLogoutRedirectUri", Order = jfi.JsonItems.Count + 1, Value = $"https://qa-{jfi.Release}-{jfi.InstanceName}{jfi.Number}-testing.eol-test.eurofins.local/Impersonation/Stopimpersonate", ParentId = parentId }; jfi.JsonItems.Add(newJfi); newJfi = new JsonItem { Id = Guid.NewGuid().ToString(), Key = "ida_authority", Order = jfi.JsonItems.Count + 1, Value = $"{eimasUrl}/adfs", ParentId = parentId }; jfi.JsonItems.Add(newJfi); }