Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
10/02/19 12:44:44 (5 years ago)
Author:
dpiringe
Message:

#3026

  • added class for constants -> Constants
  • added new converter -> ValueLookupParameterConverter
  • fixed a bug with type extension IsEqualTo
  • fixed converter priorities
File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/3026_IntegrationIntoSymSpace/HeuristicLab.JsonInterface/JCGenerator.cs

    r17284 r17287  
    1515  public class JCGenerator {
    1616
    17     private JObject template = JObject.Parse(@"{
    18       'Metadata': {
    19         'Algorithm':'',
    20         'Problem':''
    21       },
    22       'Objects': [],
    23       'Types': {}
    24     }");
     17    private JObject template = JObject.Parse(Constants.Template);
    2518
    2619    private Dictionary<string, string> TypeList = new Dictionary<string, string>();
     
    3932    private JObject Serialize(JsonItem item) {
    4033      JObject obj = JObject.FromObject(item, Settings());
    41       obj["StaticParameters"] = obj["Parameters"];
    42       obj["FreeParameters"] = obj["Parameters"];
     34      obj[Constants.StaticParameters] = obj[nameof(JsonItem.Parameters)];
     35      obj[Constants.FreeParameters] = obj[nameof(JsonItem.Parameters)];
    4336
    44       obj.Property("Parameters")?.Remove();
     37      obj.Property(nameof(JsonItem.Parameters))?.Remove();
    4538      RefactorFreeParameters(obj, null);
    4639      RefactorStaticParameters(obj);
    4740
    48       obj.Property("Default")?.Remove();
    49       obj.Property("Type")?.Remove();
     41      obj.Property(nameof(JsonItem.Default))?.Remove();
     42      obj.Property(nameof(JsonItem.Type))?.Remove();
    5043
    5144      TypeList.Add(item.Path, item.Type);
     
    6053      PopulateJsonItems(problemData);
    6154
    62       template["Metadata"]["Algorithm"] = algorithm.Name;
    63       template["Metadata"]["Problem"] = problem.Name;
    64       template["Objects"] = jsonItems;
    65       template["Types"] = JObject.FromObject(TypeList);
     55      template[Constants.Metadata][Constants.Algorithm] = algorithm.Name;
     56      template[Constants.Metadata][Constants.Problem] = problem.Name;
     57      template[Constants.Objects] = jsonItems;
     58      template[Constants.Types] = JObject.FromObject(TypeList);
    6659
    6760      return CustomJsonWriter.Serialize(template);
     
    8477          objToRemove.Add(x);
    8578        } else {
    86           x.Property("Path")?.Remove();
    87           x.Property("Type")?.Remove();
    88           x.Property("Parameters")?.Remove();
     79          x.Property(nameof(JsonItem.Path))?.Remove();
     80          x.Property(nameof(JsonItem.Type))?.Remove();
     81          x.Property(nameof(JsonItem.Parameters))?.Remove();
    8982        }
    90       }, token["FreeParameters"]);
     83      }, token[Constants.FreeParameters]);
    9184      foreach (var x in objToRemove) x.Remove();
    92 
    9385    }
    9486
     
    9789      TransformNodes(x => {
    9890        var p = x.ToObject<JsonItem>();
    99         x.Property("Range")?.Remove();
    100         x.Property("Operators")?.Remove();
    101         x.Property("Parameters")?.Remove();
    102         x.Property("Type")?.Remove();
     91        x.Property(nameof(JsonItem.Range))?.Remove();
     92        x.Property(nameof(JsonItem.Operators))?.Remove();
     93        x.Property(nameof(JsonItem.Parameters))?.Remove();
     94        x.Property(nameof(JsonItem.Type))?.Remove();
    10395        if (p.Default == null) objToRemove.Add(x);
    104       }, token["StaticParameters"]);
     96      }, token[Constants.StaticParameters]);
    10597      foreach (var x in objToRemove) x.Remove();
    10698    }
Note: See TracChangeset for help on using the changeset viewer.