Dublin yang model update
[sdnc/northbound.git] / generic-resource-api / model / src / main / yang / GENERIC-RESOURCE-API.yang
index 62d8c7b..ac89e02 100644 (file)
@@ -51,6 +51,20 @@ module GENERIC-RESOURCE-API {
                }\r
             }\r
          }\r
+         container pnfs {\r
+            list pnf {\r
+               key "pnf-id";\r
+               leaf pnf-id {\r
+                  type string;\r
+                  mandatory true;\r
+               }\r
+               container pnf-data {\r
+                  uses pnf-operation-information;\r
+                  uses pnf-topology;\r
+                  uses pnf-level-oper-status;\r
+               }\r
+            }\r
+         }\r
          container vnfs {\r
             list vnf {\r
                key "vnf-id";\r
@@ -429,6 +443,79 @@ module GENERIC-RESOURCE-API {
          uses oper-status-data;\r
       }\r
    }\r
+   grouping pnf-operation-information {\r
+      uses sdnc-request-header;\r
+      uses request-information;\r
+      uses service-information;\r
+      uses pnf-details;\r
+      uses pnf-request-input;\r
+   }\r
+   grouping pnf-details {\r
+      container pnf-details {\r
+         leaf pnf-id {\r
+            description "pnfId*Identifier of this Pnf information element. CORRELATIONID = PNF-NAME (A&AI)";\r
+            type string;\r
+            mandatory true;\r
+         }\r
+         leaf pnf-type {\r
+            description "pnfType (template)*Type of Resource. NEW type: PNF (pre-defined in SDC)";\r
+            type string;\r
+         }\r
+         leaf pnf-name {\r
+            type string;\r
+         }\r
+         uses onap-model-information;\r
+      }\r
+   }\r
+   grouping pnf-request-input {\r
+      container pnf-request-input {\r
+         leaf request-version {\r
+            description "keep this? e.g. 1702";\r
+            type string;\r
+         }\r
+         leaf pnf-name {\r
+            type string;\r
+         }\r
+         uses region-identifier;\r
+         container pnf-input-parameters {\r
+            uses param;\r
+         }\r
+      }\r
+   }\r
+   grouping pnf-topology {\r
+      container pnf-topology {\r
+         uses pnf-topology-identifier-structure;\r
+         uses region-identifier;\r
+         uses onap-model-information;\r
+         container pnf-parameters-data {\r
+            uses param;\r
+         }\r
+         leaf sdnc-generated-cloud-resources {\r
+            description "Indicate if source is sdnc generated cloud param.When true, the parameters are literal HEAT template parameter names;When false, the parameters need to be converted to HEAT format";\r
+            type boolean;\r
+         }\r
+      }\r
+   }\r
+   grouping pnf-topology-identifier-structure {\r
+      container pnf-topology-identifier-structure {\r
+         leaf pnf-id {\r
+            type string;\r
+         }\r
+         leaf pnf-type {\r
+            description "In preload tree, this label is used for the vf-module-type";\r
+            type string;\r
+         }\r
+         leaf pnf-name {\r
+            description "optionally comes from pnf-request-input container or is assigned by sdn-c";\r
+            type string;\r
+         }\r
+      }\r
+   }\r
+   grouping pnf-level-oper-status {\r
+      container pnf-level-oper-status {\r
+         uses oper-status-data;\r
+      }\r
+   }\r
    grouping vnf-operation-information {\r
       uses sdnc-request-header;\r
       uses request-information;\r
@@ -2353,6 +2440,9 @@ module GENERIC-RESOURCE-API {
                enum "CreateVnfInstance";\r
                enum "ActivateVnfInstance";\r
                enum "DeleteVnfInstance";\r
+               enum "CreatePnfInstance";\r
+               enum "ActivatePnfInstance";\r
+               enum "DeletePnfInstance";\r
                enum "CreateVfModuleInstance";\r
                enum "ActivateVfModuleInstance";\r
                enum "DeleteVfModuleInstance";\r
@@ -2580,12 +2670,15 @@ module GENERIC-RESOURCE-API {
             enum "CreateNetworkInstance";\r
             enum "ActivateNetworkInstance";\r
             enum "DeActivateNetworkInstance";\r
+            enum "DeleteNetworkInstance";\r
             enum "CreateServiceInstance";\r
             enum "DeleteServiceInstance";\r
-            enum "DeleteNetworkInstance";\r
             enum "CreateVnfInstance";\r
             enum "ActivateVnfInstance";\r
             enum "DeleteVnfInstance";\r
+            enum "CreatePnfInstance";\r
+            enum "ActivatePnfInstance";\r
+            enum "DeletePnfInstance";\r
             enum "CreateVfModuleInstance";\r
             enum "ActivateVfModuleInstance";\r
             enum "DeleteVfModuleInstance";\r
@@ -2690,6 +2783,11 @@ module GENERIC-RESOURCE-API {
          uses instance-reference;\r
       }\r
    }\r
+   grouping pnf-response-information {\r
+      container pnf-response-information {\r
+         uses instance-reference;\r
+      }\r
+   }\r
    grouping contrail-route-response-information {\r
       container contrail-route-response-information {\r
          uses instance-reference;\r
@@ -3135,6 +3233,16 @@ module GENERIC-RESOURCE-API {
          uses service-response-information;\r
       }\r
    }\r
+   rpc pnf-topology-operation {\r
+      input {\r
+         uses pnf-operation-information;\r
+      }\r
+      output {\r
+         uses topology-response-common;\r
+         uses pnf-response-information;\r
+         uses service-response-information;\r
+      }\r
+   }\r
    rpc contrail-route-topology-operation {\r
       input {\r
          uses contrail-route-operation-information;\r