Changeset 17477 for branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/Converters/ConstrainedValueParameterConverter.cs
- Timestamp:
- 03/17/20 12:33:35 (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/Converters/ConstrainedValueParameterConverter.cs
r17473 r17477 16 16 IParameter parameter = item as IParameter; 17 17 foreach (var x in GetValidValues(parameter)) 18 if(x.ToString() == CastValue<string>(cdata.Value))18 if(x.ToString() == cdata.Value) 19 19 parameter.ActualValue = x; 20 20 21 if (parameter.ActualValue != null && /*parameter.ActualValue is IParameterizedItem &&*/cdata.Children != null) {22 foreach(var paramin cdata.Children) {23 if( param.Name == parameter.ActualValue.ItemName)24 root.Inject(parameter.ActualValue, param, root);21 if (parameter.ActualValue != null && parameter.ActualValue is IParameterizedItem && cdata.Children != null) { 22 foreach(var child in cdata.Children) { 23 if(child.Name == parameter.ActualValue.ItemName) // name kann verändert werden? egal da bei inject der original name vorhanden ist 24 root.Inject(parameter.ActualValue, child, root); 25 25 } 26 26 } … … 36 36 ConcreteRestrictedItems = GetValidValues(parameter).Select(x => x.ToString()) 37 37 }; 38 item.AddChildren(GetParameterizedChilds(parameter ));38 item.AddChildren(GetParameterizedChilds(parameter, root)); 39 39 40 40 return item; … … 49 49 } 50 50 51 private IList<IJsonItem> GetParameterizedChilds(IParameter value ) {51 private IList<IJsonItem> GetParameterizedChilds(IParameter value, IJsonItemConverter root) { 52 52 List<IJsonItem> list = new List<IJsonItem>(); 53 53 var values = ((dynamic)value).ValidValues; 54 54 foreach(var x in values) { 55 if (x is IParameterizedItem) { 56 IJsonItem tmp = JsonItemConverter.Extract(x);55 if (x is IParameterizedItem) { // only makes sense for IParameterizedItems to go deeper 56 IJsonItem tmp = root.Extract(x, root); 57 57 if(!(tmp is UnsupportedJsonItem)) 58 58 list.Add(tmp);
Note: See TracChangeset
for help on using the changeset viewer.