Changeset 18077 for branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/JsonTemplateInstantiator.cs
- Timestamp:
- 11/04/21 17:04:01 (2 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/JsonTemplateInstantiator.cs
r18059 r18077 107 107 var rcModifierItem = JsonItemConverter.Extract(rcModifier); 108 108 109 foreach (JObject param in parameters) { 110 var path = param[nameof(IJsonItem.Path)].ToString(); 111 foreach (var item in rcModifierItem) 112 if (item.Path == path) 113 item.SetJObject(param); 114 } 109 SetJObjects(rcModifierItem, parameters); 115 110 116 111 JsonItemConverter.Inject(rcModifier, rcModifierItem); … … 124 119 Objects.Add(root.Path, root); 125 120 126 foreach (JObject obj in Template[Constants.Parameters]) { 127 string path = obj.Property(nameof(IJsonItem.Path)).Value.ToString(); 128 foreach(var tmp in root) { 129 if(tmp.Path == path) { 130 tmp.SetJObject(obj); 131 Objects.Add(tmp.Path, tmp); 121 foreach (var kvp in SetJObjects(root, Template[Constants.Parameters])) 122 Objects.Add(kvp); 123 } 124 125 private IDictionary<string, IJsonItem> SetJObjects(IJsonItem root, JToken parameters) { 126 var dict = new Dictionary<string, IJsonItem>(); 127 foreach (JObject obj in parameters) { 128 var path = obj[nameof(IJsonItem.Path)].ToString(); 129 foreach (var item in root) { 130 if (item.Path == path) { 131 item.SetJObject(obj); 132 item.Active = true; 133 dict.Add(item.Path, item); 132 134 } 133 135 } 134 136 } 137 return dict; 135 138 } 136 139 137 140 private void MergeTemplateWithConfig() { 138 141 foreach (JObject obj in Config) {
Note: See TracChangeset
for help on using the changeset viewer.