self-serve dg patch
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / json / GENERIC-RESOURCE-API_self-serve-vnf-unassign.json
index a2645b3..68b6350 100644 (file)
 [
-    {
-        "id": "62b65505.f8b4b4",
-        "type": "dgstart",
-        "name": "DGSTART",
-        "outputs": 1,
-        "x": 89,
-        "y": 30,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "928d511f.36c158"
-            ]
-        ]
-    },
-    {
-        "id": "f87c0728.0afeb8",
-        "type": "block",
-        "name": "block : atomic",
-        "xml": "<block atomic='true'>",
-        "atomic": "true",
-        "comments": "",
-        "outputs": 1,
-        "x": 132.72620391845703,
-        "y": 148.77779006958008,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "3b27abcc.c2ec34",
-                "bf1b89ba.b063e",
-                "1ddd3a42.29f04e",
-                "e5f0334a.e9ca1",
-                "2163e816.27402"
-            ]
-        ]
-    },
-    {
-        "id": "2406fa8b.d43ed6",
-        "type": "method",
-        "name": "method self-serve-vnf-unassign",
-        "xml": "<method rpc='self-serve-vnf-unassign' mode='sync'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 205.76190948486328,
-        "y": 84.70635509490967,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "f87c0728.0afeb8"
-            ]
-        ]
-    },
-    {
-        "id": "928d511f.36c158",
-        "type": "service-logic",
-        "name": "GENERIC-RESOURCE-API ${project.version}",
-        "module": "GENERIC-RESOURCE-API",
-        "version": "${project.version}",
-        "comments": "",
-        "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
-        "outputs": 1,
-        "x": 364.23819732666016,
-        "y": 30.190492630004883,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "2406fa8b.d43ed6"
-            ]
-        ]
-    },
-    {
-        "id": "2869f38e.95f41c",
-        "type": "for",
-        "name": "foreach vnf-parameters-data.param[]",
-        "xml": "<for index='pidx' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 721.4645538330078,
-        "y": 374.70241928100586,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "acaba079.b68f38",
-                "81ad392.f64cec8"
-            ]
-        ]
-    },
-    {
-        "id": "6b50d8c3.1dbdd",
-        "type": "switchNode",
-        "name": "switch resource-resolution-data.status",
-        "xml": "<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status`'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 458.17897033691406,
-        "y": 771.50013256073,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "4641618f.395528",
-                "38e2fce4.feed74",
-                "fa07b3ee.3e2bd"
-            ]
-        ]
-    },
-    {
-        "id": "4641618f.395528",
-        "type": "other",
-        "name": "SUCCESS",
-        "xml": "<outcome value='SUCCESS'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 733.5719718933105,
-        "y": 772.2143878936768,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "d99a0768.8b7718"
-            ]
-        ]
-    },
-    {
-        "id": "3b27abcc.c2ec34",
-        "type": "for",
-        "name": "foreach capability-order[]",
-        "xml": "<for index='cidx' start='0' end='`$ss.capability.execution-order_length`' >\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 387.0357894897461,
-        "y": 229.89282417297363,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "25e2075a.6d1a6",
-                "96711265.1987a",
-                "2869f38e.95f41c",
-                "8523e1fb.bcf3a8"
-            ]
-        ]
-    },
-    {
-        "id": "acaba079.b68f38",
-        "type": "switchNode",
-        "name": "switch param capability-name == execution",
-        "xml": "<switch test='`$ss.capability-name == $tmp.param.capability-name`'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 1077.3574676513672,
-        "y": 418.4285488128662,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "468c9926.a05e6"
-            ]
-        ]
-    },
-    {
-        "id": "468c9926.a05e6",
-        "type": "outcomeTrue",
-        "name": "true",
-        "xml": "<outcome value='true'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 1340.8574676513672,
-        "y": 418.6785488128662,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "6b50d8c3.1dbdd"
-            ]
-        ]
-    },
-    {
-        "id": "d99a0768.8b7718",
-        "type": "call",
-        "name": "call ss.capability-dg",
-        "xml": "<call module='GENERIC-RESOURCE-API' rpc='`$ss.capability-dg`' mode='sync' >\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 938.6907043457031,
-        "y": 771.9762392044067,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "458b24e4.d3efa4"
-            ]
-        ]
-    },
-    {
-        "id": "25e2075a.6d1a6",
-        "type": "set",
-        "name": "ss.capability-name",
-        "xml": "<set>\n<parameter name='ss.capability-name' value='`$ss.capability.execution-order[$cidx]`' />\n\n<!--\nss.capability.execution-order[]\n-->\n",
-        "comments": "",
-        "x": 667.3928451538086,
-        "y": 229.84527587890625,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "81ad392.f64cec8",
-        "type": "set",
-        "name": "tmp.param.capability-name",
-        "xml": "<set>\n<parameter name='tmp.param.capability-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.capability-name`' />\n",
-        "comments": "",
-        "x": 1026.7144927978516,
-        "y": 373.03575897216797,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "96711265.1987a",
-        "type": "set",
-        "name": "set ss.capability.action = unassign",
-        "xml": "<set>\n<parameter name='ss.capability-action' value='unassign' />\n",
-        "comments": "",
-        "x": 714.1069869995117,
-        "y": 276.7618598937988,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "458b24e4.d3efa4",
-        "type": "failure",
-        "name": "failure",
-        "xml": "<outcome value='failure'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 1123.5832138061523,
-        "y": 771.976300239563,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "6583acac.b53fac"
-            ]
-        ]
-    },
-    {
-        "id": "8523e1fb.bcf3a8",
-        "type": "set",
-        "name": "set capability-dg",
-        "xml": "<set>\n<parameter name='ss.capability-dg' value=\"`'self-serve-' + $ss.capability.execution-order[$cidx]`\" />\n",
-        "comments": "",
-        "x": 658.5356750488281,
-        "y": 325.6547737121582,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "d5c58631.876b",
-        "type": "execute",
-        "name": "generate ss-vnf url replace service-instance-id",
-        "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n    <parameter name=\"source\" value=\"`$prop.restapi.ss-vnf-assignments`\"/>\n    <parameter name=\"outputPath\" value=\"tmp.ss-vnf-url\"/>\n    <parameter name=\"target\" value=\"{service-instance-id}\"/>\n    <parameter name=\"replacement\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.service-instance-id`\"/>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 1606.4405975341797,
-        "y": 825.8580255508423,
-        "z": "252d9282.9374ae",
-        "wires": [
-            []
-        ]
-    },
-    {
-        "id": "5291091f.f20088",
-        "type": "execute",
-        "name": "execute RestApiCallNode - PUT vnf",
-        "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n    <parameter name='templateFileName' value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.ss.vnf.templatefile`\" />\n    <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ss-vnf-url`' />\n    <parameter name='restapiUser' value='`$prop.controller.user`' />\n    <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n    <parameter name='format' value='json' />\n    <parameter name='httpMethod' value='PUT' />\n    <parameter name=\"responsePrefix\" value=\"mdsal-ss-vnf\" />\n\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 1575.9048919677734,
-        "y": 928.7152471542358,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "2353e7c1.60c118",
-                "3fc02d49.7486d2"
-            ]
-        ]
-    },
-    {
-        "id": "2353e7c1.60c118",
-        "type": "not-found",
-        "name": "not-found",
-        "xml": "<outcome value='not-found'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 1850.4985580444336,
-        "y": 982.7134008407593,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "bda099a1.06eb38"
-            ]
-        ]
-    },
-    {
-        "id": "3fc02d49.7486d2",
-        "type": "failure",
-        "name": "failure",
-        "xml": "<outcome value='failure'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 1842.9271926879883,
-        "y": 929.2134208679199,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "bda099a1.06eb38"
-            ]
-        ]
-    },
-    {
-        "id": "bda099a1.06eb38",
-        "type": "block",
-        "name": "block : atomic",
-        "xml": "<block atomic=\"true\">",
-        "atomic": "true",
-        "outputs": 1,
-        "x": 2045.0595169067383,
-        "y": 928.8576755523682,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "d9c8574d.b3fa68"
-            ]
-        ]
-    },
-    {
-        "id": "d9c8574d.b3fa68",
-        "type": "configure",
-        "name": "set error-message",
-        "xml": "<set>\n<parameter name=\"error-message\" value=\"Error persisting self-serve vnf assignments in MD-SAL during unassign\" />\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 2263.345283508301,
-        "y": 929.0005388259888,
-        "z": "252d9282.9374ae",
-        "wires": [
-            []
-        ]
-    },
-    {
-        "id": "4bfafa2c.df4c8c",
-        "type": "set",
-        "name": "set vf data for restapi-call-node",
-        "xml": "<set>\n<parameter name='vf.vnf-id'\n    value='`$service-data.vnfs.vnf[$vnf-index].vnf-id`' />\n<parameter name='vf.vnf-data.sdnc-request-header.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.`' />\n<parameter name='vf.vnf-data.request-information.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.`' />\n<parameter name='vf.vnf-data.service-information.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.`' />\n<parameter name='vf.vnf-data.vnf-information.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.`' />\n<parameter name='vf.vnf-data.vnf-request-input.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.`' />\n<parameter name='vf.vnf-data.vnf-request-input.vnf-input-parameters.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.vnf-input-parameters.`' />\n<parameter name='vf.vnf-data.vnf-topology.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.`' />\n<parameter name='vf.vnf-data.vnf-level-oper-status.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.`' />",
-        "comments": "",
-        "x": 1558.8928985595703,
-        "y": 771.9525375366211,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "9abc0123.468d9",
-        "type": "execute",
-        "name": "generate ss-vnf url - replace vnf-id",
-        "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n    <parameter name=\"source\" value=\"`$tmp.ss-vnf-url`\"/>\n    <parameter name=\"outputPath\" value=\"tmp.ss-vnf-url\"/>\n    <parameter name=\"target\" value=\"{vnf-id}\"/>\n    <parameter name=\"replacement\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-id`\"/>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 1570.726303100586,
-        "y": 876.6667938232422,
-        "z": "252d9282.9374ae",
-        "wires": [
-            []
-        ]
-    },
-    {
-        "id": "6583acac.b53fac",
-        "type": "block",
-        "name": "block : atomic",
-        "xml": "<block atomic='true'>",
-        "atomic": "true",
-        "comments": "",
-        "outputs": 1,
-        "x": 1284.535888671875,
-        "y": 771.7144117355347,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "d5c58631.876b",
-                "5291091f.f20088",
-                "4bfafa2c.df4c8c",
-                "9abc0123.468d9",
-                "e212b878.28b838"
-            ]
-        ]
-    },
-    {
-        "id": "e212b878.28b838",
-        "type": "returnFailure",
-        "name": "return failure",
-        "xml": "<return status='failure'>\n<parameter name='error-code' value='500' />\n<parameter name='error-message' value=\"`'Failed to unassign self-serve vnf assignments for ' + $ss.capability-dg + ' with error: ' + $error-message`\" />\n",
-        "comments": "",
-        "x": 1505.4408569335938,
-        "y": 1056.488195180893,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "e5f0334a.e9ca1",
-        "type": "execute",
-        "name": "printContext",
-        "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n<parameter name='filename' value='/var/tmp/ss-vnf-assign.log' />\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 348.1193313598633,
-        "y": 1426.0595903396606,
-        "z": "252d9282.9374ae",
-        "wires": [
-            []
-        ]
-    },
-    {
-        "id": "bf1b89ba.b063e",
-        "type": "set",
-        "name": "set ss.capability.execution-order[]",
-        "xml": "<set>\n<parameter name='ss.capability.execution-order[0]' value='mac-address-assign' />\n<parameter name='ss.capability.execution-order[1]' value='mS-mac-address-assign' />\n<parameter name='ss.capability.execution-order[2]' value='eipam-ip-assign' />\n<parameter name='ss.capability.execution-order[3]' value='netbox-ip-assign' />\n<parameter name='ss.capability.execution-order[4]' value='vlan-tag-assign' />\n<parameter name='ss.capability.execution-order[5]' value='mS-vlan-tag-assign' />\n<parameter name='ss.capability.execution-order[6]' value='alts-license-assign' />\n<parameter name='ss.capability.execution-order[7]' value='alts-entitlement-assign' />\n<parameter name='ss.capability.execution-order[8]' value='generate-name' />\n<parameter name='ss.capability.execution-order_length' value='9' />",
-        "comments": "",
-        "x": 412.25003814697266,
-        "y": 149.00000381469727,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "38e2fce4.feed74",
-        "type": "other",
-        "name": "DELETED",
-        "xml": "<outcome value='DELETED'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 734.0714416503906,
-        "y": 838.7499847412109,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "d6fe1639.ceebb8"
-            ]
-        ]
-    },
-    {
-        "id": "1ddd3a42.29f04e",
-        "type": "set",
-        "name": "set ss.capability-type = vnf",
-        "xml": "<set>\n<parameter name='ss.capability-type' value='vnf' />\n",
-        "comments": "",
-        "x": 391.85713958740234,
-        "y": 188.5714340209961,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "52dbf114.d1abc",
-        "type": "returnFailure",
-        "name": "return failure",
-        "xml": "<return status='failure'>\n<parameter name='error-code' value='500' />\n<parameter name='error-message' value=\"`'Failed to unassign self-serve vnf assignments because the status for ' + $ss.capability-name + ' is '  + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status`\"/>",
-        "comments": "",
-        "x": 1116.1428833007812,
-        "y": 948.9643857138499,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "d6fe1639.ceebb8",
-        "type": "block",
-        "name": "block",
-        "xml": "<block>\n",
-        "atomic": "false",
-        "comments": "",
-        "outputs": 1,
-        "x": 890.5714340209961,
-        "y": 838.7499732971191,
-        "z": "252d9282.9374ae",
-        "wires": [
-            []
-        ]
-    },
-    {
-        "id": "fa07b3ee.3e2bd",
-        "type": "other",
-        "name": "other",
-        "xml": "<outcome value='Other'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 725.1428375244141,
-        "y": 896.9642868041992,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "dc8bc4e.8f580b8"
-            ]
-        ]
-    },
-    {
-        "id": "b045a5.6f842258",
-        "type": "record",
-        "name": "record",
-        "xml": "<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder\">\n<parameter name=\"logger\" value=\"message-log\"/>\n<parameter name=\"field1\" value=\"`'SS: resource-resolution-data.status: ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status`\"/>\n<parameter name=\"field2\" value=\"`'SS: ss.capability-name: ' + $ss.capability-name`\"/>",
-        "comments": "",
-        "outputs": 1,
-        "x": 1095.4285888671875,
-        "y": 896.9643923895701,
-        "z": "252d9282.9374ae",
-        "wires": [
-            []
-        ]
-    },
-    {
-        "id": "dc8bc4e.8f580b8",
-        "type": "block",
-        "name": "block : atomic",
-        "xml": "<block atomic='true'>",
-        "atomic": "true",
-        "comments": "",
-        "outputs": 1,
-        "x": 911.8571319580078,
-        "y": 896.9643383026123,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "b045a5.6f842258",
-                "52dbf114.d1abc"
-            ]
-        ]
-    },
-    {
-        "id": "1de371de.5b6456",
-        "type": "for",
-        "name": "for each vnf",
-        "xml": "<for index='idx' start='`$vnf-index + 1`' end='`$service-data.vnfs.vnf_length`' >\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 915.6666145324707,
-        "y": 1255.9525175094604,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "a5b6b8ba.4ebf4"
-            ]
-        ]
-    },
-    {
-        "id": "a90545d8.1a2728",
-        "type": "comment",
-        "name": "Remove VNF from service data",
-        "info": "",
-        "comments": "",
-        "x": 327.825382232666,
-        "y": 1214.524169921875,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "a5b6b8ba.4ebf4",
-        "type": "set",
-        "name": "move vnf to remove one",
-        "xml": "<set>\n\t<parameter name=\"$tmpidx\" value=\"`$idx - 1`\"/>\n\t<parameter name=\"service-data.vnfs.vnf[$tmpidx].\" value=\"$service-data.vnfs.vnf[$idx].\" />\n\t\n",
-        "comments": "",
-        "x": 1149.2577476501465,
-        "y": 1254.976469039917,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "2163e816.27402",
-        "type": "switchNode",
-        "name": "switch vnf_length",
-        "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 371.92447662353516,
-        "y": 1257.5321464538574,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "db4581e7.f5001",
-                "4742a047.92dc2"
-            ]
-        ]
-    },
-    {
-        "id": "db4581e7.f5001",
-        "type": "outcome",
-        "name": "1",
-        "xml": "<outcome value='1'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 548.9245185852051,
-        "y": 1218.198733329773,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "d699690.c208a18"
-            ]
-        ]
-    },
-    {
-        "id": "d699690.c208a18",
-        "type": "set",
-        "name": "Remove vnfs",
-        "xml": "<set>\n\t<parameter name=\"service-data.vnfs.\" value=\"\"/>\n\n",
-        "comments": "",
-        "x": 712.5910148620605,
-        "y": 1218.1988325119019,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "4742a047.92dc2",
-        "type": "other",
-        "name": "other",
-        "xml": "<outcome value='Other'>\n",
-        "comments": "",
-        "outputs": 1,
-        "x": 550.4484100341797,
-        "y": 1301.6748723983765,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "f5197751.96d6b8"
-            ]
-        ]
-    },
-    {
-        "id": "8416ad4e.28c64",
-        "type": "set",
-        "name": "set new vnf length",
-        "xml": "<set>\n\t<parameter name=\"service-data.vnfs.vnf_length\" value=\"`$service-data.vnfs.vnf_length - 1`\"/>\n\n\t\n",
-        "comments": "",
-        "x": 935.220703125,
-        "y": 1346.532091140747,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "225e71ff.ef5996",
-        "type": "set",
-        "name": "Remove the last vnf in the list",
-        "xml": "<set>\n\t<parameter name=\"service-data.vnfs.vnf[$service-data.vnfs.vnf_length-1].\" value=\"\"/>\n\n",
-        "comments": "",
-        "x": 970.9243583679199,
-        "y": 1301.6431121826172,
-        "z": "252d9282.9374ae",
-        "wires": []
-    },
-    {
-        "id": "f5197751.96d6b8",
-        "type": "block",
-        "name": "block : atomic",
-        "xml": "<block atomic=\"true\">",
-        "atomic": "true",
-        "outputs": 1,
-        "x": 716.2577514648438,
-        "y": 1302.1986532211304,
-        "z": "252d9282.9374ae",
-        "wires": [
-            [
-                "1de371de.5b6456",
-                "225e71ff.ef5996",
-                "8416ad4e.28c64"
-            ]
-        ]
-    }
-]
\ No newline at end of file
+  {
+    "id": "a6385a9d.53bbd8",
+    "type": "dgstart",
+    "name": "DGSTART",
+    "outputs": 1,
+    "x": 210,
+    "y": 41.42857360839844,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "68771f71.1c988"
+      ]
+    ]
+  },
+  {
+    "id": "c2830c02.352ca",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic='true'>",
+    "atomic": "true",
+    "comments": "",
+    "outputs": 1,
+    "x": 253.72620391845703,
+    "y": 160.20636367797852,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "7a7eb5ea.d9c27c",
+        "cadde72f.768658",
+        "61da759.184e28c",
+        "8603e753.202d08",
+        "ee44abff.0a52c8"
+      ]
+    ]
+  },
+  {
+    "id": "df83a576.0a03c8",
+    "type": "method",
+    "name": "method self-serve-vnf-unassign",
+    "xml": "<method rpc='self-serve-vnf-unassign' mode='sync'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 326.7619094848633,
+    "y": 96.1349287033081,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "c2830c02.352ca"
+      ]
+    ]
+  },
+  {
+    "id": "68771f71.1c988",
+    "type": "service-logic",
+    "name": "GENERIC-RESOURCE-API ${project.version}",
+    "module": "GENERIC-RESOURCE-API",
+    "version": "${project.version}",
+    "comments": "",
+    "xml": "<service-logic xmlns='http://www.onap.org/sdnc/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='GENERIC-RESOURCE-API' version='${project.version}'>",
+    "outputs": 1,
+    "x": 485.23819732666016,
+    "y": 41.61906623840332,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "df83a576.0a03c8"
+      ]
+    ]
+  },
+  {
+    "id": "d04042ce.4a948",
+    "type": "for",
+    "name": "foreach vnf-parameters-data.param[]",
+    "xml": "<for index='pidx' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param_length`' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 842.4645538330078,
+    "y": 386.1309928894043,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "bcabf14.e18d21",
+        "5506226b.04018c"
+      ]
+    ]
+  },
+  {
+    "id": "20db9a83.47e506",
+    "type": "switchNode",
+    "name": "switch resource-resolution-data.status",
+    "xml": "<switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 579.1789703369141,
+    "y": 782.9287061691284,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "af96cd32.20d99",
+        "8025d892.0ac388",
+        "acbf2cb7.1041"
+      ]
+    ]
+  },
+  {
+    "id": "af96cd32.20d99",
+    "type": "other",
+    "name": "SUCCESS",
+    "xml": "<outcome value='SUCCESS'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 854.5719718933105,
+    "y": 783.6429615020752,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "cd65f121.8b137"
+      ]
+    ]
+  },
+  {
+    "id": "7a7eb5ea.d9c27c",
+    "type": "for",
+    "name": "foreach capability-order[]",
+    "xml": "<for index='cidx' start='0' end='`$ss.capability.execution-order_length`' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 508.0357894897461,
+    "y": 241.32139778137207,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "697d23ef.8a2fbc",
+        "5b9beee2.2b424",
+        "d04042ce.4a948",
+        "9b2708ec.431508"
+      ]
+    ]
+  },
+  {
+    "id": "bcabf14.e18d21",
+    "type": "switchNode",
+    "name": "switch param capability-name == execution",
+    "xml": "<switch test='`$ss.capability-name == $tmp.param.capability-name`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1198.3574676513672,
+    "y": 429.85712242126465,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "4c332048.14e83"
+      ]
+    ]
+  },
+  {
+    "id": "4c332048.14e83",
+    "type": "outcomeTrue",
+    "name": "true",
+    "xml": "<outcome value='true'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1461.8574676513672,
+    "y": 430.10712242126465,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "20db9a83.47e506"
+      ]
+    ]
+  },
+  {
+    "id": "cd65f121.8b137",
+    "type": "call",
+    "name": "call ss.capability-dg",
+    "xml": "<call module='GENERIC-RESOURCE-API' rpc='`$ss.capability-dg`' mode='sync' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1059.6907043457031,
+    "y": 783.4048128128052,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "7c9a62de.b663cc"
+      ]
+    ]
+  },
+  {
+    "id": "697d23ef.8a2fbc",
+    "type": "set",
+    "name": "ss.capability-name",
+    "xml": "<set>\n<parameter name='ss.capability-name' value='`$ss.capability.execution-order[$cidx]`' />\n\n<!--\nss.capability.execution-order[]\n-->\n",
+    "comments": "",
+    "x": 788.3928451538086,
+    "y": 241.2738494873047,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "5506226b.04018c",
+    "type": "set",
+    "name": "tmp.param.capability-name",
+    "xml": "<set>\n<parameter name='tmp.param.capability-name' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.capability-name`' />\n",
+    "comments": "",
+    "x": 1147.7144927978516,
+    "y": 384.4643325805664,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "5b9beee2.2b424",
+    "type": "set",
+    "name": "set ss.capability.action = unassign",
+    "xml": "<set>\n<parameter name='ss.capability-action' value='unassign' />\n",
+    "comments": "",
+    "x": 835.1069869995117,
+    "y": 288.19043350219727,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "7c9a62de.b663cc",
+    "type": "failure",
+    "name": "failure",
+    "xml": "<outcome value='failure'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1244.5832138061523,
+    "y": 783.4048738479614,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "5ae85112.18d99"
+      ]
+    ]
+  },
+  {
+    "id": "9b2708ec.431508",
+    "type": "set",
+    "name": "set capability-dg",
+    "xml": "<set>\n<parameter name='ss.capability-dg' value=\"`'self-serve-' + $ss.capability.execution-order[$cidx]`\" />\n",
+    "comments": "",
+    "x": 779.5356750488281,
+    "y": 337.08334732055664,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "bad23ec5.376d3",
+    "type": "execute",
+    "name": "generate ss-vnf url replace service-instance-id",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n    <parameter name=\"source\" value=\"`$prop.restapi.ss-vnf-assignments`\"/>\n    <parameter name=\"outputPath\" value=\"tmp.ss-vnf-url\"/>\n    <parameter name=\"target\" value=\"{service-instance-id}\"/>\n    <parameter name=\"replacement\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.service-instance-id`\"/>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1727.4405975341797,
+    "y": 837.2865991592407,
+    "z": "50509cff.314024",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "fbec284e.585d38",
+    "type": "execute",
+    "name": "execute RestApiCallNode - PUT vnf",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n    <parameter name='templateFileName' value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.ss.vnf.templatefile`\" />\n    <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ss-vnf-url`' />\n    <parameter name='restapiUser' value='`$prop.controller.user`' />\n    <parameter name='restapiPassword' value='`$prop.controller.pwd`' />\n    <parameter name='format' value='json' />\n    <parameter name='httpMethod' value='PUT' />\n    <parameter name=\"responsePrefix\" value=\"mdsal-ss-vnf\" />\n\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1696.9048919677734,
+    "y": 940.1438207626343,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "c47e36eb.d05728",
+        "b96d7225.bf08f"
+      ]
+    ]
+  },
+  {
+    "id": "c47e36eb.d05728",
+    "type": "not-found",
+    "name": "not-found",
+    "xml": "<outcome value='not-found'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1971.4985580444336,
+    "y": 994.1419744491577,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "e88954ca.906d58"
+      ]
+    ]
+  },
+  {
+    "id": "b96d7225.bf08f",
+    "type": "failure",
+    "name": "failure",
+    "xml": "<outcome value='failure'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1963.9271926879883,
+    "y": 940.6419944763184,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "e88954ca.906d58"
+      ]
+    ]
+  },
+  {
+    "id": "e88954ca.906d58",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 2166.0595169067383,
+    "y": 940.2862491607666,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "80bd3596.06daa8"
+      ]
+    ]
+  },
+  {
+    "id": "80bd3596.06daa8",
+    "type": "configure",
+    "name": "set error-message",
+    "xml": "<set>\n<parameter name=\"error-message\" value=\"Error persisting self-serve vnf assignments in MD-SAL during unassign\" />\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 2384.345283508301,
+    "y": 940.4291124343872,
+    "z": "50509cff.314024",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "5acff27f.210b1c",
+    "type": "set",
+    "name": "set vf data for restapi-call-node",
+    "xml": "<set>\n<parameter name='vf.vnf-id'\n    value='`$service-data.vnfs.vnf[$vnf-index].vnf-id`' />\n<parameter name='vf.vnf-data.sdnc-request-header.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.sdnc-request-header.`' />\n<parameter name='vf.vnf-data.request-information.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.request-information.`' />\n<parameter name='vf.vnf-data.service-information.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.service-information.`' />\n<parameter name='vf.vnf-data.vnf-information.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-information.`' />\n<parameter name='vf.vnf-data.vnf-request-input.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.`' />\n<parameter name='vf.vnf-data.vnf-request-input.vnf-input-parameters.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-request-input.vnf-input-parameters.`' />\n<parameter name='vf.vnf-data.vnf-topology.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.`' />\n<parameter name='vf.vnf-data.vnf-level-oper-status.'\n  value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-level-oper-status.`' />",
+    "comments": "",
+    "x": 1679.8928985595703,
+    "y": 783.3811111450195,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "3ed081d1.8cc08e",
+    "type": "execute",
+    "name": "generate ss-vnf url - replace vnf-id",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n    <parameter name=\"source\" value=\"`$tmp.ss-vnf-url`\"/>\n    <parameter name=\"outputPath\" value=\"tmp.ss-vnf-url\"/>\n    <parameter name=\"target\" value=\"{vnf-id}\"/>\n    <parameter name=\"replacement\" value=\"`$service-data.vnfs.vnf[$vnf-index].vnf-id`\"/>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1691.726303100586,
+    "y": 888.0953674316406,
+    "z": "50509cff.314024",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "5ae85112.18d99",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic='true'>",
+    "atomic": "true",
+    "comments": "",
+    "outputs": 1,
+    "x": 1405.535888671875,
+    "y": 783.1429853439331,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "bad23ec5.376d3",
+        "fbec284e.585d38",
+        "5acff27f.210b1c",
+        "3ed081d1.8cc08e",
+        "4e5f969d.6392c8"
+      ]
+    ]
+  },
+  {
+    "id": "4e5f969d.6392c8",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n<parameter name='error-code' value='500' />\n<parameter name='error-message' value=\"`'Failed to unassign self-serve vnf assignments for ' + $ss.capability-dg + ' with error: ' + $error-message`\" />\n",
+    "comments": "",
+    "x": 1626.4408569335938,
+    "y": 1067.9167687892914,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "8603e753.202d08",
+    "type": "execute",
+    "name": "printContext",
+    "xml": "<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >\n<parameter name='filename' value='/var/tmp/ss-vnf-assign.log' />\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 469.1193313598633,
+    "y": 1437.488163948059,
+    "z": "50509cff.314024",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "cadde72f.768658",
+    "type": "set",
+    "name": "set ss.capability.execution-order[]",
+    "xml": "<set>\n<parameter name='ss.capability.execution-order[0]' value='mac-address-assign' />\n<parameter name='ss.capability.execution-order[1]' value='mS-mac-address-assign' />\n<parameter name='ss.capability.execution-order[2]' value='eipam-ip-assign' />\n<parameter
+name='ss.capability.execution-order[3]' value='netbox-ip-assign' />\n<parameter name='ss.capability.execution-order[4]' value='vlan-tag-assign' />\n<parameter name='ss.capability.execution-order[5]' value='mS-vlan-tag-assign' />\n<parameter name='ss.capability.execution-order[6]' value='alts-license-assign' />\n<parameter name='ss.capability.execution-order[7]' value='alts-entitlement-assign' />\n<parameter name='ss.capability.execution-order[8]' value='generate-name' />\n<parameter name='ss.capability.execution-order_length' value='9' />",
+    "comments": "",
+    "x": 533.2500381469727,
+    "y": 160.4285774230957,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "8025d892.0ac388",
+    "type": "other",
+    "name": "DELETED",
+    "xml": "<outcome value='DELETED'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 855.0714416503906,
+    "y": 850.1785583496094,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "3057289e.008328"
+      ]
+    ]
+  },
+  {
+    "id": "61da759.184e28c",
+    "type": "set",
+    "name": "set ss.capability-type = vnf",
+    "xml": "<set>\n<parameter name='ss.capability-type' value='vnf' />\n",
+    "comments": "",
+    "x": 512.8571395874023,
+    "y": 200.00000762939453,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "6b6d2942.d47c48",
+    "type": "returnFailure",
+    "name": "return failure",
+    "xml": "<return status='failure'>\n<parameter name='error-code' value='500' />\n<parameter name='error-message' value=\"`'Failed to unassign self-serve vnf assignments because the status for ' + $ss.capability-name + ' is '  + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status`\"/>",
+    "comments": "",
+    "x": 1237.1428833007812,
+    "y": 960.3929593222483,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "3057289e.008328",
+    "type": "block",
+    "name": "block",
+    "xml": "<block>\n",
+    "atomic": "false",
+    "comments": "",
+    "outputs": 1,
+    "x": 1011.5714340209961,
+    "y": 850.1785469055176,
+    "z": "50509cff.314024",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "acbf2cb7.1041",
+    "type": "other",
+    "name": "other",
+    "xml": "<outcome value='Other'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 846.1428375244141,
+    "y": 908.3928604125977,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "c1c0b7f6.69a4e8"
+      ]
+    ]
+  },
+  {
+    "id": "70287cdc.85b194",
+    "type": "record",
+    "name": "record",
+    "xml": "<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder\">\n<parameter name=\"logger\" value=\"message-log\"/>\n<parameter name=\"field1\" value=\"`'SS: resource-resolution-data.status: ' + $service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status`\"/>\n<parameter name=\"field2\" value=\"`'SS: ss.capability-name: ' + $ss.capability-name`\"/>",
+    "comments": "",
+    "outputs": 1,
+    "x": 1216.4285888671875,
+    "y": 908.3929659979685,
+    "z": "50509cff.314024",
+    "wires": [
+      []
+    ]
+  },
+  {
+    "id": "c1c0b7f6.69a4e8",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic='true'>",
+    "atomic": "true",
+    "comments": "",
+    "outputs": 1,
+    "x": 1032.8571319580078,
+    "y": 908.3929119110107,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "70287cdc.85b194",
+        "6b6d2942.d47c48"
+      ]
+    ]
+  },
+  {
+    "id": "1c8c4c56.6f0bc4",
+    "type": "for",
+    "name": "for each vnf",
+    "xml": "<for index='idx' start='`$vnf-index + 1`' end='`$service-data.vnfs.vnf_length`' >\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 1036.6666145324707,
+    "y": 1267.381091117859,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "39ffbb9b.5384c4"
+      ]
+    ]
+  },
+  {
+    "id": "48bdb965.fbf268",
+    "type": "comment",
+    "name": "Remove VNF from service data",
+    "info": "",
+    "comments": "",
+    "x": 448.825382232666,
+    "y": 1225.9527435302734,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "39ffbb9b.5384c4",
+    "type": "set",
+    "name": "move vnf to remove one",
+    "xml": "<set>\n\t<parameter name=\"$tmpidx\" value=\"`$idx - 1`\"/>\n\t<parameter name=\"service-data.vnfs.vnf[$tmpidx].\" value=\"$service-data.vnfs.vnf[$idx].\" />\n\t\n",
+    "comments": "",
+    "x": 1270.2577476501465,
+    "y": 1266.4050426483154,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "ee44abff.0a52c8",
+    "type": "switchNode",
+    "name": "switch vnf_length",
+    "xml": "<switch test='`$service-data.vnfs.vnf_length`'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 492.92447662353516,
+    "y": 1268.9607200622559,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "3c166715.7796b8",
+        "62f98baa.f6f574"
+      ]
+    ]
+  },
+  {
+    "id": "3c166715.7796b8",
+    "type": "outcome",
+    "name": "1",
+    "xml": "<outcome value='1'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 669.9245185852051,
+    "y": 1229.6273069381714,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "8af99073.0156"
+      ]
+    ]
+  },
+  {
+    "id": "8af99073.0156",
+    "type": "set",
+    "name": "Remove vnfs",
+    "xml": "<set>\n\t<parameter name=\"service-data.vnfs.\" value=\"\"/>\n\n",
+    "comments": "",
+    "x": 833.5910148620605,
+    "y": 1229.6274061203003,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "62f98baa.f6f574",
+    "type": "other",
+    "name": "other",
+    "xml": "<outcome value='Other'>\n",
+    "comments": "",
+    "outputs": 1,
+    "x": 671.4484100341797,
+    "y": 1313.103446006775,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "b4f726ae.38e868"
+      ]
+    ]
+  },
+  {
+    "id": "c1ef091a.99d9e8",
+    "type": "set",
+    "name": "set new vnf length",
+    "xml": "<set>\n\t<parameter name=\"service-data.vnfs.vnf_length\" value=\"`$service-data.vnfs.vnf_length - 1`\"/>\n\n\t\n",
+    "comments": "",
+    "x": 1056.220703125,
+    "y": 1357.9606647491455,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "2c024236.55d4ae",
+    "type": "set",
+    "name": "Remove the last vnf in the list",
+    "xml": "<set>\n\t<parameter name=\"service-data.vnfs.vnf[$service-data.vnfs.vnf_length-1].\" value=\"\"/>\n\n",
+    "comments": "",
+    "x": 1091.92435836792,
+    "y": 1313.0716857910156,
+    "z": "50509cff.314024",
+    "wires": []
+  },
+  {
+    "id": "b4f726ae.38e868",
+    "type": "block",
+    "name": "block : atomic",
+    "xml": "<block atomic=\"true\">",
+    "atomic": "true",
+    "outputs": 1,
+    "x": 837.2577514648438,
+    "y": 1313.6272268295288,
+    "z": "50509cff.314024",
+    "wires": [
+      [
+        "1c8c4c56.6f0bc4",
+        "2c024236.55d4ae",
+        "c1ef091a.99d9e8"
+      ]
+    ]
+  }
+]