1 package org.onap.sdc.dcae.rule.editor.utils;
5 import org.onap.sdc.dcae.composition.restmodels.sdc.Artifact;
6 import org.onap.sdc.dcae.composition.restmodels.ruleeditor.*;
8 import com.google.gson.Gson;
9 import com.google.gson.GsonBuilder;
10 import com.google.gson.JsonParseException;
12 public class RulesPayloadUtils {
13 private static Gson gson = new GsonBuilder().serializeNulls()
14 .registerTypeAdapter(BaseAction.class, new ActionDeserializer())
15 .registerTypeAdapter(BaseCondition.class, new ConditionDeserializer()).create();
17 public static Rule parsePayloadToRule(String payload) throws JsonParseException {
18 return gson.fromJson(payload, Rule.class);
21 public static MappingRules parseMappingRulesArtifactPayload(String payload) throws JsonParseException {
22 return gson.fromJson(payload, MappingRules.class);
25 public static SchemaInfo extractInfoFromDescription(Artifact rulesArtifact) {
27 return gson.fromJson(rulesArtifact.getArtifactDescription(), SchemaInfo.class);
28 }catch (JsonParseException e) {
33 public static String buildSchemaAndRulesResponse(String payload, List<EventTypeDefinitionUI> schema) {
34 return "{\"schema\":"+gson.toJson(schema)+","+payload.replaceFirst("\\{", "");