Payload attributes are not displayed in operational policy

Handled list type in response

Change-Id: If4b5b45c5f23f377add1be84306a31e78d47c52b
Issue-ID: CLAMP-823
Signed-off-by: Vidyashree-Huawei <vidyashree.rama@huawei.com>
diff --git a/src/test/resources/tosca/operational-policy-cds-payload-with-list.json b/src/test/resources/tosca/operational-policy-cds-payload-with-list.json
new file mode 100644
index 0000000..24269ec
--- /dev/null
+++ b/src/test/resources/tosca/operational-policy-cds-payload-with-list.json
@@ -0,0 +1,742 @@
+{
+  "type": "object",
+  "title": "Configuration",
+  "required": [
+    "operational_policy",
+    "guard_policies"
+  ],
+  "properties": {
+    "operational_policy": {
+      "type": "object",
+      "title": "Related Parameters",
+      "required": [
+        "controlLoop",
+        "policies"
+      ],
+      "properties": {
+        "controlLoop": {
+          "type": "object",
+          "title": "Control Loop details",
+          "required": [
+            "timeout",
+            "abatement",
+            "trigger_policy",
+            "controlLoopName"
+          ],
+          "properties": {
+            "timeout": {
+              "type": "string",
+              "title": "Overall Time Limit",
+              "default": "0",
+              "format": "number"
+            },
+            "abatement": {
+              "type": "string",
+              "title": "Abatement",
+              "enum": [
+                "True",
+                "False"
+              ]
+            },
+            "trigger_policy": {
+              "type": "string",
+              "title": "Policy Decision Entry"
+            },
+            "controlLoopName": {
+              "type": "string",
+              "title": "Control loop name",
+              "readOnly": "True"
+            }
+          }
+        },
+        "policies": {
+          "uniqueItems": "true",
+          "id": "policies_array",
+          "type": "array",
+          "title": "Policy Decision Tree",
+          "format": "tabs-top",
+          "items": {
+            "title": "Policy Decision",
+            "type": "object",
+            "id": "policy_item",
+            "headerTemplate": "{{self.id}} - {{self.recipe}}",
+            "format": "categories",
+            "basicCategoryTitle": "recipe",
+            "required": [
+              "id",
+              "retry",
+              "timeout",
+              "actor",
+              "success",
+              "failure",
+              "failure_timeout",
+              "failure_retries",
+              "failure_exception",
+              "failure_guard",
+              "target"
+            ],
+            "properties": {
+              "id": {
+                "default": "Policy 1",
+                "title": "Policy ID",
+                "type": "string"
+              },
+              "retry": {
+                "default": "0",
+                "title": "Number of Retry",
+                "type": "string",
+                "format": "number"
+              },
+              "timeout": {
+                "default": "0",
+                "title": "Timeout",
+                "type": "string",
+                "format": "number"
+              },
+              "actor": {
+                "type": "object",
+                "title": "Actor",
+                "anyOf": [
+                  {
+                    "title": "APPC",
+                    "type": "object",
+                    "properties": {
+                      "actor": {
+                        "title": "actor",
+                        "type": "string",
+                        "default": "APPC",
+                        "options": {
+                          "hidden": true
+                        }
+                      },
+                      "recipe": {
+                        "title": "recipe",
+                        "type": "string",
+                        "default": "",
+                        "enum": [
+                          "Restart",
+                          "Rebuild",
+                          "Migrate",
+                          "Health-Check",
+                          "ModifyConfig"
+                        ]
+                      },
+                      "payload": {
+                        "title": "Payload (YAML)",
+                        "type": "string",
+                        "format": "textarea"
+                      }
+                    }
+                  },
+                  {
+                    "title": "SO",
+                    "type": "object",
+                    "properties": {
+                      "actor": {
+                        "title": "actor",
+                        "type": "string",
+                        "default": "SO",
+                        "options": {
+                          "hidden": true
+                        }
+                      },
+                      "recipe": {
+                        "title": "recipe",
+                        "type": "string",
+                        "default": "",
+                        "enum": [
+                          "VF Module Create",
+                          "VF Module Delete"
+                        ]
+                      },
+                      "payload": {
+                        "title": "Payload (YAML)",
+                        "type": "string",
+                        "format": "textarea"
+                      }
+                    }
+                  },
+                  {
+                    "title": "SDNC",
+                    "type": "object",
+                    "properties": {
+                      "actor": {
+                        "title": "actor",
+                        "type": "string",
+                        "default": "SDNC",
+                        "options": {
+                          "hidden": true
+                        }
+                      },
+                      "recipe": {
+                        "title": "recipe",
+                        "type": "string",
+                        "default": "",
+                        "enum": [
+                          "Reroute",
+                          "BandwidthOnDemand"
+                        ]
+                      },
+                      "payload": {
+                        "title": "Payload (YAML)",
+                        "type": "string",
+                        "format": "textarea"
+                      }
+                    }
+                  },
+                  {
+                    "title": "VFC",
+                    "type": "object",
+                    "properties": {
+                      "actor": {
+                        "title": "actor",
+                        "type": "string",
+                        "default": "VFC",
+                        "options": {
+                          "hidden": true
+                        }
+                      },
+                      "recipe": {
+                        "title": "recipe",
+                        "type": "string",
+                        "default": "",
+                        "enum": [
+                          "ModifyConfig"
+                        ]
+                      },
+                      "payload": {
+                        "title": "Payload (YAML)",
+                        "type": "string",
+                        "format": "textarea"
+                      }
+                    }
+                  },
+                  {
+                    "title": "CDS",
+                    "type": "object",
+                    "properties": {
+                      "actor": {
+                        "title": "actor",
+                        "type": "string",
+                        "default": "CDS",
+                        "options": {
+                          "hidden": true
+                        }
+                      },
+                      "recipe": {
+                        "title": "recipe",
+                        "type": "object",
+                        "anyOf": [
+                          {
+                            "title": "user-defined",
+                            "type": "object",
+                            "properties": {
+                              "recipe": {
+                                "title": "recipe",
+                                "type": "string",
+                                "default": "user-defined",
+                                "format": "textarea"
+                              },
+                              "payload": {
+                                "title": "Payload (YAML)",
+                                "type": "string",
+                                "default": "",
+                                "format": "textarea"
+                              }
+                            }
+                          },
+                          {
+                            "title": "resource-assignment",
+                            "type": "object",
+                            "properties": {
+                              "recipe": {
+                                "title": "recipe",
+                                "type": "string",
+                                "default": "resource-assignment",
+                                "options": {
+                                  "hidden": true
+                                }
+                              },
+                              "payload": {
+                                "title": "Payload (YAML)",
+                                "type": "object",
+                                "properties": {
+                                  "artifact_name": {
+                                    "title": "artifact name",
+                                    "type": "string",
+                                    "default": "baseconfiguration",
+                                    "readOnly": "True"
+                                  },
+                                  "artifact_version": {
+                                    "title": "artifact version",
+                                    "type": "string",
+                                    "default": "1.0.0",
+                                    "readOnly": "True"
+                                  },
+                                  "mode": {
+                                    "title": "mode",
+                                    "type": "string",
+                                    "default": "async"
+                                  },
+                                  "data": {
+                                    "title": "data",
+                                    "properties": {
+                                      "template-prefix": {
+                                        "title": "template-prefix",
+                                        "type": "array"
+                                      },
+                                      "template-prefix-with-complex-type": {
+                                        "title": "template-prefix-with-complex-type",
+                                        "type": "array",
+                                        "items": {
+                                          "properties": {
+                                            "prefix-id": {
+                                              "title": "prefix-id",
+                                              "type": "string"
+                                            }
+                                          }
+                                        }
+                                      },
+                                      "resource-assignment-properties": {
+                                        "title": "resource-assignment-properties",
+                                        "type": "object",
+                                        "properties": {
+                                          "private1-prefix-id": {
+                                            "title": "private1-prefix-id",
+                                            "type": "string"
+                                          }
+                                        }
+                                      }
+                                    }
+                                  }
+                                }
+                              }
+                            }
+                          }
+                        ]
+                      }
+                    }
+                  }
+                ]
+              },
+              "success": {
+                "default": "final_success",
+                "title": "When Success",
+                "type": "string"
+              },
+              "failure": {
+                "default": "final_failure",
+                "title": "When Failure",
+                "type": "string"
+              },
+              "failure_timeout": {
+                "default": "final_failure_timeout",
+                "title": "When Failure Timeout",
+                "type": "string"
+              },
+              "failure_retries": {
+                "default": "final_failure_retries",
+                "title": "When Failure Retries",
+                "type": "string"
+              },
+              "failure_exception": {
+                "default": "final_failure_exception",
+                "title": "When Failure Exception",
+                "type": "string"
+              },
+              "failure_guard": {
+                "default": "final_failure_guard",
+                "title": "When Failure Guard",
+                "type": "string"
+              },
+              "target": {
+                "type": "object",
+                "required": [
+                  "type",
+                  "resourceID"
+                ],
+                "anyOf": [
+                  {
+                    "title": "User Defined",
+                    "additionalProperties": "True",
+                    "properties": {
+                      "type": {
+                        "title": "Target type",
+                        "type": "string",
+                        "default": "",
+                        "enum": [
+                          "VNF",
+                          "VFMODULE",
+                          "VM"
+                        ]
+                      },
+                      "resourceID": {
+                        "title": "Target type",
+                        "type": "string",
+                        "default": ""
+                      }
+                    }
+                  },
+                  {
+                    "title": "VNF-vLoadBalancerMS 0",
+                    "properties": {
+                      "type": {
+                        "title": "Type",
+                        "type": "string",
+                        "default": "VNF",
+                        "readOnly": "True"
+                      },
+                      "resourceID": {
+                        "title": "Resource ID",
+                        "type": "string",
+                        "default": "vLoadBalancerMS",
+                        "readOnly": "True"
+                      }
+                    }
+                  },
+                  {
+                    "title": "VFMODULE-Vloadbalancerms..vpkg..module-1",
+                    "properties": {
+                      "type": {
+                        "title": "Type",
+                        "type": "string",
+                        "default": "VFMODULE",
+                        "readOnly": "True"
+                      },
+                      "resourceID": {
+                        "title": "Resource ID",
+                        "type": "string",
+                        "default": "Vloadbalancerms..vpkg..module-1",
+                        "readOnly": "True"
+                      },
+                      "modelInvariantId": {
+                        "title": "Model Invariant Id (ModelInvariantUUID)",
+                        "type": "string",
+                        "default": "ca052563-eb92-4b5b-ad41-9111768ce043",
+                        "readOnly": "True"
+                      },
+                      "modelVersionId": {
+                        "title": "Model Version Id (ModelUUID)",
+                        "type": "string",
+                        "default": "1e725ccc-b823-4f67-82b9-4f4367070dbc",
+                        "readOnly": "True"
+                      },
+                      "modelName": {
+                        "title": "Model Name",
+                        "type": "string",
+                        "default": "Vloadbalancerms..vpkg..module-1",
+                        "readOnly": "True"
+                      },
+                      "modelVersion": {
+                        "title": "Model Version",
+                        "type": "string",
+                        "default": "1",
+                        "readOnly": "True"
+                      },
+                      "modelCustomizationId": {
+                        "title": "Customization ID",
+                        "type": "string",
+                        "default": "1bffdc31-a37d-4dee-b65c-dde623a76e52",
+                        "readOnly": "True"
+                      }
+                    }
+                  },
+                  {
+                    "title": "VFMODULE-Vloadbalancerms..vdns..module-3",
+                    "properties": {
+                      "type": {
+                        "title": "Type",
+                        "type": "string",
+                        "default": "VFMODULE",
+                        "readOnly": "True"
+                      },
+                      "resourceID": {
+                        "title": "Resource ID",
+                        "type": "string",
+                        "default": "Vloadbalancerms..vdns..module-3",
+                        "readOnly": "True"
+                      },
+                      "modelInvariantId": {
+                        "title": "Model Invariant Id (ModelInvariantUUID)",
+                        "type": "string",
+                        "default": "4c10ba9b-f88f-415e-9de3-5d33336047fa",
+                        "readOnly": "True"
+                      },
+                      "modelVersionId": {
+                        "title": "Model Version Id (ModelUUID)",
+                        "type": "string",
+                        "default": "4fa73b49-8a6c-493e-816b-eb401567b720",
+                        "readOnly": "True"
+                      },
+                      "modelName": {
+                        "title": "Model Name",
+                        "type": "string",
+                        "default": "Vloadbalancerms..vdns..module-3",
+                        "readOnly": "True"
+                      },
+                      "modelVersion": {
+                        "title": "Model Version",
+                        "type": "string",
+                        "default": "1",
+                        "readOnly": "True"
+                      },
+                      "modelCustomizationId": {
+                        "title": "Customization ID",
+                        "type": "string",
+                        "default": "bafcdab0-801d-4d81-9ead-f464640a38b1",
+                        "readOnly": "True"
+                      }
+                    }
+                  },
+                  {
+                    "title": "VFMODULE-Vloadbalancerms..base_template..module-0",
+                    "properties": {
+                      "type": {
+                        "title": "Type",
+                        "type": "string",
+                        "default": "VFMODULE",
+                        "readOnly": "True"
+                      },
+                      "resourceID": {
+                        "title": "Resource ID",
+                        "type": "string",
+                        "default": "Vloadbalancerms..base_template..module-0",
+                        "readOnly": "True"
+                      },
+                      "modelInvariantId": {
+                        "title": "Model Invariant Id (ModelInvariantUUID)",
+                        "type": "string",
+                        "default": "921f7c96-ebdd-42e6-81b9-1cfc0c9796f3",
+                        "readOnly": "True"
+                      },
+                      "modelVersionId": {
+                        "title": "Model Version Id (ModelUUID)",
+                        "type": "string",
+                        "default": "63734409-f745-4e4d-a38b-131638a0edce",
+                        "readOnly": "True"
+                      },
+                      "modelName": {
+                        "title": "Model Name",
+                        "type": "string",
+                        "default": "Vloadbalancerms..base_template..module-0",
+                        "readOnly": "True"
+                      },
+                      "modelVersion": {
+                        "title": "Model Version",
+                        "type": "string",
+                        "default": "1",
+                        "readOnly": "True"
+                      },
+                      "modelCustomizationId": {
+                        "title": "Customization ID",
+                        "type": "string",
+                        "default": "86baddea-c730-4fb8-9410-cd2e17fd7f27",
+                        "readOnly": "True"
+                      }
+                    }
+                  },
+                  {
+                    "title": "VFMODULE-Vloadbalancerms..vlb..module-2",
+                    "properties": {
+                      "type": {
+                        "title": "Type",
+                        "type": "string",
+                        "default": "VFMODULE",
+                        "readOnly": "True"
+                      },
+                      "resourceID": {
+                        "title": "Resource ID",
+                        "type": "string",
+                        "default": "Vloadbalancerms..vlb..module-2",
+                        "readOnly": "True"
+                      },
+                      "modelInvariantId": {
+                        "title": "Model Invariant Id (ModelInvariantUUID)",
+                        "type": "string",
+                        "default": "a772a1f4-0064-412c-833d-4749b15828dd",
+                        "readOnly": "True"
+                      },
+                      "modelVersionId": {
+                        "title": "Model Version Id (ModelUUID)",
+                        "type": "string",
+                        "default": "0f5c3f6a-650a-4303-abb6-fff3e573a07a",
+                        "readOnly": "True"
+                      },
+                      "modelName": {
+                        "title": "Model Name",
+                        "type": "string",
+                        "default": "Vloadbalancerms..vlb..module-2",
+                        "readOnly": "True"
+                      },
+                      "modelVersion": {
+                        "title": "Model Version",
+                        "type": "string",
+                        "default": "1",
+                        "readOnly": "True"
+                      },
+                      "modelCustomizationId": {
+                        "title": "Customization ID",
+                        "type": "string",
+                        "default": "96a78aad-4ffb-4ef0-9c4f-deb03bf1d806",
+                        "readOnly": "True"
+                      }
+                    }
+                  }
+                ]
+              }
+            }
+          }
+        }
+      }
+    },
+    "guard_policies": {
+      "type": "array",
+      "format": "tabs-top",
+      "title": "Associated Guard policies",
+      "items": {
+        "headerTemplate": "{{self.policy-id}} - {{self.content.recipe}}",
+        "anyOf": [
+          {
+            "title": "Guard MinMax",
+            "type": "object",
+            "properties": {
+              "policy-id": {
+                "type": "string",
+                "default": "guard.minmax.new",
+                "pattern": "^(guard.minmax\\..*)$"
+              },
+              "content": {
+                "properties": {
+                  "actor": {
+                    "type": "string",
+                    "enum": [
+                      "APPC",
+                      "SO",
+                      "VFC",
+                      "SDNC",
+                      "SDNR"
+                    ]
+                  },
+                  "recipe": {
+                    "type": "string",
+                    "enum": [
+                      "Restart",
+                      "Rebuild",
+                      "Migrate",
+                      "Health-Check",
+                      "ModifyConfig",
+                      "VF Module Create",
+                      "VF Module Delete",
+                      "Reroute"
+                    ]
+                  },
+                  "targets": {
+                    "type": "string",
+                    "default": ".*"
+                  },
+                  "clname": {
+                    "type": "string",
+                    "template": "{{loopName}}",
+                    "watch": {
+                      "loopName": "operational_policy.controlLoop.controlLoopName"
+                    }
+                  },
+                  "guardActiveStart": {
+                    "type": "string",
+                    "default": "00:00:00Z"
+                  },
+                  "guardActiveEnd": {
+                    "type": "string",
+                    "default": "10:00:00Z"
+                  },
+                  "min": {
+                    "type": "string",
+                    "default": "0"
+                  },
+                  "max": {
+                    "type": "string",
+                    "default": "1"
+                  }
+                }
+              }
+            }
+          },
+          {
+            "title": "Guard Frequency",
+            "type": "object",
+            "properties": {
+              "policy-id": {
+                "type": "string",
+                "default": "guard.frequency.new",
+                "pattern": "^(guard.frequency\\..*)$"
+              },
+              "content": {
+                "properties": {
+                  "actor": {
+                    "type": "string",
+                    "enum": [
+                      "APPC",
+                      "SO",
+                      "VFC",
+                      "SDNC",
+                      "SDNR"
+                    ]
+                  },
+                  "recipe": {
+                    "type": "string",
+                    "enum": [
+                      "Restart",
+                      "Rebuild",
+                      "Migrate",
+                      "Health-Check",
+                      "ModifyConfig",
+                      "VF Module Create",
+                      "VF Module Delete",
+                      "Reroute"
+                    ]
+                  },
+                  "targets": {
+                    "type": "string",
+                    "default": ".*"
+                  },
+                  "clname": {
+                    "type": "string",
+                    "template": "{{loopName}}",
+                    "watch": {
+                      "loopName": "operational_policy.controlLoop.controlLoopName"
+                    }
+                  },
+                  "guardActiveStart": {
+                    "type": "string",
+                    "default": "00:00:00Z"
+                  },
+                  "guardActiveEnd": {
+                    "type": "string",
+                    "default": "10:00:00Z"
+                  },
+                  "limit": {
+                    "type": "string"
+                  },
+                  "timeWindow": {
+                    "type": "string"
+                  },
+                  "timeUnits": {
+                    "type": "string",
+                    "enum": [
+                      "minute",
+                      "hour",
+                      "day",
+                      "week",
+                      "month",
+                      "year"
+                    ]
+                  }
+                }
+              }
+            }
+          }
+        ]
+      }
+    }
+  }
+}
\ No newline at end of file