- Timestamp:
- 02/20/20 16:58:03 (5 years ago)
- Location:
- branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface
- Files:
-
- 10 added
- 1 deleted
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/HeuristicLab.JsonInterface.csproj
r17439 r17446 67 67 <Compile Include="Converters\ValueLookupParameterConverter.cs" /> 68 68 <Compile Include="Converters\ValueRangeConverter.cs" /> 69 <Compile Include="Interfaces\IArrayJsonItem.cs" /> 69 70 <Compile Include="Interfaces\IJsonItem.cs" /> 70 71 <Compile Include="Interfaces\IJsonItemValidator.cs" /> 72 <Compile Include="Interfaces\IMatrixJsonItem.cs" /> 73 <Compile Include="Models\ArrayJsonItemBase.cs" /> 74 <Compile Include="Models\BoolJsonItems.cs" /> 75 <Compile Include="Models\DateTimeJsonItem.cs" /> 76 <Compile Include="Models\DoubleJsonItems.cs" /> 71 77 <Compile Include="Models\GenericJsonItem.cs" /> 78 <Compile Include="Models\IntJsonItems.cs" /> 72 79 <Compile Include="Models\JsonItem.cs" /> 73 <Compile Include="Models\ JsonItems.cs" />80 <Compile Include="Models\MatrixJsonItemBase.cs" /> 74 81 <Compile Include="Models\ResultItem.cs" /> 82 <Compile Include="Models\StringJsonItem.cs" /> 75 83 <Compile Include="Models\UnsupportedJsonItem.cs" /> 76 84 <Compile Include="SingleLineArrayJsonWriter.cs" /> -
branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/Interfaces/IJsonItem.cs
r17444 r17446 5 5 using System.Threading.Tasks; 6 6 using Newtonsoft.Json; 7 using Newtonsoft.Json.Linq; 7 8 8 9 namespace HeuristicLab.JsonInterface { … … 45 46 /// </summary> 46 47 void LoosenPath(); 48 49 void SetFromJObject(JObject jObject); 47 50 } 48 51 } -
branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/JsonTemplateInstantiator.cs
r17442 r17446 51 51 52 52 // extract metadata information 53 string optimizerName = instData.Template[Constants.Metadata][Constants.TemplateName].ToString();54 53 string hLFileLocation = Path.GetFullPath(instData.Template[Constants.Metadata][Constants.HLFileLocation].ToString()); 55 54 … … 78 77 79 78 #region Helper 80 81 private static object GetValueFromJObject(JObject obj) =>82 obj[nameof(IJsonItem.Value)]?.ToObject<object>();83 84 79 private static IEnumerable<string> CollectResults(InstData instData) { 85 80 IList<string> res = new List<string>(); … … 107 102 else old = tmp; 108 103 } 109 tmp.Value = GetValueFromJObject(obj); 110 tmp.Range = obj[nameof(IJsonItem.Range)]?.ToObject<object[]>(); 111 tmp.ActualName = obj[nameof(IJsonItem.ActualName)]?.ToString(); 104 tmp.SetFromJObject(obj); 112 105 instData.Objects.Add(tmp.Path, tmp); 113 106 } … … 120 113 // override default value 121 114 if (instData.Objects.TryGetValue(path, out IJsonItem param)) { 122 param.Value = GetValueFromJObject(obj); 123 // override ActualName (for LookupParameters) 124 if (param.ActualName != null) 125 param.ActualName = obj[nameof(IJsonItem.ActualName)]?.ToString(); 115 // save range from template 116 IEnumerable<object> tmpRange = param.Range; 117 param.SetFromJObject(obj); 118 // set range from template 119 param.Range = tmpRange; 126 120 } else throw new InvalidDataException($"No parameter with path='{path}' defined!"); 127 121 } -
branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/Models/JsonItem.cs
r17444 r17446 5 5 using System.Text; 6 6 using Newtonsoft.Json; 7 using Newtonsoft.Json.Linq; 7 8 8 9 namespace HeuristicLab.JsonInterface { … … 114 115 public void FixatePath() => fixedPath = Path; 115 116 public void LoosenPath() => fixedPath = ""; 117 118 public virtual void SetFromJObject(JObject jObject) { 119 Value = jObject[nameof(IJsonItem.Value)]?.ToObject<object>(); 120 Range = jObject[nameof(IJsonItem.Range)]?.ToObject<object[]>(); 121 ActualName = jObject[nameof(IJsonItem.ActualName)]?.ToString(); 122 } 116 123 #endregion 117 124
Note: See TracChangeset
for help on using the changeset viewer.