Add template and tosca model entities and repositories
[clamp.git] / docs / swagger / swagger.json
index 0738c6f..32113cc 100644 (file)
@@ -1,16 +1,16 @@
 {
   "swagger" : "2.0",
   "info" : {
-    "version" : "4.1.2-SNAPSHOT",
+    "version" : "4.2.0-SNAPSHOT",
     "title" : "Clamp Rest API"
   },
-  "host" : "localhost:34219",
+  "host" : "localhost:33953",
   "basePath" : "/restservices/clds/",
   "schemes" : [ "http" ],
   "paths" : {
     "/v2/loop/{loopName}" : {
       "get" : {
-        "operationId" : "route3",
+        "operationId" : "route20",
         "produces" : [ "application/json" ],
         "parameters" : [ {
           "name" : "loopName",
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route3"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route20"
       }
     },
     "/v2/loop/delete/{loopName}" : {
       "put" : {
-        "operationId" : "route13",
+        "operationId" : "route30",
         "parameters" : [ {
           "name" : "loopName",
           "in" : "path",
         "responses" : {
           "200" : { }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route13"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route30"
       }
     },
     "/v2/loop/deploy/{loopName}" : {
       "put" : {
-        "operationId" : "route8",
+        "operationId" : "route25",
         "produces" : [ "application/json" ],
         "parameters" : [ {
           "name" : "loopName",
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route8"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route25"
       }
     },
     "/v2/loop/getAllNames" : {
       "get" : {
-        "operationId" : "route2",
+        "operationId" : "route19",
         "produces" : [ "application/json" ],
         "responses" : {
           "200" : {
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route2"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route19"
       }
     },
     "/v2/loop/getstatus/{loopName}" : {
       "get" : {
-        "operationId" : "route14",
+        "operationId" : "route31",
         "produces" : [ "application/json" ],
         "parameters" : [ {
           "name" : "loopName",
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route14"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route31"
       }
     },
     "/v2/loop/restart/{loopName}" : {
       "put" : {
-        "operationId" : "route11",
+        "operationId" : "route28",
         "produces" : [ "application/json" ],
         "parameters" : [ {
           "name" : "loopName",
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route11"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route28"
       }
     },
     "/v2/loop/stop/{loopName}" : {
       "put" : {
-        "operationId" : "route10",
+        "operationId" : "route27",
         "produces" : [ "application/json" ],
         "parameters" : [ {
           "name" : "loopName",
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route10"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route27"
       }
     },
     "/v2/loop/submit/{loopName}" : {
       "put" : {
-        "operationId" : "route12",
+        "operationId" : "route29",
         "produces" : [ "application/json" ],
         "parameters" : [ {
           "name" : "loopName",
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route12"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route29"
       }
     },
     "/v2/loop/svgRepresentation/{loopName}" : {
       "get" : {
-        "operationId" : "route4",
+        "operationId" : "route21",
         "produces" : [ "application/xml" ],
         "parameters" : [ {
           "name" : "loopName",
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route4"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route21"
       }
     },
     "/v2/loop/undeploy/{loopName}" : {
       "put" : {
-        "operationId" : "route9",
+        "operationId" : "route26",
         "produces" : [ "application/json" ],
         "parameters" : [ {
           "name" : "loopName",
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route9"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route26"
       }
     },
     "/v2/loop/updateGlobalProperties/{loopName}" : {
       "post" : {
-        "operationId" : "route5",
+        "operationId" : "route22",
         "consumes" : [ "application/json" ],
         "produces" : [ "application/json" ],
         "parameters" : [ {
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route5"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route22"
       }
     },
     "/v2/loop/updateMicroservicePolicy/{loopName}" : {
       "post" : {
-        "operationId" : "route7",
+        "operationId" : "route24",
         "consumes" : [ "application/json" ],
         "produces" : [ "application/json" ],
         "parameters" : [ {
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route7"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route24"
       }
     },
     "/v2/loop/updateOperationalPolicies/{loopName}" : {
       "post" : {
-        "operationId" : "route6",
+        "operationId" : "route23",
         "consumes" : [ "application/json" ],
         "produces" : [ "application/json" ],
         "parameters" : [ {
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route6"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route23"
       }
     },
     "/v1/clds/cldsInfo" : {
       "get" : {
-        "operationId" : "route15",
+        "operationId" : "route32",
         "produces" : [ "application/json" ],
         "responses" : {
           "200" : {
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route15"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route32"
       }
     },
     "/v1/healthcheck" : {
       "get" : {
-        "operationId" : "route16",
+        "operationId" : "route33",
         "produces" : [ "application/json" ],
         "responses" : {
           "200" : {
             }
           }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route16"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route33"
       }
     },
     "/v1/user/getUser" : {
       "get" : {
-        "operationId" : "route17",
+        "operationId" : "route34",
         "produces" : [ "text/plain" ],
         "responses" : {
           "200" : { }
         },
-        "x-camelContextId" : "camel-1",
-        "x-routeId" : "route17"
+        "x-camelContextId" : "camel-2",
+        "x-routeId" : "route34"
       }
     }
   },
     "Loop" : {
       "type" : "object",
       "properties" : {
+        "createdDate" : {
+          "type" : "integer",
+          "format" : "int64"
+        },
+        "updatedDate" : {
+          "type" : "integer",
+          "format" : "int64"
+        },
+        "updatedBy" : {
+          "type" : "string"
+        },
+        "createdBy" : {
+          "type" : "string"
+        },
         "name" : {
           "type" : "string"
         },
         "globalPropertiesJson" : {
           "$ref" : "#/definitions/JsonObject"
         },
-        "modelPropertiesJson" : {
-          "$ref" : "#/definitions/JsonObject"
+        "modelService" : {
+          "$ref" : "#/definitions/Service"
         },
         "blueprint" : {
           "type" : "string"
           "items" : {
             "$ref" : "#/definitions/LoopLog"
           }
+        },
+        "loopTemplate" : {
+          "$ref" : "#/definitions/LoopTemplate"
         }
       },
       "x-className" : {
         "format" : "org.onap.clamp.loop.Loop"
       }
     },
-    "JsonArray" : {
+    "MicroServiceModel" : {
       "type" : "object",
       "properties" : {
-        "asBoolean" : {
-          "type" : "boolean"
-        },
-        "asNumber" : {
-          "$ref" : "#/definitions/Number"
-        },
-        "asString" : {
-          "type" : "string"
-        },
-        "asDouble" : {
-          "type" : "number",
-          "format" : "double"
-        },
-        "asFloat" : {
-          "type" : "number",
-          "format" : "float"
-        },
-        "asLong" : {
+        "createdDate" : {
           "type" : "integer",
           "format" : "int64"
         },
-        "asInt" : {
+        "updatedDate" : {
           "type" : "integer",
-          "format" : "int32"
-        },
-        "asByte" : {
-          "type" : "string",
-          "format" : "byte"
+          "format" : "int64"
         },
-        "asCharacter" : {
+        "updatedBy" : {
           "type" : "string"
         },
-        "asBigDecimal" : {
-          "type" : "number"
-        },
-        "asBigInteger" : {
-          "type" : "integer"
-        },
-        "asShort" : {
-          "type" : "integer",
-          "format" : "int32"
-        },
-        "asJsonPrimitive" : {
-          "$ref" : "#/definitions/JsonPrimitive"
-        },
-        "asJsonNull" : {
-          "$ref" : "#/definitions/JsonNull"
-        },
-        "jsonArray" : {
-          "type" : "boolean"
-        },
-        "jsonObject" : {
-          "type" : "boolean"
-        },
-        "jsonNull" : {
-          "type" : "boolean"
-        },
-        "jsonPrimitive" : {
-          "type" : "boolean"
-        },
-        "asJsonObject" : {
-          "$ref" : "#/definitions/JsonObject"
-        },
-        "asJsonArray" : {
-          "$ref" : "#/definitions/JsonArray"
-        }
-      },
-      "x-className" : {
-        "type" : "string",
-        "format" : "com.google.gson.JsonArray"
-      }
-    },
-    "LoopLog" : {
-      "type" : "object",
-      "properties" : {
-        "id" : {
-          "type" : "integer",
-          "format" : "int64"
+        "createdBy" : {
+          "type" : "string"
         },
-        "logType" : {
-          "type" : "string",
-          "enum" : [ "INFO", "WARNING", "ERROR" ]
+        "name" : {
+          "type" : "string"
         },
-        "logComponent" : {
+        "policyType" : {
           "type" : "string"
         },
-        "message" : {
+        "blueprint" : {
           "type" : "string"
         },
-        "loop" : {
-          "$ref" : "#/definitions/Loop"
+        "policyModel" : {
+          "$ref" : "#/definitions/PolicyModel"
         },
-        "logInstant" : {
-          "type" : "integer",
-          "format" : "int64"
+        "usedByLoopTemplates" : {
+          "type" : "array",
+          "uniqueItems" : true,
+          "items" : {
+            "$ref" : "#/definitions/TemplateMicroServiceModel"
+          }
         }
       }
     },
-    "Number" : {
-      "type" : "object"
-    },
     "JsonPrimitive" : {
       "type" : "object",
       "properties" : {
+        "asBoolean" : {
+          "type" : "boolean"
+        },
         "boolean" : {
           "type" : "boolean"
         },
         "number" : {
           "type" : "boolean"
         },
-        "asBoolean" : {
-          "type" : "boolean"
+        "asString" : {
+          "type" : "string"
         },
         "asNumber" : {
           "$ref" : "#/definitions/Number"
         },
-        "asString" : {
-          "type" : "string"
-        },
         "asDouble" : {
           "type" : "number",
           "format" : "double"
         "string" : {
           "type" : "boolean"
         },
+        "asJsonObject" : {
+          "$ref" : "#/definitions/JsonObject"
+        },
+        "asJsonArray" : {
+          "$ref" : "#/definitions/JsonArray"
+        },
         "asJsonPrimitive" : {
           "$ref" : "#/definitions/JsonPrimitive"
         },
-        "asJsonNull" : {
-          "$ref" : "#/definitions/JsonNull"
-        },
         "jsonArray" : {
           "type" : "boolean"
         },
         "jsonObject" : {
           "type" : "boolean"
         },
-        "jsonNull" : {
-          "type" : "boolean"
-        },
         "jsonPrimitive" : {
           "type" : "boolean"
         },
-        "asJsonObject" : {
-          "$ref" : "#/definitions/JsonObject"
+        "jsonNull" : {
+          "type" : "boolean"
         },
-        "asJsonArray" : {
-          "$ref" : "#/definitions/JsonArray"
+        "asJsonNull" : {
+          "$ref" : "#/definitions/JsonNull"
         }
       }
     },
     "MicroServicePolicy" : {
       "type" : "object",
       "properties" : {
+        "createdDate" : {
+          "type" : "integer",
+          "format" : "int64"
+        },
+        "updatedDate" : {
+          "type" : "integer",
+          "format" : "int64"
+        },
+        "updatedBy" : {
+          "type" : "string"
+        },
+        "createdBy" : {
+          "type" : "string"
+        },
         "name" : {
           "type" : "string"
         },
         "modelType" : {
           "type" : "string"
         },
+        "context" : {
+          "type" : "string"
+        },
+        "deviceTypeScope" : {
+          "type" : "string"
+        },
         "properties" : {
           "$ref" : "#/definitions/JsonObject"
         },
           "items" : {
             "$ref" : "#/definitions/Loop"
           }
+        },
+        "microServiceModel" : {
+          "$ref" : "#/definitions/MicroServiceModel"
         }
       },
       "x-className" : {
     "JsonObject" : {
       "type" : "object",
       "properties" : {
+        "asBoolean" : {
+          "type" : "boolean"
+        },
+        "asJsonObject" : {
+          "$ref" : "#/definitions/JsonObject"
+        },
+        "asString" : {
+          "type" : "string"
+        },
+        "asJsonArray" : {
+          "$ref" : "#/definitions/JsonArray"
+        },
         "asJsonPrimitive" : {
           "$ref" : "#/definitions/JsonPrimitive"
         },
-        "asJsonNull" : {
-          "$ref" : "#/definitions/JsonNull"
+        "jsonArray" : {
+          "type" : "boolean"
         },
-        "asBoolean" : {
+        "jsonObject" : {
           "type" : "boolean"
         },
+        "jsonPrimitive" : {
+          "type" : "boolean"
+        },
+        "jsonNull" : {
+          "type" : "boolean"
+        },
+        "asJsonNull" : {
+          "$ref" : "#/definitions/JsonNull"
+        },
         "asNumber" : {
           "$ref" : "#/definitions/Number"
         },
-        "asString" : {
-          "type" : "string"
-        },
         "asDouble" : {
           "type" : "number",
           "format" : "double"
         "asShort" : {
           "type" : "integer",
           "format" : "int32"
+        }
+      },
+      "x-className" : {
+        "type" : "string",
+        "format" : "com.google.gson.JsonObject"
+      }
+    },
+    "PolicyModel" : {
+      "type" : "object",
+      "properties" : {
+        "createdDate" : {
+          "type" : "integer",
+          "format" : "int64"
         },
-        "jsonArray" : {
-          "type" : "boolean"
+        "updatedDate" : {
+          "type" : "integer",
+          "format" : "int64"
         },
-        "jsonObject" : {
-          "type" : "boolean"
+        "updatedBy" : {
+          "type" : "string"
         },
-        "jsonNull" : {
-          "type" : "boolean"
+        "createdBy" : {
+          "type" : "string"
         },
-        "jsonPrimitive" : {
-          "type" : "boolean"
+        "policyModelType" : {
+          "type" : "string"
         },
-        "asJsonObject" : {
-          "$ref" : "#/definitions/JsonObject"
+        "version" : {
+          "type" : "string"
         },
-        "asJsonArray" : {
-          "$ref" : "#/definitions/JsonArray"
+        "policyModelTosca" : {
+          "type" : "string"
+        },
+        "policyAcronym" : {
+          "type" : "string"
+        },
+        "policyVariant" : {
+          "type" : "string"
         }
-      },
-      "x-className" : {
-        "type" : "string",
-        "format" : "com.google.gson.JsonObject"
       }
     },
-    "ExternalComponent" : {
+    "Service" : {
       "type" : "object",
       "properties" : {
-        "state" : {
-          "$ref" : "#/definitions/ExternalComponentState"
-        },
-        "componentName" : {
+        "serviceUuid" : {
           "type" : "string"
+        },
+        "serviceDetails" : {
+          "$ref" : "#/definitions/JsonObject"
+        },
+        "resourceDetails" : {
+          "$ref" : "#/definitions/JsonObject"
         }
       }
     },
         "loop" : {
           "$ref" : "#/definitions/Loop"
         },
+        "policyModel" : {
+          "$ref" : "#/definitions/PolicyModel"
+        },
         "jsonRepresentation" : {
           "$ref" : "#/definitions/JsonObject"
         }
       }
     },
-    "ExternalComponentState" : {
+    "JsonNull" : {
       "type" : "object",
       "properties" : {
-        "stateName" : {
+        "asBoolean" : {
+          "type" : "boolean"
+        },
+        "asJsonObject" : {
+          "$ref" : "#/definitions/JsonObject"
+        },
+        "asString" : {
           "type" : "string"
         },
-        "description" : {
+        "asJsonArray" : {
+          "$ref" : "#/definitions/JsonArray"
+        },
+        "asJsonPrimitive" : {
+          "$ref" : "#/definitions/JsonPrimitive"
+        },
+        "jsonArray" : {
+          "type" : "boolean"
+        },
+        "jsonObject" : {
+          "type" : "boolean"
+        },
+        "jsonPrimitive" : {
+          "type" : "boolean"
+        },
+        "jsonNull" : {
+          "type" : "boolean"
+        },
+        "asJsonNull" : {
+          "$ref" : "#/definitions/JsonNull"
+        },
+        "asNumber" : {
+          "$ref" : "#/definitions/Number"
+        },
+        "asDouble" : {
+          "type" : "number",
+          "format" : "double"
+        },
+        "asFloat" : {
+          "type" : "number",
+          "format" : "float"
+        },
+        "asLong" : {
+          "type" : "integer",
+          "format" : "int64"
+        },
+        "asInt" : {
+          "type" : "integer",
+          "format" : "int32"
+        },
+        "asByte" : {
+          "type" : "string",
+          "format" : "byte"
+        },
+        "asCharacter" : {
           "type" : "string"
         },
-        "level" : {
+        "asBigDecimal" : {
+          "type" : "number"
+        },
+        "asBigInteger" : {
+          "type" : "integer"
+        },
+        "asShort" : {
           "type" : "integer",
           "format" : "int32"
         }
       }
     },
-    "JsonNull" : {
+    "JsonArray" : {
       "type" : "object",
       "properties" : {
-        "asJsonPrimitive" : {
-          "$ref" : "#/definitions/JsonPrimitive"
-        },
-        "asJsonNull" : {
-          "$ref" : "#/definitions/JsonNull"
-        },
         "asBoolean" : {
           "type" : "boolean"
         },
-        "asNumber" : {
-          "$ref" : "#/definitions/Number"
-        },
         "asString" : {
           "type" : "string"
         },
+        "asNumber" : {
+          "$ref" : "#/definitions/Number"
+        },
         "asDouble" : {
           "type" : "number",
           "format" : "double"
           "type" : "integer",
           "format" : "int32"
         },
+        "asJsonObject" : {
+          "$ref" : "#/definitions/JsonObject"
+        },
+        "asJsonArray" : {
+          "$ref" : "#/definitions/JsonArray"
+        },
+        "asJsonPrimitive" : {
+          "$ref" : "#/definitions/JsonPrimitive"
+        },
         "jsonArray" : {
           "type" : "boolean"
         },
         "jsonObject" : {
           "type" : "boolean"
         },
-        "jsonNull" : {
+        "jsonPrimitive" : {
           "type" : "boolean"
         },
-        "jsonPrimitive" : {
+        "jsonNull" : {
           "type" : "boolean"
         },
-        "asJsonObject" : {
-          "$ref" : "#/definitions/JsonObject"
+        "asJsonNull" : {
+          "$ref" : "#/definitions/JsonNull"
+        }
+      },
+      "x-className" : {
+        "type" : "string",
+        "format" : "com.google.gson.JsonArray"
+      }
+    },
+    "LoopLog" : {
+      "type" : "object",
+      "properties" : {
+        "id" : {
+          "type" : "integer",
+          "format" : "int64"
         },
-        "asJsonArray" : {
-          "$ref" : "#/definitions/JsonArray"
+        "logType" : {
+          "type" : "string",
+          "enum" : [ "INFO", "WARNING", "ERROR" ]
+        },
+        "logComponent" : {
+          "type" : "string"
+        },
+        "message" : {
+          "type" : "string"
+        },
+        "loop" : {
+          "$ref" : "#/definitions/Loop"
+        },
+        "logInstant" : {
+          "type" : "integer",
+          "format" : "int64"
+        }
+      }
+    },
+    "TemplateMicroServiceModel" : {
+      "type" : "object",
+      "properties" : {
+        "loopTemplate" : {
+          "$ref" : "#/definitions/LoopTemplate"
+        },
+        "microServiceModel" : {
+          "$ref" : "#/definitions/MicroServiceModel"
+        },
+        "flowOrder" : {
+          "type" : "integer",
+          "format" : "int32"
+        }
+      }
+    },
+    "Number" : {
+      "type" : "object"
+    },
+    "ExternalComponent" : {
+      "type" : "object",
+      "properties" : {
+        "state" : {
+          "$ref" : "#/definitions/ExternalComponentState"
+        },
+        "componentName" : {
+          "type" : "string"
+        }
+      }
+    },
+    "LoopTemplate" : {
+      "type" : "object",
+      "properties" : {
+        "createdDate" : {
+          "type" : "integer",
+          "format" : "int64"
+        },
+        "updatedDate" : {
+          "type" : "integer",
+          "format" : "int64"
+        },
+        "updatedBy" : {
+          "type" : "string"
+        },
+        "createdBy" : {
+          "type" : "string"
+        },
+        "name" : {
+          "type" : "string"
+        },
+        "blueprint" : {
+          "type" : "string"
+        },
+        "svgRepresentation" : {
+          "type" : "string"
+        },
+        "microServiceModelUsed" : {
+          "type" : "array",
+          "uniqueItems" : true,
+          "items" : {
+            "$ref" : "#/definitions/TemplateMicroServiceModel"
+          }
+        },
+        "modelService" : {
+          "$ref" : "#/definitions/Service"
+        },
+        "maximumInstancesAllowed" : {
+          "type" : "integer",
+          "format" : "int32"
+        }
+      }
+    },
+    "ExternalComponentState" : {
+      "type" : "object",
+      "properties" : {
+        "stateName" : {
+          "type" : "string"
+        },
+        "description" : {
+          "type" : "string"
+        },
+        "level" : {
+          "type" : "integer",
+          "format" : "int32"
         }
       }
     },