Change generated json schema 77/104977/2
authorsebdet <sebastien.determe@intl.att.com>
Thu, 2 Apr 2020 11:33:19 +0000 (13:33 +0200)
committersebdet <sebastien.determe@intl.att.com>
Thu, 2 Apr 2020 12:24:38 +0000 (14:24 +0200)
Add tabs-top format for array in the policy json schema generated + add a default case for payload

Issue-ID: CLAMP-810
Signed-off-by: sebdet <sebastien.determe@intl.att.com>
Change-Id: I5cca893cda57838c0244fc82974dd5519e787506

src/main/java/org/onap/clamp/clds/tosca/update/execution/cds/ToscaMetadataCdsProcess.java
src/main/java/org/onap/clamp/clds/tosca/update/parser/ToscaConverterToJsonSchema.java
src/test/resources/tosca/new-converter/tca-with-metadata.json
src/test/resources/tosca/new-converter/tosca_apex_with_metadata.json

index b81e46b..81e30cf 100644 (file)
@@ -60,6 +60,7 @@ public class ToscaMetadataCdsProcess extends ToscaMetadataProcess {
     private static void generatePayload(JsonObject childObject, Service serviceModel) {
         generatePayloadPerResource(childObject, "VF", serviceModel);
         generatePayloadPerResource(childObject, "PNF", serviceModel);
+        addToJsonArray(childObject, "anyOf", createBlankEntry());
     }
 
     private static void generateOperation(JsonObject childObject, Service serviceModel) {
@@ -113,6 +114,15 @@ public class ToscaMetadataCdsProcess extends ToscaMetadataProcess {
         addToJsonArray(childObject, "anyOf", schemaAnyOf);
     }
 
+    private static JsonArray createBlankEntry() {
+        JsonArray result = new JsonArray();
+        JsonObject blankObject = new JsonObject();
+        blankObject.addProperty("title", "User defined");
+        blankObject.add("properties", new JsonObject());
+        result.add(blankObject);
+        return result;
+    }
+
     private static JsonObject createPayloadProperty(JsonObject workFlow, JsonObject controllerProperties) {
         JsonObject payloadResult = new JsonObject();
 
index e1d493a..9721e33 100644 (file)
@@ -259,6 +259,7 @@ public class ToscaConverterToJsonSchema {
                                 JsonObject componentAsItem = child.getJsonSchemaOfToscaElement(nameComponent);
                                 if (currentPropertyJsonTemplate.hasFields("properties")) {
                                     propertiesInJson.add("items", componentAsItem);
+                                    propertiesInJson.addProperty("format", "tabs-top");
                                 }
                                 break;
                         }
@@ -271,6 +272,7 @@ public class ToscaConverterToJsonSchema {
                                 this.extractSpecificFieldFromMap(toscaElementProperty, "entry_schema");
                         itemContainer.addProperty("type", valueInEntrySchema);
                         propertiesInJson.add("items", itemContainer);
+                        propertiesInJson.addProperty("format", "tabs-top");
                     }
                     // MAP Case, for now nothing
 
index 1b95f8c..3a700c8 100644 (file)
                           "description": "Version number associated with the threshold"
                         }
                       }
-                    }
+                    },
+                    "format": "tabs-top"
                   },
                   "context": {
                     "type": "string",
                     }
                   }
                 }
-              }
+              },
+              "format": "tabs-top"
             }
           }
         }
index 4cb5bd8..58dff23 100644 (file)
                         }
                       }
                     }
+                  },
+                  {
+                    "title": "User defined",
+                    "properties": {}
                   }
                 ]
               },
             "default": "final_success"
           }
         }
-      }
+      },
+      "format": "tabs-top"
     },
     "trigger": {
       "type": "string",