summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--SdncReports/pom.xml2
-rw-r--r--admportal/pom.xml2
-rw-r--r--configbackuprestore/pom.xml2
-rw-r--r--dgbuilder/pom.xml2
-rw-r--r--installation/admportal/pom.xml2
-rw-r--r--installation/ansible-server/pom.xml2
-rw-r--r--installation/dgbuilder/pom.xml2
-rw-r--r--installation/dmaap-listener/pom.xml2
-rw-r--r--installation/pom.xml2
-rw-r--r--installation/sdnc/pom.xml2
-rw-r--r--installation/sdnc/src/main/resources/blueprint-processor.data.dump95
-rw-r--r--installation/ueb-listener/pom.xml2
-rw-r--r--platform-logic/datachange/pom.xml2
-rw-r--r--platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc-discovery.json4
-rw-r--r--platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc-discovery.xml2
-rw-r--r--platform-logic/generic-resource-api/pom.xml2
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-create.json8
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-delete.json10
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.json8
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.json8
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.json2
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.json14
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.json8
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.json4
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.json4
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.json2
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.json6
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.json2
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.json4
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.json4
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json4
-rw-r--r--platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json2
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-create.xml8
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-delete.xml10
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.xml8
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.xml8
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.xml2
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.xml14
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.xml8
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.xml4
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.xml4
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.xml8
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.xml2
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.xml10
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.xml4
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.xml4
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml4
-rw-r--r--platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml2
-rw-r--r--platform-logic/installer/pom.xml2
-rw-r--r--platform-logic/installer/src/assembly/assemble_zip.xml64
-rw-r--r--platform-logic/lcm/pom.xml2
-rw-r--r--platform-logic/pom.xml3
-rw-r--r--platform-logic/restapi-templates/pom.xml2
-rw-r--r--platform-logic/restapi-templates/src/main/json/getzteodutoponodedetailstemplate.json6
-rw-r--r--platform-logic/restapi-templates/src/main/json/getzteodutoponodenepdetailstemplate.json6
-rw-r--r--platform-logic/restapi-templates/src/main/json/getzteodutoponodetemplate.json6
-rw-r--r--platform-logic/restapi-templates/src/main/json/getzteodutopotemplate.json5
-rw-r--r--platform-logic/restconfapi-yang/pom.xml50
-rw-r--r--platform-logic/restconfapi-yang/src/main/yang/ietf-eth-tran-service@2018-03-01.yang572
-rw-r--r--platform-logic/restconfapi-yang/src/main/yang/ietf-eth-tran-types@2018-05-24.yang303
-rw-r--r--platform-logic/restconfapi-yang/src/main/yang/ietf-inet-types.yang430
-rw-r--r--platform-logic/restconfapi-yang/src/main/yang/ietf-routing-types@2017-10-13.yang733
-rw-r--r--platform-logic/restconfapi-yang/src/main/yang/ietf-subscribed-notifications.yang21
-rw-r--r--platform-logic/restconfapi-yang/src/main/yang/ietf-te-types@2018-07-01.yang2457
-rw-r--r--platform-logic/restconfapi-yang/src/main/yang/ietf-yang-types.yang438
-rw-r--r--platform-logic/setup/pom.xml2
-rw-r--r--platform-logic/vnfapi/pom.xml2
-rwxr-xr-xpom.xml6
-rw-r--r--version.properties2
69 files changed, 5280 insertions, 149 deletions
diff --git a/SdncReports/pom.xml b/SdncReports/pom.xml
index 2a9e09dd..96fe28c3 100644
--- a/SdncReports/pom.xml
+++ b/SdncReports/pom.xml
@@ -14,7 +14,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>spring-boot-1-starter-parent</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<distributionManagement>
<repository>
diff --git a/admportal/pom.xml b/admportal/pom.xml
index c2735a78..fa05074b 100644
--- a/admportal/pom.xml
+++ b/admportal/pom.xml
@@ -6,7 +6,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>binding-parent</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath/>
</parent>
diff --git a/configbackuprestore/pom.xml b/configbackuprestore/pom.xml
index b3b532d6..7488c1c6 100644
--- a/configbackuprestore/pom.xml
+++ b/configbackuprestore/pom.xml
@@ -14,7 +14,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>spring-boot-1-starter-parent</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<properties>
diff --git a/dgbuilder/pom.xml b/dgbuilder/pom.xml
index 90296607..d3751082 100644
--- a/dgbuilder/pom.xml
+++ b/dgbuilder/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath />
</parent>
diff --git a/installation/admportal/pom.xml b/installation/admportal/pom.xml
index 5f9baa31..c85ae6fc 100644
--- a/installation/admportal/pom.xml
+++ b/installation/admportal/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
diff --git a/installation/ansible-server/pom.xml b/installation/ansible-server/pom.xml
index 593c5aee..0fd0b771 100644
--- a/installation/ansible-server/pom.xml
+++ b/installation/ansible-server/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>
diff --git a/installation/dgbuilder/pom.xml b/installation/dgbuilder/pom.xml
index 6e4d7726..f47303c7 100644
--- a/installation/dgbuilder/pom.xml
+++ b/installation/dgbuilder/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
diff --git a/installation/dmaap-listener/pom.xml b/installation/dmaap-listener/pom.xml
index 9c50fec6..61d64538 100644
--- a/installation/dmaap-listener/pom.xml
+++ b/installation/dmaap-listener/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>
diff --git a/installation/pom.xml b/installation/pom.xml
index 9091cb3f..f02b9ca7 100644
--- a/installation/pom.xml
+++ b/installation/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
diff --git a/installation/sdnc/pom.xml b/installation/sdnc/pom.xml
index 538e1239..764725c5 100644
--- a/installation/sdnc/pom.xml
+++ b/installation/sdnc/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
diff --git a/installation/sdnc/src/main/resources/blueprint-processor.data.dump b/installation/sdnc/src/main/resources/blueprint-processor.data.dump
new file mode 100644
index 00000000..9a4bd3f0
--- /dev/null
+++ b/installation/sdnc/src/main/resources/blueprint-processor.data.dump
@@ -0,0 +1,95 @@
+-- -----------------------------------------------------
+-- Dropping tables ( One time )
+-- -----------------------------------------------------
+
+DROP TABLE sdnctl.CONFIG_RESOURCE_ASSIGNMENT_DATA;
+DROP TABLE sdnctl.CONFIG_RESOURCE;
+DROP TABLE sdnctl.CONFIG_RESOURCE_RELATION;
+DROP TABLE sdnctl.CONFIG_TRANSACTION_LOG
+
+
+-- -----------------------------------------------------
+-- table sdnctl.CONFIG_TRANSACTION_LOG
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS sdnctl.CONFIG_TRANSACTION_LOG (
+ config_transaction_log_id VARCHAR(50) NOT NULL,
+ request_id VARCHAR(50) NULL DEFAULT NULL,
+ message_type VARCHAR(100) NULL DEFAULT NULL,
+ creation_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ message LONGTEXT NULL DEFAULT NULL,
+ PRIMARY KEY PK_CONFIG_TRANSACTION_LOG (config_transaction_log_id)
+ ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+
+
+-- -----------------------------------------------------
+-- table sdnctl.CONFIG_RESOURCE
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS sdnctl.CONFIG_RESOURCE (
+ config_resource_id VARCHAR(50) NOT NULL,
+ resource_id VARCHAR(50) NOT NULL,
+ resource_type VARCHAR(50) NOT NULL,
+ service_template_name VARCHAR(50) NULL DEFAULT NULL,
+ service_template_version VARCHAR(50) NULL DEFAULT NULL,
+ template_name VARCHAR(50) NOT NULL,
+ recipe_name VARCHAR(50) NOT NULL,
+ request_id VARCHAR(50) NOT NULL,
+ resource_data LONGTEXT NULL DEFAULT NULL,
+ mask_data LONGTEXT NULL DEFAULT NULL,
+ created_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ status VARCHAR(20) NOT NULL,
+ updated_by VARCHAR(50) NOT NULL,
+ PRIMARY KEY PK_CONFIG_RESOURCE (config_resource_id),
+ INDEX IX_CONFIG_RESOURCE (created_date desc)
+ ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+
+
+-- -----------------------------------------------------
+-- table sdnctl.CONFIG_RESOURCE_RELATION
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS sdnctl.CONFIG_RESOURCE_RELATION (
+ config_resource_relation_id VARCHAR(50) NOT NULL,
+ resource_id VARCHAR(50) NOT NULL,
+ related_resource_id VARCHAR(50) NOT NULL,
+ relation_type VARCHAR(50) NOT NULL DEFAULT 'children',
+ created_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ updated_by VARCHAR(50) NOT NULL,
+ PRIMARY KEY PK_CONFIG_RESOURCE_RELATION (config_resource_relation_id),
+ INDEX IX_CONFIG_RESOURCE_RELATION (created_date desc),
+ CONSTRAINT FK_CONFIG_RESOURCE_RELATION_TO_CONFIG_RESOURCE1
+ FOREIGN KEY (resource_id)
+ REFERENCES sdnctl.CONFIG_RESOURCE (config_resource_id)
+ ON DELETE NO ACTION
+ ON UPDATE NO ACTION,
+ CONSTRAINT FK_CONFIG_RESOURCE_RELATION_TO_CONFIG_RESOURCE2
+ FOREIGN KEY (related_resource_id)
+ REFERENCES sdnctl.CONFIG_RESOURCE (config_resource_id)
+ ON DELETE NO ACTION
+ ON UPDATE NO ACTION
+ ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+
+
+-- -----------------------------------------------------
+-- table sdnctl.CONFIG_RESOURCE_ASSIGNMENT_DATA
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS sdnctl.CONFIG_RESOURCE_ASSIGNMENT_DATA (
+ config_resource_assignment_data_id VARCHAR(50) NOT NULL,
+ config_resource_id VARCHAR(50) NOT NULL,
+ version INT(11) NOT NULL,
+ updated_date DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ updated_by VARCHAR(50) NOT NULL,
+ template_key_name VARCHAR(50) NOT NULL,
+ resource_name VARCHAR(50) NOT NULL,
+ data_type VARCHAR(100) NOT NULL,
+ entry_schema VARCHAR(100) NULL DEFAULT NULL,
+ resource_value LONGTEXT NOT NULL,
+ source VARCHAR(50) NOT NULL,
+ status VARCHAR(50) NOT NULL,
+ message LONGTEXT NOT NULL,
+ PRIMARY KEY PK_CONFIG_RESOURCE (config_resource_assignment_data_id),
+ INDEX IX_CONFIG_RESOURCE (updated_date desc),
+ CONSTRAINT FK_CONFIG_RESOURCE_ASSIGNMENT_DATA
+ FOREIGN KEY (config_resource_id)
+ REFERENCES sdnctl.CONFIG_RESOURCE (config_resource_id)
+ ON DELETE NO ACTION
+ ON UPDATE NO ACTION
+ ) ENGINE=InnoDB DEFAULT CHARSET=latin1; \ No newline at end of file
diff --git a/installation/ueb-listener/pom.xml b/installation/ueb-listener/pom.xml
index 1a8c4175..66fa812a 100644
--- a/installation/ueb-listener/pom.xml
+++ b/installation/ueb-listener/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<packaging>pom</packaging>
diff --git a/platform-logic/datachange/pom.xml b/platform-logic/datachange/pom.xml
index 9a296b5c..35cde149 100644
--- a/platform-logic/datachange/pom.xml
+++ b/platform-logic/datachange/pom.xml
@@ -6,7 +6,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath />
</parent>
diff --git a/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc-discovery.json b/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc-discovery.json
index ccc0c007..ef453318 100644
--- a/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc-discovery.json
+++ b/platform-logic/datachange/src/main/json/DataChange_esr-thirdparty-sdnc-discovery.json
@@ -94,7 +94,7 @@
"id": "f4c114b8.d66028",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 1523.993263244629,
@@ -154,7 +154,7 @@
"id": "c706e157.72486",
"type": "execute",
"name": "execute RestApiCallNode Get Topology",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"get\"/>\n<parameter name=\"responsePrefix\" value=\"topology\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-network:networks'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"get\"/>\n<parameter name=\"responsePrefix\" value=\"topology\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1527.3266906738281,
diff --git a/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc-discovery.xml b/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc-discovery.xml
index 55c1bd32..dcab41bd 100644
--- a/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc-discovery.xml
+++ b/platform-logic/datachange/src/main/xml/DataChange_esr-thirdparty-sdnc-discovery.xml
@@ -16,7 +16,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="get"/>
<parameter name="responsePrefix" value="topology"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/pom.xml b/platform-logic/generic-resource-api/pom.xml
index 759c4c01..af1d091a 100644
--- a/platform-logic/generic-resource-api/pom.xml
+++ b/platform-logic/generic-resource-api/pom.xml
@@ -6,7 +6,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath />
</parent>
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-create.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-create.json
index 9d4e58d9..a952299b 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-create.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-create.json
@@ -88,7 +88,7 @@
"id": "4a98e8a7.30e56",
"type": "execute",
"name": "execute RestApiCallNode Create IPWAN L3VPN",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/l3smvpntemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/l3smvpntemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1111.0001831054688,
@@ -1676,7 +1676,7 @@
"id": "45ed0ae2.aa3684",
"type": "execute",
"name": "execute RestApiCallNode IPWAN Site Config",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir +'/l3smsitetemplate.json'`\"/>\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/sites'`\"/>\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"site-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir +'/l3smsitetemplate.json'`\"/>\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/sites'`\"/>\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"site-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1096,
@@ -1693,7 +1693,7 @@
"id": "d76dde.a5a8222",
"type": "execute",
"name": "execute RestApiCallNode IPWAN VRF Config",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir +'/l3smvrftemplate.json'`\"/>\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/huawei-ac-net-l3vpn-svc-vfi:vrf-attributes'`\"/>\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vrf-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir +'/l3smvrftemplate.json'`\"/>\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url +'/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/huawei-ac-net-l3vpn-svc-vfi:vrf-attributes'`\"/>\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vrf-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1110,
@@ -2115,7 +2115,7 @@
"id": "873707de.4b4938",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 969,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-delete.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-delete.json
index 9075fdb8..232fa5e8 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-delete.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_network-topology-operation-delete.json
@@ -315,7 +315,7 @@
"id": "d58d3bad.af4188",
"type": "execute",
"name": "execute REST DELETE VPN",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services/vpnservice=' + $prop.l3vpn.name`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/vpn-services/vpnservice=' + $prop.l3vpn.name`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1604.03125,
@@ -711,7 +711,7 @@
"id": "1f654f28.833041",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 1623.03125,
@@ -860,7 +860,7 @@
"id": "298989a7.60397e",
"type": "execute",
"name": "execute REST DELETE Site",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/sites/site=' + $prop.l3vpn.site1_name`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"site-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/sites/site=' + $prop.l3vpn.site1_name`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"site-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1604,
@@ -877,7 +877,7 @@
"id": "e2203ccc.e2252",
"type": "execute",
"name": "execute REST DELETE VRF1",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/huawei-ac-net-l3vpn-svc-vfi:vrf-attributes/vrf-attribute=' + $prop.l3vpn.vrf1-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vrf1-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/huawei-ac-net-l3vpn-svc-vfi:vrf-attributes/vrf-attribute=' + $prop.l3vpn.vrf1-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vrf1-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1604,
@@ -894,7 +894,7 @@
"id": "d01694ec.b6d578",
"type": "execute",
"name": "execute REST DELETE VRF2",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/huawei-ac-net-l3vpn-svc-vfi:vrf-attributes/vrf-attribute=' + $prop.l3vpn.vrf2-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vrf2-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/huawei-ac-net-l3vpn-svc:l3vpn-svc-cfg/huawei-ac-net-l3vpn-svc-vfi:vrf-attributes/vrf-attribute=' + $prop.l3vpn.vrf2-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\"/>\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\"/>\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vrf2-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1611,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.json
index 4d15309c..bee8da8b 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.json
@@ -1211,7 +1211,7 @@
"id": "f3ac87c7.5588f8",
"type": "execute",
"name": "execute RestApiCallNode create vpn topology",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-topology.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/' + $prop.vpn1Id + '/topology'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-topology.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/' + $prop.vpn1Id + '/topology'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 698.9997272491455,
@@ -1535,7 +1535,7 @@
"id": "6a97289d.80a568",
"type": "execute",
"name": "execute RestApiCallNode create vpn ",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/vpn'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/vpn'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 667.9981231689453,
@@ -2052,7 +2052,7 @@
"id": "86fafd91.f4f2f",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 655.0038986206055,
@@ -2243,7 +2243,7 @@
"id": "55f46b97.799ce4",
"type": "execute",
"name": "execute RestApiCallNode Create tenant auth",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 683.3994293212891,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.json
index 2792153f..b2e9f716 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.json
@@ -1222,7 +1222,7 @@
"id": "bf17376.0f432c8",
"type": "execute",
"name": "execute RestApiCallNode delete vpn topology",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-topology.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/' + $prop.vpn1Id + '/topology'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-topology.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/' + $prop.vpn1Id + '/topology'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 790.812915802002,
@@ -1564,7 +1564,7 @@
"id": "2b9c4213.cf45fe",
"type": "execute",
"name": "execute RestApiCallNode delete vpn ",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/vpn'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/vpn'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 763.8125877380371,
@@ -2129,7 +2129,7 @@
"id": "217830b4.c0fbe",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 798.0000381469727,
@@ -2217,7 +2217,7 @@
"id": "4044e726.54dc28",
"type": "execute",
"name": "execute RestApiCallNode Create tenant auth",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 826.3955688476562,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.json
index dffd3096..919c397a 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.json
@@ -188,7 +188,7 @@
"id": "ef87bbc7.0bf428",
"type": "execute",
"name": "execute RestApiCallNode Create tenant auth",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 660.3652954101562,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.json
index 1435c7cf..3f7cbdc4 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.json
@@ -359,7 +359,7 @@
"id": "3eb35468.4702ac",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 786,
@@ -490,7 +490,7 @@
"id": "7110150.fd1e8ec",
"type": "execute",
"name": "execute RestApiCallNode Create network orchestration",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-network-orchestration.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/network-orchestration-resources'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"orchestration-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-network-orchestration.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/network-orchestration-resources'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"orchestration-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1028.2501525878906,
@@ -523,7 +523,7 @@
"id": "4d96e12b.86876",
"type": "execute",
"name": "execute RestApiCallNode Create vpn",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-create.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/vpn'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-create.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/vpn'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 981.7500610351562,
@@ -548,7 +548,7 @@
"id": "50f144c4.b6b2ac",
"type": "execute",
"name": "execute RestApiCallNode Create vpn topology",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-topology-create.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/' + $prop.vpn-id + '/topology'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-topology-create.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/' + $prop.vpn-id + '/topology'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1009.2500648498535,
@@ -684,7 +684,7 @@
"id": "d533a7b3.2b7aa8",
"type": "execute",
"name": "execute RestApiCallNode Create tenant",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-tenant.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-tenant.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1776.8929138183594,
@@ -709,7 +709,7 @@
"id": "ebb2a924.447738",
"type": "execute",
"name": "execute RestApiCallNode Create tenant auth",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1797.250228881836,
@@ -809,7 +809,7 @@
"id": "75fd5cb0.1720a4",
"type": "execute",
"name": "execute RestApiCallNode Create tenant auth",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1697.1510009765625,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.json
index 876668fa..b0c215aa 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.json
@@ -345,7 +345,7 @@
"id": "b370ae59.4bce9",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 771,
@@ -459,7 +459,7 @@
"id": "2ec15.4c1aa3ebc",
"type": "execute",
"name": "execute RestApiCallNode delete vpn",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-delete.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/vpn/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-vpn-delete.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/vpn/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 779.7501068115234,
@@ -473,7 +473,7 @@
"id": "988eea5f.5a0298",
"type": "execute",
"name": "execute RestApiCallNode delete vpn topology",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/' + $prop.vpn-id + '/topology'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/overlay-network/' + $prop.vpn-id + '/topology'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 809.2501220703125,
@@ -708,7 +708,7 @@
"id": "29548e46.007002",
"type": "execute",
"name": "execute RestApiCallNode Create tenant auth",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/baseservice/tenants/authorization/' + $prop.tenant-id`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"put\"/>\n<parameter name=\"responsePrefix\" value=\"tenant-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1704.0834770202637,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.json
index 798be486..1f43d75b 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.json
@@ -160,7 +160,7 @@
"id": "feaf1629.1e79e8",
"type": "execute",
"name": "execute RestApiCallNode Create Devcie Instance",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-device.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v3/devices'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"deviceResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-device.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v3/devices'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"deviceResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 724.3017807006836,
@@ -177,7 +177,7 @@
"id": "752aae5e.411ae",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 675.4445495605469,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.json
index c4a03e72..116a08f0 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.json
@@ -237,7 +237,7 @@
"id": "dac79818.50d828",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 538.0155982971191,
@@ -576,7 +576,7 @@
"id": "744539f4.efb448",
"type": "execute",
"name": "execute RestApiCallNode delete Devcie Instance",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-device-del.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v3/devices'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"deviceResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-device-del.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v3/devices'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"deviceResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 580.6026992797852,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.json
index 62fa4344..20bd1ea5 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.json
@@ -1 +1 @@
-[{"id":"46d6fdfc.0d3d74","type":"dgstart","name":"DGSTART","outputs":1,"x":142.00390625,"y":70.00390625,"z":"941656e1.8095c8","wires":[["3dff9ac3.bb3cb6"]]},{"id":"3dff9ac3.bb3cb6","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":273.2895965576172,"y":119.24201488494873,"z":"941656e1.8095c8","wires":[["2ef3e2.eacdfc1e"]]},{"id":"2ef3e2.eacdfc1e","type":"method","name":"method sdwan-vnf-topology-operation-wanport-activate","xml":"<method rpc='sdwan-vnf-topology-operation-wanport-activate' mode='sync'>\n","comments":"","outputs":1,"x":276.4325256347656,"y":204.00393867492676,"z":"941656e1.8095c8","wires":[["4424dee4.7277c"]]},{"id":"4424dee4.7277c","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":339.67066192626953,"y":809.670895576477,"z":"941656e1.8095c8","wires":[["6e86cc91.e0dec4","5bdbf2ca.b4e3dc","151081d2.0192fe","c29d81d2.26164","a2e7cf45.ff9e2","38e08d51.507ad2","94bebe02.1a335","a5bbfdf4.35473","a43c9c13.d97cd","32a8d1f7.681cde","92918d15.6311e","11b93136.6ca9cf","539afc44.b0e354","141979cd.9670c6","b7e436fa.b674a8","1b1c84a1.cf917b","c375f7fa.294358","811217d2.ba2838","d9fd9ca8.ebcd1","626cbb77.e952f4"]]},{"id":"6e86cc91.e0dec4","type":"returnSuccess","name":"return success","xml":"<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n","comments":"","x":666.338436126709,"y":1541.3386178016663,"z":"941656e1.8095c8","wires":[]},{"id":"32a8d1f7.681cde","type":"execute","name":"execute RestApiCallNode device port create","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-port.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/ports'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"portResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":754.3380165100098,"y":804.893404006958,"z":"941656e1.8095c8","wires":[["5cc9a68e.86df28","fed901a6.fef5b"]]},{"id":"5cc9a68e.86df28","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1003.3380756378174,"y":818.8936100006104,"z":"941656e1.8095c8","wires":[["19629438.2f203c"]]},{"id":"fed901a6.fef5b","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1003.3380756378174,"y":780.8934454917908,"z":"941656e1.8095c8","wires":[["b43125d5.1cbe28"]]},{"id":"b43125d5.1cbe28","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create device port rest api\" />\n","comments":"","x":1147.3384094238281,"y":779.8934450149536,"z":"941656e1.8095c8","wires":[]},{"id":"19629438.2f203c","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","comments":"","outputs":1,"x":1150.3380870819092,"y":819.8934488296509,"z":"941656e1.8095c8","wires":[[]]},{"id":"92918d15.6311e","type":"execute","name":"execute RestApiCallNode get transport network info","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/network-orchestration-resources'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"get\"/>\n<parameter name=\"responsePrefix\" value=\"transportNetworksResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":777.0043678283691,"y":984.0045094490051,"z":"941656e1.8095c8","wires":[["3327c1fb.4d24fe","c55988fe.a0e798"]]},{"id":"539afc44.b0e354","type":"execute","name":"execute RestApiCallNode wan port create","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-wan-port.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/transport-network-ports'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"wanPortResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":750.0044593811035,"y":1221.004557609558,"z":"941656e1.8095c8","wires":[["ad0f8d25.41a07","6aa8a6c5.0c81c8"]]},{"id":"5bdbf2ca.b4e3dc","type":"switchNode","name":"switch service-data.vnfs.vnf_length","xml":"<switch test='`$service-data.vnfs.vnf_length`'>\n","comments":"","outputs":1,"x":736.0248413085938,"y":148.02481842041016,"z":"941656e1.8095c8","wires":[["a576fae9.715c48","c3727d96.694c","c11796b3.901648"]]},{"id":"a576fae9.715c48","type":"other","name":"Null","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":988.0248756408691,"y":149.02489948272705,"z":"941656e1.8095c8","wires":[["5f0271db.92f1e"]]},{"id":"5f0271db.92f1e","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n","comments":"","x":1149.8026237487793,"y":128.91384649276733,"z":"941656e1.8095c8","wires":[]},{"id":"c3727d96.694c","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":981.0252838134766,"y":182.02490329742432,"z":"941656e1.8095c8","wires":[["dfdaa60f.2c4798"]]},{"id":"dfdaa60f.2c4798","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1004.2947998046875,"y":280.5794982910156,"z":"941656e1.8095c8","wires":[["29ab81e8.aad05e","1ff5f2ad.bd779d","d40815b2.6f0e48","ae71fbba.546708","cda43949.a48508"]]},{"id":"29ab81e8.aad05e","type":"for","name":"for vidx..service-data.vnfs.vnf_length[]","xml":"<for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":1284.3109436035156,"y":174.45346450805664,"z":"941656e1.8095c8","wires":[["27d5ec0c.5024d4"]]},{"id":"1ff5f2ad.bd779d","type":"switchNode","name":"switch tmp.vidx ","xml":"<switch test=\"`$tmp.vidx`\">\n\n","comments":"","outputs":1,"x":1210.612247467041,"y":320.43669986724854,"z":"941656e1.8095c8","wires":[["e7d084a0.2326d8"]]},{"id":"e7d084a0.2326d8","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":1358.0408897399902,"y":320.0081100463867,"z":"941656e1.8095c8","wires":[["2ada3281.d776de"]]},{"id":"d3e4c80f.d09fa8","type":"switchNode","name":"switch vnfid found","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-id == $vnf-topology-operation-input.vnf-information.vnf-id`\">\n\n","comments":"","outputs":1,"x":1657.7401733398438,"y":173.70362663269043,"z":"941656e1.8095c8","wires":[["2986fb68.2295a4"]]},{"id":"2ada3281.d776de","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n","comments":"","x":1507.4696159362793,"y":321.15102767944336,"z":"941656e1.8095c8","wires":[]},{"id":"2986fb68.2295a4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1812.6921653747559,"y":174.59630584716797,"z":"941656e1.8095c8","wires":[["18f7dec7.63c771"]]},{"id":"c972958e.ff1258","type":"set","name":"set tmp.vidx and ctx.vnf-data","xml":"<set>\n<parameter name='tmp.vidx' value='`$vidx`' />\n<parameter name='ctx.vnf-data.' value='`$service-data.vnfs.vnf[$vidx].`' />\n","comments":"","x":2220.224250793457,"y":84.34636402130127,"z":"941656e1.8095c8","wires":[]},{"id":"c11796b3.901648","type":"outcome","name":"0","xml":"<outcome value='0'>\n","comments":"","outputs":1,"x":989.9936256408691,"y":112.99358558654785,"z":"941656e1.8095c8","wires":[["5f0271db.92f1e"]]},{"id":"141979cd.9670c6","type":"set","name":"set device PortId to service data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].name' value='devicePortId' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].value' value='`$prop.wan.devicePortId`' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length' value='`$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length + 1`' />\n\n\n\n\n","comments":"","x":718.9948272705078,"y":1277.9951152801514,"z":"941656e1.8095c8","wires":[]},{"id":"40c1c1e5.e807e","type":"comment","name":"Get siteId from site resource created for this service","info":"","comments":"","x":761.9938888549805,"y":333.32712268829346,"z":"941656e1.8095c8","wires":[]},{"id":"27d5ec0c.5024d4","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1503.6605758666992,"y":173.99354457855225,"z":"941656e1.8095c8","wires":[["d3e4c80f.d09fa8"]]},{"id":"151081d2.0192fe","type":"set","name":"set vnfId and vnf-object-path","xml":"<set>\n<parameter name='vnfId' value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />\n<parameter name=\"vnf-object-path\" value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $vnf-topology-operation-input.vnf-information.vnf-id + '/vnf-data/'` \" />","comments":"","x":699.5501403808594,"y":1420.217029094696,"z":"941656e1.8095c8","wires":[]},{"id":"c29d81d2.26164","type":"set","name":"set vnf-level-oper-status to Active","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.order-status' value='Active' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />\n","comments":"","x":716.9946022033691,"y":1459.9948649406433,"z":"941656e1.8095c8","wires":[]},{"id":"d9fd9ca8.ebcd1","type":"update","name":"update SDWAN wan port instance configuration in AAI","xml":"<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='wan-port-config' \n key='wan-port-config.wan-port-config-id = $vnf-topology-operation-input.vnf-information.vnf-id' >\n<parameter name=\"wan-port-config-id\" value=\"`$vnf-topology-operation-input.vnf-information.vnf-id`\" />\n<parameter name='operational-status' value='Active' />\n<parameter name='device-port-id' value='`$prop.wan.devicePortId`' />\n<parameter name='wan-port-id' value='`$prop.wan.wanPortId`' />\n<parameter name='model-customization-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' />\n","comments":"","outputs":1,"x":779.657527923584,"y":1499.1423268318176,"z":"941656e1.8095c8","wires":[[]]},{"id":"540113a8.f6e3bc","type":"set","name":"set prop.wan.transportNetworkId","xml":"<set>\n<parameter name='prop.wan.transportNetworkId' value='`$transportNetworksResp.data.transportNetworks[$tidx].id`' />\n","comments":"","x":1531.995449066162,"y":1060.9945812225342,"z":"941656e1.8095c8","wires":[]},{"id":"811217d2.ba2838","type":"for","name":"for loop sidx - Get siteId from servicedata","xml":"<for index=\"sidx\" start=\"0\" end=\"`$ctx.site.vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":741.9939117431641,"y":483.9937791824341,"z":"941656e1.8095c8","wires":[["5a526d31.0941f4"]]},{"id":"eb17c95f.c77458","type":"switchNode","name":"switch siteId","xml":"<switch test=\"`$ctx.site.vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].name == 'siteId'`\">\n","comments":"","outputs":1,"x":1172.994239807129,"y":484.99390983581543,"z":"941656e1.8095c8","wires":[["fec4cb2a.2c7e38"]]},{"id":"fec4cb2a.2c7e38","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1310.9946975708008,"y":482.99389457702637,"z":"941656e1.8095c8","wires":[["b43cbcc4.04945"]]},{"id":"b43cbcc4.04945","type":"set","name":"set prop.wan.siteId","xml":"<set>\n<parameter name='prop.wan.siteId' value='`$ctx.site.vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].value`' />\n\n\n","comments":"","x":1474.9947319030762,"y":484.59374809265137,"z":"941656e1.8095c8","wires":[]},{"id":"11b93136.6ca9cf","type":"execute","name":"execute split ip and mask","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$prop.wan.ipAddress`'/>\n<parameter name=\"regex\" value=\"/\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"ipandMask\"/>\n","comments":"","outputs":1,"x":700.9942359924316,"y":1129.3275499343872,"z":"941656e1.8095c8","wires":[["8bee1efd.9d6b2","15fadf5a.5c3931"]]},{"id":"15fadf5a.5c3931","type":"failure","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":901.994255065918,"y":1107.3275413513184,"z":"941656e1.8095c8","wires":[["8296d7d6.8486f8"]]},{"id":"8bee1efd.9d6b2","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":901.9942588806152,"y":1148.3275451660156,"z":"941656e1.8095c8","wires":[["202ce5b1.58685a"]]},{"id":"8296d7d6.8486f8","type":"set","name":"set ipAddress prefixLength","xml":"<set>\n<parameter name='prop.wan.ip-address' value='`$ipandMask[0]`' />\n<parameter name='prop.wan.prefixLength' value='`$ipandMask[1]`' />","comments":"","x":1098.9942741394043,"y":1105.3275413513184,"z":"941656e1.8095c8","wires":[]},{"id":"202ce5b1.58685a","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n","comments":"","x":1056.9942665100098,"y":1145.3275442123413,"z":"941656e1.8095c8","wires":[]},{"id":"a5bbfdf4.35473","type":"get-resource","name":"get-resource esr-thirdparty-sdnc","xml":"<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = SDWANController AND \n\t\t depth = '1'\"\n pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n","comments":"","outputs":1,"x":716.4940795898438,"y":581.9938354492188,"z":"941656e1.8095c8","wires":[["a1fae638.ce0e38","c7e4f763.873648","695a6a89.62d134"]]},{"id":"a1fae638.ce0e38","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":948.4941635131836,"y":545.9938583374023,"z":"941656e1.8095c8","wires":[["43c09877.81b248"]]},{"id":"c7e4f763.873648","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":950.9850463867188,"y":581.5678949356079,"z":"941656e1.8095c8","wires":[["7bb99ede.125ea"]]},{"id":"695a6a89.62d134","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":946.3180541992188,"y":617.9012537002563,"z":"941656e1.8095c8","wires":[["7755af9b.62a34"]]},{"id":"7755af9b.62a34","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n","comments":"","x":1100.0905456542969,"y":615.3403406143188,"z":"941656e1.8095c8","wires":[]},{"id":"7bb99ede.125ea","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n","comments":"","x":1096.5564422607422,"y":579.8535823822021,"z":"941656e1.8095c8","wires":[]},{"id":"43c09877.81b248","type":"set","name":"set controller data","xml":"<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n","comments":"","x":1108.9942741394043,"y":543.9937982559204,"z":"941656e1.8095c8","wires":[]},{"id":"a2e7cf45.ff9e2","type":"record","name":"record","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"sdwan-wanport-vnf-topology-operation-activate\"/>\n<parameter name=\"field3\" value=\"SDWAN-Activate\"/>\n","comments":"","outputs":1,"x":654.0040016174316,"y":204.00393629074097,"z":"941656e1.8095c8","wires":[[]]},{"id":"38e08d51.507ad2","type":"execute","name":"execute Properties","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n","comments":"","outputs":1,"x":690.3061256408691,"y":239.00398015975952,"z":"941656e1.8095c8","wires":[[]]},{"id":"a43c9c13.d97cd","type":"execute","name":"execute RestApiCallNode Get token","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>","comments":"","outputs":1,"x":731.0042114257812,"y":669.6708374023438,"z":"941656e1.8095c8","wires":[["7b139fe2.0d3ea","5f5e8987.ed1188"]]},{"id":"7b139fe2.0d3ea","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":966.004337310791,"y":655.670825958252,"z":"941656e1.8095c8","wires":[["64afeedb.7ff63"]]},{"id":"64afeedb.7ff63","type":"set","name":"set token-id","xml":"<set>\n<parameter name='prop.sdncRestApi.token_id' value='`$token-result.data.token_id`' />\n","comments":"","x":1108.0043449401855,"y":654.6708269119263,"z":"941656e1.8095c8","wires":[]},{"id":"8c817f35.4dc83","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing get token rest api\" />\n","comments":"","x":1114.0043449401855,"y":692.0638151168823,"z":"941656e1.8095c8","wires":[]},{"id":"5f5e8987.ed1188","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":965.254337310791,"y":691.3137331008911,"z":"941656e1.8095c8","wires":[["8c817f35.4dc83"]]},{"id":"550c76f1.771f98","type":"switchNode","name":"switch transportNetworkName same","xml":"<switch test=\"`$transportNetworksResp.data.transportNetworks[$tidx].name == $prop.wan.transportNetworkName`\">\n\n","comments":"","outputs":1,"x":1171.0050621032715,"y":1018.6709794998169,"z":"941656e1.8095c8","wires":[["32465786.9bb1f8"]]},{"id":"32465786.9bb1f8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1384.0045127868652,"y":1018.6708974838257,"z":"941656e1.8095c8","wires":[["540113a8.f6e3bc"]]},{"id":"f0dc5ee5.ceaf8","type":"switchNode","name":"switch ActivateSDWANDeviceInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-data.request-information.request-action == 'ActivateSDWANDeviceInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":1598.3375091552734,"y":251.00396347045898,"z":"941656e1.8095c8","wires":[["f3b0bb97.35fe78"]]},{"id":"f3b0bb97.35fe78","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1821.3375186920166,"y":251.00396347045898,"z":"941656e1.8095c8","wires":[["8f1b5c96.10d07"]]},{"id":"9ea18cc5.bcded","type":"set","name":"set tmp.devicevidx","xml":"<set>\n<parameter name='tmp.devicevidx' value='`$vidx`' />\n\n","comments":"","x":2786.3368530273438,"y":682.0039882659912,"z":"941656e1.8095c8","wires":[]},{"id":"cda43949.a48508","type":"switchNode","name":"switch tmp.devicevidx","xml":"<switch test=\"`$tmp.devicevidx`\">\n\n","comments":"","outputs":1,"x":1251.3374366760254,"y":409.0040259361267,"z":"941656e1.8095c8","wires":[["cab806dc.723728"]]},{"id":"cab806dc.723728","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":1435.7660026550293,"y":409.57546281814575,"z":"941656e1.8095c8","wires":[["ce137ba4.ab4808"]]},{"id":"ce137ba4.ab4808","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"ActivateSDWANDeviceInstance not found in service-data\" />\n","comments":"","x":1576.1947441101074,"y":409.71834230422974,"z":"941656e1.8095c8","wires":[]},{"id":"273aead0.9eb3a6","type":"comment","name":"Get deviceId from device resource created for this service","info":"","comments":"","x":2235.6707916259766,"y":348.33724212646484,"z":"941656e1.8095c8","wires":[]},{"id":"4e13b56.4d1d64c","type":"for","name":"for loop didx - Get deviceId from servicedata","xml":"<for index=\"didx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2221.671001434326,"y":272.00388622283936,"z":"941656e1.8095c8","wires":[["92766af3.12d248"]]},{"id":"c477fc4d.b0d32","type":"switchNode","name":"switch name (DeviceName)","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$didx].name == 'name'`\">\n","comments":"","outputs":1,"x":2239.671600341797,"y":410.0041313171387,"z":"941656e1.8095c8","wires":[["41bc9702.e49d18"]]},{"id":"41bc9702.e49d18","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2441.672092437744,"y":404.0041913986206,"z":"941656e1.8095c8","wires":[["2a414e7.1dfdeb2"]]},{"id":"5a526d31.0941f4","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1004.0041046142578,"y":484.67060375213623,"z":"941656e1.8095c8","wires":[["eb17c95f.c77458"]]},{"id":"92766af3.12d248","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2014.003890991211,"y":408.6706323623657,"z":"941656e1.8095c8","wires":[["c477fc4d.b0d32"]]},{"id":"300379eb.34eba6","type":"switchNode","name":"switch deviceId","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$deviceidx].name == 'deviceId'`\">\n","comments":"","outputs":1,"x":3085.0050506591797,"y":622.6709289550781,"z":"941656e1.8095c8","wires":[["1e04fb03.c02275"]]},{"id":"1e04fb03.c02275","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3238.0054206848145,"y":623.6710062026978,"z":"941656e1.8095c8","wires":[["febe1667.67dc28"]]},{"id":"febe1667.67dc28","type":"set","name":"set prop.wan.deviceId","xml":"<set>\n<parameter name='prop.wan.deviceId' value='`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$deviceidx].value`' />\n","comments":"","x":3407.0060272216797,"y":622.2710409164429,"z":"941656e1.8095c8","wires":[]},{"id":"8f1b5c96.10d07","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1962.6708374023438,"y":273.00398349761963,"z":"941656e1.8095c8","wires":[["4e13b56.4d1d64c"]]},{"id":"2a414e7.1dfdeb2","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2260.0051345825195,"y":487.0041608810425,"z":"941656e1.8095c8","wires":[["97c6ed04.8c4b6"]]},{"id":"7cbc77f3.7157c8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2649.0058403015137,"y":490.00428581237793,"z":"941656e1.8095c8","wires":[["fc9feae5.213678"]]},{"id":"18f7dec7.63c771","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1951.3376846313477,"y":175.00393962860107,"z":"941656e1.8095c8","wires":[["c972958e.ff1258","20413b2e.a4e934","d5207b14.483ab8","4003ca14.00a3a4"]]},{"id":"54164621.634478","type":"set","name":"set prop.wan.wanPortId","xml":"<set>\n<parameter name='prop.wan.wanPortId' value='`$wanPortResp.success[0].id`' />\n","comments":"","x":1326.3287029266357,"y":1239.6612844467163,"z":"941656e1.8095c8","wires":[]},{"id":"b7e436fa.b674a8","type":"set","name":"set prop.wan.devicePortId","xml":"<set>\n<parameter name='prop.wan.devicePortId' value='`$portResp.success[0].id`' />\n","comments":"","x":708.9952239990234,"y":866.9945602416992,"z":"941656e1.8095c8","wires":[]},{"id":"147912c.8f205ed","type":"comment","name":"Create port","info":"","comments":"","x":656.0039558410645,"y":771.3374280929565,"z":"941656e1.8095c8","wires":[]},{"id":"f901209e.dc4fb","type":"comment","name":"Get network id","info":"","comments":"","x":707.0040283203125,"y":949.3373865485191,"z":"941656e1.8095c8","wires":[]},{"id":"166789be.de4306","type":"comment","name":"Create wan port","info":"","comments":"","x":674.0041122436523,"y":1082.3375997543335,"z":"941656e1.8095c8","wires":[]},{"id":"6aa8a6c5.0c81c8","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":986.0041160583496,"y":1207.0041790008545,"z":"941656e1.8095c8","wires":[["c6f20e4e.e6f5"]]},{"id":"ad0f8d25.41a07","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":990.0040855407715,"y":1241.004285812378,"z":"941656e1.8095c8","wires":[["4d940881.eaca88"]]},{"id":"4d940881.eaca88","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","comments":"","outputs":1,"x":1134.0041007995605,"y":1240.0041227340698,"z":"941656e1.8095c8","wires":[["54164621.634478"]]},{"id":"93fe9fd5.c023","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create wan port rest api\" />\n","comments":"","x":1308.004482269287,"y":1206.004210472107,"z":"941656e1.8095c8","wires":[]},{"id":"c55988fe.a0e798","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1083.0039558410645,"y":932.0040845870972,"z":"941656e1.8095c8","wires":[["3bae7b03.73d364"]]},{"id":"3327c1fb.4d24fe","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1083.0039520263672,"y":972.0042495727539,"z":"941656e1.8095c8","wires":[["f0b104fa.c0deb8"]]},{"id":"f0b104fa.c0deb8","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","comments":"","outputs":1,"x":1227.0039672851562,"y":971.0040864944458,"z":"941656e1.8095c8","wires":[[]]},{"id":"3bae7b03.73d364","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Get transport network info rest api\" />\n","comments":"","x":1225.0042877197266,"y":931.0040845870972,"z":"941656e1.8095c8","wires":[]},{"id":"d5207b14.483ab8","type":"call","name":"call sdwan-get-wan-param","xml":"<call module='GENERIC-RESOURCE-API' rpc='sdwan-get-wan-param' mode='sync' >\n","comments":"","outputs":1,"x":2223.670539855957,"y":181.0039825439453,"z":"941656e1.8095c8","wires":[[]]},{"id":"20413b2e.a4e934","type":"set","name":"set vnf-request-input.","xml":"<set>\n<parameter name='vnf-request-input.' value='`$ctx.vnf-data.vnf-data.vnf-request-input.`' />\n\n","comments":"","x":2192.670539855957,"y":131.003999710083,"z":"941656e1.8095c8","wires":[]},{"id":"5b0f6055.7179","type":"comment","name":"This is also required for template parameters update","info":"","comments":"","x":2588.0043029785156,"y":227.00394248962402,"z":"941656e1.8095c8","wires":[]},{"id":"50e23754.b09268","type":"switchNode","name":"switch ActivateSiteInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-data.request-information.request-action == 'ActivateSiteInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":1561.0043487548828,"y":216.00395584106445,"z":"941656e1.8095c8","wires":[["97fa566d.a78ef8"]]},{"id":"97fa566d.a78ef8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1757.0045318603516,"y":217.00395584106445,"z":"941656e1.8095c8","wires":[["f588a589.b88298"]]},{"id":"f588a589.b88298","type":"set","name":"set tmp.siteVidx","xml":"<set>\n<parameter name='tmp.siteVidx' value='`$vidx`' />\n<parameter name='ctx.site.' value='`$service-data.vnfs.vnf[$vidx].`' />\n\n","comments":"","x":1943.0038299560547,"y":214.00395965576172,"z":"941656e1.8095c8","wires":[]},{"id":"ae71fbba.546708","type":"switchNode","name":"switch tmp.siteVidx","xml":"<switch test=\"`$tmp.siteVidx`\">\n\n","comments":"","outputs":1,"x":1234.6706581115723,"y":358.00397634506226,"z":"941656e1.8095c8","wires":[["3f02b2e3.e5e5ae"]]},{"id":"3f02b2e3.e5e5ae","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":1409.0993690490723,"y":358.5754280090332,"z":"941656e1.8095c8","wires":[["54b3eb72.36f954"]]},{"id":"54b3eb72.36f954","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"ActivateSiteInstance not found in service-data\" />\n","comments":"","x":1551.5280876159668,"y":357.71829080581665,"z":"941656e1.8095c8","wires":[]},{"id":"97c6ed04.8c4b6","type":"switchNode","name":"switch deviceName match","xml":"<switch test=\"`$prop.wan.deviceName == $service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$didx].value`\">\n\n\n","comments":"","outputs":1,"x":2465.671859741211,"y":488.0042247772217,"z":"941656e1.8095c8","wires":[["7cbc77f3.7157c8"]]},{"id":"fc9feae5.213678","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2548.3377990722656,"y":562.0040683746338,"z":"941656e1.8095c8","wires":[["6c43560b.6674b8","9ea18cc5.bcded"]]},{"id":"6c43560b.6674b8","type":"for","name":"for loop deviceidx - Get deviceId from servicedata","xml":"<for index=\"deviceidx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2828.5349502563477,"y":557.0352573394775,"z":"941656e1.8095c8","wires":[["95b06241.a3403"]]},{"id":"95b06241.a3403","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2905.5356826782227,"y":621.0353565216064,"z":"941656e1.8095c8","wires":[["300379eb.34eba6"]]},{"id":"4003ca14.00a3a4","type":"record","name":"record","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\".....\"/>\n<parameter name=\"field3\" value=\"prop.wan.deviceName\"/>\n<parameter name=\"field4\" value='`$prop.wan.deviceName`'/>\n","comments":"","outputs":1,"x":2151.535285949707,"y":229.0351734161377,"z":"941656e1.8095c8","wires":[[]]},{"id":"d40815b2.6f0e48","type":"for","name":"for vidx..service-data.vnfs.vnf_length[]","xml":"<for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":1277.003978729248,"y":252.0039234161377,"z":"941656e1.8095c8","wires":[["f0dc5ee5.ceaf8","50e23754.b09268"]]},{"id":"94bebe02.1a335","type":"set","name":"copy input data to service data","xml":"<set>\n<!--parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-id' value='`$vnf-topology-operation-input.vnf-information.vnf-id`' /-->\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />","comments":"","x":712.0351943969727,"y":1374.5353388786316,"z":"941656e1.8095c8","wires":[]},{"id":"83fdb698.dfc008","type":"comment","name":"TODO: split ip/mask","info":"","comments":"","x":1098.00390625,"y":1067.5078134536743,"z":"941656e1.8095c8","wires":[]},{"id":"538e6756.86b638","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":950.0047798156738,"y":1020.3376731872559,"z":"941656e1.8095c8","wires":[["550c76f1.771f98"]]},{"id":"1b1c84a1.cf917b","type":"for","name":"for loop tidx - Get transportNetwork ID","xml":"<for index=\"tidx\" start=\"0\" end=\"`$transportNetworksResp.data.transportNetworks_length`\">\n \n \n","comments":"","outputs":1,"x":734.0043983459473,"y":1019.3374290466309,"z":"941656e1.8095c8","wires":[["538e6756.86b638"]]},{"id":"c375f7fa.294358","type":"set","name":"set wan portId to service data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].name' value='wanPortId' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].value' value='`$prop.wan.wanPortId`' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length' value='`$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length + 1`' />\n\n\n\n\n","comments":"","x":713.0039215087891,"y":1324.254180431366,"z":"941656e1.8095c8","wires":[]},{"id":"626cbb77.e952f4","type":"call","name":"call sdwan-get-tenant-auth","xml":"<call module='GENERIC-RESOURCE-API' rpc='sdwan-get-tenant-auth' mode='sync' >\n","comments":"","outputs":1,"x":706.00390625,"y":725.00390625,"z":"941656e1.8095c8","wires":[[]]},{"id":"c6f20e4e.e6f5","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","comments":"","outputs":1,"x":1130.0079612731934,"y":1205.5078706741333,"z":"941656e1.8095c8","wires":[[]]}] \ No newline at end of file
+[{"id":"46d6fdfc.0d3d74","type":"dgstart","name":"DGSTART","outputs":1,"x":142.00390625,"y":70.00390625,"z":"941656e1.8095c8","wires":[["3dff9ac3.bb3cb6"]]},{"id":"3dff9ac3.bb3cb6","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":273.2895965576172,"y":119.24201488494873,"z":"941656e1.8095c8","wires":[["2ef3e2.eacdfc1e"]]},{"id":"2ef3e2.eacdfc1e","type":"method","name":"method sdwan-vnf-topology-operation-wanport-activate","xml":"<method rpc='sdwan-vnf-topology-operation-wanport-activate' mode='sync'>\n","comments":"","outputs":1,"x":276.4325256347656,"y":204.00393867492676,"z":"941656e1.8095c8","wires":[["4424dee4.7277c"]]},{"id":"4424dee4.7277c","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":339.67066192626953,"y":809.670895576477,"z":"941656e1.8095c8","wires":[["6e86cc91.e0dec4","5bdbf2ca.b4e3dc","151081d2.0192fe","c29d81d2.26164","a2e7cf45.ff9e2","38e08d51.507ad2","94bebe02.1a335","a5bbfdf4.35473","a43c9c13.d97cd","32a8d1f7.681cde","92918d15.6311e","11b93136.6ca9cf","539afc44.b0e354","141979cd.9670c6","b7e436fa.b674a8","1b1c84a1.cf917b","c375f7fa.294358","811217d2.ba2838","d9fd9ca8.ebcd1","626cbb77.e952f4"]]},{"id":"6e86cc91.e0dec4","type":"returnSuccess","name":"return success","xml":"<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n","comments":"","x":666.338436126709,"y":1541.3386178016663,"z":"941656e1.8095c8","wires":[]},{"id":"32a8d1f7.681cde","type":"execute","name":"execute RestApiCallNode device port create","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-port.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/ports'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"portResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":754.3380165100098,"y":804.893404006958,"z":"941656e1.8095c8","wires":[["5cc9a68e.86df28","fed901a6.fef5b"]]},{"id":"5cc9a68e.86df28","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1003.3380756378174,"y":818.8936100006104,"z":"941656e1.8095c8","wires":[["19629438.2f203c"]]},{"id":"fed901a6.fef5b","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1003.3380756378174,"y":780.8934454917908,"z":"941656e1.8095c8","wires":[["b43125d5.1cbe28"]]},{"id":"b43125d5.1cbe28","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create device port rest api\" />\n","comments":"","x":1147.3384094238281,"y":779.8934450149536,"z":"941656e1.8095c8","wires":[]},{"id":"19629438.2f203c","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","comments":"","outputs":1,"x":1150.3380870819092,"y":819.8934488296509,"z":"941656e1.8095c8","wires":[[]]},{"id":"92918d15.6311e","type":"execute","name":"execute RestApiCallNode get transport network info","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/network-orchestration-resources'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"get\"/>\n<parameter name=\"responsePrefix\" value=\"transportNetworksResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":777.0043678283691,"y":984.0045094490051,"z":"941656e1.8095c8","wires":[["3327c1fb.4d24fe","c55988fe.a0e798"]]},{"id":"539afc44.b0e354","type":"execute","name":"execute RestApiCallNode wan port create","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-wan-port.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/transport-network-ports'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"wanPortResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":750.0044593811035,"y":1221.004557609558,"z":"941656e1.8095c8","wires":[["ad0f8d25.41a07","6aa8a6c5.0c81c8"]]},{"id":"5bdbf2ca.b4e3dc","type":"switchNode","name":"switch service-data.vnfs.vnf_length","xml":"<switch test='`$service-data.vnfs.vnf_length`'>\n","comments":"","outputs":1,"x":736.0248413085938,"y":148.02481842041016,"z":"941656e1.8095c8","wires":[["a576fae9.715c48","c3727d96.694c","c11796b3.901648"]]},{"id":"a576fae9.715c48","type":"other","name":"Null","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":988.0248756408691,"y":149.02489948272705,"z":"941656e1.8095c8","wires":[["5f0271db.92f1e"]]},{"id":"5f0271db.92f1e","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n","comments":"","x":1149.8026237487793,"y":128.91384649276733,"z":"941656e1.8095c8","wires":[]},{"id":"c3727d96.694c","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":981.0252838134766,"y":182.02490329742432,"z":"941656e1.8095c8","wires":[["dfdaa60f.2c4798"]]},{"id":"dfdaa60f.2c4798","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1004.2947998046875,"y":280.5794982910156,"z":"941656e1.8095c8","wires":[["29ab81e8.aad05e","1ff5f2ad.bd779d","d40815b2.6f0e48","ae71fbba.546708","cda43949.a48508"]]},{"id":"29ab81e8.aad05e","type":"for","name":"for vidx..service-data.vnfs.vnf_length[]","xml":"<for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":1284.3109436035156,"y":174.45346450805664,"z":"941656e1.8095c8","wires":[["27d5ec0c.5024d4"]]},{"id":"1ff5f2ad.bd779d","type":"switchNode","name":"switch tmp.vidx ","xml":"<switch test=\"`$tmp.vidx`\">\n\n","comments":"","outputs":1,"x":1210.612247467041,"y":320.43669986724854,"z":"941656e1.8095c8","wires":[["e7d084a0.2326d8"]]},{"id":"e7d084a0.2326d8","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":1358.0408897399902,"y":320.0081100463867,"z":"941656e1.8095c8","wires":[["2ada3281.d776de"]]},{"id":"d3e4c80f.d09fa8","type":"switchNode","name":"switch vnfid found","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-id == $vnf-topology-operation-input.vnf-information.vnf-id`\">\n\n","comments":"","outputs":1,"x":1657.7401733398438,"y":173.70362663269043,"z":"941656e1.8095c8","wires":[["2986fb68.2295a4"]]},{"id":"2ada3281.d776de","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n","comments":"","x":1507.4696159362793,"y":321.15102767944336,"z":"941656e1.8095c8","wires":[]},{"id":"2986fb68.2295a4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1812.6921653747559,"y":174.59630584716797,"z":"941656e1.8095c8","wires":[["18f7dec7.63c771"]]},{"id":"c972958e.ff1258","type":"set","name":"set tmp.vidx and ctx.vnf-data","xml":"<set>\n<parameter name='tmp.vidx' value='`$vidx`' />\n<parameter name='ctx.vnf-data.' value='`$service-data.vnfs.vnf[$vidx].`' />\n","comments":"","x":2220.224250793457,"y":84.34636402130127,"z":"941656e1.8095c8","wires":[]},{"id":"c11796b3.901648","type":"outcome","name":"0","xml":"<outcome value='0'>\n","comments":"","outputs":1,"x":989.9936256408691,"y":112.99358558654785,"z":"941656e1.8095c8","wires":[["5f0271db.92f1e"]]},{"id":"141979cd.9670c6","type":"set","name":"set device PortId to service data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].name' value='devicePortId' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].value' value='`$prop.wan.devicePortId`' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length' value='`$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length + 1`' />\n\n\n\n\n","comments":"","x":718.9948272705078,"y":1277.9951152801514,"z":"941656e1.8095c8","wires":[]},{"id":"40c1c1e5.e807e","type":"comment","name":"Get siteId from site resource created for this service","info":"","comments":"","x":761.9938888549805,"y":333.32712268829346,"z":"941656e1.8095c8","wires":[]},{"id":"27d5ec0c.5024d4","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1503.6605758666992,"y":173.99354457855225,"z":"941656e1.8095c8","wires":[["d3e4c80f.d09fa8"]]},{"id":"151081d2.0192fe","type":"set","name":"set vnfId and vnf-object-path","xml":"<set>\n<parameter name='vnfId' value='`$vnf-topology-operation-input.vnf-information.vnf-id`' />\n<parameter name=\"vnf-object-path\" value=\"`'restconf/config/GENERIC-RESOURCE-API:services/service/' + $vnf-topology-operation-input.service-information.service-instance-id + '/service-data/vnfs/vnf/' + $vnf-topology-operation-input.vnf-information.vnf-id + '/vnf-data/'` \" />","comments":"","x":699.5501403808594,"y":1420.217029094696,"z":"941656e1.8095c8","wires":[]},{"id":"c29d81d2.26164","type":"set","name":"set vnf-level-oper-status to Active","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.order-status' value='Active' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.last-rpc-action' value='`$vnf-topology-operation-input.sdnc-request-header.svc-action`' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-level-oper-status.last-action' value='`$vnf-topology-operation-input.request-information.request-action`' />\n","comments":"","x":716.9946022033691,"y":1459.9948649406433,"z":"941656e1.8095c8","wires":[]},{"id":"d9fd9ca8.ebcd1","type":"update","name":"update SDWAN wan port instance configuration in AAI","xml":"<update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' resource='wan-port-config' \n key='wan-port-config.wan-port-config-id = $vnf-topology-operation-input.vnf-information.vnf-id' >\n<parameter name=\"wan-port-config-id\" value=\"`$vnf-topology-operation-input.vnf-information.vnf-id`\" />\n<parameter name='operational-status' value='Active' />\n<parameter name='device-port-id' value='`$prop.wan.devicePortId`' />\n<parameter name='wan-port-id' value='`$prop.wan.wanPortId`' />\n<parameter name='model-customization-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`' />\n<parameter name='model-invariant-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`' />\n<parameter name='model-version-id' value='`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`' />\n","comments":"","outputs":1,"x":779.657527923584,"y":1499.1423268318176,"z":"941656e1.8095c8","wires":[[]]},{"id":"540113a8.f6e3bc","type":"set","name":"set prop.wan.transportNetworkId","xml":"<set>\n<parameter name='prop.wan.transportNetworkId' value='`$transportNetworksResp.data.transportNetworks[$tidx].id`' />\n","comments":"","x":1531.995449066162,"y":1060.9945812225342,"z":"941656e1.8095c8","wires":[]},{"id":"811217d2.ba2838","type":"for","name":"for loop sidx - Get siteId from servicedata","xml":"<for index=\"sidx\" start=\"0\" end=\"`$ctx.site.vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":741.9939117431641,"y":483.9937791824341,"z":"941656e1.8095c8","wires":[["5a526d31.0941f4"]]},{"id":"eb17c95f.c77458","type":"switchNode","name":"switch siteId","xml":"<switch test=\"`$ctx.site.vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].name == 'siteId'`\">\n","comments":"","outputs":1,"x":1172.994239807129,"y":484.99390983581543,"z":"941656e1.8095c8","wires":[["fec4cb2a.2c7e38"]]},{"id":"fec4cb2a.2c7e38","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1310.9946975708008,"y":482.99389457702637,"z":"941656e1.8095c8","wires":[["b43cbcc4.04945"]]},{"id":"b43cbcc4.04945","type":"set","name":"set prop.wan.siteId","xml":"<set>\n<parameter name='prop.wan.siteId' value='`$ctx.site.vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].value`' />\n\n\n","comments":"","x":1474.9947319030762,"y":484.59374809265137,"z":"941656e1.8095c8","wires":[]},{"id":"11b93136.6ca9cf","type":"execute","name":"execute split ip and mask","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$prop.wan.ipAddress`'/>\n<parameter name=\"regex\" value=\"/\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"ipandMask\"/>\n","comments":"","outputs":1,"x":700.9942359924316,"y":1129.3275499343872,"z":"941656e1.8095c8","wires":[["8bee1efd.9d6b2","15fadf5a.5c3931"]]},{"id":"15fadf5a.5c3931","type":"failure","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":901.994255065918,"y":1107.3275413513184,"z":"941656e1.8095c8","wires":[["8296d7d6.8486f8"]]},{"id":"8bee1efd.9d6b2","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":901.9942588806152,"y":1148.3275451660156,"z":"941656e1.8095c8","wires":[["202ce5b1.58685a"]]},{"id":"8296d7d6.8486f8","type":"set","name":"set ipAddress prefixLength","xml":"<set>\n<parameter name='prop.wan.ip-address' value='`$ipandMask[0]`' />\n<parameter name='prop.wan.prefixLength' value='`$ipandMask[1]`' />","comments":"","x":1098.9942741394043,"y":1105.3275413513184,"z":"941656e1.8095c8","wires":[]},{"id":"202ce5b1.58685a","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n<parameter name='error-code' value='' />\n<parameter name='error-message' value=\"An error occured while splitting sna1_route\" />\n","comments":"","x":1056.9942665100098,"y":1145.3275442123413,"z":"941656e1.8095c8","wires":[]},{"id":"a5bbfdf4.35473","type":"get-resource","name":"get-resource esr-thirdparty-sdnc","xml":"<get-resource plugin=\"org.onap.ccsdk.sli.adaptors.aai.AAIService\" \n\t\tresource=\"esr-thirdparty-sdnc\" \n\t\tkey=\"esr-thirdparty-sdnc.thirdparty-sdnc-id = SDWANController AND \n\t\t depth = '1'\"\n pfx='tmp.aai.esr-thirdparty-sdnc' local-only='false' >\n\n","comments":"","outputs":1,"x":716.4940795898438,"y":581.9938354492188,"z":"941656e1.8095c8","wires":[["a1fae638.ce0e38","c7e4f763.873648","695a6a89.62d134"]]},{"id":"a1fae638.ce0e38","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":948.4941635131836,"y":545.9938583374023,"z":"941656e1.8095c8","wires":[["43c09877.81b248"]]},{"id":"c7e4f763.873648","type":"not-found","name":"not-found","xml":"<outcome value='not-found'>\n","comments":"","outputs":1,"x":950.9850463867188,"y":581.5678949356079,"z":"941656e1.8095c8","wires":[["7bb99ede.125ea"]]},{"id":"695a6a89.62d134","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":946.3180541992188,"y":617.9012537002563,"z":"941656e1.8095c8","wires":[["7755af9b.62a34"]]},{"id":"7755af9b.62a34","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'Unexpected error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n","comments":"","x":1100.0905456542969,"y":615.3403406143188,"z":"941656e1.8095c8","wires":[]},{"id":"7bb99ede.125ea","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"`'An error occurred while querying esr-thirdparty-sdnc from AnAI with thirdparty-sdnc-id = ' + $tmp.thirdparty-sdnc-id`\" />\n\n","comments":"","x":1096.5564422607422,"y":579.8535823822021,"z":"941656e1.8095c8","wires":[]},{"id":"43c09877.81b248","type":"set","name":"set controller data","xml":"<set>\n<parameter name='prop.sdncRestApi.thirdpartySdnc.url' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.user' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`\" />\n<parameter name='prop.sdncRestApi.thirdpartySdnc.password' value=\"`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`\" />\n","comments":"","x":1108.9942741394043,"y":543.9937982559204,"z":"941656e1.8095c8","wires":[]},{"id":"a2e7cf45.ff9e2","type":"record","name":"record","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"sdwan-wanport-vnf-topology-operation-activate\"/>\n<parameter name=\"field3\" value=\"SDWAN-Activate\"/>\n","comments":"","outputs":1,"x":654.0040016174316,"y":204.00393629074097,"z":"941656e1.8095c8","wires":[[]]},{"id":"38e08d51.507ad2","type":"execute","name":"execute Properties","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\n <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\n <parameter name='contextPrefix' value='prop' />\n","comments":"","outputs":1,"x":690.3061256408691,"y":239.00398015975952,"z":"941656e1.8095c8","wires":[[]]},{"id":"a43c9c13.d97cd","type":"execute","name":"execute RestApiCallNode Get token","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>","comments":"","outputs":1,"x":731.0042114257812,"y":669.6708374023438,"z":"941656e1.8095c8","wires":[["7b139fe2.0d3ea","5f5e8987.ed1188"]]},{"id":"7b139fe2.0d3ea","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":966.004337310791,"y":655.670825958252,"z":"941656e1.8095c8","wires":[["64afeedb.7ff63"]]},{"id":"64afeedb.7ff63","type":"set","name":"set token-id","xml":"<set>\n<parameter name='prop.sdncRestApi.token_id' value='`$token-result.data.token_id`' />\n","comments":"","x":1108.0043449401855,"y":654.6708269119263,"z":"941656e1.8095c8","wires":[]},{"id":"8c817f35.4dc83","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing get token rest api\" />\n","comments":"","x":1114.0043449401855,"y":692.0638151168823,"z":"941656e1.8095c8","wires":[]},{"id":"5f5e8987.ed1188","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":965.254337310791,"y":691.3137331008911,"z":"941656e1.8095c8","wires":[["8c817f35.4dc83"]]},{"id":"550c76f1.771f98","type":"switchNode","name":"switch transportNetworkName same","xml":"<switch test=\"`$transportNetworksResp.data.transportNetworks[$tidx].name == $prop.wan.transportNetworkName`\">\n\n","comments":"","outputs":1,"x":1171.0050621032715,"y":1018.6709794998169,"z":"941656e1.8095c8","wires":[["32465786.9bb1f8"]]},{"id":"32465786.9bb1f8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1384.0045127868652,"y":1018.6708974838257,"z":"941656e1.8095c8","wires":[["540113a8.f6e3bc"]]},{"id":"f0dc5ee5.ceaf8","type":"switchNode","name":"switch ActivateSDWANDeviceInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-data.request-information.request-action == 'ActivateSDWANDeviceInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":1598.3375091552734,"y":251.00396347045898,"z":"941656e1.8095c8","wires":[["f3b0bb97.35fe78"]]},{"id":"f3b0bb97.35fe78","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1821.3375186920166,"y":251.00396347045898,"z":"941656e1.8095c8","wires":[["8f1b5c96.10d07"]]},{"id":"9ea18cc5.bcded","type":"set","name":"set tmp.devicevidx","xml":"<set>\n<parameter name='tmp.devicevidx' value='`$vidx`' />\n\n","comments":"","x":2786.3368530273438,"y":682.0039882659912,"z":"941656e1.8095c8","wires":[]},{"id":"cda43949.a48508","type":"switchNode","name":"switch tmp.devicevidx","xml":"<switch test=\"`$tmp.devicevidx`\">\n\n","comments":"","outputs":1,"x":1251.3374366760254,"y":409.0040259361267,"z":"941656e1.8095c8","wires":[["cab806dc.723728"]]},{"id":"cab806dc.723728","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":1435.7660026550293,"y":409.57546281814575,"z":"941656e1.8095c8","wires":[["ce137ba4.ab4808"]]},{"id":"ce137ba4.ab4808","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"ActivateSDWANDeviceInstance not found in service-data\" />\n","comments":"","x":1576.1947441101074,"y":409.71834230422974,"z":"941656e1.8095c8","wires":[]},{"id":"273aead0.9eb3a6","type":"comment","name":"Get deviceId from device resource created for this service","info":"","comments":"","x":2235.6707916259766,"y":348.33724212646484,"z":"941656e1.8095c8","wires":[]},{"id":"4e13b56.4d1d64c","type":"for","name":"for loop didx - Get deviceId from servicedata","xml":"<for index=\"didx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2221.671001434326,"y":272.00388622283936,"z":"941656e1.8095c8","wires":[["92766af3.12d248"]]},{"id":"c477fc4d.b0d32","type":"switchNode","name":"switch name (DeviceName)","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$didx].name == 'name'`\">\n","comments":"","outputs":1,"x":2239.671600341797,"y":410.0041313171387,"z":"941656e1.8095c8","wires":[["41bc9702.e49d18"]]},{"id":"41bc9702.e49d18","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2441.672092437744,"y":404.0041913986206,"z":"941656e1.8095c8","wires":[["2a414e7.1dfdeb2"]]},{"id":"5a526d31.0941f4","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1004.0041046142578,"y":484.67060375213623,"z":"941656e1.8095c8","wires":[["eb17c95f.c77458"]]},{"id":"92766af3.12d248","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2014.003890991211,"y":408.6706323623657,"z":"941656e1.8095c8","wires":[["c477fc4d.b0d32"]]},{"id":"300379eb.34eba6","type":"switchNode","name":"switch deviceId","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$deviceidx].name == 'deviceId'`\">\n","comments":"","outputs":1,"x":3085.0050506591797,"y":622.6709289550781,"z":"941656e1.8095c8","wires":[["1e04fb03.c02275"]]},{"id":"1e04fb03.c02275","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3238.0054206848145,"y":623.6710062026978,"z":"941656e1.8095c8","wires":[["febe1667.67dc28"]]},{"id":"febe1667.67dc28","type":"set","name":"set prop.wan.deviceId","xml":"<set>\n<parameter name='prop.wan.deviceId' value='`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$deviceidx].value`' />\n","comments":"","x":3407.0060272216797,"y":622.2710409164429,"z":"941656e1.8095c8","wires":[]},{"id":"8f1b5c96.10d07","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1962.6708374023438,"y":273.00398349761963,"z":"941656e1.8095c8","wires":[["4e13b56.4d1d64c"]]},{"id":"2a414e7.1dfdeb2","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2260.0051345825195,"y":487.0041608810425,"z":"941656e1.8095c8","wires":[["97c6ed04.8c4b6"]]},{"id":"7cbc77f3.7157c8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2649.0058403015137,"y":490.00428581237793,"z":"941656e1.8095c8","wires":[["fc9feae5.213678"]]},{"id":"18f7dec7.63c771","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":1951.3376846313477,"y":175.00393962860107,"z":"941656e1.8095c8","wires":[["c972958e.ff1258","20413b2e.a4e934","d5207b14.483ab8","4003ca14.00a3a4"]]},{"id":"54164621.634478","type":"set","name":"set prop.wan.wanPortId","xml":"<set>\n<parameter name='prop.wan.wanPortId' value='`$wanPortResp.success[0].id`' />\n","comments":"","x":1326.3287029266357,"y":1239.6612844467163,"z":"941656e1.8095c8","wires":[]},{"id":"b7e436fa.b674a8","type":"set","name":"set prop.wan.devicePortId","xml":"<set>\n<parameter name='prop.wan.devicePortId' value='`$portResp.success[0].id`' />\n","comments":"","x":708.9952239990234,"y":866.9945602416992,"z":"941656e1.8095c8","wires":[]},{"id":"147912c.8f205ed","type":"comment","name":"Create port","info":"","comments":"","x":656.0039558410645,"y":771.3374280929565,"z":"941656e1.8095c8","wires":[]},{"id":"f901209e.dc4fb","type":"comment","name":"Get network id","info":"","comments":"","x":707.0040283203125,"y":949.3373865485191,"z":"941656e1.8095c8","wires":[]},{"id":"166789be.de4306","type":"comment","name":"Create wan port","info":"","comments":"","x":674.0041122436523,"y":1082.3375997543335,"z":"941656e1.8095c8","wires":[]},{"id":"6aa8a6c5.0c81c8","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":986.0041160583496,"y":1207.0041790008545,"z":"941656e1.8095c8","wires":[["c6f20e4e.e6f5"]]},{"id":"ad0f8d25.41a07","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":990.0040855407715,"y":1241.004285812378,"z":"941656e1.8095c8","wires":[["4d940881.eaca88"]]},{"id":"4d940881.eaca88","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","comments":"","outputs":1,"x":1134.0041007995605,"y":1240.0041227340698,"z":"941656e1.8095c8","wires":[["54164621.634478"]]},{"id":"93fe9fd5.c023","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Create wan port rest api\" />\n","comments":"","x":1308.004482269287,"y":1206.004210472107,"z":"941656e1.8095c8","wires":[]},{"id":"c55988fe.a0e798","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1083.0039558410645,"y":932.0040845870972,"z":"941656e1.8095c8","wires":[["3bae7b03.73d364"]]},{"id":"3327c1fb.4d24fe","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1083.0039520263672,"y":972.0042495727539,"z":"941656e1.8095c8","wires":[["f0b104fa.c0deb8"]]},{"id":"f0b104fa.c0deb8","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","comments":"","outputs":1,"x":1227.0039672851562,"y":971.0040864944458,"z":"941656e1.8095c8","wires":[[]]},{"id":"3bae7b03.73d364","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing Get transport network info rest api\" />\n","comments":"","x":1225.0042877197266,"y":931.0040845870972,"z":"941656e1.8095c8","wires":[]},{"id":"d5207b14.483ab8","type":"call","name":"call sdwan-get-wan-param","xml":"<call module='GENERIC-RESOURCE-API' rpc='sdwan-get-wan-param' mode='sync' >\n","comments":"","outputs":1,"x":2223.670539855957,"y":181.0039825439453,"z":"941656e1.8095c8","wires":[[]]},{"id":"20413b2e.a4e934","type":"set","name":"set vnf-request-input.","xml":"<set>\n<parameter name='vnf-request-input.' value='`$ctx.vnf-data.vnf-data.vnf-request-input.`' />\n\n","comments":"","x":2192.670539855957,"y":131.003999710083,"z":"941656e1.8095c8","wires":[]},{"id":"5b0f6055.7179","type":"comment","name":"This is also required for template parameters update","info":"","comments":"","x":2588.0043029785156,"y":227.00394248962402,"z":"941656e1.8095c8","wires":[]},{"id":"50e23754.b09268","type":"switchNode","name":"switch ActivateSiteInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$vidx].vnf-data.request-information.request-action == 'ActivateSiteInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":1561.0043487548828,"y":216.00395584106445,"z":"941656e1.8095c8","wires":[["97fa566d.a78ef8"]]},{"id":"97fa566d.a78ef8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1757.0045318603516,"y":217.00395584106445,"z":"941656e1.8095c8","wires":[["f588a589.b88298"]]},{"id":"f588a589.b88298","type":"set","name":"set tmp.siteVidx","xml":"<set>\n<parameter name='tmp.siteVidx' value='`$vidx`' />\n<parameter name='ctx.site.' value='`$service-data.vnfs.vnf[$vidx].`' />\n\n","comments":"","x":1943.0038299560547,"y":214.00395965576172,"z":"941656e1.8095c8","wires":[]},{"id":"ae71fbba.546708","type":"switchNode","name":"switch tmp.siteVidx","xml":"<switch test=\"`$tmp.siteVidx`\">\n\n","comments":"","outputs":1,"x":1234.6706581115723,"y":358.00397634506226,"z":"941656e1.8095c8","wires":[["3f02b2e3.e5e5ae"]]},{"id":"3f02b2e3.e5e5ae","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":1409.0993690490723,"y":358.5754280090332,"z":"941656e1.8095c8","wires":[["54b3eb72.36f954"]]},{"id":"54b3eb72.36f954","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"ActivateSiteInstance not found in service-data\" />\n","comments":"","x":1551.5280876159668,"y":357.71829080581665,"z":"941656e1.8095c8","wires":[]},{"id":"97c6ed04.8c4b6","type":"switchNode","name":"switch deviceName match","xml":"<switch test=\"`$prop.wan.deviceName == $service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$didx].value`\">\n\n\n","comments":"","outputs":1,"x":2465.671859741211,"y":488.0042247772217,"z":"941656e1.8095c8","wires":[["7cbc77f3.7157c8"]]},{"id":"fc9feae5.213678","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2548.3377990722656,"y":562.0040683746338,"z":"941656e1.8095c8","wires":[["6c43560b.6674b8","9ea18cc5.bcded"]]},{"id":"6c43560b.6674b8","type":"for","name":"for loop deviceidx - Get deviceId from servicedata","xml":"<for index=\"deviceidx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2828.5349502563477,"y":557.0352573394775,"z":"941656e1.8095c8","wires":[["95b06241.a3403"]]},{"id":"95b06241.a3403","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":2905.5356826782227,"y":621.0353565216064,"z":"941656e1.8095c8","wires":[["300379eb.34eba6"]]},{"id":"4003ca14.00a3a4","type":"record","name":"record","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\".....\"/>\n<parameter name=\"field3\" value=\"prop.wan.deviceName\"/>\n<parameter name=\"field4\" value='`$prop.wan.deviceName`'/>\n","comments":"","outputs":1,"x":2151.535285949707,"y":229.0351734161377,"z":"941656e1.8095c8","wires":[[]]},{"id":"d40815b2.6f0e48","type":"for","name":"for vidx..service-data.vnfs.vnf_length[]","xml":"<for index='vidx' start='0' end='`$service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":1277.003978729248,"y":252.0039234161377,"z":"941656e1.8095c8","wires":[["f0dc5ee5.ceaf8","50e23754.b09268"]]},{"id":"94bebe02.1a335","type":"set","name":"copy input data to service data","xml":"<set>\n<!--parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-id' value='`$vnf-topology-operation-input.vnf-information.vnf-id`' /-->\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.sdnc-request-header.' value='$vnf-topology-operation-input.sdnc-request-header.' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.request-information.' value='$vnf-topology-operation-input.request-information.' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.service-information.' value='$vnf-topology-operation-input.service-information.' />","comments":"","x":712.0351943969727,"y":1374.5353388786316,"z":"941656e1.8095c8","wires":[]},{"id":"83fdb698.dfc008","type":"comment","name":"TODO: split ip/mask","info":"","comments":"","x":1098.00390625,"y":1067.5078134536743,"z":"941656e1.8095c8","wires":[]},{"id":"538e6756.86b638","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":950.0047798156738,"y":1020.3376731872559,"z":"941656e1.8095c8","wires":[["550c76f1.771f98"]]},{"id":"1b1c84a1.cf917b","type":"for","name":"for loop tidx - Get transportNetwork ID","xml":"<for index=\"tidx\" start=\"0\" end=\"`$transportNetworksResp.data.transportNetworks_length`\">\n \n \n","comments":"","outputs":1,"x":734.0043983459473,"y":1019.3374290466309,"z":"941656e1.8095c8","wires":[["538e6756.86b638"]]},{"id":"c375f7fa.294358","type":"set","name":"set wan portId to service data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].name' value='wanPortId' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].value' value='`$prop.wan.wanPortId`' />\n<parameter name='service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length' value='`$service-data.vnfs.vnf[$tmp.vidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length + 1`' />\n\n\n\n\n","comments":"","x":713.0039215087891,"y":1324.254180431366,"z":"941656e1.8095c8","wires":[]},{"id":"626cbb77.e952f4","type":"call","name":"call sdwan-get-tenant-auth","xml":"<call module='GENERIC-RESOURCE-API' rpc='sdwan-get-tenant-auth' mode='sync' >\n","comments":"","outputs":1,"x":706.00390625,"y":725.00390625,"z":"941656e1.8095c8","wires":[[]]},{"id":"c6f20e4e.e6f5","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","comments":"","outputs":1,"x":1130.0079612731934,"y":1205.5078706741333,"z":"941656e1.8095c8","wires":[[]]}] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.json
index b6ff38b7..af6f26c4 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.json
@@ -420,7 +420,7 @@
"id": "1d346910.f82317",
"type": "execute",
"name": "execute RestApiCallNode device port delete",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-device-port-del.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/ports/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"portResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-device-port-del.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/ports/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"portResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 773.0005130767822,
@@ -495,7 +495,7 @@
"id": "b1683370.08944",
"type": "execute",
"name": "execute RestApiCallNode wan port delete",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-wan-port-del.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/transport-network-ports/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"portResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-wan-port-del.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/transport-network-ports/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"portResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 764.0006809234619,
@@ -584,7 +584,7 @@
"id": "ec6fef57.1d937",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 757.0002689361572,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.json
index f6eb610b..d017cacb 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.json
@@ -1 +1 @@
-[{"id":"587a4e4b.449f1","type":"dgstart","name":"DGSTART","outputs":1,"x":104.00390625,"y":51.99999871850014,"z":"b1d019b.6dbd8e8","wires":[["cf04b901.3d6f98"]]},{"id":"cf04b901.3d6f98","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":220.2895965576172,"y":103.23810639977455,"z":"b1d019b.6dbd8e8","wires":[["a2d12571.0378a8"]]},{"id":"a2d12571.0378a8","type":"method","name":"method sdwan-wanport-vnf-topology-operation-underlay","xml":"<method rpc='sdwan-wanport-vnf-topology-operation-underlay' mode='sync'>\n","comments":"","outputs":1,"x":223.43252563476562,"y":188.00003018975258,"z":"b1d019b.6dbd8e8","wires":[["a47337eb.18b358"]]},{"id":"a47337eb.18b358","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":155.67059326171875,"y":296.6667315065861,"z":"b1d019b.6dbd8e8","wires":[["718fab21.36f054","3f81fe79.041ff2","f5abf897.1c94a8","e484905a.ff144","e2e0c9ba.1ae298"]]},{"id":"718fab21.36f054","type":"for","name":"for cidx..service-data.consumed-allotted-resources.consumed-allotted-resource[]","xml":"<for index='cidx' start='0' end='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' >\n","comments":"","outputs":1,"x":590.004337310791,"y":435.66685262322426,"z":"b1d019b.6dbd8e8","wires":[["95ab5318.2e5c4"]]},{"id":"8881f8e.5bc9208","type":"set","name":"set prop.ar.allotted-resource-id","xml":"<set>\n<parameter name='prop.ar.allotted-resource-id' value='`$service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].allotted-resource-id`' />\n","comments":"","x":1380.0052490234375,"y":124.96877732872963,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"ca0bbb68.4e6518","type":"comment","name":"Query MDSAL for AR","info":"","comments":"","x":1705.3379211425781,"y":148.96864667534828,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"88a9e795.e489e8","type":"comment","name":"Query MDSAL to get parent service based on service instance id from AR","info":"","comments":"","x":2175.338779449463,"y":167.96862569451332,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"61804941.42b278","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1954.67232131958,"y":203.63526597619057,"z":"b1d019b.6dbd8e8","wires":[["b4949dcd.ebcd1"]]},{"id":"b4949dcd.ebcd1","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2109.672161102295,"y":203.1350990831852,"z":"b1d019b.6dbd8e8","wires":[["e88c8316.b28a7"]]},{"id":"4119fddc.bb6d24","type":"other","name":"outcome 1","xml":"<outcome value='1'>\n","comments":"","outputs":1,"x":2433.3626976013184,"y":199.7542397081852,"z":"b1d019b.6dbd8e8","wires":[["e113bdd7.9bdab"]]},{"id":"672a20f.a0083e","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Connection attachement resource not found\" />\n \n","comments":"","x":2579.1314735412598,"y":239.20122781395912,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"17977b69.262195","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":1947.5240478515625,"y":250.701272636652,"z":"b1d019b.6dbd8e8","wires":[["4a7edd74.b9a034"]]},{"id":"4a7edd74.b9a034","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2097.5238914489746,"y":251.36782804131508,"z":"b1d019b.6dbd8e8","wires":[["889c4ad9.edb108"]]},{"id":"f51f9f7c.c2466","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":2421.6906509399414,"y":237.034599930048,"z":"b1d019b.6dbd8e8","wires":[["672a20f.a0083e"]]},{"id":"e88c8316.b28a7","type":"switchNode","name":"switch cr length","xml":"<switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>\n","comments":"","outputs":1,"x":2273.672336578369,"y":203.63528218865395,"z":"b1d019b.6dbd8e8","wires":[["4119fddc.bb6d24","f51f9f7c.c2466"]]},{"id":"ad5ef81b.eca5b8","type":"set","name":"set parent-service-instance-id","xml":"<set>\n<parameter name='prop.parent-service-instance-id' value='`$mdsal-ar.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.parent-service-instance-id`' />\n\n","comments":"","x":2829.0059356689453,"y":200.63526311516762,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e113bdd7.9bdab","type":"block","name":"block: atomic","xml":"<block atomic='true'>\n","atomic":"false","comments":"","outputs":1,"x":2583.4817276000977,"y":199.80179944634438,"z":"b1d019b.6dbd8e8","wires":[["ad5ef81b.eca5b8","5b3adfc2.d795f"]]},{"id":"889c4ad9.edb108","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Connection attachement resource not found\" />\n \n","comments":"","x":2265.005344390869,"y":249.63520398736,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"936de3e0.c6a2e","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":2052.307460784912,"y":521.7709299623966,"z":"b1d019b.6dbd8e8","wires":[["2fdbbace.5a0386"]]},{"id":"56dafc4a.8aaae4","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":2044.1592636108398,"y":556.837014824152,"z":"b1d019b.6dbd8e8","wires":[["2a42a293.fba3ae"]]},{"id":"2a42a293.fba3ae","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n","comments":"","x":2190.308036804199,"y":557.1045109331608,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2fdbbace.5a0386","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":2172.3077087402344,"y":521.7710129320621,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"a13ee754.9515f8","type":"for","name":"for pnidx.. mdsal-psd.networks.network_length[]","xml":"<for index='pnidx' start='0' end='`$mdsal-psd.service-data.networks.network_length`' >\n","comments":"","outputs":1,"x":1735.6722564697266,"y":621.3028880655766,"z":"b1d019b.6dbd8e8","wires":[["684cbe0.d0ae544"]]},{"id":"9bdd2027.61dcf","type":"switchNode","name":"switch ActivateSDWANConnectivityInstance","xml":"<switch test=\"`$mdsal-psd.service-data.networks.network[$pnidx].network-data.request-information.request-action == 'ActivateSDWANConnectivityInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":2265.3388900756836,"y":590.302889496088,"z":"b1d019b.6dbd8e8","wires":[["4800da5e.9f4d14"]]},{"id":"4800da5e.9f4d14","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2517.338424682617,"y":591.3028270304203,"z":"b1d019b.6dbd8e8","wires":[["e64d626e.5a50e"]]},{"id":"e64d626e.5a50e","type":"set","name":"set tmp.pnidx ","xml":"<set>\n<parameter name='tmp.pnidx' value='`$pnidx`' />\n\n","comments":"","x":2673.3381118774414,"y":591.3028270304203,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"dd934675.d4e888","type":"for","name":"for loop paramidx - Get topology from servicedata","xml":"<for index=\"paramidx\" start=\"0\" end=\"`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":1667.3390655517578,"y":706.3025175631046,"z":"b1d019b.6dbd8e8","wires":[["8db55ac9.a24998"]]},{"id":"62066499.8552ec","type":"switchNode","name":"switch topology","xml":"<switch test=\"`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param[$paramidx].name == 'topology'`\">\n","comments":"","outputs":1,"x":2119.339157104492,"y":685.3024231493473,"z":"b1d019b.6dbd8e8","wires":[["4f33474b.e43bc8"]]},{"id":"4f33474b.e43bc8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2270.339168548584,"y":683.3024651110172,"z":"b1d019b.6dbd8e8","wires":[["8246d892.e05918"]]},{"id":"8246d892.e05918","type":"set","name":"set topology","xml":"<set>\n<parameter name='prop.topology' value='`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param[$paramidx].value`' />\n","comments":"","x":2411.338897705078,"y":682.9023987352848,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"88c5e553.ee7048","type":"switchNode","name":"switch tmp.pnidx ","xml":"<switch test=\"`$tmp.pnidx`\">\n\n","comments":"","outputs":1,"x":1638.338882446289,"y":665.9690901339054,"z":"b1d019b.6dbd8e8","wires":[["11715e8.eb7eca2"]]},{"id":"11715e8.eb7eca2","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":1793.7675552368164,"y":664.5404697954655,"z":"b1d019b.6dbd8e8","wires":[["49bf685a.de5378"]]},{"id":"49bf685a.de5378","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n","comments":"","x":1934.1961784362793,"y":665.6835590898991,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"de9858f.b81a8a8","type":"switchNode","name":"switch topology hub-spoke","xml":"<switch test=\"`$prop.topology == 'hub-spoke'`\">\n","comments":"","outputs":1,"x":1546.3387489318848,"y":768.3023392260075,"z":"b1d019b.6dbd8e8","wires":[["24d293b9.ebe98c","4bfa75a0.97649c"]]},{"id":"24d293b9.ebe98c","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1736.338436126709,"y":793.3028246462345,"z":"b1d019b.6dbd8e8","wires":[["fc31272f.d20a28"]]},{"id":"4bfa75a0.97649c","type":"outcomeTrue","name":"false","xml":"<outcome value='false'>\n","comments":"","outputs":1,"x":1730.3393630981445,"y":754.3024870455265,"z":"b1d019b.6dbd8e8","wires":[["a1325102.a1698"]]},{"id":"a1325102.a1698","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1866.3393669128418,"y":754.3024260103703,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"fc31272f.d20a28","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1741.67138671875,"y":861.3020588457584,"z":"b1d019b.6dbd8e8","wires":[["e126a9e.93d2358"]]},{"id":"e126a9e.93d2358","type":"for","name":"for ppidx.. mdsal-psd.service-data.provided-allotted-resources.provided-allotted-resource[]","xml":"<for index='ppidx' start='0' end='`$mdsal-psd.service-data.provided-allotted-resources.provided-allotted-resource_length`' >\n","comments":"","outputs":1,"x":2149.004638671875,"y":861.6356770098209,"z":"b1d019b.6dbd8e8","wires":[["a3874818.96b4a8"]]},{"id":"fafd1fed.9ce1b","type":"set","name":"set prop.ar.provided-allotted-resource-id","xml":"<set>\n<parameter name='prop.ar.provided-allotted-resource-id' value='`$mdsal-psd.service-data.provided-allotted-resources.provided-allotted-resource[$ppidx].allotted-resource-id`' />\n\n","comments":"","x":2240.0057525634766,"y":939.6359750330448,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"8b5306cb.0a00b8","type":"for","name":"for loop aridx - Get role from allotted resource","xml":"<for index=\"aridx\" start=\"0\" end=\"`$mdsal-providedAr.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param_length`\">\n \n \n","comments":"","outputs":1,"x":2258.0064544677734,"y":1050.3027664721012,"z":"b1d019b.6dbd8e8","wires":[["35d495b.f10696a"]]},{"id":"2ab4ecb3.a0e7b4","type":"switchNode","name":"switch Role","xml":"<switch test=\"`$mdsal-providedAr.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$aridx].name == 'Role'`\">\n","comments":"","outputs":1,"x":2667.006565093994,"y":1053.302853256464,"z":"b1d019b.6dbd8e8","wires":[["f82626a6.b9ef58"]]},{"id":"f82626a6.b9ef58","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2808.0068969726562,"y":1052.3028523027897,"z":"b1d019b.6dbd8e8","wires":[["7f118497.e5e81c"]]},{"id":"7f118497.e5e81c","type":"set","name":"set prop.role","xml":"<set>\n<parameter name='prop.role' value='`$mdsal-providedAr.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$aridx].value`' />\n","comments":"","x":2949.0069313049316,"y":1053.9027439653873,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"9f0875d3.47e2b8","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":2744.0059509277344,"y":956.9692687094212,"z":"b1d019b.6dbd8e8","wires":[["36139e8.434ce62"]]},{"id":"807962c4.90f77","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":2740.8576736450195,"y":1011.0353519022465,"z":"b1d019b.6dbd8e8","wires":[["9edc0016.5374a"]]},{"id":"dbadbe13.1677b","type":"switchNode","name":"switch role hub","xml":"<switch test=\"`$prop.role == hub`\">\n","comments":"","outputs":1,"x":2124.3390884399414,"y":1115.635806709528,"z":"b1d019b.6dbd8e8","wires":[["dcf9daa3.e54cc8","5d1cf617.14b6b8"]]},{"id":"9271766e.fe0c48","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":2440.3384742736816,"y":1091.6354099810123,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"6d9b82e0.ee0e5c","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":2850.3081092834473,"y":1187.1045166552067,"z":"b1d019b.6dbd8e8","wires":[["f48b85ad.740008"]]},{"id":"1f5ff987.3fd166","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":2852.159679412842,"y":1247.170598655939,"z":"b1d019b.6dbd8e8","wires":[["f995184a.d07fa8"]]},{"id":"f995184a.d07fa8","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SDWAN service-data not found\" />\n \n","comments":"","x":2996.308452606201,"y":1209.4380127489567,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f48b85ad.740008","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":2980.3081283569336,"y":1176.1046768724918,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"928e3eb0.849cd","type":"set","name":"set prop.ar-service-instance-id","xml":"<set>\n<parameter name='prop.ar-service-instance-id' value='`$mdsal-providedAr.connection-attachment-allotted-resource[0].allotted-resource-data.connection-attachment-topology.allotted-resource-identifiers.consuming-service-instance-id`' />\n","comments":"","x":2452.3395080566406,"y":1175.6360094845295,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"3730c8a.de81d38","type":"for","name":"for arvidx.. mdsal-arsd.service-data.vnfs.vnf_length[]","xml":"<for index='arvidx' start='0' end='`$mdsal-arsd.service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":2496.0059814453125,"y":1297.6357990801334,"z":"b1d019b.6dbd8e8","wires":[["993a1752.84b598"]]},{"id":"993a1752.84b598","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2842.6723022460938,"y":1287.6357752382755,"z":"b1d019b.6dbd8e8","wires":[["9bd685d3.b9a5b8","2be5604d.8b517","34da5cb3.ec0254"]]},{"id":"9bd685d3.b9a5b8","type":"switchNode","name":"switch ActivateSDWANPortInstance","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$arvidx].vnf-data.request-information.request-action == 'ActivateSDWANPortInstance'`\">\n \n\n","comments":"","outputs":1,"x":3104.672410964966,"y":1258.6367346346378,"z":"b1d019b.6dbd8e8","wires":[["22ea8a6b.a17296"]]},{"id":"2f97be15.e601c2","type":"switchNode","name":"switch tmp.wanportvidx ","xml":"<switch test=\"`$tmp.wanportvidx`\">\n\n","comments":"","outputs":1,"x":2577.672119140625,"y":1342.3024441301823,"z":"b1d019b.6dbd8e8","wires":[["54e2ca7c.2e5f44"]]},{"id":"43b2a05a.a7d9b","type":"for","name":"for loop wportidx - Get wan port ID from servicedata","xml":"<for index=\"wportidx\" start=\"0\" end=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.portvidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":3759.6728897094727,"y":1251.6369148790836,"z":"b1d019b.6dbd8e8","wires":[["bca2a06e.4f682"]]},{"id":"54e2ca7c.2e5f44","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":2749.100841522217,"y":1345.8741499483585,"z":"b1d019b.6dbd8e8","wires":[["2f27c837.ae4c68"]]},{"id":"2f27c837.ae4c68","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id (port) not found in service-data\" />\n","comments":"","x":2893.529556274414,"y":1348.0174299776554,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"22ea8a6b.a17296","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3332.67209815979,"y":1256.6367355883121,"z":"b1d019b.6dbd8e8","wires":[["2c880b10.265824"]]},{"id":"bca2a06e.4f682","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3711.6741046905518,"y":1335.6374413073063,"z":"b1d019b.6dbd8e8","wires":[["960aea00.c2c228"]]},{"id":"960aea00.c2c228","type":"switchNode","name":"switch transportNetworkName","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.portvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].name == 'transportNetworkName'`\">\n","comments":"","outputs":1,"x":3929.6750202178955,"y":1333.6379295885563,"z":"b1d019b.6dbd8e8","wires":[["19a0a134.cbff5f"]]},{"id":"c82b1262.885e1","type":"set","name":"set tmp.portvidx ","xml":"<set>\n<parameter name='tmp.portvidx' value='`$arvidx`' />\n\n","comments":"","x":3656.671901702881,"y":1209.6369024813175,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"19a0a134.cbff5f","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":4126.675447463989,"y":1332.6380983889103,"z":"b1d019b.6dbd8e8","wires":[["27cac422.cfe53c"]]},{"id":"b05226c4.bd3a28","type":"set","name":"set prop.hub.transportNetworkName","xml":"<set>\n<parameter name='prop.hub.transportNetworkName' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.portvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value`' />\n","comments":"","x":4383.6772813797,"y":1532.2391153872013,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f4c45443.bb3768","type":"switchNode","name":"switch prop.hub.transportNetworkName==prop.spoke.transportNetworkName","xml":"<switch test=\"`$prop.hub.transportNetworkName == $prop.spoke.transportNetworkName`\">\n","comments":"","outputs":1,"x":2576.00821685791,"y":1492.3046661913395,"z":"b1d019b.6dbd8e8","wires":[["29701c33.546bc4","9d7af116.cbe09"]]},{"id":"29701c33.546bc4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2922.0077476501465,"y":1529.304740101099,"z":"b1d019b.6dbd8e8","wires":[["f21133c1.0bade"]]},{"id":"9d7af116.cbe09","type":"outcomeTrue","name":"false","xml":"<outcome value='false'>\n","comments":"","outputs":1,"x":2916.008556365967,"y":1466.3046003878117,"z":"b1d019b.6dbd8e8","wires":[["35e3a287.99da5e"]]},{"id":"35e3a287.99da5e","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3046.008743286133,"y":1466.3047529757023,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"a3874818.96b4a8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1891.0361328125,"y":970.8333088457584,"z":"b1d019b.6dbd8e8","wires":[["fafd1fed.9ce1b","252298c8.827288","de70a181.95e65","dbadbe13.1677b","8b5306cb.0a00b8"]]},{"id":"40faa7d6.f30958","type":"switchNode","name":"switch vpnId","xml":"<switch test=\"`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param[$paramidx].name == 'vpn-id'`\">\n","comments":"","outputs":1,"x":2109.005172729492,"y":729.6354338228703,"z":"b1d019b.6dbd8e8","wires":[["244fa8f2.0e98c8"]]},{"id":"244fa8f2.0e98c8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2253.005184173584,"y":729.6354748308659,"z":"b1d019b.6dbd8e8","wires":[["542e22e9.06eebc"]]},{"id":"542e22e9.06eebc","type":"set","name":"set prop.vpnId","xml":"<set>\n<parameter name='prop.vpnId' value='`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param[$paramidx].value`' />\n","comments":"","x":2411.0049057006836,"y":728.2354094088078,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"3945c5e7.6c14ea","type":"set","name":"Set prop.hubTnpId","xml":"<set>\n<parameter name='prop.hubTnpId' value='$prop.hub.wanPortId' />\n\n","comments":"","x":2628.3407135009766,"y":1765.636424690485,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"32aaac62.305534","type":"execute","name":"execute RestApiCallNode underlay route","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-underlay.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/routing-protocol/static/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"underlayHubResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":3449.34015083313,"y":2597.9708580076694,"z":"b1d019b.6dbd8e8","wires":[["89fb14c8.94ed18","c79239ca.a0f328"]]},{"id":"c79239ca.a0f328","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":3716.3400592803955,"y":2625.9708875715733,"z":"b1d019b.6dbd8e8","wires":[["3b45764d.017e4a"]]},{"id":"89fb14c8.94ed18","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3714.339738845825,"y":2581.97087803483,"z":"b1d019b.6dbd8e8","wires":[["a62325e4.8d0b68"]]},{"id":"d9e2a3b8.be3d7","type":"set","name":"Add prop.hub.route","xml":"<set>\n<parameter name='prop.route.id' value='`$prop.hubRouteId`' />\n<parameter name='prop.route.vpnId' value='`$prop.vpnId`' />\n<parameter name='prop.route.siteId' value='`$prop.hub.siteId`' />\n<parameter name='prop.route.deviceId' value='`$prop.hub.deviceId`' />\n<parameter name='prop.route.providerIpAddress' value='`$prop.hub.providerIpAddress`' />\n<parameter name='prop.route.wanportId' value='`$prop.spoke.wanPortId`' />\n<parameter name='prop.route.ipAddress' value='`$prop.hub.ipAddress`' />\n\n\n","comments":"","x":3393.6735305786133,"y":2554.6373659670353,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"b552a294.7e377","type":"execute","name":"execute RestApiCallNode underlay route","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-underlay.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/routing-protocol/static/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"underlayspokeResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":3468.6735305786133,"y":2696.637831121683,"z":"b1d019b.6dbd8e8","wires":[["a12e36eb.943458","ededbddd.7250a"]]},{"id":"ededbddd.7250a","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":3720.673677444458,"y":2725.6381277143955,"z":"b1d019b.6dbd8e8","wires":[["29ad144c.f2690c"]]},{"id":"a12e36eb.943458","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3718.6733570098877,"y":2681.6381181776524,"z":"b1d019b.6dbd8e8","wires":[["8c851f6f.caa55"]]},{"id":"92a20fbe.e0e62","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing sdwan spoke route underlay rest api\" />\n","comments":"","x":4008.6742248535156,"y":2675.6383101046085,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2be5604d.8b517","type":"switchNode","name":"switch ActivateSDWANDeviceInstance","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$arvidx].vnf-data.request-information.request-action == 'ActivateSDWANDeviceInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":3115.535987854004,"y":1291.833693176508,"z":"b1d019b.6dbd8e8","wires":[["46f77d85.1bbce4"]]},{"id":"75db0ba8.f32084","type":"switchNode","name":"switch tmp.devicevidx ","xml":"<switch test=\"`$tmp.devicevidx`\">\n\n","comments":"","outputs":1,"x":2583.5355377197266,"y":1384.4999252855778,"z":"b1d019b.6dbd8e8","wires":[["294637bf.dcbd08"]]},{"id":"294637bf.dcbd08","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":2749.9639739990234,"y":1384.0714584887028,"z":"b1d019b.6dbd8e8","wires":[["a4ca51de.1aa11"]]},{"id":"a4ca51de.1aa11","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id (device) not found in service-data\" />\n","comments":"","x":2890.392906188965,"y":1386.2144333422184,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"46f77d85.1bbce4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3343.535675048828,"y":1289.8336941301823,"z":"b1d019b.6dbd8e8","wires":[["b2e4dc18.108ae"]]},{"id":"b2e4dc18.108ae","type":"set","name":"set tmp.devicevidx ","xml":"<set>\n<parameter name='tmp.devicevidx' value='`$arvidx`' />\n\n","comments":"","x":3498.535358428955,"y":1289.833693176508,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"34da5cb3.ec0254","type":"switchNode","name":"switch ActivateSiteInstance","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$arvidx].vnf-data.request-information.request-action == 'ActivateSiteInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":3078.5360584259033,"y":1325.8337570726871,"z":"b1d019b.6dbd8e8","wires":[["1e8bb4ff.b8f57b"]]},{"id":"c3aa018f.4dc1a","type":"switchNode","name":"switch tmp.sitevidx ","xml":"<switch test=\"`$tmp.sitevidx`\">\n\n","comments":"","outputs":1,"x":2582.5354080200195,"y":1422.4998032152653,"z":"b1d019b.6dbd8e8","wires":[["1f12a8eb.1a8507"]]},{"id":"1f12a8eb.1a8507","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":2742.963872909546,"y":1422.0713230669498,"z":"b1d019b.6dbd8e8","wires":[["b92b68d7.8e4328"]]},{"id":"b92b68d7.8e4328","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id (site) not found in service-data\" />\n","comments":"","x":2891.392827987671,"y":1424.214329391718,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"1e8bb4ff.b8f57b","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3266.535623550415,"y":1325.8339230120182,"z":"b1d019b.6dbd8e8","wires":[["4cf0c35.9e60c3c"]]},{"id":"4cf0c35.9e60c3c","type":"set","name":"set tmp.sitevidx ","xml":"<set>\n<parameter name='tmp.sitevidx' value='`$arvidx`' />\n\n","comments":"","x":3421.535306930542,"y":1325.833922058344,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"6de714ed.d3061c","type":"for","name":"for loop deviceidx - Get wan port ID from servicedata","xml":"<for index=\"deviceidx\" start=\"0\" end=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.devicevidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2715.5372161865234,"y":1807.8342405855656,"z":"b1d019b.6dbd8e8","wires":[["3adcf839.875688"]]},{"id":"e169850b.ca2b98","type":"switchNode","name":"switch deviceId","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.devicevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$deviceidx].name == 'deviceId'`\">\n","comments":"","outputs":1,"x":3200.5384674072266,"y":1738.8350941240788,"z":"b1d019b.6dbd8e8","wires":[["7f1b4a03.77b0c4"]]},{"id":"7f1b4a03.77b0c4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3351.5388412475586,"y":1735.8353382647038,"z":"b1d019b.6dbd8e8","wires":[["8b5c9421.71a558"]]},{"id":"8b5c9421.71a558","type":"set","name":"set prop.hub.deviceId","xml":"<set>\n<parameter name='prop.hub.deviceId' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.devicevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$deviceidx].value`' />\n","comments":"","x":3526.539089202881,"y":1735.4358631670475,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"8506f90c.f30458","type":"for","name":"for loop siteidx - Get site ID from servicedata","xml":"<for index=\"siteidx\" start=\"0\" end=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2682.0370330810547,"y":1869.8342100679874,"z":"b1d019b.6dbd8e8","wires":[["ff9f298a.cca7f8"]]},{"id":"8d61be2.a51494","type":"comment","name":"Add route src->dst, dst->src","info":"","comments":"","x":3017.672622680664,"y":1886.6360289156437,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e5d1673d.e9dbe8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2127.338134765625,"y":1247.9687458574772,"z":"b1d019b.6dbd8e8","wires":[["3730c8a.de81d38","f4c45443.bb3768","3d7d87cf.2688a8","928e3eb0.849cd","e69efead.6b9ed","2aa6f09e.c6474"]]},{"id":"3d7d87cf.2688a8","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2382.337890625,"y":1384.3021198809147,"z":"b1d019b.6dbd8e8","wires":[["75db0ba8.f32084","c3aa018f.4dc1a","2f97be15.e601c2"]]},{"id":"f21133c1.0bade","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2402.3389282226562,"y":1756.6356417238712,"z":"b1d019b.6dbd8e8","wires":[["3945c5e7.6c14ea","6de714ed.d3061c","8506f90c.f30458","23a8e35f.4687ac","eb5f2e.bb7a50d"]]},{"id":"7877847f.fa07bc","type":"set","name":"Add prop.spoke.route","xml":"<set>\n<parameter name='prop.route.id' value='`$prop.spokeRouteId`' />\n<parameter name='prop.route.vpnId' value='`$prop.vpnId`' />\n<parameter name='prop.route.siteId' value='`$prop.spoke.siteId`' />\n<parameter name='prop.route.deviceId' value='`$prop.spoke.deviceId`' />\n<parameter name='prop.route.providerIpAddress' value='`$prop.spoke.providerIpAddress`' />\n<parameter name='prop.route.wanportId' value='`$prop.hub.wanPortId`' />\n<parameter name='prop.route.ipAddress' value='`$prop.spoke.ipAddress`' />\n\n\n\n\n","comments":"","x":3403.537546157837,"y":2665.3345922529697,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"3f81fe79.041ff2","type":"returnSuccess","name":"return success","xml":"<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n","comments":"","x":352.3382110595703,"y":1122.3343378603458,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"52b0eddb.8791b4","type":"execute","name":"generate connection attachment AR url ","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url-connection\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$prop.ar.allotted-resource-id`\"/>\n","comments":"","outputs":1,"x":1401.6711120605469,"y":184.3018356859684,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"532b1f7d.9c604","type":"execute","name":"execute RestApiCallNode - get-resource connection-attachment-allotted-resource","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url-connection`' />\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='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-ar\" />\n\n","comments":"","outputs":1,"x":1528.671142578125,"y":232.30182614922523,"z":"b1d019b.6dbd8e8","wires":[["61804941.42b278","17977b69.262195"]]},{"id":"1eb0dd45.2d88f3","type":"execute","name":"execute RestApiCallNode - get parent service data","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url-parent-connection`' />\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='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-psd\" />\n\n","comments":"","outputs":1,"x":1753.0052947998047,"y":566.3021399080753,"z":"b1d019b.6dbd8e8","wires":[["936de3e0.c6a2e","56dafc4a.8aaae4"]]},{"id":"4ecf397b.0a23f8","type":"execute","name":"generate connection attachment parent url ","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"/restconf/config/GENERIC-RESOURCE-API:services/service/{service-instance-id}/service-data\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url-parent-connection\"/>\n <parameter name=\"target\" value=\"{service-instance-id}\"/>\n <parameter name=\"replacement\" value=\"`$prop.parent-service-instance-id`\"/>\n","comments":"","outputs":1,"x":1730.0049438476562,"y":512.3020674288273,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"43c6b758.a87968","type":"comment","name":"full mesh do nothing","info":"","comments":"","x":1564.671745300293,"y":723.3021055757999,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"717df1f.c979e1","type":"comment","name":"hub-spoke","info":"","comments":"","x":2565.6711463928223,"y":820.3019954264164,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"252298c8.827288","type":"execute","name":"generate connection attachment AR url ","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url-connection\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$prop.ar.provided-allotted-resource-id`\"/>\n","comments":"","outputs":1,"x":2238.0042991638184,"y":971.3019906580448,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"de70a181.95e65","type":"execute","name":"execute RestApiCallNode - get-resource connection-attachment-allotted-resource","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url-connection`' />\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='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-providedAr\" />\n\n","comments":"","outputs":1,"x":2369.004379272461,"y":1010.9686204493046,"z":"b1d019b.6dbd8e8","wires":[["9f0875d3.47e2b8","807962c4.90f77"]]},{"id":"e69efead.6b9ed","type":"execute","name":"generate service data url","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"/restconf/config/GENERIC-RESOURCE-API:services/service/{service-instance-id}/service-data\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url-connection\"/>\n <parameter name=\"target\" value=\"{service-instance-id}\"/>\n <parameter name=\"replacement\" value=\"`$prop.ar-service-instance-id`\"/>\n","comments":"","outputs":1,"x":2419.508274078369,"y":1212.3058907091618,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"2aa6f09e.c6474","type":"execute","name":"execute RestApiCallNode - get service data of allotted resource","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url-connection`' />\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='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-arsd\" />\n\n","comments":"","outputs":1,"x":2535.5084075927734,"y":1249.3057819902897,"z":"b1d019b.6dbd8e8","wires":[["6d9b82e0.ee0e5c","1f5ff987.3fd166"]]},{"id":"5d1cf617.14b6b8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2299.5039710998535,"y":1134.8018547594547,"z":"b1d019b.6dbd8e8","wires":[["e5d1673d.e9dbe8"]]},{"id":"dcf9daa3.e54cc8","type":"outcomeFalse","name":"false","xml":"<outcome value='false'>\n","comments":"","outputs":1,"x":2305.504219055176,"y":1091.801946312189,"z":"b1d019b.6dbd8e8","wires":[["9271766e.fe0c48"]]},{"id":"5b3adfc2.d795f","type":"for","name":"for loop roleidx - Get role from allotted resource","xml":"<for index=\"roleidx\" start=\"0\" end=\"`$mdsal-ar.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param_length`\">\n \n \n","comments":"","outputs":1,"x":2880.5047760009766,"y":239.3017717897892,"z":"b1d019b.6dbd8e8","wires":[["a590c534.c72538"]]},{"id":"a590c534.c72538","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3139.5050888061523,"y":238.30208745598793,"z":"b1d019b.6dbd8e8","wires":[["24fabbc8.4ee6a4"]]},{"id":"24fabbc8.4ee6a4","type":"switchNode","name":"switch Role","xml":"<switch test=\"`$mdsal-ar.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$roleidx].name == 'role'`\">\n","comments":"","outputs":1,"x":3288.505100250244,"y":239.30192437767982,"z":"b1d019b.6dbd8e8","wires":[["13c03783.386d28"]]},{"id":"f7ff32b9.16d69","type":"set","name":"set prop.spoke.role","xml":"<set>\n<parameter name='prop.spoke.role' value='`$mdsal-ar.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$roleidx].value`' />\n","comments":"","x":3593.505661010742,"y":236.90183225274086,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"13c03783.386d28","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3424.00492477417,"y":236.30176416039467,"z":"b1d019b.6dbd8e8","wires":[["f7ff32b9.16d69"]]},{"id":"30347a07.26c8f6","type":"switchNode","name":"switch spoke","xml":"<switch test=\"`$prop.spoke.role == 'spoke'`\">\n","comments":"","outputs":1,"x":1316.004280090332,"y":383.30169931054115,"z":"b1d019b.6dbd8e8","wires":[["2d380018.3e87c"]]},{"id":"2d380018.3e87c","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1457.004035949707,"y":384.3017365038395,"z":"b1d019b.6dbd8e8","wires":[["1b9dfff3.6a8e9"]]},{"id":"356b426.2684ebe","type":"for","name":"for i.. service-data.vnfs.vnf_length[]","xml":"<for index='i' start='0' end='`$service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":1729.5045623779297,"y":438.3017317354679,"z":"b1d019b.6dbd8e8","wires":[["bfdedc49.050ca"]]},{"id":"bfdedc49.050ca","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2063.170753479004,"y":382.3016621172428,"z":"b1d019b.6dbd8e8","wires":[["fd950685.06ac48","2d8b9375.2ddaac","257f4a9c.1ed446"]]},{"id":"fd950685.06ac48","type":"switchNode","name":"switch ActivateSDWANPortInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.request-information.request-action == 'ActivateSDWANPortInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":2334.1707916259766,"y":328.3025485575199,"z":"b1d019b.6dbd8e8","wires":[["fc67008d.091db"]]},{"id":"fc67008d.091db","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2547.170555114746,"y":329.30255141854286,"z":"b1d019b.6dbd8e8","wires":[["1a445db7.1fd752"]]},{"id":"1a445db7.1fd752","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2696.0042991638184,"y":331.3017407953739,"z":"b1d019b.6dbd8e8","wires":[["3c007d2e.edc602"]]},{"id":"3c007d2e.edc602","type":"for","name":"for loop widx - Get wan port ID from servicedata","xml":"<for index=\"widx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2969.004249572754,"y":329.66895881295204,"z":"b1d019b.6dbd8e8","wires":[["f1345e2.c9f7ea"]]},{"id":"f1345e2.c9f7ea","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3238.0051765441895,"y":328.6692048609257,"z":"b1d019b.6dbd8e8","wires":[["ba5679ba.3ede18","3e5320cd.89f1e","efdc38fc.1f5628","8e38557b.879d28"]]},{"id":"ba5679ba.3ede18","type":"switchNode","name":"switch transportNetworkName","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].name == 'transportNetworkName'`\">\n","comments":"","outputs":1,"x":3481.0062103271484,"y":283.66977801918983,"z":"b1d019b.6dbd8e8","wires":[["8f69b44d.c2f088"]]},{"id":"8f69b44d.c2f088","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3681.0059852600098,"y":283.6699401438236,"z":"b1d019b.6dbd8e8","wires":[["a5483223.dc4b1"]]},{"id":"a5483223.dc4b1","type":"set","name":"set prop.spoke.transportNetworkName","xml":"<set>\n<parameter name='prop.spoke.transportNetworkName' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].value`' />\n","comments":"","x":3908.006721496582,"y":285.27052226662636,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"1b9dfff3.6a8e9","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1209.9733276367188,"y":694.270647674799,"z":"b1d019b.6dbd8e8","wires":[["356b426.2684ebe","4ecf397b.0a23f8","1eb0dd45.2d88f3","a13ee754.9515f8","dd934675.d4e888","de9858f.b81a8a8","88c5e553.ee7048","2e975a9d.1a4246"]]},{"id":"2d8b9375.2ddaac","type":"switchNode","name":"switch ActivateSDWANDeviceInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.request-information.request-action == 'ActivateSDWANDeviceInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":2326.5042266845703,"y":402.30175319314003,"z":"b1d019b.6dbd8e8","wires":[["74821dd.148afe4"]]},{"id":"74821dd.148afe4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2545.5039768218994,"y":403.30173793435097,"z":"b1d019b.6dbd8e8","wires":[["c6b3d98e.b714c8"]]},{"id":"c6b3d98e.b714c8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2696.3379669189453,"y":409.30092921853065,"z":"b1d019b.6dbd8e8","wires":[["57f2bdad.e02274"]]},{"id":"57f2bdad.e02274","type":"for","name":"for loop didx - Get device ID from servicedata","xml":"<for index=\"didx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2955.338218688965,"y":411.6682244837284,"z":"b1d019b.6dbd8e8","wires":[["ca5f7c6e.be6de"]]},{"id":"ca5f7c6e.be6de","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3241.338726043701,"y":444.6684094965458,"z":"b1d019b.6dbd8e8","wires":[["a11b64a3.1c2778"]]},{"id":"a11b64a3.1c2778","type":"switchNode","name":"switch deviceId","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$didx].name == 'deviceId'`\">\n","comments":"","outputs":1,"x":3424.3396377563477,"y":444.6690198481083,"z":"b1d019b.6dbd8e8","wires":[["b3a0e9d7.649ff8"]]},{"id":"b3a0e9d7.649ff8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3624.339412689209,"y":444.6691819727421,"z":"b1d019b.6dbd8e8","wires":[["a6327912.f3f9d8"]]},{"id":"a6327912.f3f9d8","type":"set","name":"set prop.spoke.deviceId","xml":"<set>\n<parameter name='prop.spoke.deviceId' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$didx].value`' />\n","comments":"","x":3819.3400955200195,"y":441.2697631418705,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"257f4a9c.1ed446","type":"switchNode","name":"switch ActivateSiteInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.request-information.request-action == 'ActivateSiteInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":2305.5043411254883,"y":463.30178466439247,"z":"b1d019b.6dbd8e8","wires":[["9ba2d06.8f6be3"]]},{"id":"9ba2d06.8f6be3","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2539.503978729248,"y":464.30172458291054,"z":"b1d019b.6dbd8e8","wires":[["a15d8c7c.78012"]]},{"id":"a15d8c7c.78012","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2691.3379669189453,"y":486.3009606897831,"z":"b1d019b.6dbd8e8","wires":[["44322235.a2372c","d545295b.570bb8"]]},{"id":"44322235.a2372c","type":"for","name":"for loop widx - Get wan site ID from servicedata","xml":"<for index=\"sidx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2972.3377990722656,"y":485.66816344857216,"z":"b1d019b.6dbd8e8","wires":[["e3395281.b0fe4"]]},{"id":"e3395281.b0fe4","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3241.338726043701,"y":484.6684094965458,"z":"b1d019b.6dbd8e8","wires":[["2466c56a.c4304a","fe259139.fb262","9b298a8b.b4f888"]]},{"id":"2466c56a.c4304a","type":"switchNode","name":"switch siteId","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].name == 'siteId'`\">\n","comments":"","outputs":1,"x":3430.33992767334,"y":534.6690813601017,"z":"b1d019b.6dbd8e8","wires":[["8bd2628f.d7e06"]]},{"id":"8bd2628f.d7e06","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3630.3394050598145,"y":522.6691958010197,"z":"b1d019b.6dbd8e8","wires":[["4379d5c4.4bf5fc"]]},{"id":"4379d5c4.4bf5fc","type":"set","name":"set prop.spoke.siteId","xml":"<set>\n<parameter name='prop.spoke.siteId' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].value`' />\n","comments":"","x":3823.340358734131,"y":529.2698260843754,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"3e5320cd.89f1e","type":"switchNode","name":"switch wanPortId","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].name == 'wanPortId'`\">\n","comments":"","outputs":1,"x":3454.50390625,"y":320.3018342554569,"z":"b1d019b.6dbd8e8","wires":[["42e60a6a.aa3574"]]},{"id":"42e60a6a.aa3574","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3684.5039100646973,"y":320.30194583535194,"z":"b1d019b.6dbd8e8","wires":[["ae0a5d97.a78e5"]]},{"id":"ae0a5d97.a78e5","type":"set","name":"set prop.spoke.wanPortId","xml":"<set>\n<parameter name='prop.spoke.wanPortId' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].value`' />\n","comments":"","x":3911.5046463012695,"y":321.9025279581547,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"efdc38fc.1f5628","type":"switchNode","name":"switch providerIpAddress","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].name == 'providerIpAddress'`\">\n","comments":"","outputs":1,"x":3472.504066467285,"y":364.30178466439247,"z":"b1d019b.6dbd8e8","wires":[["ac0b6cb5.77b59"]]},{"id":"ac0b6cb5.77b59","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3672.5038414001465,"y":364.30194678902626,"z":"b1d019b.6dbd8e8","wires":[["f9d16c81.a3a79"]]},{"id":"f9d16c81.a3a79","type":"set","name":"set prop.spoke.providerIpAddress","xml":"<set>\n<parameter name='prop.spoke.providerIpAddress' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].value`' />\n","comments":"","x":3899.5045776367188,"y":365.902528911829,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"8e38557b.879d28","type":"switchNode","name":"switch ipAddress","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].name == 'ipAddress'`\">\n","comments":"","outputs":1,"x":3452.503894805908,"y":403.3018209040165,"z":"b1d019b.6dbd8e8","wires":[["3e49c027.9158a"]]},{"id":"3e49c027.9158a","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3676.5037231445312,"y":403.3019382059574,"z":"b1d019b.6dbd8e8","wires":[["63fb7b99.9c4f54"]]},{"id":"63fb7b99.9c4f54","type":"set","name":"set prop.spoke.ipAddress","xml":"<set>\n<parameter name='prop.spoke.ipAddress' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].value`' />\n","comments":"","x":3903.5044593811035,"y":404.90252032876015,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"95ab5318.2e5c4","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1020.0038070678711,"y":262.50004068017006,"z":"b1d019b.6dbd8e8","wires":[["8881f8e.5bc9208","52b0eddb.8791b4","532b1f7d.9c604","30347a07.26c8f6"]]},{"id":"6dbd8249.403ccc","type":"comment","name":"get spoke device,site,wanport info","info":"","comments":"","x":1776.97265625,"y":385.9687458574772,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"6c52be5d.b4d02","type":"comment","name":"Add routes only on activation of spoke Attach site","info":"","comments":"","x":1437.5038223266602,"y":329.0000597536564,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"ac54d054.7cd81","type":"comment","name":"Loop for all the hub allotted resources, get respective service data and get vnfs info","info":"","comments":"","x":2193.50390625,"y":824.5000559389591,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"ff9f298a.cca7f8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2957.5037384033203,"y":1845.000134140253,"z":"b1d019b.6dbd8e8","wires":[["d59362d2.ef947","b082a709.11f708"]]},{"id":"3adcf839.875688","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3024.5037384033203,"y":1741.000010162592,"z":"b1d019b.6dbd8e8","wires":[["e169850b.ca2b98"]]},{"id":"d59362d2.ef947","type":"switchNode","name":"switch siteId","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$siteidx].name == 'siteId'`\">\n","comments":"","outputs":1,"x":3134.503547668457,"y":1816.9998003542423,"z":"b1d019b.6dbd8e8","wires":[["6377b71d.78eda8"]]},{"id":"6377b71d.78eda8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3285.503917694092,"y":1815.999983459711,"z":"b1d019b.6dbd8e8","wires":[["d846e28e.6f3b8"]]},{"id":"d846e28e.6f3b8","type":"set","name":"set prop.hub.siteId","xml":"<set>\n<parameter name='prop.hub.siteId' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$siteidx].value`' />\n","comments":"","x":3457.5039253234863,"y":1813.6005522310734,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"23a8e35f.4687ac","type":"switchNode","name":"switch request-action","xml":"<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n","comments":"","outputs":1,"x":2611.0036544799805,"y":2169.000444084406,"z":"b1d019b.6dbd8e8","wires":[["98e33ddb.b0dca","c2b4abbd.4bca28"]]},{"id":"98e33ddb.b0dca","type":"outcome","name":"ActivateSDWANAttachmentInstance","xml":"<outcome value='ActivateSDWANAttachmentInstance'>","comments":"","outputs":1,"x":2881.0310592651367,"y":1980.0314766466618,"z":"b1d019b.6dbd8e8","wires":[["6bb4758a.3f2dbc"]]},{"id":"d343e9eb.f9d438","type":"execute","name":"execute RestApiCallNode underlay route","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-underlay.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/routing-protocol/static'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"underlayHubResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":3469.504180908203,"y":1950.0004482269287,"z":"b1d019b.6dbd8e8","wires":[["6e0b715b.cb6d1","1b5945c5.1fa10a"]]},{"id":"1b5945c5.1fa10a","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":3716.504009246826,"y":1929.000280380249,"z":"b1d019b.6dbd8e8","wires":[["2019f4f3.e1c6cc"]]},{"id":"6e0b715b.cb6d1","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3714.503688812256,"y":1885.0002708435059,"z":"b1d019b.6dbd8e8","wires":[["76b9bae0.83f2b4"]]},{"id":"df42caf7.594ce8","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing sdwan hub route underlay rest api\" />\n","comments":"","x":4002.505043029785,"y":1884.0006313323975,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"543ffebe.107f8","type":"set","name":"Add prop.hub.route","xml":"<set>\n<parameter name='prop.route.vpnId' value='`$prop.vpnId`' />\n<parameter name='prop.route.siteId' value='`$prop.hub.siteId`' />\n<parameter name='prop.route.deviceId' value='`$prop.hub.deviceId`' />\n<parameter name='prop.route.providerIpAddress' value='`$prop.hub.providerIpAddress`' />\n<parameter name='prop.route.wanportId' value='`$prop.spoke.wanPortId`' />\n<parameter name='prop.route.ipAddress' value='`$prop.hub.ipAddress`' />\n\n\n","comments":"","x":3404.8377838134766,"y":1920.6669883728027,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2e8b8d76.b2d882","type":"execute","name":"execute RestApiCallNode underlay route","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-underlay.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/routing-protocol/static'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"underlayspokeResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":3486.838050842285,"y":2114.667499214411,"z":"b1d019b.6dbd8e8","wires":[["9396f713.11f4f8","348aaf89.0950a"]]},{"id":"348aaf89.0950a","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":3731.8382873535156,"y":2140.667496204376,"z":"b1d019b.6dbd8e8","wires":[["928f88f0.d6ee18"]]},{"id":"9396f713.11f4f8","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3729.8379669189453,"y":2096.667486667633,"z":"b1d019b.6dbd8e8","wires":[["58d448af.a07fd8"]]},{"id":"38cd6644.9bd7ea","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing sdwan spoke route underlay rest api\" />\n","comments":"","x":4019.8393936157227,"y":2089.6679944992065,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"b2b73fd8.a499a","type":"set","name":"Add prop.spoke.route","xml":"<set>\n<parameter name='prop.route.vpnId' value='`$prop.vpnId`' />\n<parameter name='prop.route.siteId' value='`$prop.spoke.siteId`' />\n<parameter name='prop.route.deviceId' value='`$prop.spoke.deviceId`' />\n<parameter name='prop.route.providerIpAddress' value='`$prop.spoke.providerIpAddress`' />\n<parameter name='prop.route.wanportId' value='`$prop.hub.wanPortId`' /> \n<parameter name='prop.route.ipAddress' value='`$prop.spoke.ipAddress`' />\n\n\n","comments":"","x":3427.7019233703613,"y":2077.3642114698887,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f670e4e2.ed4a18","type":"set","name":"set prop.underlay.routeIds","xml":"<set>\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].hubSiteId' value='`$prop.hub.siteId`' />\n<!--parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].spokeSiteId' value='`$prop.spoke.siteId`' /-->\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].hubRouteId' value='`$underlayHubResp.success[0].id`' />\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].spokeRouteId' value='`$underlayspokeResp.success[0].id`' />\n\n\n\n","comments":"","x":3437.669448852539,"y":2237.0309874117374,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"6bb4758a.3f2dbc","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3117.003578186035,"y":1977.4999100267887,"z":"b1d019b.6dbd8e8","wires":[["543ffebe.107f8","b2b73fd8.a499a","f670e4e2.ed4a18","2e8b8d76.b2d882","d343e9eb.f9d438","154b4cb.99625b3","497ef4.1532d10c","7ece27e0.0e9908","aeaf4169.ad4e1","7b6ea599.d556bc"]]},{"id":"cda2bd2c.f7f2b","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3149.0036811828613,"y":2619.500260025263,"z":"b1d019b.6dbd8e8","wires":[["d9e2a3b8.be3d7","7877847f.fa07bc","32aaac62.305534","b552a294.7e377","4d9ba6d6.4948a8","5011194.82bcce8","aa5933c2.13ab"]]},{"id":"c2b4abbd.4bca28","type":"outcome","name":"DeactivateSDWANAttachmentInstance","xml":"<outcome value='DeactivateSDWANAttachmentInstance'>","comments":"","outputs":1,"x":2897.5037384033203,"y":2613.500071197748,"z":"b1d019b.6dbd8e8","wires":[["cda2bd2c.f7f2b"]]},{"id":"497ef4.1532d10c","type":"set","name":"Add sites to list and update length","xml":"<set>\n<parameter name='prop.provision.siteIds[$prop.provision.siteIds_length].hubSiteName' value='`$prop.hub.siteName`' />\n<parameter name='prop.provision.siteIds[$prop.provision.siteIds_length].hubSiteId' value='`$prop.hub.siteId`' />\n<parameter name='prop.provision.siteIds[$prop.provision.siteIds_length].spokeSiteName' value='`$prop.spoke.siteName`' />\n<parameter name='prop.provision.siteIds[$prop.provision.siteIds_length].spokeSiteId' value='`$prop.spoke.siteId`' />\n\n\n\n\n\n\n\n\n\n\n\n\n\n","comments":"","x":3442.0357360839844,"y":2362.0318676531315,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"536b45e5.f1ae4c","type":"comment","name":"save hubsiteIds and spoke siteIds for provision","info":"","comments":"","x":3474.0361099243164,"y":2318.0317417681217,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"fe259139.fb262","type":"switchNode","name":"switch name","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].name == 'name'`\">\n","comments":"","outputs":1,"x":3431.034912109375,"y":484.03124871850014,"z":"b1d019b.6dbd8e8","wires":[["1eff9aea.08d565"]]},{"id":"1eff9aea.08d565","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3631.0346870422363,"y":484.0314108431339,"z":"b1d019b.6dbd8e8","wires":[["498b6b56.a99af4"]]},{"id":"498b6b56.a99af4","type":"set","name":"set prop.spoke.siteName","xml":"<set>\n<parameter name='prop.spoke.siteName' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].value`' />\n","comments":"","x":3819.0354919433594,"y":482.6320244371891,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"b082a709.11f708","type":"switchNode","name":"switch name","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$siteidx].name == 'name'`\">\n","comments":"","outputs":1,"x":3133.0349349975586,"y":1783.5311075747013,"z":"b1d019b.6dbd8e8","wires":[["66b911d8.08a74"]]},{"id":"66b911d8.08a74","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3284.0353050231934,"y":1782.53129068017,"z":"b1d019b.6dbd8e8","wires":[["e9fd7b0e.9d3c98"]]},{"id":"e9fd7b0e.9d3c98","type":"set","name":"set prop.hub.siteName","xml":"<set>\n<parameter name='prop.hub.siteName' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$siteidx].value`' />\n","comments":"","x":3456.035312652588,"y":1780.1318594515324,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f5abf897.1c94a8","type":"set","name":"set prop.provision.siteIds_length=0","xml":"<set>\n<parameter name='prop.provision.siteIds_length' value='0' />\n\n\n\n","comments":"","x":456.03517150878906,"y":370.0312534868717,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"487dcb6d.a39b04","type":"execute","name":"execute RestApiCallNode site provision urls","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-site-provision.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/sites/provision-urls'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"provisionUrlRsp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":796.0352783203125,"y":786.031494140625,"z":"b1d019b.6dbd8e8","wires":[["ffc902c4.10ca6","e8f294ed.ea5b38"]]},{"id":"e8f294ed.ea5b38","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1051.0354766845703,"y":821.0315399169922,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"ffc902c4.10ca6","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1047.0352783203125,"y":748.0314774513245,"z":"b1d019b.6dbd8e8","wires":[["f3276258.b0845"]]},{"id":"f3276258.b0845","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing provision url rest api\" />\n","comments":"","x":1218.0357704162598,"y":779.0314909517765,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e484905a.ff144","type":"for","name":"for providx..prop.provision.siteIds[]","xml":"<for index='providx' start='0' end='`$prop.provision.siteIds_length`' >\n","comments":"","outputs":1,"x":449.0352020263672,"y":574.031293541193,"z":"b1d019b.6dbd8e8","wires":[["632e756e.6e9b1c"]]},{"id":"632e756e.6e9b1c","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":473.0352439880371,"y":784.0312668383121,"z":"b1d019b.6dbd8e8","wires":[["2e3f9820.f1c8a8","487dcb6d.a39b04","b564c84.911a938"]]},{"id":"2e3f9820.f1c8a8","type":"set","name":"set prop.spoke.hubSiteId, spokeSiteId","xml":"<set>\n<parameter name='prop.provision.hubSitename' value='`$prop.provision.siteIds[$providx].hubSiteName`' />\n<parameter name='prop.provision.spokeSitename' value='`$prop.provision.siteIds[$providx].spokeSiteName`' />\n<parameter name='prop.provision.hubspokesite[0]' value='`$prop.provision.siteIds[$providx].hubSiteId`' />\n<parameter name='prop.provision.hubspokesite[1]' value='`$prop.provision.siteIds[$providx].spokeSiteId`' />\n<parameter name='prop.provision.hubspokesite_length' value='2' />\n","comments":"","x":779.0379333496094,"y":736.6330394744873,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"b564c84.911a938","type":"record","name":"record provision url response to the file","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"`'/opt/opendaylight/current/data/log/' + 'HUB-' + $prop.provision.hubSitename + '-SPOKE-' + $prop.provision.spokeSitename + '-provisionUrl'`\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value='`$provisionUrlRsp.success[0].url`'/>\n\n","comments":"","outputs":1,"x":785.0353393554688,"y":835.0314025878906,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"35d495b.f10696a","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2522.035388946533,"y":1051.0313250124454,"z":"b1d019b.6dbd8e8","wires":[["2ab4ecb3.a0e7b4"]]},{"id":"684cbe0.d0ae544","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2002.0350646972656,"y":614.0313078463078,"z":"b1d019b.6dbd8e8","wires":[["9bdd2027.61dcf"]]},{"id":"8db55ac9.a24998","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1946.0352325439453,"y":705.0312162935734,"z":"b1d019b.6dbd8e8","wires":[["62066499.8552ec","40faa7d6.f30958"]]},{"id":"154b4cb.99625b3","type":"set","name":"set prop.underlay.routeIds_length++","xml":"<set>\n<parameter name='prop.underlay.routeIds_length' value='`$prop.underlay.routeIds_length + 1`' />\n\n\n\n\n","comments":"","x":3467.0050659179688,"y":2273.250064522028,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"7ece27e0.0e9908","type":"set","name":"Update prop.provision.siteIds_length","xml":"<set>\n<parameter name='prop.provision.siteIds_length' value='`$prop.provision.siteIds_length + 1`' />\n\n\n\n\n\n\n\n\n\n\n\n\n","comments":"","x":3450.5048065185547,"y":2397.2501598894596,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"d545295b.570bb8","type":"set","name":"set prop.spoke.siteidx","xml":"<set>\n<parameter name='prop.spoke.siteidx' value='`$i`' />\n\n","comments":"","x":2890.7540969848633,"y":450.00002732872963,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f0e8f4fb.c20608","type":"set","name":"set underlay route ids to service data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].name' value=\"underlayRouteIds\" />\n<parameter name='service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].value' value='`$tmp.routeString`' />\n\n\n","comments":"","x":1913.0045471191406,"y":1937.0003973543644,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e2e0c9ba.1ae298","type":"set","name":"set prop.underlay.routeIds_length=0","xml":"<set>\n<parameter name='prop.underlay.routeIds_length' value='0' />\n\n\n\n","comments":"","x":461.0000305175781,"y":321.99611154198647,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"4d9ba6d6.4948a8","type":"for","name":"for loop uidx - Get route Id from prop.underlay.routeIds","xml":"<for index=\"uidx\" start=\"0\" end=\"`$prop.underlay.routeIds_length`\">\n \n \n","comments":"","outputs":1,"x":3504.6669387817383,"y":2492.3294989168644,"z":"b1d019b.6dbd8e8","wires":[["b779a699.2b9d28"]]},{"id":"b779a699.2b9d28","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3796.3336334228516,"y":2492.3294989168644,"z":"b1d019b.6dbd8e8","wires":[["a219586f.d987c8"]]},{"id":"a219586f.d987c8","type":"switchNode","name":"switch prop.hub.siteId","xml":"<switch test=\"`$prop.underlay.routeIds[$uidx].hubSiteId == $prop.hub.siteId`\">\n","comments":"","outputs":1,"x":3985.3336486816406,"y":2492.3296619951725,"z":"b1d019b.6dbd8e8","wires":[["55260cd6.1fda94"]]},{"id":"55260cd6.1fda94","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":4156.333084106445,"y":2492.329661041498,"z":"b1d019b.6dbd8e8","wires":[["7c71da62.bde474"]]},{"id":"7c71da62.bde474","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":4310.333084106445,"y":2496.3296686708927,"z":"b1d019b.6dbd8e8","wires":[["ddeb2690.5c2138"]]},{"id":"ddeb2690.5c2138","type":"set","name":"set prop.hubRouteId prop.spokeRouteId","xml":"<set>\n<parameter name='prop.hubRouteId' value='`$prop.underlay.routeIds[$uidx].hubRouteId`' />\n<parameter name='prop.spokeRouteId' value='`$prop.underlay.routeIds[$uidx].spokeRouteId`' />\n","comments":"","x":4396.33309173584,"y":2568.32967248559,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"9b298a8b.b4f888","type":"switchNode","name":"switch underlayRouteIds","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].name == 'underlayRouteIds'`\">\n","comments":"","outputs":1,"x":3436,"y":588.6627184450626,"z":"b1d019b.6dbd8e8","wires":[["3be394fa.ba925c"]]},{"id":"3be394fa.ba925c","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3635.9994773864746,"y":576.6628328859806,"z":"b1d019b.6dbd8e8","wires":[["9920e23b.cd7d6"]]},{"id":"b59167a6.831738","type":"set","name":"set prop.underlay.routeIds","xml":"<set>\n<parameter name='prop.underlay.routeIdsString' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].value`' />\n","comments":"","x":4007.000877380371,"y":576.2635428011417,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2e975a9d.1a4246","type":"switchNode","name":"switch request-action","xml":"<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n","comments":"","outputs":1,"x":1123.0002899169922,"y":2028.329627662897,"z":"b1d019b.6dbd8e8","wires":[["50fd57d3.4e6908","75c971c8.2ade9"]]},{"id":"50fd57d3.4e6908","type":"outcome","name":"ActivateSDWANAttachmentInstance","xml":"<outcome value='ActivateSDWANAttachmentInstance'>","comments":"","outputs":1,"x":1387.0003356933594,"y":1983.3296248018742,"z":"b1d019b.6dbd8e8","wires":[["392209cf.5e8ed6"]]},{"id":"392209cf.5e8ed6","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1628.9728469848633,"y":1979.7983757555485,"z":"b1d019b.6dbd8e8","wires":[["f0e8f4fb.c20608","c79bd758.d1a228","c32378d4.836d48","ec775956.c66808"]]},{"id":"c8905137.4ae61","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1632.9728355407715,"y":2063.7985445559025,"z":"b1d019b.6dbd8e8","wires":[["b63c926.b7d007"]]},{"id":"75c971c8.2ade9","type":"outcome","name":"DeactivateSDWANAttachmentInstance","xml":"<outcome value='DeactivateSDWANAttachmentInstance'>","comments":"","outputs":1,"x":1384.4729766845703,"y":2065.7983814775944,"z":"b1d019b.6dbd8e8","wires":[["c8905137.4ae61"]]},{"id":"b63c926.b7d007","type":"set","name":"set input parameter length -1","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length' value='`$service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length - 1`' />\n\n\n\n\n","comments":"","x":1861.6665344238281,"y":2062.32963052392,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"ada095aa.2b5138","type":"comment","name":"Get route routes IDs","info":"","comments":"","x":3404.3334045410156,"y":2453.6627356112003,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"c79bd758.d1a228","type":"set","name":"set underlay route ids to service data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length' value='`$service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length + 1`' />\n\n\n\n\n","comments":"","x":1902.333480834961,"y":2011.6626717150211,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"c32378d4.836d48","type":"for","name":"for jidx paramidx - Get topology from servicedata","xml":"<for index=\"jidx\" start=\"0\" end=\"`$prop.underlay.routeIds_length`\">\n \n \n","comments":"","outputs":1,"x":1991.3334045410156,"y":1558.329443603754,"z":"b1d019b.6dbd8e8","wires":[["59aabb37.7454e4"]]},{"id":"81edad0c.4f5ac","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.concat`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat1\"/>\n <parameter name=\"target\" value='`$prop.underlay.routeIds[$jidx].hubRouteId`'/>\n\n\n","comments":"","outputs":1,"x":2175.333740234375,"y":1691.996646553278,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"7fab8278.4c656c","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$prop.underlay.routeIds[$jidx].hubSiteId`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat\"/>\n <parameter name=\"target\" value=\",\"/>\n\n\n","comments":"","outputs":1,"x":2185.3337326049805,"y":1644.662984520197,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"59aabb37.7454e4","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1898.333423614502,"y":1743.662773758173,"z":"b1d019b.6dbd8e8","wires":[["7fab8278.4c656c","81edad0c.4f5ac","bd7613d0.c6069","cafff242.d3dff","2fe3b3bd.2bc2ac","6f5dac0d.df1414"]]},{"id":"bd7613d0.c6069","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.concat1`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat2\"/>\n <parameter name=\"target\" value=\",\"/>\n\n\n","comments":"","outputs":1,"x":2182.3334426879883,"y":1731.6628777086735,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"cafff242.d3dff","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.concat2`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat3\"/>\n <parameter name=\"target\" value='`$prop.underlay.routeIds[$jidx].spokeRouteId`'/>\n\n\n","comments":"","outputs":1,"x":2182.3334426879883,"y":1767.6628777086735,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"2fe3b3bd.2bc2ac","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.concat3`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat4\"/>\n <parameter name=\"target\" value=\" | \"/>\n\n\n","comments":"","outputs":1,"x":2175.3334426879883,"y":1807.996251732111,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"6f5dac0d.df1414","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.routeString`'/>\n <parameter name=\"outputPath\" value=\"tmp.routeString\"/>\n <parameter name=\"target\" value='`$tmp.concat4`'/>\n\n\n","comments":"","outputs":1,"x":2178.333381652832,"y":1862.6627909243107,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"ec775956.c66808","type":"set","name":"Set tmp.routeString","xml":"<set>\n<parameter name='tmp.routeString' value=\"\" />\n\n","comments":"","x":1895.3334045410156,"y":1499.6627747118473,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"9920e23b.cd7d6","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3784.0002250671387,"y":622.9961306154728,"z":"b1d019b.6dbd8e8","wires":[["b59167a6.831738","c00c7b4.2e5c088"]]},{"id":"c00c7b4.2e5c088","type":"execute","name":"execute split |","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$prop.underlay.routeIdsString`'/>\n<parameter name=\"regex\" value=\" | \"/>\n<parameter name=\"ctx_memory_result_key\" value=\"prop.underlay.routeIdsValue\"/>\n","comments":"","outputs":1,"x":3962.0002365112305,"y":642.9961306154728,"z":"b1d019b.6dbd8e8","wires":[["d71d5ee6.5fb61","71f30ffd.74297"]]},{"id":"71f30ffd.74297","type":"failure","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":4139.0002517700195,"y":623.9961296617985,"z":"b1d019b.6dbd8e8","wires":[["5a3e2b9e.9c82d4"]]},{"id":"d71d5ee6.5fb61","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":4128.0002517700195,"y":671.9961315691471,"z":"b1d019b.6dbd8e8","wires":[["e2b81ef4.58103"]]},{"id":"3ae500a3.3e9bf","type":"set","name":"set ipAddress prefixLength","xml":"<set>\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].hubSiteId' value='`$prop.underlay.routeIdsValues[0]`' />\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].hubRouteId' value='`$prop.underlay.routeIdsValues[1]`' />\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].spokeRouteId' value='`$prop.underlay.routeIdsValues[2]`' />","comments":"","x":5325.001117706299,"y":557.9963718950748,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e2b81ef4.58103","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":4258.000255584717,"y":671.9961315691471,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"5a3e2b9e.9c82d4","type":"for","name":"for loop ridx ","xml":"<for index=\"ridx\" start=\"0\" end=\"`$prop.underlay.routeIdsValue_length`\">\n \n \n","comments":"","outputs":1,"x":4284.999938964844,"y":621.9961296617985,"z":"b1d019b.6dbd8e8","wires":[["51bc75fb.70c9ec"]]},{"id":"51bc75fb.70c9ec","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":4463.332950592041,"y":618.9961306154728,"z":"b1d019b.6dbd8e8","wires":[["96fd714e.32a33"]]},{"id":"96fd714e.32a33","type":"execute","name":"execute split ,","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$prop.underlay.routeIdsValue[$ridx]`'/>\n<parameter name=\"regex\" value=\",\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"prop.underlay.routeIdsValues\"/>\n","comments":"","outputs":1,"x":4638.332962036133,"y":617.9961287081242,"z":"b1d019b.6dbd8e8","wires":[["1c090ebd.4b1411","d83771e1.cb93f"]]},{"id":"1c090ebd.4b1411","type":"failure","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":4795.33296585083,"y":594.9961363375187,"z":"b1d019b.6dbd8e8","wires":[["669de5ac.6729ac"]]},{"id":"d83771e1.cb93f","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":4784.33296585083,"y":642.9961382448673,"z":"b1d019b.6dbd8e8","wires":[["cb663456.f36218"]]},{"id":"cb663456.f36218","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":4914.332969665527,"y":642.9961382448673,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"c59be3a3.5f1ff","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":5117.665496826172,"y":573.9962903559208,"z":"b1d019b.6dbd8e8","wires":[["3ae500a3.3e9bf","52bf6eab.78af3"]]},{"id":"52bf6eab.78af3","type":"set","name":"set ipAddress prefixLength","xml":"<set>\n<parameter name='prop.underlay.routeIds_length' value='`$prop.underlay.routeIds_length + 1`' />\n","comments":"","x":5317.333156585693,"y":599.9961678087711,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"669de5ac.6729ac","type":"switchNode","name":"switch prop.underlay.routeIdsValues_length","xml":"<switch test='`$prop.underlay.routeIdsValues_length`'>\n","comments":"","outputs":1,"x":4993.667121887207,"y":475.9961611330509,"z":"b1d019b.6dbd8e8","wires":[["43831c53.32aa44","286a0e51.c7df42"]]},{"id":"43831c53.32aa44","type":"outcome","name":"3","xml":"<outcome value='3'>\n","comments":"","outputs":1,"x":5228.636054992676,"y":512.9648882448673,"z":"b1d019b.6dbd8e8","wires":[["c59be3a3.5f1ff"]]},{"id":"286a0e51.c7df42","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":5245.666980743408,"y":394.9961020052433,"z":"b1d019b.6dbd8e8","wires":[["b1a5d346.3c838"]]},{"id":"b1a5d346.3c838","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":5406.66650390625,"y":434.99609246850014,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"9edc0016.5374a","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n","comments":"","x":2886.006446838379,"y":1008.3028489649296,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"36139e8.434ce62","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":2872.0059547424316,"y":956.969269901514,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"aeaf4169.ad4e1","type":"set","name":"hardcode hub route","xml":"<set>\n<parameter name='prop.hub.ipAddress' value=\"10.2.0.2\" />\n<parameter name='prop.hub.providerIpAddress' value=\"10.2.0.0/16\" />\n\n\n","comments":"","x":3406.0079498291016,"y":1889.0040550231934,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"7b6ea599.d556bc","type":"set","name":"hardcode spoke route","xml":"<set>\n<parameter name='prop.spoke.ipAddress' value=\"10.3.0.1\" />\n<parameter name='prop.spoke.providerIpAddress' value=\"10.3.0.0/16\" />","comments":"","x":3421.008316040039,"y":2046.0039640963078,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"5011194.82bcce8","type":"set","name":"hardcode hub route","xml":"<set>\n<parameter name='prop.hub.ipAddress' value=\"10.2.0.2\" />\n<parameter name='prop.hub.providerIpAddress' value=\"10.2.0.0/16\" />\n\n\n","comments":"","x":3437.3374786376953,"y":2522.000064522028,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"aa5933c2.13ab","type":"set","name":"hardcode spoke route","xml":"<set>\n<parameter name='prop.spoke.ipAddress' value=\"10.3.0.1\" />\n<parameter name='prop.spoke.providerIpAddress' value=\"10.3.0.0/16\" />","comments":"","x":3462.337158203125,"y":2633.9999987185,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2c880b10.265824","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3473.0080757141113,"y":1253.5040480196476,"z":"b1d019b.6dbd8e8","wires":[["c82b1262.885e1","43b2a05a.a7d9b"]]},{"id":"27cac422.cfe53c","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3803.2580280303955,"y":1421.0040365755558,"z":"b1d019b.6dbd8e8","wires":[["4095ea96.600eb4"]]},{"id":"4095ea96.600eb4","type":"switchNode","name":"switch transportNetworkName==prop.spoke.transportNetworkName","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.portvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value == $prop.spoke.transportNetworkName`\">\n","comments":"","outputs":1,"x":4136.008050918579,"y":1423.0043121874332,"z":"b1d019b.6dbd8e8","wires":[["62cc8a78.a53c54"]]},{"id":"62cc8a78.a53c54","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":4003.0094957351685,"y":1519.0042206346989,"z":"b1d019b.6dbd8e8","wires":[["79266ace.3e0f24"]]},{"id":"79266ace.3e0f24","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":4158.759503364563,"y":1511.0042206346989,"z":"b1d019b.6dbd8e8","wires":[["b05226c4.bd3a28","eaeb7669.551da8"]]},{"id":"eaeb7669.551da8","type":"set","name":"set tmp.wanportvidx ","xml":"<set>\n<parameter name='tmp.wanportvidx' value='`$arvidx`' />\n\n","comments":"","x":4336.2604722976685,"y":1487.004341751337,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"eb5f2e.bb7a50d","type":"for","name":"for loop wanportvidx - Get wan port ID from servicedata","xml":"<for index=\"wportidx\" start=\"0\" end=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2744.5081939697266,"y":1699.0043436586857,"z":"b1d019b.6dbd8e8","wires":[["94ca8906.8e1df8"]]},{"id":"94ca8906.8e1df8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3047.5095977783203,"y":1657.004679352045,"z":"b1d019b.6dbd8e8","wires":[["de2e10d.04cb7f","c3406431.579fb8","5a48c14b.c2614"]]},{"id":"de2e10d.04cb7f","type":"switchNode","name":"switch wanPortId","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].name == 'wanPortId'`\">\n","comments":"","outputs":1,"x":3246.8432846069336,"y":1614.0048920214176,"z":"b1d019b.6dbd8e8","wires":[["31fd8292.a950ce"]]},{"id":"31fd8292.a950ce","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3407.8436126708984,"y":1615.0049721300602,"z":"b1d019b.6dbd8e8","wires":[["d6943196.7494d"]]},{"id":"d6943196.7494d","type":"set","name":"set prop.hub.wanPortId","xml":"<set>\n<parameter name='prop.hub.wanPortId' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value`' />\n","comments":"","x":3597.8440742492676,"y":1614.6052481234074,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"c3406431.579fb8","type":"switchNode","name":"switch providerIpAddress","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].name == 'providerIpAddress'`\">\n","comments":"","outputs":1,"x":3268.371768951416,"y":1651.2011968195438,"z":"b1d019b.6dbd8e8","wires":[["db88a61d.083358"]]},{"id":"db88a61d.083358","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3444.3727531433105,"y":1651.2013193666935,"z":"b1d019b.6dbd8e8","wires":[["5328c878.a15168"]]},{"id":"5328c878.a15168","type":"set","name":"set prop.hub.providerIpAddress","xml":"<set>\n<parameter name='prop.hub.providerIpAddress' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value`' />\n","comments":"","x":3646.372791290283,"y":1651.8012396395206,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"5a48c14b.c2614","type":"switchNode","name":"switch ipAddress","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].name == 'ipAddress'`\">\n","comments":"","outputs":1,"x":3240.871850967407,"y":1688.7012821733952,"z":"b1d019b.6dbd8e8","wires":[["1b2197ee.121938"]]},{"id":"1b2197ee.121938","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3444.872791290283,"y":1688.7012340128422,"z":"b1d019b.6dbd8e8","wires":[["fe46a76e.a6fa58"]]},{"id":"fe46a76e.a6fa58","type":"set","name":"set prop.hub.ipAddress","xml":"<set>\n<parameter name='prop.hub.ipAddress' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value`' />\n","comments":"","x":3639.8727951049805,"y":1688.3012095987797,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"76b9bae0.83f2b4","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3847.258213043213,"y":1882.2540187835693,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"2019f4f3.e1c6cc","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3846.258029937744,"y":1928.253957748413,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"58d448af.a07fd8","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3865.258399963379,"y":2090.254084587097,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"928f88f0.d6ee18","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3866.2581577301025,"y":2137.2540855407715,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"a62325e4.8d0b68","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3864.2582054138184,"y":2580.0039698183537,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"3b45764d.017e4a","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3865.257963180542,"y":2627.003970772028,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"8336cdde.f9fe3","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing sdwan hub route underlay rest api\" />\n","comments":"","x":4017.340606689453,"y":2581.9710108339787,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"8c851f6f.caa55","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3864.2578125,"y":2671.0039049685,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"29ad144c.f2690c","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3865.2575702667236,"y":2718.0039059221745,"z":"b1d019b.6dbd8e8","wires":[[]]}] \ No newline at end of file
+[{"id":"587a4e4b.449f1","type":"dgstart","name":"DGSTART","outputs":1,"x":104.00390625,"y":51.99999871850014,"z":"b1d019b.6dbd8e8","wires":[["cf04b901.3d6f98"]]},{"id":"cf04b901.3d6f98","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":220.2895965576172,"y":103.23810639977455,"z":"b1d019b.6dbd8e8","wires":[["a2d12571.0378a8"]]},{"id":"a2d12571.0378a8","type":"method","name":"method sdwan-wanport-vnf-topology-operation-underlay","xml":"<method rpc='sdwan-wanport-vnf-topology-operation-underlay' mode='sync'>\n","comments":"","outputs":1,"x":223.43252563476562,"y":188.00003018975258,"z":"b1d019b.6dbd8e8","wires":[["a47337eb.18b358"]]},{"id":"a47337eb.18b358","type":"block","name":"block : atomic","xml":"<block atomic=\"true\">","atomic":"true","outputs":1,"x":155.67059326171875,"y":296.6667315065861,"z":"b1d019b.6dbd8e8","wires":[["718fab21.36f054","3f81fe79.041ff2","f5abf897.1c94a8","e484905a.ff144","e2e0c9ba.1ae298"]]},{"id":"718fab21.36f054","type":"for","name":"for cidx..service-data.consumed-allotted-resources.consumed-allotted-resource[]","xml":"<for index='cidx' start='0' end='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`' >\n","comments":"","outputs":1,"x":590.004337310791,"y":435.66685262322426,"z":"b1d019b.6dbd8e8","wires":[["95ab5318.2e5c4"]]},{"id":"8881f8e.5bc9208","type":"set","name":"set prop.ar.allotted-resource-id","xml":"<set>\n<parameter name='prop.ar.allotted-resource-id' value='`$service-data.consumed-allotted-resources.consumed-allotted-resource[$cidx].allotted-resource-id`' />\n","comments":"","x":1380.0052490234375,"y":124.96877732872963,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"ca0bbb68.4e6518","type":"comment","name":"Query MDSAL for AR","info":"","comments":"","x":1705.3379211425781,"y":148.96864667534828,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"88a9e795.e489e8","type":"comment","name":"Query MDSAL to get parent service based on service instance id from AR","info":"","comments":"","x":2175.338779449463,"y":167.96862569451332,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"61804941.42b278","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1954.67232131958,"y":203.63526597619057,"z":"b1d019b.6dbd8e8","wires":[["b4949dcd.ebcd1"]]},{"id":"b4949dcd.ebcd1","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2109.672161102295,"y":203.1350990831852,"z":"b1d019b.6dbd8e8","wires":[["e88c8316.b28a7"]]},{"id":"4119fddc.bb6d24","type":"other","name":"outcome 1","xml":"<outcome value='1'>\n","comments":"","outputs":1,"x":2433.3626976013184,"y":199.7542397081852,"z":"b1d019b.6dbd8e8","wires":[["e113bdd7.9bdab"]]},{"id":"672a20f.a0083e","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Connection attachement resource not found\" />\n \n","comments":"","x":2579.1314735412598,"y":239.20122781395912,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"17977b69.262195","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":1947.5240478515625,"y":250.701272636652,"z":"b1d019b.6dbd8e8","wires":[["4a7edd74.b9a034"]]},{"id":"4a7edd74.b9a034","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2097.5238914489746,"y":251.36782804131508,"z":"b1d019b.6dbd8e8","wires":[["889c4ad9.edb108"]]},{"id":"f51f9f7c.c2466","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":2421.6906509399414,"y":237.034599930048,"z":"b1d019b.6dbd8e8","wires":[["672a20f.a0083e"]]},{"id":"e88c8316.b28a7","type":"switchNode","name":"switch cr length","xml":"<switch test='`$mdsal-ar.connection-attachment-allotted-resource_length`'>\n","comments":"","outputs":1,"x":2273.672336578369,"y":203.63528218865395,"z":"b1d019b.6dbd8e8","wires":[["4119fddc.bb6d24","f51f9f7c.c2466"]]},{"id":"ad5ef81b.eca5b8","type":"set","name":"set parent-service-instance-id","xml":"<set>\n<parameter name='prop.parent-service-instance-id' value='`$mdsal-ar.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.allotted-resource-information.parent-service-instance-id`' />\n\n","comments":"","x":2829.0059356689453,"y":200.63526311516762,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e113bdd7.9bdab","type":"block","name":"block: atomic","xml":"<block atomic='true'>\n","atomic":"false","comments":"","outputs":1,"x":2583.4817276000977,"y":199.80179944634438,"z":"b1d019b.6dbd8e8","wires":[["ad5ef81b.eca5b8","5b3adfc2.d795f"]]},{"id":"889c4ad9.edb108","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: Connection attachement resource not found\" />\n \n","comments":"","x":2265.005344390869,"y":249.63520398736,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"936de3e0.c6a2e","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":2052.307460784912,"y":521.7709299623966,"z":"b1d019b.6dbd8e8","wires":[["2fdbbace.5a0386"]]},{"id":"56dafc4a.8aaae4","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":2044.1592636108398,"y":556.837014824152,"z":"b1d019b.6dbd8e8","wires":[["2a42a293.fba3ae"]]},{"id":"2a42a293.fba3ae","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n","comments":"","x":2190.308036804199,"y":557.1045109331608,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2fdbbace.5a0386","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":2172.3077087402344,"y":521.7710129320621,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"a13ee754.9515f8","type":"for","name":"for pnidx.. mdsal-psd.networks.network_length[]","xml":"<for index='pnidx' start='0' end='`$mdsal-psd.service-data.networks.network_length`' >\n","comments":"","outputs":1,"x":1735.6722564697266,"y":621.3028880655766,"z":"b1d019b.6dbd8e8","wires":[["684cbe0.d0ae544"]]},{"id":"9bdd2027.61dcf","type":"switchNode","name":"switch ActivateSDWANConnectivityInstance","xml":"<switch test=\"`$mdsal-psd.service-data.networks.network[$pnidx].network-data.request-information.request-action == 'ActivateSDWANConnectivityInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":2265.3388900756836,"y":590.302889496088,"z":"b1d019b.6dbd8e8","wires":[["4800da5e.9f4d14"]]},{"id":"4800da5e.9f4d14","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2517.338424682617,"y":591.3028270304203,"z":"b1d019b.6dbd8e8","wires":[["e64d626e.5a50e"]]},{"id":"e64d626e.5a50e","type":"set","name":"set tmp.pnidx ","xml":"<set>\n<parameter name='tmp.pnidx' value='`$pnidx`' />\n\n","comments":"","x":2673.3381118774414,"y":591.3028270304203,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"dd934675.d4e888","type":"for","name":"for loop paramidx - Get topology from servicedata","xml":"<for index=\"paramidx\" start=\"0\" end=\"`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":1667.3390655517578,"y":706.3025175631046,"z":"b1d019b.6dbd8e8","wires":[["8db55ac9.a24998"]]},{"id":"62066499.8552ec","type":"switchNode","name":"switch topology","xml":"<switch test=\"`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param[$paramidx].name == 'topology'`\">\n","comments":"","outputs":1,"x":2119.339157104492,"y":685.3024231493473,"z":"b1d019b.6dbd8e8","wires":[["4f33474b.e43bc8"]]},{"id":"4f33474b.e43bc8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2270.339168548584,"y":683.3024651110172,"z":"b1d019b.6dbd8e8","wires":[["8246d892.e05918"]]},{"id":"8246d892.e05918","type":"set","name":"set topology","xml":"<set>\n<parameter name='prop.topology' value='`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param[$paramidx].value`' />\n","comments":"","x":2411.338897705078,"y":682.9023987352848,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"88c5e553.ee7048","type":"switchNode","name":"switch tmp.pnidx ","xml":"<switch test=\"`$tmp.pnidx`\">\n\n","comments":"","outputs":1,"x":1638.338882446289,"y":665.9690901339054,"z":"b1d019b.6dbd8e8","wires":[["11715e8.eb7eca2"]]},{"id":"11715e8.eb7eca2","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":1793.7675552368164,"y":664.5404697954655,"z":"b1d019b.6dbd8e8","wires":[["49bf685a.de5378"]]},{"id":"49bf685a.de5378","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id not found in service-data\" />\n","comments":"","x":1934.1961784362793,"y":665.6835590898991,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"de9858f.b81a8a8","type":"switchNode","name":"switch topology hub-spoke","xml":"<switch test=\"`$prop.topology == 'hub-spoke'`\">\n","comments":"","outputs":1,"x":1546.3387489318848,"y":768.3023392260075,"z":"b1d019b.6dbd8e8","wires":[["24d293b9.ebe98c","4bfa75a0.97649c"]]},{"id":"24d293b9.ebe98c","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1736.338436126709,"y":793.3028246462345,"z":"b1d019b.6dbd8e8","wires":[["fc31272f.d20a28"]]},{"id":"4bfa75a0.97649c","type":"outcomeTrue","name":"false","xml":"<outcome value='false'>\n","comments":"","outputs":1,"x":1730.3393630981445,"y":754.3024870455265,"z":"b1d019b.6dbd8e8","wires":[["a1325102.a1698"]]},{"id":"a1325102.a1698","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":1866.3393669128418,"y":754.3024260103703,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"fc31272f.d20a28","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1741.67138671875,"y":861.3020588457584,"z":"b1d019b.6dbd8e8","wires":[["e126a9e.93d2358"]]},{"id":"e126a9e.93d2358","type":"for","name":"for ppidx.. mdsal-psd.service-data.provided-allotted-resources.provided-allotted-resource[]","xml":"<for index='ppidx' start='0' end='`$mdsal-psd.service-data.provided-allotted-resources.provided-allotted-resource_length`' >\n","comments":"","outputs":1,"x":2149.004638671875,"y":861.6356770098209,"z":"b1d019b.6dbd8e8","wires":[["a3874818.96b4a8"]]},{"id":"fafd1fed.9ce1b","type":"set","name":"set prop.ar.provided-allotted-resource-id","xml":"<set>\n<parameter name='prop.ar.provided-allotted-resource-id' value='`$mdsal-psd.service-data.provided-allotted-resources.provided-allotted-resource[$ppidx].allotted-resource-id`' />\n\n","comments":"","x":2240.0057525634766,"y":939.6359750330448,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"8b5306cb.0a00b8","type":"for","name":"for loop aridx - Get role from allotted resource","xml":"<for index=\"aridx\" start=\"0\" end=\"`$mdsal-providedAr.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param_length`\">\n \n \n","comments":"","outputs":1,"x":2258.0064544677734,"y":1050.3027664721012,"z":"b1d019b.6dbd8e8","wires":[["35d495b.f10696a"]]},{"id":"2ab4ecb3.a0e7b4","type":"switchNode","name":"switch Role","xml":"<switch test=\"`$mdsal-providedAr.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$aridx].name == 'Role'`\">\n","comments":"","outputs":1,"x":2667.006565093994,"y":1053.302853256464,"z":"b1d019b.6dbd8e8","wires":[["f82626a6.b9ef58"]]},{"id":"f82626a6.b9ef58","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2808.0068969726562,"y":1052.3028523027897,"z":"b1d019b.6dbd8e8","wires":[["7f118497.e5e81c"]]},{"id":"7f118497.e5e81c","type":"set","name":"set prop.role","xml":"<set>\n<parameter name='prop.role' value='`$mdsal-providedAr.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$aridx].value`' />\n","comments":"","x":2949.0069313049316,"y":1053.9027439653873,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"9f0875d3.47e2b8","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":2744.0059509277344,"y":956.9692687094212,"z":"b1d019b.6dbd8e8","wires":[["36139e8.434ce62"]]},{"id":"807962c4.90f77","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":2740.8576736450195,"y":1011.0353519022465,"z":"b1d019b.6dbd8e8","wires":[["9edc0016.5374a"]]},{"id":"dbadbe13.1677b","type":"switchNode","name":"switch role hub","xml":"<switch test=\"`$prop.role == hub`\">\n","comments":"","outputs":1,"x":2124.3390884399414,"y":1115.635806709528,"z":"b1d019b.6dbd8e8","wires":[["dcf9daa3.e54cc8","5d1cf617.14b6b8"]]},{"id":"9271766e.fe0c48","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":2440.3384742736816,"y":1091.6354099810123,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"6d9b82e0.ee0e5c","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":2850.3081092834473,"y":1187.1045166552067,"z":"b1d019b.6dbd8e8","wires":[["f48b85ad.740008"]]},{"id":"1f5ff987.3fd166","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":2852.159679412842,"y":1247.170598655939,"z":"b1d019b.6dbd8e8","wires":[["f995184a.d07fa8"]]},{"id":"f995184a.d07fa8","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SDWAN service-data not found\" />\n \n","comments":"","x":2996.308452606201,"y":1209.4380127489567,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f48b85ad.740008","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":2980.3081283569336,"y":1176.1046768724918,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"928e3eb0.849cd","type":"set","name":"set prop.ar-service-instance-id","xml":"<set>\n<parameter name='prop.ar-service-instance-id' value='`$mdsal-providedAr.connection-attachment-allotted-resource[0].allotted-resource-data.connection-attachment-topology.allotted-resource-identifiers.consuming-service-instance-id`' />\n","comments":"","x":2452.3395080566406,"y":1175.6360094845295,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"3730c8a.de81d38","type":"for","name":"for arvidx.. mdsal-arsd.service-data.vnfs.vnf_length[]","xml":"<for index='arvidx' start='0' end='`$mdsal-arsd.service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":2496.0059814453125,"y":1297.6357990801334,"z":"b1d019b.6dbd8e8","wires":[["993a1752.84b598"]]},{"id":"993a1752.84b598","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2842.6723022460938,"y":1287.6357752382755,"z":"b1d019b.6dbd8e8","wires":[["9bd685d3.b9a5b8","2be5604d.8b517","34da5cb3.ec0254"]]},{"id":"9bd685d3.b9a5b8","type":"switchNode","name":"switch ActivateSDWANPortInstance","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$arvidx].vnf-data.request-information.request-action == 'ActivateSDWANPortInstance'`\">\n \n\n","comments":"","outputs":1,"x":3104.672410964966,"y":1258.6367346346378,"z":"b1d019b.6dbd8e8","wires":[["22ea8a6b.a17296"]]},{"id":"2f97be15.e601c2","type":"switchNode","name":"switch tmp.wanportvidx ","xml":"<switch test=\"`$tmp.wanportvidx`\">\n\n","comments":"","outputs":1,"x":2577.672119140625,"y":1342.3024441301823,"z":"b1d019b.6dbd8e8","wires":[["54e2ca7c.2e5f44"]]},{"id":"43b2a05a.a7d9b","type":"for","name":"for loop wportidx - Get wan port ID from servicedata","xml":"<for index=\"wportidx\" start=\"0\" end=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.portvidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":3759.6728897094727,"y":1251.6369148790836,"z":"b1d019b.6dbd8e8","wires":[["bca2a06e.4f682"]]},{"id":"54e2ca7c.2e5f44","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":2749.100841522217,"y":1345.8741499483585,"z":"b1d019b.6dbd8e8","wires":[["2f27c837.ae4c68"]]},{"id":"2f27c837.ae4c68","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id (port) not found in service-data\" />\n","comments":"","x":2893.529556274414,"y":1348.0174299776554,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"22ea8a6b.a17296","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3332.67209815979,"y":1256.6367355883121,"z":"b1d019b.6dbd8e8","wires":[["2c880b10.265824"]]},{"id":"bca2a06e.4f682","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3711.6741046905518,"y":1335.6374413073063,"z":"b1d019b.6dbd8e8","wires":[["960aea00.c2c228"]]},{"id":"960aea00.c2c228","type":"switchNode","name":"switch transportNetworkName","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.portvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].name == 'transportNetworkName'`\">\n","comments":"","outputs":1,"x":3929.6750202178955,"y":1333.6379295885563,"z":"b1d019b.6dbd8e8","wires":[["19a0a134.cbff5f"]]},{"id":"c82b1262.885e1","type":"set","name":"set tmp.portvidx ","xml":"<set>\n<parameter name='tmp.portvidx' value='`$arvidx`' />\n\n","comments":"","x":3656.671901702881,"y":1209.6369024813175,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"19a0a134.cbff5f","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":4126.675447463989,"y":1332.6380983889103,"z":"b1d019b.6dbd8e8","wires":[["27cac422.cfe53c"]]},{"id":"b05226c4.bd3a28","type":"set","name":"set prop.hub.transportNetworkName","xml":"<set>\n<parameter name='prop.hub.transportNetworkName' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.portvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value`' />\n","comments":"","x":4383.6772813797,"y":1532.2391153872013,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f4c45443.bb3768","type":"switchNode","name":"switch prop.hub.transportNetworkName==prop.spoke.transportNetworkName","xml":"<switch test=\"`$prop.hub.transportNetworkName == $prop.spoke.transportNetworkName`\">\n","comments":"","outputs":1,"x":2576.00821685791,"y":1492.3046661913395,"z":"b1d019b.6dbd8e8","wires":[["29701c33.546bc4","9d7af116.cbe09"]]},{"id":"29701c33.546bc4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2922.0077476501465,"y":1529.304740101099,"z":"b1d019b.6dbd8e8","wires":[["f21133c1.0bade"]]},{"id":"9d7af116.cbe09","type":"outcomeTrue","name":"false","xml":"<outcome value='false'>\n","comments":"","outputs":1,"x":2916.008556365967,"y":1466.3046003878117,"z":"b1d019b.6dbd8e8","wires":[["35e3a287.99da5e"]]},{"id":"35e3a287.99da5e","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3046.008743286133,"y":1466.3047529757023,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"a3874818.96b4a8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1891.0361328125,"y":970.8333088457584,"z":"b1d019b.6dbd8e8","wires":[["fafd1fed.9ce1b","252298c8.827288","de70a181.95e65","dbadbe13.1677b","8b5306cb.0a00b8"]]},{"id":"40faa7d6.f30958","type":"switchNode","name":"switch vpnId","xml":"<switch test=\"`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param[$paramidx].name == 'vpn-id'`\">\n","comments":"","outputs":1,"x":2109.005172729492,"y":729.6354338228703,"z":"b1d019b.6dbd8e8","wires":[["244fa8f2.0e98c8"]]},{"id":"244fa8f2.0e98c8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2253.005184173584,"y":729.6354748308659,"z":"b1d019b.6dbd8e8","wires":[["542e22e9.06eebc"]]},{"id":"542e22e9.06eebc","type":"set","name":"set prop.vpnId","xml":"<set>\n<parameter name='prop.vpnId' value='`$mdsal-psd.service-data.networks.network[$tmp.pnidx].network-data.network-request-input.network-input-parameters.param[$paramidx].value`' />\n","comments":"","x":2411.0049057006836,"y":728.2354094088078,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"3945c5e7.6c14ea","type":"set","name":"Set prop.hubTnpId","xml":"<set>\n<parameter name='prop.hubTnpId' value='$prop.hub.wanPortId' />\n\n","comments":"","x":2628.3407135009766,"y":1765.636424690485,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"32aaac62.305534","type":"execute","name":"execute RestApiCallNode underlay route","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-underlay.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/routing-protocol/static/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"underlayHubResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":3449.34015083313,"y":2597.9708580076694,"z":"b1d019b.6dbd8e8","wires":[["89fb14c8.94ed18","c79239ca.a0f328"]]},{"id":"c79239ca.a0f328","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":3716.3400592803955,"y":2625.9708875715733,"z":"b1d019b.6dbd8e8","wires":[["3b45764d.017e4a"]]},{"id":"89fb14c8.94ed18","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3714.339738845825,"y":2581.97087803483,"z":"b1d019b.6dbd8e8","wires":[["a62325e4.8d0b68"]]},{"id":"d9e2a3b8.be3d7","type":"set","name":"Add prop.hub.route","xml":"<set>\n<parameter name='prop.route.id' value='`$prop.hubRouteId`' />\n<parameter name='prop.route.vpnId' value='`$prop.vpnId`' />\n<parameter name='prop.route.siteId' value='`$prop.hub.siteId`' />\n<parameter name='prop.route.deviceId' value='`$prop.hub.deviceId`' />\n<parameter name='prop.route.providerIpAddress' value='`$prop.hub.providerIpAddress`' />\n<parameter name='prop.route.wanportId' value='`$prop.spoke.wanPortId`' />\n<parameter name='prop.route.ipAddress' value='`$prop.hub.ipAddress`' />\n\n\n","comments":"","x":3393.6735305786133,"y":2554.6373659670353,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"b552a294.7e377","type":"execute","name":"execute RestApiCallNode underlay route","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-underlay.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/routing-protocol/static/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"underlayspokeResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":3468.6735305786133,"y":2696.637831121683,"z":"b1d019b.6dbd8e8","wires":[["a12e36eb.943458","ededbddd.7250a"]]},{"id":"ededbddd.7250a","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":3720.673677444458,"y":2725.6381277143955,"z":"b1d019b.6dbd8e8","wires":[["29ad144c.f2690c"]]},{"id":"a12e36eb.943458","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3718.6733570098877,"y":2681.6381181776524,"z":"b1d019b.6dbd8e8","wires":[["8c851f6f.caa55"]]},{"id":"92a20fbe.e0e62","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing sdwan spoke route underlay rest api\" />\n","comments":"","x":4008.6742248535156,"y":2675.6383101046085,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2be5604d.8b517","type":"switchNode","name":"switch ActivateSDWANDeviceInstance","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$arvidx].vnf-data.request-information.request-action == 'ActivateSDWANDeviceInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":3115.535987854004,"y":1291.833693176508,"z":"b1d019b.6dbd8e8","wires":[["46f77d85.1bbce4"]]},{"id":"75db0ba8.f32084","type":"switchNode","name":"switch tmp.devicevidx ","xml":"<switch test=\"`$tmp.devicevidx`\">\n\n","comments":"","outputs":1,"x":2583.5355377197266,"y":1384.4999252855778,"z":"b1d019b.6dbd8e8","wires":[["294637bf.dcbd08"]]},{"id":"294637bf.dcbd08","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":2749.9639739990234,"y":1384.0714584887028,"z":"b1d019b.6dbd8e8","wires":[["a4ca51de.1aa11"]]},{"id":"a4ca51de.1aa11","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id (device) not found in service-data\" />\n","comments":"","x":2890.392906188965,"y":1386.2144333422184,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"46f77d85.1bbce4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3343.535675048828,"y":1289.8336941301823,"z":"b1d019b.6dbd8e8","wires":[["b2e4dc18.108ae"]]},{"id":"b2e4dc18.108ae","type":"set","name":"set tmp.devicevidx ","xml":"<set>\n<parameter name='tmp.devicevidx' value='`$arvidx`' />\n\n","comments":"","x":3498.535358428955,"y":1289.833693176508,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"34da5cb3.ec0254","type":"switchNode","name":"switch ActivateSiteInstance","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$arvidx].vnf-data.request-information.request-action == 'ActivateSiteInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":3078.5360584259033,"y":1325.8337570726871,"z":"b1d019b.6dbd8e8","wires":[["1e8bb4ff.b8f57b"]]},{"id":"c3aa018f.4dc1a","type":"switchNode","name":"switch tmp.sitevidx ","xml":"<switch test=\"`$tmp.sitevidx`\">\n\n","comments":"","outputs":1,"x":2582.5354080200195,"y":1422.4998032152653,"z":"b1d019b.6dbd8e8","wires":[["1f12a8eb.1a8507"]]},{"id":"1f12a8eb.1a8507","type":"outcome","name":"NULL","xml":"<outcome value=''>\n","comments":"","outputs":1,"x":2742.963872909546,"y":1422.0713230669498,"z":"b1d019b.6dbd8e8","wires":[["b92b68d7.8e4328"]]},{"id":"b92b68d7.8e4328","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"vnf-topology-operation-input.vnf-request-input.vnf-id (site) not found in service-data\" />\n","comments":"","x":2891.392827987671,"y":1424.214329391718,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"1e8bb4ff.b8f57b","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3266.535623550415,"y":1325.8339230120182,"z":"b1d019b.6dbd8e8","wires":[["4cf0c35.9e60c3c"]]},{"id":"4cf0c35.9e60c3c","type":"set","name":"set tmp.sitevidx ","xml":"<set>\n<parameter name='tmp.sitevidx' value='`$arvidx`' />\n\n","comments":"","x":3421.535306930542,"y":1325.833922058344,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"6de714ed.d3061c","type":"for","name":"for loop deviceidx - Get wan port ID from servicedata","xml":"<for index=\"deviceidx\" start=\"0\" end=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.devicevidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2715.5372161865234,"y":1807.8342405855656,"z":"b1d019b.6dbd8e8","wires":[["3adcf839.875688"]]},{"id":"e169850b.ca2b98","type":"switchNode","name":"switch deviceId","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.devicevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$deviceidx].name == 'deviceId'`\">\n","comments":"","outputs":1,"x":3200.5384674072266,"y":1738.8350941240788,"z":"b1d019b.6dbd8e8","wires":[["7f1b4a03.77b0c4"]]},{"id":"7f1b4a03.77b0c4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3351.5388412475586,"y":1735.8353382647038,"z":"b1d019b.6dbd8e8","wires":[["8b5c9421.71a558"]]},{"id":"8b5c9421.71a558","type":"set","name":"set prop.hub.deviceId","xml":"<set>\n<parameter name='prop.hub.deviceId' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.devicevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$deviceidx].value`' />\n","comments":"","x":3526.539089202881,"y":1735.4358631670475,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"8506f90c.f30458","type":"for","name":"for loop siteidx - Get site ID from servicedata","xml":"<for index=\"siteidx\" start=\"0\" end=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2682.0370330810547,"y":1869.8342100679874,"z":"b1d019b.6dbd8e8","wires":[["ff9f298a.cca7f8"]]},{"id":"8d61be2.a51494","type":"comment","name":"Add route src->dst, dst->src","info":"","comments":"","x":3017.672622680664,"y":1886.6360289156437,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e5d1673d.e9dbe8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2127.338134765625,"y":1247.9687458574772,"z":"b1d019b.6dbd8e8","wires":[["3730c8a.de81d38","f4c45443.bb3768","3d7d87cf.2688a8","928e3eb0.849cd","e69efead.6b9ed","2aa6f09e.c6474"]]},{"id":"3d7d87cf.2688a8","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2382.337890625,"y":1384.3021198809147,"z":"b1d019b.6dbd8e8","wires":[["75db0ba8.f32084","c3aa018f.4dc1a","2f97be15.e601c2"]]},{"id":"f21133c1.0bade","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2402.3389282226562,"y":1756.6356417238712,"z":"b1d019b.6dbd8e8","wires":[["3945c5e7.6c14ea","6de714ed.d3061c","8506f90c.f30458","23a8e35f.4687ac","eb5f2e.bb7a50d"]]},{"id":"7877847f.fa07bc","type":"set","name":"Add prop.spoke.route","xml":"<set>\n<parameter name='prop.route.id' value='`$prop.spokeRouteId`' />\n<parameter name='prop.route.vpnId' value='`$prop.vpnId`' />\n<parameter name='prop.route.siteId' value='`$prop.spoke.siteId`' />\n<parameter name='prop.route.deviceId' value='`$prop.spoke.deviceId`' />\n<parameter name='prop.route.providerIpAddress' value='`$prop.spoke.providerIpAddress`' />\n<parameter name='prop.route.wanportId' value='`$prop.hub.wanPortId`' />\n<parameter name='prop.route.ipAddress' value='`$prop.spoke.ipAddress`' />\n\n\n\n\n","comments":"","x":3403.537546157837,"y":2665.3345922529697,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"3f81fe79.041ff2","type":"returnSuccess","name":"return success","xml":"<return status='success'>\n<parameter name=\"ack-final-indicator\" value=\"Y\" />\n<parameter name=\"error-code\" value=\"200\" />\n<parameter name=\"error-message\" value=\"`$error-message`\" />\n","comments":"","x":352.3382110595703,"y":1122.3343378603458,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"52b0eddb.8791b4","type":"execute","name":"generate connection attachment AR url ","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url-connection\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$prop.ar.allotted-resource-id`\"/>\n","comments":"","outputs":1,"x":1401.6711120605469,"y":184.3018356859684,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"532b1f7d.9c604","type":"execute","name":"execute RestApiCallNode - get-resource connection-attachment-allotted-resource","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url-connection`' />\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='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-ar\" />\n\n","comments":"","outputs":1,"x":1528.671142578125,"y":232.30182614922523,"z":"b1d019b.6dbd8e8","wires":[["61804941.42b278","17977b69.262195"]]},{"id":"1eb0dd45.2d88f3","type":"execute","name":"execute RestApiCallNode - get parent service data","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url-parent-connection`' />\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='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-psd\" />\n\n","comments":"","outputs":1,"x":1753.0052947998047,"y":566.3021399080753,"z":"b1d019b.6dbd8e8","wires":[["936de3e0.c6a2e","56dafc4a.8aaae4"]]},{"id":"4ecf397b.0a23f8","type":"execute","name":"generate connection attachment parent url ","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"/restconf/config/GENERIC-RESOURCE-API:services/service/{service-instance-id}/service-data\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url-parent-connection\"/>\n <parameter name=\"target\" value=\"{service-instance-id}\"/>\n <parameter name=\"replacement\" value=\"`$prop.parent-service-instance-id`\"/>\n","comments":"","outputs":1,"x":1730.0049438476562,"y":512.3020674288273,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"43c6b758.a87968","type":"comment","name":"full mesh do nothing","info":"","comments":"","x":1564.671745300293,"y":723.3021055757999,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"717df1f.c979e1","type":"comment","name":"hub-spoke","info":"","comments":"","x":2565.6711463928223,"y":820.3019954264164,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"252298c8.827288","type":"execute","name":"generate connection attachment AR url ","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"`$prop.restapi.connection-attachment-allottedresource`\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url-connection\"/>\n <parameter name=\"target\" value=\"{allotted-resource-id}\"/>\n <parameter name=\"replacement\" value=\"`$prop.ar.provided-allotted-resource-id`\"/>\n","comments":"","outputs":1,"x":2238.0042991638184,"y":971.3019906580448,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"de70a181.95e65","type":"execute","name":"execute RestApiCallNode - get-resource connection-attachment-allotted-resource","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url-connection`' />\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='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-providedAr\" />\n\n","comments":"","outputs":1,"x":2369.004379272461,"y":1010.9686204493046,"z":"b1d019b.6dbd8e8","wires":[["9f0875d3.47e2b8","807962c4.90f77"]]},{"id":"e69efead.6b9ed","type":"execute","name":"generate service data url","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >\n <parameter name=\"source\" value=\"/restconf/config/GENERIC-RESOURCE-API:services/service/{service-instance-id}/service-data\"/>\n <parameter name=\"outputPath\" value=\"tmp.ar-url-connection\"/>\n <parameter name=\"target\" value=\"{service-instance-id}\"/>\n <parameter name=\"replacement\" value=\"`$prop.ar-service-instance-id`\"/>\n","comments":"","outputs":1,"x":2419.508274078369,"y":1212.3058907091618,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"2aa6f09e.c6474","type":"execute","name":"execute RestApiCallNode - get service data of allotted resource","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n <parameter name='restapiUrl' value='`$prop.controller.url + $tmp.ar-url-connection`' />\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='GET' />\n <parameter name=\"responsePrefix\" value=\"mdsal-arsd\" />\n\n","comments":"","outputs":1,"x":2535.5084075927734,"y":1249.3057819902897,"z":"b1d019b.6dbd8e8","wires":[["6d9b82e0.ee0e5c","1f5ff987.3fd166"]]},{"id":"5d1cf617.14b6b8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2299.5039710998535,"y":1134.8018547594547,"z":"b1d019b.6dbd8e8","wires":[["e5d1673d.e9dbe8"]]},{"id":"dcf9daa3.e54cc8","type":"outcomeFalse","name":"false","xml":"<outcome value='false'>\n","comments":"","outputs":1,"x":2305.504219055176,"y":1091.801946312189,"z":"b1d019b.6dbd8e8","wires":[["9271766e.fe0c48"]]},{"id":"5b3adfc2.d795f","type":"for","name":"for loop roleidx - Get role from allotted resource","xml":"<for index=\"roleidx\" start=\"0\" end=\"`$mdsal-ar.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param_length`\">\n \n \n","comments":"","outputs":1,"x":2880.5047760009766,"y":239.3017717897892,"z":"b1d019b.6dbd8e8","wires":[["a590c534.c72538"]]},{"id":"a590c534.c72538","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3139.5050888061523,"y":238.30208745598793,"z":"b1d019b.6dbd8e8","wires":[["24fabbc8.4ee6a4"]]},{"id":"24fabbc8.4ee6a4","type":"switchNode","name":"switch Role","xml":"<switch test=\"`$mdsal-ar.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$roleidx].name == 'role'`\">\n","comments":"","outputs":1,"x":3288.505100250244,"y":239.30192437767982,"z":"b1d019b.6dbd8e8","wires":[["13c03783.386d28"]]},{"id":"f7ff32b9.16d69","type":"set","name":"set prop.spoke.role","xml":"<set>\n<parameter name='prop.spoke.role' value='`$mdsal-ar.connection-attachment-allotted-resource[0].allotted-resource-data.allotted-resource-operation-information.connection-attachment-request-input.param[$roleidx].value`' />\n","comments":"","x":3593.505661010742,"y":236.90183225274086,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"13c03783.386d28","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3424.00492477417,"y":236.30176416039467,"z":"b1d019b.6dbd8e8","wires":[["f7ff32b9.16d69"]]},{"id":"30347a07.26c8f6","type":"switchNode","name":"switch spoke","xml":"<switch test=\"`$prop.spoke.role == 'spoke'`\">\n","comments":"","outputs":1,"x":1316.004280090332,"y":383.30169931054115,"z":"b1d019b.6dbd8e8","wires":[["2d380018.3e87c"]]},{"id":"2d380018.3e87c","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":1457.004035949707,"y":384.3017365038395,"z":"b1d019b.6dbd8e8","wires":[["1b9dfff3.6a8e9"]]},{"id":"356b426.2684ebe","type":"for","name":"for i.. service-data.vnfs.vnf_length[]","xml":"<for index='i' start='0' end='`$service-data.vnfs.vnf_length`' >\n","comments":"","outputs":1,"x":1729.5045623779297,"y":438.3017317354679,"z":"b1d019b.6dbd8e8","wires":[["bfdedc49.050ca"]]},{"id":"bfdedc49.050ca","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2063.170753479004,"y":382.3016621172428,"z":"b1d019b.6dbd8e8","wires":[["fd950685.06ac48","2d8b9375.2ddaac","257f4a9c.1ed446"]]},{"id":"fd950685.06ac48","type":"switchNode","name":"switch ActivateSDWANPortInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.request-information.request-action == 'ActivateSDWANPortInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":2334.1707916259766,"y":328.3025485575199,"z":"b1d019b.6dbd8e8","wires":[["fc67008d.091db"]]},{"id":"fc67008d.091db","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2547.170555114746,"y":329.30255141854286,"z":"b1d019b.6dbd8e8","wires":[["1a445db7.1fd752"]]},{"id":"1a445db7.1fd752","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2696.0042991638184,"y":331.3017407953739,"z":"b1d019b.6dbd8e8","wires":[["3c007d2e.edc602"]]},{"id":"3c007d2e.edc602","type":"for","name":"for loop widx - Get wan port ID from servicedata","xml":"<for index=\"widx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2969.004249572754,"y":329.66895881295204,"z":"b1d019b.6dbd8e8","wires":[["f1345e2.c9f7ea"]]},{"id":"f1345e2.c9f7ea","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3238.0051765441895,"y":328.6692048609257,"z":"b1d019b.6dbd8e8","wires":[["ba5679ba.3ede18","3e5320cd.89f1e","efdc38fc.1f5628","8e38557b.879d28"]]},{"id":"ba5679ba.3ede18","type":"switchNode","name":"switch transportNetworkName","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].name == 'transportNetworkName'`\">\n","comments":"","outputs":1,"x":3481.0062103271484,"y":283.66977801918983,"z":"b1d019b.6dbd8e8","wires":[["8f69b44d.c2f088"]]},{"id":"8f69b44d.c2f088","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3681.0059852600098,"y":283.6699401438236,"z":"b1d019b.6dbd8e8","wires":[["a5483223.dc4b1"]]},{"id":"a5483223.dc4b1","type":"set","name":"set prop.spoke.transportNetworkName","xml":"<set>\n<parameter name='prop.spoke.transportNetworkName' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].value`' />\n","comments":"","x":3908.006721496582,"y":285.27052226662636,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"1b9dfff3.6a8e9","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1209.9733276367188,"y":694.270647674799,"z":"b1d019b.6dbd8e8","wires":[["356b426.2684ebe","4ecf397b.0a23f8","1eb0dd45.2d88f3","a13ee754.9515f8","dd934675.d4e888","de9858f.b81a8a8","88c5e553.ee7048","2e975a9d.1a4246"]]},{"id":"2d8b9375.2ddaac","type":"switchNode","name":"switch ActivateSDWANDeviceInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.request-information.request-action == 'ActivateSDWANDeviceInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":2326.5042266845703,"y":402.30175319314003,"z":"b1d019b.6dbd8e8","wires":[["74821dd.148afe4"]]},{"id":"74821dd.148afe4","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2545.5039768218994,"y":403.30173793435097,"z":"b1d019b.6dbd8e8","wires":[["c6b3d98e.b714c8"]]},{"id":"c6b3d98e.b714c8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2696.3379669189453,"y":409.30092921853065,"z":"b1d019b.6dbd8e8","wires":[["57f2bdad.e02274"]]},{"id":"57f2bdad.e02274","type":"for","name":"for loop didx - Get device ID from servicedata","xml":"<for index=\"didx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2955.338218688965,"y":411.6682244837284,"z":"b1d019b.6dbd8e8","wires":[["ca5f7c6e.be6de"]]},{"id":"ca5f7c6e.be6de","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3241.338726043701,"y":444.6684094965458,"z":"b1d019b.6dbd8e8","wires":[["a11b64a3.1c2778"]]},{"id":"a11b64a3.1c2778","type":"switchNode","name":"switch deviceId","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$didx].name == 'deviceId'`\">\n","comments":"","outputs":1,"x":3424.3396377563477,"y":444.6690198481083,"z":"b1d019b.6dbd8e8","wires":[["b3a0e9d7.649ff8"]]},{"id":"b3a0e9d7.649ff8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3624.339412689209,"y":444.6691819727421,"z":"b1d019b.6dbd8e8","wires":[["a6327912.f3f9d8"]]},{"id":"a6327912.f3f9d8","type":"set","name":"set prop.spoke.deviceId","xml":"<set>\n<parameter name='prop.spoke.deviceId' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$didx].value`' />\n","comments":"","x":3819.3400955200195,"y":441.2697631418705,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"257f4a9c.1ed446","type":"switchNode","name":"switch ActivateSiteInstance","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.request-information.request-action == 'ActivateSiteInstance'`\">\n \n \n\n","comments":"","outputs":1,"x":2305.5043411254883,"y":463.30178466439247,"z":"b1d019b.6dbd8e8","wires":[["9ba2d06.8f6be3"]]},{"id":"9ba2d06.8f6be3","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":2539.503978729248,"y":464.30172458291054,"z":"b1d019b.6dbd8e8","wires":[["a15d8c7c.78012"]]},{"id":"a15d8c7c.78012","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2691.3379669189453,"y":486.3009606897831,"z":"b1d019b.6dbd8e8","wires":[["44322235.a2372c","d545295b.570bb8"]]},{"id":"44322235.a2372c","type":"for","name":"for loop widx - Get wan site ID from servicedata","xml":"<for index=\"sidx\" start=\"0\" end=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2972.3377990722656,"y":485.66816344857216,"z":"b1d019b.6dbd8e8","wires":[["e3395281.b0fe4"]]},{"id":"e3395281.b0fe4","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3241.338726043701,"y":484.6684094965458,"z":"b1d019b.6dbd8e8","wires":[["2466c56a.c4304a","fe259139.fb262","9b298a8b.b4f888"]]},{"id":"2466c56a.c4304a","type":"switchNode","name":"switch siteId","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].name == 'siteId'`\">\n","comments":"","outputs":1,"x":3430.33992767334,"y":534.6690813601017,"z":"b1d019b.6dbd8e8","wires":[["8bd2628f.d7e06"]]},{"id":"8bd2628f.d7e06","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3630.3394050598145,"y":522.6691958010197,"z":"b1d019b.6dbd8e8","wires":[["4379d5c4.4bf5fc"]]},{"id":"4379d5c4.4bf5fc","type":"set","name":"set prop.spoke.siteId","xml":"<set>\n<parameter name='prop.spoke.siteId' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].value`' />\n","comments":"","x":3823.340358734131,"y":529.2698260843754,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"3e5320cd.89f1e","type":"switchNode","name":"switch wanPortId","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].name == 'wanPortId'`\">\n","comments":"","outputs":1,"x":3454.50390625,"y":320.3018342554569,"z":"b1d019b.6dbd8e8","wires":[["42e60a6a.aa3574"]]},{"id":"42e60a6a.aa3574","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3684.5039100646973,"y":320.30194583535194,"z":"b1d019b.6dbd8e8","wires":[["ae0a5d97.a78e5"]]},{"id":"ae0a5d97.a78e5","type":"set","name":"set prop.spoke.wanPortId","xml":"<set>\n<parameter name='prop.spoke.wanPortId' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].value`' />\n","comments":"","x":3911.5046463012695,"y":321.9025279581547,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"efdc38fc.1f5628","type":"switchNode","name":"switch providerIpAddress","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].name == 'providerIpAddress'`\">\n","comments":"","outputs":1,"x":3472.504066467285,"y":364.30178466439247,"z":"b1d019b.6dbd8e8","wires":[["ac0b6cb5.77b59"]]},{"id":"ac0b6cb5.77b59","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3672.5038414001465,"y":364.30194678902626,"z":"b1d019b.6dbd8e8","wires":[["f9d16c81.a3a79"]]},{"id":"f9d16c81.a3a79","type":"set","name":"set prop.spoke.providerIpAddress","xml":"<set>\n<parameter name='prop.spoke.providerIpAddress' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].value`' />\n","comments":"","x":3899.5045776367188,"y":365.902528911829,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"8e38557b.879d28","type":"switchNode","name":"switch ipAddress","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].name == 'ipAddress'`\">\n","comments":"","outputs":1,"x":3452.503894805908,"y":403.3018209040165,"z":"b1d019b.6dbd8e8","wires":[["3e49c027.9158a"]]},{"id":"3e49c027.9158a","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3676.5037231445312,"y":403.3019382059574,"z":"b1d019b.6dbd8e8","wires":[["63fb7b99.9c4f54"]]},{"id":"63fb7b99.9c4f54","type":"set","name":"set prop.spoke.ipAddress","xml":"<set>\n<parameter name='prop.spoke.ipAddress' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$widx].value`' />\n","comments":"","x":3903.5044593811035,"y":404.90252032876015,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"95ab5318.2e5c4","type":"block","name":"block: atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1020.0038070678711,"y":262.50004068017006,"z":"b1d019b.6dbd8e8","wires":[["8881f8e.5bc9208","52b0eddb.8791b4","532b1f7d.9c604","30347a07.26c8f6"]]},{"id":"6dbd8249.403ccc","type":"comment","name":"get spoke device,site,wanport info","info":"","comments":"","x":1776.97265625,"y":385.9687458574772,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"6c52be5d.b4d02","type":"comment","name":"Add routes only on activation of spoke Attach site","info":"","comments":"","x":1437.5038223266602,"y":329.0000597536564,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"ac54d054.7cd81","type":"comment","name":"Loop for all the hub allotted resources, get respective service data and get vnfs info","info":"","comments":"","x":2193.50390625,"y":824.5000559389591,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"ff9f298a.cca7f8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2957.5037384033203,"y":1845.000134140253,"z":"b1d019b.6dbd8e8","wires":[["d59362d2.ef947","b082a709.11f708"]]},{"id":"3adcf839.875688","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3024.5037384033203,"y":1741.000010162592,"z":"b1d019b.6dbd8e8","wires":[["e169850b.ca2b98"]]},{"id":"d59362d2.ef947","type":"switchNode","name":"switch siteId","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$siteidx].name == 'siteId'`\">\n","comments":"","outputs":1,"x":3134.503547668457,"y":1816.9998003542423,"z":"b1d019b.6dbd8e8","wires":[["6377b71d.78eda8"]]},{"id":"6377b71d.78eda8","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3285.503917694092,"y":1815.999983459711,"z":"b1d019b.6dbd8e8","wires":[["d846e28e.6f3b8"]]},{"id":"d846e28e.6f3b8","type":"set","name":"set prop.hub.siteId","xml":"<set>\n<parameter name='prop.hub.siteId' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$siteidx].value`' />\n","comments":"","x":3457.5039253234863,"y":1813.6005522310734,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"23a8e35f.4687ac","type":"switchNode","name":"switch request-action","xml":"<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n","comments":"","outputs":1,"x":2611.0036544799805,"y":2169.000444084406,"z":"b1d019b.6dbd8e8","wires":[["98e33ddb.b0dca","c2b4abbd.4bca28"]]},{"id":"98e33ddb.b0dca","type":"outcome","name":"ActivateSDWANAttachmentInstance","xml":"<outcome value='ActivateSDWANAttachmentInstance'>","comments":"","outputs":1,"x":2881.0310592651367,"y":1980.0314766466618,"z":"b1d019b.6dbd8e8","wires":[["6bb4758a.3f2dbc"]]},{"id":"d343e9eb.f9d438","type":"execute","name":"execute RestApiCallNode underlay route","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-underlay.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/routing-protocol/static'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"underlayHubResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":3469.504180908203,"y":1950.0004482269287,"z":"b1d019b.6dbd8e8","wires":[["6e0b715b.cb6d1","1b5945c5.1fa10a"]]},{"id":"1b5945c5.1fa10a","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":3716.504009246826,"y":1929.000280380249,"z":"b1d019b.6dbd8e8","wires":[["2019f4f3.e1c6cc"]]},{"id":"6e0b715b.cb6d1","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3714.503688812256,"y":1885.0002708435059,"z":"b1d019b.6dbd8e8","wires":[["76b9bae0.83f2b4"]]},{"id":"df42caf7.594ce8","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing sdwan hub route underlay rest api\" />\n","comments":"","x":4002.505043029785,"y":1884.0006313323975,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"543ffebe.107f8","type":"set","name":"Add prop.hub.route","xml":"<set>\n<parameter name='prop.route.vpnId' value='`$prop.vpnId`' />\n<parameter name='prop.route.siteId' value='`$prop.hub.siteId`' />\n<parameter name='prop.route.deviceId' value='`$prop.hub.deviceId`' />\n<parameter name='prop.route.providerIpAddress' value='`$prop.hub.providerIpAddress`' />\n<parameter name='prop.route.wanportId' value='`$prop.spoke.wanPortId`' />\n<parameter name='prop.route.ipAddress' value='`$prop.hub.ipAddress`' />\n\n\n","comments":"","x":3404.8377838134766,"y":1920.6669883728027,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2e8b8d76.b2d882","type":"execute","name":"execute RestApiCallNode underlay route","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-underlay.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/routing-protocol/static'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"underlayspokeResp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":3486.838050842285,"y":2114.667499214411,"z":"b1d019b.6dbd8e8","wires":[["9396f713.11f4f8","348aaf89.0950a"]]},{"id":"348aaf89.0950a","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":3731.8382873535156,"y":2140.667496204376,"z":"b1d019b.6dbd8e8","wires":[["928f88f0.d6ee18"]]},{"id":"9396f713.11f4f8","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":3729.8379669189453,"y":2096.667486667633,"z":"b1d019b.6dbd8e8","wires":[["58d448af.a07fd8"]]},{"id":"38cd6644.9bd7ea","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing sdwan spoke route underlay rest api\" />\n","comments":"","x":4019.8393936157227,"y":2089.6679944992065,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"b2b73fd8.a499a","type":"set","name":"Add prop.spoke.route","xml":"<set>\n<parameter name='prop.route.vpnId' value='`$prop.vpnId`' />\n<parameter name='prop.route.siteId' value='`$prop.spoke.siteId`' />\n<parameter name='prop.route.deviceId' value='`$prop.spoke.deviceId`' />\n<parameter name='prop.route.providerIpAddress' value='`$prop.spoke.providerIpAddress`' />\n<parameter name='prop.route.wanportId' value='`$prop.hub.wanPortId`' /> \n<parameter name='prop.route.ipAddress' value='`$prop.spoke.ipAddress`' />\n\n\n","comments":"","x":3427.7019233703613,"y":2077.3642114698887,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f670e4e2.ed4a18","type":"set","name":"set prop.underlay.routeIds","xml":"<set>\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].hubSiteId' value='`$prop.hub.siteId`' />\n<!--parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].spokeSiteId' value='`$prop.spoke.siteId`' /-->\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].hubRouteId' value='`$underlayHubResp.success[0].id`' />\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].spokeRouteId' value='`$underlayspokeResp.success[0].id`' />\n\n\n\n","comments":"","x":3437.669448852539,"y":2237.0309874117374,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"6bb4758a.3f2dbc","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3117.003578186035,"y":1977.4999100267887,"z":"b1d019b.6dbd8e8","wires":[["543ffebe.107f8","b2b73fd8.a499a","f670e4e2.ed4a18","2e8b8d76.b2d882","d343e9eb.f9d438","154b4cb.99625b3","497ef4.1532d10c","7ece27e0.0e9908","aeaf4169.ad4e1","7b6ea599.d556bc"]]},{"id":"cda2bd2c.f7f2b","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3149.0036811828613,"y":2619.500260025263,"z":"b1d019b.6dbd8e8","wires":[["d9e2a3b8.be3d7","7877847f.fa07bc","32aaac62.305534","b552a294.7e377","4d9ba6d6.4948a8","5011194.82bcce8","aa5933c2.13ab"]]},{"id":"c2b4abbd.4bca28","type":"outcome","name":"DeactivateSDWANAttachmentInstance","xml":"<outcome value='DeactivateSDWANAttachmentInstance'>","comments":"","outputs":1,"x":2897.5037384033203,"y":2613.500071197748,"z":"b1d019b.6dbd8e8","wires":[["cda2bd2c.f7f2b"]]},{"id":"497ef4.1532d10c","type":"set","name":"Add sites to list and update length","xml":"<set>\n<parameter name='prop.provision.siteIds[$prop.provision.siteIds_length].hubSiteName' value='`$prop.hub.siteName`' />\n<parameter name='prop.provision.siteIds[$prop.provision.siteIds_length].hubSiteId' value='`$prop.hub.siteId`' />\n<parameter name='prop.provision.siteIds[$prop.provision.siteIds_length].spokeSiteName' value='`$prop.spoke.siteName`' />\n<parameter name='prop.provision.siteIds[$prop.provision.siteIds_length].spokeSiteId' value='`$prop.spoke.siteId`' />\n\n\n\n\n\n\n\n\n\n\n\n\n\n","comments":"","x":3442.0357360839844,"y":2362.0318676531315,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"536b45e5.f1ae4c","type":"comment","name":"save hubsiteIds and spoke siteIds for provision","info":"","comments":"","x":3474.0361099243164,"y":2318.0317417681217,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"fe259139.fb262","type":"switchNode","name":"switch name","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].name == 'name'`\">\n","comments":"","outputs":1,"x":3431.034912109375,"y":484.03124871850014,"z":"b1d019b.6dbd8e8","wires":[["1eff9aea.08d565"]]},{"id":"1eff9aea.08d565","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3631.0346870422363,"y":484.0314108431339,"z":"b1d019b.6dbd8e8","wires":[["498b6b56.a99af4"]]},{"id":"498b6b56.a99af4","type":"set","name":"set prop.spoke.siteName","xml":"<set>\n<parameter name='prop.spoke.siteName' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].value`' />\n","comments":"","x":3819.0354919433594,"y":482.6320244371891,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"b082a709.11f708","type":"switchNode","name":"switch name","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$siteidx].name == 'name'`\">\n","comments":"","outputs":1,"x":3133.0349349975586,"y":1783.5311075747013,"z":"b1d019b.6dbd8e8","wires":[["66b911d8.08a74"]]},{"id":"66b911d8.08a74","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3284.0353050231934,"y":1782.53129068017,"z":"b1d019b.6dbd8e8","wires":[["e9fd7b0e.9d3c98"]]},{"id":"e9fd7b0e.9d3c98","type":"set","name":"set prop.hub.siteName","xml":"<set>\n<parameter name='prop.hub.siteName' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.sitevidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$siteidx].value`' />\n","comments":"","x":3456.035312652588,"y":1780.1318594515324,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f5abf897.1c94a8","type":"set","name":"set prop.provision.siteIds_length=0","xml":"<set>\n<parameter name='prop.provision.siteIds_length' value='0' />\n\n\n\n","comments":"","x":456.03517150878906,"y":370.0312534868717,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"487dcb6d.a39b04","type":"execute","name":"execute RestApiCallNode site provision urls","xml":"<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-site-provision.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/sites/provision-urls'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"provisionUrlRsp\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />","comments":"","outputs":1,"x":796.0352783203125,"y":786.031494140625,"z":"b1d019b.6dbd8e8","wires":[["ffc902c4.10ca6","e8f294ed.ea5b38"]]},{"id":"e8f294ed.ea5b38","type":"success","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":1051.0354766845703,"y":821.0315399169922,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"ffc902c4.10ca6","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":1047.0352783203125,"y":748.0314774513245,"z":"b1d019b.6dbd8e8","wires":[["f3276258.b0845"]]},{"id":"f3276258.b0845","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing provision url rest api\" />\n","comments":"","x":1218.0357704162598,"y":779.0314909517765,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e484905a.ff144","type":"for","name":"for providx..prop.provision.siteIds[]","xml":"<for index='providx' start='0' end='`$prop.provision.siteIds_length`' >\n","comments":"","outputs":1,"x":449.0352020263672,"y":574.031293541193,"z":"b1d019b.6dbd8e8","wires":[["632e756e.6e9b1c"]]},{"id":"632e756e.6e9b1c","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":473.0352439880371,"y":784.0312668383121,"z":"b1d019b.6dbd8e8","wires":[["2e3f9820.f1c8a8","487dcb6d.a39b04","b564c84.911a938"]]},{"id":"2e3f9820.f1c8a8","type":"set","name":"set prop.spoke.hubSiteId, spokeSiteId","xml":"<set>\n<parameter name='prop.provision.hubSitename' value='`$prop.provision.siteIds[$providx].hubSiteName`' />\n<parameter name='prop.provision.spokeSitename' value='`$prop.provision.siteIds[$providx].spokeSiteName`' />\n<parameter name='prop.provision.hubspokesite[0]' value='`$prop.provision.siteIds[$providx].hubSiteId`' />\n<parameter name='prop.provision.hubspokesite[1]' value='`$prop.provision.siteIds[$providx].spokeSiteId`' />\n<parameter name='prop.provision.hubspokesite_length' value='2' />\n","comments":"","x":779.0379333496094,"y":736.6330394744873,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"b564c84.911a938","type":"record","name":"record provision url response to the file","xml":"<record plugin=\"org.onap.ccsdk.sli.core.sli.recording.FileRecorder\">\n<parameter name=\"file\" value=\"`'/opt/opendaylight/current/data/log/' + 'HUB-' + $prop.provision.hubSitename + '-SPOKE-' + $prop.provision.spokeSitename + '-provisionUrl'`\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value='`$provisionUrlRsp.success[0].url`'/>\n\n","comments":"","outputs":1,"x":785.0353393554688,"y":835.0314025878906,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"35d495b.f10696a","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2522.035388946533,"y":1051.0313250124454,"z":"b1d019b.6dbd8e8","wires":[["2ab4ecb3.a0e7b4"]]},{"id":"684cbe0.d0ae544","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":2002.0350646972656,"y":614.0313078463078,"z":"b1d019b.6dbd8e8","wires":[["9bdd2027.61dcf"]]},{"id":"8db55ac9.a24998","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1946.0352325439453,"y":705.0312162935734,"z":"b1d019b.6dbd8e8","wires":[["62066499.8552ec","40faa7d6.f30958"]]},{"id":"154b4cb.99625b3","type":"set","name":"set prop.underlay.routeIds_length++","xml":"<set>\n<parameter name='prop.underlay.routeIds_length' value='`$prop.underlay.routeIds_length + 1`' />\n\n\n\n\n","comments":"","x":3467.0050659179688,"y":2273.250064522028,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"7ece27e0.0e9908","type":"set","name":"Update prop.provision.siteIds_length","xml":"<set>\n<parameter name='prop.provision.siteIds_length' value='`$prop.provision.siteIds_length + 1`' />\n\n\n\n\n\n\n\n\n\n\n\n\n","comments":"","x":3450.5048065185547,"y":2397.2501598894596,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"d545295b.570bb8","type":"set","name":"set prop.spoke.siteidx","xml":"<set>\n<parameter name='prop.spoke.siteidx' value='`$i`' />\n\n","comments":"","x":2890.7540969848633,"y":450.00002732872963,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"f0e8f4fb.c20608","type":"set","name":"set underlay route ids to service data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].name' value=\"underlayRouteIds\" />\n<parameter name='service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length].value' value='`$tmp.routeString`' />\n\n\n","comments":"","x":1913.0045471191406,"y":1937.0003973543644,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e2e0c9ba.1ae298","type":"set","name":"set prop.underlay.routeIds_length=0","xml":"<set>\n<parameter name='prop.underlay.routeIds_length' value='0' />\n\n\n\n","comments":"","x":461.0000305175781,"y":321.99611154198647,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"4d9ba6d6.4948a8","type":"for","name":"for loop uidx - Get route Id from prop.underlay.routeIds","xml":"<for index=\"uidx\" start=\"0\" end=\"`$prop.underlay.routeIds_length`\">\n \n \n","comments":"","outputs":1,"x":3504.6669387817383,"y":2492.3294989168644,"z":"b1d019b.6dbd8e8","wires":[["b779a699.2b9d28"]]},{"id":"b779a699.2b9d28","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3796.3336334228516,"y":2492.3294989168644,"z":"b1d019b.6dbd8e8","wires":[["a219586f.d987c8"]]},{"id":"a219586f.d987c8","type":"switchNode","name":"switch prop.hub.siteId","xml":"<switch test=\"`$prop.underlay.routeIds[$uidx].hubSiteId == $prop.hub.siteId`\">\n","comments":"","outputs":1,"x":3985.3336486816406,"y":2492.3296619951725,"z":"b1d019b.6dbd8e8","wires":[["55260cd6.1fda94"]]},{"id":"55260cd6.1fda94","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":4156.333084106445,"y":2492.329661041498,"z":"b1d019b.6dbd8e8","wires":[["7c71da62.bde474"]]},{"id":"7c71da62.bde474","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":4310.333084106445,"y":2496.3296686708927,"z":"b1d019b.6dbd8e8","wires":[["ddeb2690.5c2138"]]},{"id":"ddeb2690.5c2138","type":"set","name":"set prop.hubRouteId prop.spokeRouteId","xml":"<set>\n<parameter name='prop.hubRouteId' value='`$prop.underlay.routeIds[$uidx].hubRouteId`' />\n<parameter name='prop.spokeRouteId' value='`$prop.underlay.routeIds[$uidx].spokeRouteId`' />\n","comments":"","x":4396.33309173584,"y":2568.32967248559,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"9b298a8b.b4f888","type":"switchNode","name":"switch underlayRouteIds","xml":"<switch test=\"`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].name == 'underlayRouteIds'`\">\n","comments":"","outputs":1,"x":3436,"y":588.6627184450626,"z":"b1d019b.6dbd8e8","wires":[["3be394fa.ba925c"]]},{"id":"3be394fa.ba925c","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3635.9994773864746,"y":576.6628328859806,"z":"b1d019b.6dbd8e8","wires":[["9920e23b.cd7d6"]]},{"id":"b59167a6.831738","type":"set","name":"set prop.underlay.routeIds","xml":"<set>\n<parameter name='prop.underlay.routeIdsString' value='`$service-data.vnfs.vnf[$i].vnf-data.vnf-request-input.vnf-input-parameters.param[$sidx].value`' />\n","comments":"","x":4007.000877380371,"y":576.2635428011417,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2e975a9d.1a4246","type":"switchNode","name":"switch request-action","xml":"<switch test='`$connection-attachment-topology-operation-input.request-information.request-action`'>\n","comments":"","outputs":1,"x":1123.0002899169922,"y":2028.329627662897,"z":"b1d019b.6dbd8e8","wires":[["50fd57d3.4e6908","75c971c8.2ade9"]]},{"id":"50fd57d3.4e6908","type":"outcome","name":"ActivateSDWANAttachmentInstance","xml":"<outcome value='ActivateSDWANAttachmentInstance'>","comments":"","outputs":1,"x":1387.0003356933594,"y":1983.3296248018742,"z":"b1d019b.6dbd8e8","wires":[["392209cf.5e8ed6"]]},{"id":"392209cf.5e8ed6","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1628.9728469848633,"y":1979.7983757555485,"z":"b1d019b.6dbd8e8","wires":[["f0e8f4fb.c20608","c79bd758.d1a228","c32378d4.836d48","ec775956.c66808"]]},{"id":"c8905137.4ae61","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1632.9728355407715,"y":2063.7985445559025,"z":"b1d019b.6dbd8e8","wires":[["b63c926.b7d007"]]},{"id":"75c971c8.2ade9","type":"outcome","name":"DeactivateSDWANAttachmentInstance","xml":"<outcome value='DeactivateSDWANAttachmentInstance'>","comments":"","outputs":1,"x":1384.4729766845703,"y":2065.7983814775944,"z":"b1d019b.6dbd8e8","wires":[["c8905137.4ae61"]]},{"id":"b63c926.b7d007","type":"set","name":"set input parameter length -1","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length' value='`$service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length - 1`' />\n\n\n\n\n","comments":"","x":1861.6665344238281,"y":2062.32963052392,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"ada095aa.2b5138","type":"comment","name":"Get route routes IDs","info":"","comments":"","x":3404.3334045410156,"y":2453.6627356112003,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"c79bd758.d1a228","type":"set","name":"set underlay route ids to service data","xml":"<set>\n<parameter name='service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length' value='`$service-data.vnfs.vnf[$prop.spoke.siteidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length + 1`' />\n\n\n\n\n","comments":"","x":1902.333480834961,"y":2011.6626717150211,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"c32378d4.836d48","type":"for","name":"for jidx paramidx - Get topology from servicedata","xml":"<for index=\"jidx\" start=\"0\" end=\"`$prop.underlay.routeIds_length`\">\n \n \n","comments":"","outputs":1,"x":1991.3334045410156,"y":1558.329443603754,"z":"b1d019b.6dbd8e8","wires":[["59aabb37.7454e4"]]},{"id":"81edad0c.4f5ac","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.concat`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat1\"/>\n <parameter name=\"target\" value='`$prop.underlay.routeIds[$jidx].hubRouteId`'/>\n\n\n","comments":"","outputs":1,"x":2175.333740234375,"y":1691.996646553278,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"7fab8278.4c656c","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$prop.underlay.routeIds[$jidx].hubSiteId`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat\"/>\n <parameter name=\"target\" value=\",\"/>\n\n\n","comments":"","outputs":1,"x":2185.3337326049805,"y":1644.662984520197,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"59aabb37.7454e4","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":1898.333423614502,"y":1743.662773758173,"z":"b1d019b.6dbd8e8","wires":[["7fab8278.4c656c","81edad0c.4f5ac","bd7613d0.c6069","cafff242.d3dff","2fe3b3bd.2bc2ac","6f5dac0d.df1414"]]},{"id":"bd7613d0.c6069","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.concat1`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat2\"/>\n <parameter name=\"target\" value=\",\"/>\n\n\n","comments":"","outputs":1,"x":2182.3334426879883,"y":1731.6628777086735,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"cafff242.d3dff","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.concat2`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat3\"/>\n <parameter name=\"target\" value='`$prop.underlay.routeIds[$jidx].spokeRouteId`'/>\n\n\n","comments":"","outputs":1,"x":2182.3334426879883,"y":1767.6628777086735,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"2fe3b3bd.2bc2ac","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.concat3`'/>\n <parameter name=\"outputPath\" value=\"tmp.concat4\"/>\n <parameter name=\"target\" value=\" | \"/>\n\n\n","comments":"","outputs":1,"x":2175.3334426879883,"y":1807.996251732111,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"6f5dac0d.df1414","type":"execute","name":"execute concat","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='concat' >\n <parameter name=\"source\" value='`$tmp.routeString`'/>\n <parameter name=\"outputPath\" value=\"tmp.routeString\"/>\n <parameter name=\"target\" value='`$tmp.concat4`'/>\n\n\n","comments":"","outputs":1,"x":2178.333381652832,"y":1862.6627909243107,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"ec775956.c66808","type":"set","name":"Set tmp.routeString","xml":"<set>\n<parameter name='tmp.routeString' value=\"\" />\n\n","comments":"","x":1895.3334045410156,"y":1499.6627747118473,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"9920e23b.cd7d6","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3784.0002250671387,"y":622.9961306154728,"z":"b1d019b.6dbd8e8","wires":[["b59167a6.831738","c00c7b4.2e5c088"]]},{"id":"c00c7b4.2e5c088","type":"execute","name":"execute split |","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$prop.underlay.routeIdsString`'/>\n<parameter name=\"regex\" value=\" | \"/>\n<parameter name=\"ctx_memory_result_key\" value=\"prop.underlay.routeIdsValue\"/>\n","comments":"","outputs":1,"x":3962.0002365112305,"y":642.9961306154728,"z":"b1d019b.6dbd8e8","wires":[["d71d5ee6.5fb61","71f30ffd.74297"]]},{"id":"71f30ffd.74297","type":"failure","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":4139.0002517700195,"y":623.9961296617985,"z":"b1d019b.6dbd8e8","wires":[["5a3e2b9e.9c82d4"]]},{"id":"d71d5ee6.5fb61","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":4128.0002517700195,"y":671.9961315691471,"z":"b1d019b.6dbd8e8","wires":[["e2b81ef4.58103"]]},{"id":"3ae500a3.3e9bf","type":"set","name":"set ipAddress prefixLength","xml":"<set>\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].hubSiteId' value='`$prop.underlay.routeIdsValues[0]`' />\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].hubRouteId' value='`$prop.underlay.routeIdsValues[1]`' />\n<parameter name='prop.underlay.routeIds[$prop.underlay.routeIds_length].spokeRouteId' value='`$prop.underlay.routeIdsValues[2]`' />","comments":"","x":5325.001117706299,"y":557.9963718950748,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"e2b81ef4.58103","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":4258.000255584717,"y":671.9961315691471,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"5a3e2b9e.9c82d4","type":"for","name":"for loop ridx ","xml":"<for index=\"ridx\" start=\"0\" end=\"`$prop.underlay.routeIdsValue_length`\">\n \n \n","comments":"","outputs":1,"x":4284.999938964844,"y":621.9961296617985,"z":"b1d019b.6dbd8e8","wires":[["51bc75fb.70c9ec"]]},{"id":"51bc75fb.70c9ec","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":4463.332950592041,"y":618.9961306154728,"z":"b1d019b.6dbd8e8","wires":[["96fd714e.32a33"]]},{"id":"96fd714e.32a33","type":"execute","name":"execute split ,","xml":"<execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\n<parameter name=\"original_string\" value='`$prop.underlay.routeIdsValue[$ridx]`'/>\n<parameter name=\"regex\" value=\",\"/>\n<parameter name=\"ctx_memory_result_key\" value=\"prop.underlay.routeIdsValues\"/>\n","comments":"","outputs":1,"x":4638.332962036133,"y":617.9961287081242,"z":"b1d019b.6dbd8e8","wires":[["1c090ebd.4b1411","d83771e1.cb93f"]]},{"id":"1c090ebd.4b1411","type":"failure","name":"success","xml":"<outcome value='success'>\n","comments":"","outputs":1,"x":4795.33296585083,"y":594.9961363375187,"z":"b1d019b.6dbd8e8","wires":[["669de5ac.6729ac"]]},{"id":"d83771e1.cb93f","type":"failure","name":"failure","xml":"<outcome value='failure'>\n","comments":"","outputs":1,"x":4784.33296585083,"y":642.9961382448673,"z":"b1d019b.6dbd8e8","wires":[["cb663456.f36218"]]},{"id":"cb663456.f36218","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":4914.332969665527,"y":642.9961382448673,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"c59be3a3.5f1ff","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":5117.665496826172,"y":573.9962903559208,"z":"b1d019b.6dbd8e8","wires":[["3ae500a3.3e9bf","52bf6eab.78af3"]]},{"id":"52bf6eab.78af3","type":"set","name":"set ipAddress prefixLength","xml":"<set>\n<parameter name='prop.underlay.routeIds_length' value='`$prop.underlay.routeIds_length + 1`' />\n","comments":"","x":5317.333156585693,"y":599.9961678087711,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"669de5ac.6729ac","type":"switchNode","name":"switch prop.underlay.routeIdsValues_length","xml":"<switch test='`$prop.underlay.routeIdsValues_length`'>\n","comments":"","outputs":1,"x":4993.667121887207,"y":475.9961611330509,"z":"b1d019b.6dbd8e8","wires":[["43831c53.32aa44","286a0e51.c7df42"]]},{"id":"43831c53.32aa44","type":"outcome","name":"3","xml":"<outcome value='3'>\n","comments":"","outputs":1,"x":5228.636054992676,"y":512.9648882448673,"z":"b1d019b.6dbd8e8","wires":[["c59be3a3.5f1ff"]]},{"id":"286a0e51.c7df42","type":"other","name":"other","xml":"<outcome value='Other'>\n","comments":"","outputs":1,"x":5245.666980743408,"y":394.9961020052433,"z":"b1d019b.6dbd8e8","wires":[["b1a5d346.3c838"]]},{"id":"b1a5d346.3c838","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":5406.66650390625,"y":434.99609246850014,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"9edc0016.5374a","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"404\" />\n <parameter name=\"error-message\" value=\"Error: SOTN resource not found\" />\n \n","comments":"","x":2886.006446838379,"y":1008.3028489649296,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"36139e8.434ce62","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":2872.0059547424316,"y":956.969269901514,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"aeaf4169.ad4e1","type":"set","name":"hardcode hub route","xml":"<set>\n<parameter name='prop.hub.ipAddress' value=\"10.2.0.2\" />\n<parameter name='prop.hub.providerIpAddress' value=\"10.2.0.0/16\" />\n\n\n","comments":"","x":3406.0079498291016,"y":1889.0040550231934,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"7b6ea599.d556bc","type":"set","name":"hardcode spoke route","xml":"<set>\n<parameter name='prop.spoke.ipAddress' value=\"10.3.0.1\" />\n<parameter name='prop.spoke.providerIpAddress' value=\"10.3.0.0/16\" />","comments":"","x":3421.008316040039,"y":2046.0039640963078,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"5011194.82bcce8","type":"set","name":"hardcode hub route","xml":"<set>\n<parameter name='prop.hub.ipAddress' value=\"10.2.0.2\" />\n<parameter name='prop.hub.providerIpAddress' value=\"10.2.0.0/16\" />\n\n\n","comments":"","x":3437.3374786376953,"y":2522.000064522028,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"aa5933c2.13ab","type":"set","name":"hardcode spoke route","xml":"<set>\n<parameter name='prop.spoke.ipAddress' value=\"10.3.0.1\" />\n<parameter name='prop.spoke.providerIpAddress' value=\"10.3.0.0/16\" />","comments":"","x":3462.337158203125,"y":2633.9999987185,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"2c880b10.265824","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3473.0080757141113,"y":1253.5040480196476,"z":"b1d019b.6dbd8e8","wires":[["c82b1262.885e1","43b2a05a.a7d9b"]]},{"id":"27cac422.cfe53c","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3803.2580280303955,"y":1421.0040365755558,"z":"b1d019b.6dbd8e8","wires":[["4095ea96.600eb4"]]},{"id":"4095ea96.600eb4","type":"switchNode","name":"switch transportNetworkName==prop.spoke.transportNetworkName","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.portvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value == $prop.spoke.transportNetworkName`\">\n","comments":"","outputs":1,"x":4136.008050918579,"y":1423.0043121874332,"z":"b1d019b.6dbd8e8","wires":[["62cc8a78.a53c54"]]},{"id":"62cc8a78.a53c54","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":4003.0094957351685,"y":1519.0042206346989,"z":"b1d019b.6dbd8e8","wires":[["79266ace.3e0f24"]]},{"id":"79266ace.3e0f24","type":"block","name":"block atmoic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":4158.759503364563,"y":1511.0042206346989,"z":"b1d019b.6dbd8e8","wires":[["b05226c4.bd3a28","eaeb7669.551da8"]]},{"id":"eaeb7669.551da8","type":"set","name":"set tmp.wanportvidx ","xml":"<set>\n<parameter name='tmp.wanportvidx' value='`$arvidx`' />\n\n","comments":"","x":4336.2604722976685,"y":1487.004341751337,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"eb5f2e.bb7a50d","type":"for","name":"for loop wanportvidx - Get wan port ID from servicedata","xml":"<for index=\"wportidx\" start=\"0\" end=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param_length`\">\n \n \n","comments":"","outputs":1,"x":2744.5081939697266,"y":1699.0043436586857,"z":"b1d019b.6dbd8e8","wires":[["94ca8906.8e1df8"]]},{"id":"94ca8906.8e1df8","type":"block","name":"block atomic","xml":"<block atomic=\"true\">\n","atomic":"false","comments":"","outputs":1,"x":3047.5095977783203,"y":1657.004679352045,"z":"b1d019b.6dbd8e8","wires":[["de2e10d.04cb7f","c3406431.579fb8","5a48c14b.c2614"]]},{"id":"de2e10d.04cb7f","type":"switchNode","name":"switch wanPortId","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].name == 'wanPortId'`\">\n","comments":"","outputs":1,"x":3246.8432846069336,"y":1614.0048920214176,"z":"b1d019b.6dbd8e8","wires":[["31fd8292.a950ce"]]},{"id":"31fd8292.a950ce","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3407.8436126708984,"y":1615.0049721300602,"z":"b1d019b.6dbd8e8","wires":[["d6943196.7494d"]]},{"id":"d6943196.7494d","type":"set","name":"set prop.hub.wanPortId","xml":"<set>\n<parameter name='prop.hub.wanPortId' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value`' />\n","comments":"","x":3597.8440742492676,"y":1614.6052481234074,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"c3406431.579fb8","type":"switchNode","name":"switch providerIpAddress","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].name == 'providerIpAddress'`\">\n","comments":"","outputs":1,"x":3268.371768951416,"y":1651.2011968195438,"z":"b1d019b.6dbd8e8","wires":[["db88a61d.083358"]]},{"id":"db88a61d.083358","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3444.3727531433105,"y":1651.2013193666935,"z":"b1d019b.6dbd8e8","wires":[["5328c878.a15168"]]},{"id":"5328c878.a15168","type":"set","name":"set prop.hub.providerIpAddress","xml":"<set>\n<parameter name='prop.hub.providerIpAddress' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value`' />\n","comments":"","x":3646.372791290283,"y":1651.8012396395206,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"5a48c14b.c2614","type":"switchNode","name":"switch ipAddress","xml":"<switch test=\"`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].name == 'ipAddress'`\">\n","comments":"","outputs":1,"x":3240.871850967407,"y":1688.7012821733952,"z":"b1d019b.6dbd8e8","wires":[["1b2197ee.121938"]]},{"id":"1b2197ee.121938","type":"outcomeTrue","name":"true","xml":"<outcome value='true'>\n","comments":"","outputs":1,"x":3444.872791290283,"y":1688.7012340128422,"z":"b1d019b.6dbd8e8","wires":[["fe46a76e.a6fa58"]]},{"id":"fe46a76e.a6fa58","type":"set","name":"set prop.hub.ipAddress","xml":"<set>\n<parameter name='prop.hub.ipAddress' value='`$mdsal-arsd.service-data.vnfs.vnf[$tmp.wanportvidx].vnf-data.vnf-request-input.vnf-input-parameters.param[$wportidx].value`' />\n","comments":"","x":3639.8727951049805,"y":1688.3012095987797,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"76b9bae0.83f2b4","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3847.258213043213,"y":1882.2540187835693,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"2019f4f3.e1c6cc","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3846.258029937744,"y":1928.253957748413,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"58d448af.a07fd8","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3865.258399963379,"y":2090.254084587097,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"928f88f0.d6ee18","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3866.2581577301025,"y":2137.2540855407715,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"a62325e4.8d0b68","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3864.2582054138184,"y":2580.0039698183537,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"3b45764d.017e4a","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3865.257963180542,"y":2627.003970772028,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"8336cdde.f9fe3","type":"returnFailure","name":"return failure","xml":"<return status='failure'>\n\t<parameter name='ack-final' value='Y'/>\n\t<parameter name=\"error-code\" value=\"500\" />\n <parameter name=\"error-message\" value=\"Error executing sdwan hub route underlay rest api\" />\n","comments":"","x":4017.340606689453,"y":2581.9710108339787,"z":"b1d019b.6dbd8e8","wires":[]},{"id":"8c851f6f.caa55","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3864.2578125,"y":2671.0039049685,"z":"b1d019b.6dbd8e8","wires":[[]]},{"id":"29ad144c.f2690c","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":3865.2575702667236,"y":2718.0039059221745,"z":"b1d019b.6dbd8e8","wires":[[]]}] \ No newline at end of file
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.json
index 0b1772df..e920aca2 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.json
@@ -394,7 +394,7 @@
"id": "cd48267e.9edf28",
"type": "execute",
"name": "execute RestApiCallNode Create SDWAN site",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-site-' + $template.site.role + '.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/sites'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"site-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-site-' + $template.site.role + '.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/sites'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"site-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1250.71484375,
@@ -480,7 +480,7 @@
"id": "416674e0.73681c",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 1224.468879699707,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.json
index f97be6bb..739b68f0 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.json
@@ -683,7 +683,7 @@
"id": "f6e580dc.483b5",
"type": "execute",
"name": "execute RestApiCallNode Create SDWAN site",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-site-del.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/sites/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"site-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sdwan-site-del.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/campus/v1/sdwan/net/sites/action/batch-delete'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"site-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1288.8574905395508,
@@ -930,7 +930,7 @@
"id": "8fc11da9.0efed",
"type": "execute",
"name": "execute RestApiCallNode Get token",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/actokentemplate.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/controller/v2/tokens'`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"token-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>",
"comments": "",
"outputs": 1,
"x": 1277.0000762939453,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json
index 80b22323..a7f0a982 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.json
@@ -1528,7 +1528,7 @@
"id": "ce79c05a.55781",
"type": "execute",
"name": "execute RestApiCallNode Create ethernet Service",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/sotn-ethernet-service.json'`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-eth-tran-service:etht-svc'`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"patch\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1945.96923828125,
@@ -1857,7 +1857,7 @@
"id": "dfdb9aed.f71ce8",
"type": "execute",
"name": "execute RestApiCallNode getPath from OOF",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.oof.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.oof.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"oof\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"templateFileName\" value=\"`$prop.restapi.templateDir + '/' + $prop.restapi.oof-getpath.templatefile`\" />\n<parameter name=\"restapiUrl\" value=\"`$prop.restapi.connection-oof-url`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.oof.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.oof.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"post\"/>\n<parameter name=\"responsePrefix\" value=\"oof\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 1473.973056793213,
diff --git a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json
index a0bd528a..be0e1699 100644
--- a/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json
+++ b/platform-logic/generic-resource-api/src/main/json/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.json
@@ -1263,7 +1263,7 @@
"id": "8e68e45a.813908",
"type": "execute",
"name": "execute RestApiCallNode Delete ethernet Service",
- "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-eth-tran-service:etht-svc/etht-svc-instances=' + $tmp.actual.vpn-name`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
+ "xml": "<execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\n<parameter name=\"restapiUrl\" value=\"`$prop.sdncRestApi.thirdpartySdnc.url + '/restconf/data/ietf-eth-tran-service:etht-svc/etht-svc-instances=' + $tmp.actual.vpn-name`\" />\n<parameter name=\"restapiUser\" value=\"`$prop.sdncRestApi.thirdpartySdnc.user`\" />\n<parameter name=\"restapiPassword\" value=\"`$prop.sdncRestApi.thirdpartySdnc.password`\" />\n<parameter name=\"format\" value=\"json\"/>\n<parameter name=\"httpMethod\" value=\"delete\"/>\n<parameter name=\"responsePrefix\" value=\"vpn-result\"/>\n<parameter name=\"trustStoreFileName\" value=\"/opt/onap/sdnc/data/stores/truststore.onap.client.jks\"/>\n<parameter name=\"trustStorePassword\" value=\"adminadmin\"/>\n<parameter name=\"keyStoreFileName\" value=\"/opt/onap/sdnc/data/stores/sdnc.p12\"/>\n<parameter name=\"keyStorePassword\" value=\"adminadmin\"/>\n<parameter name='customHttpHeaders' value=\"`'X-ACCESS-TOKEN=' + $prop.sdncRestApi.token_id`\" />",
"comments": "",
"outputs": 1,
"x": 2292.96964263916,
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-create.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-create.xml
index 54585562..b3e2b210 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-create.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-create.xml
@@ -402,7 +402,7 @@
<parameter name="format" value="json" />
<parameter name="httpMethod" value="post" />
<parameter name="responsePrefix" value="token-result" />
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks" />
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks" />
<parameter name="trustStorePassword" value="adminadmin" />
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12" />
<parameter name="keyStorePassword" value="adminadmin" />
@@ -427,7 +427,7 @@
<parameter name="format" value="json" />
<parameter name="httpMethod" value="post" />
<parameter name="responsePrefix" value="vpn-result" />
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks" />
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks" />
<parameter name="trustStorePassword" value="adminadmin" />
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12" />
<parameter name="keyStorePassword" value="adminadmin" />
@@ -451,7 +451,7 @@
<parameter name="format" value="json" />
<parameter name="httpMethod" value="put" />
<parameter name="responsePrefix" value="vrf-result" />
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks" />
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks" />
<parameter name="trustStorePassword" value="adminadmin" />
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12" />
<parameter name="keyStorePassword" value="adminadmin" />
@@ -475,7 +475,7 @@
<parameter name="format" value="json" />
<parameter name="httpMethod" value="post" />
<parameter name="responsePrefix" value="site-result" />
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks" />
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks" />
<parameter name="trustStorePassword" value="adminadmin" />
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12" />
<parameter name="keyStorePassword" value="adminadmin" />
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-delete.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-delete.xml
index a6392bad..06240451 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-delete.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_network-topology-operation-delete.xml
@@ -145,7 +145,7 @@
<parameter name="format" value="json" />
<parameter name="httpMethod" value="post" />
<parameter name="responsePrefix" value="token-result" />
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks" />
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks" />
<parameter name="trustStorePassword" value="adminadmin" />
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12" />
<parameter name="keyStorePassword" value="adminadmin" />
@@ -169,7 +169,7 @@
<parameter name="format" value="json" />
<parameter name="httpMethod" value="delete" />
<parameter name="responsePrefix" value="site-result" />
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks" />
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks" />
<parameter name="trustStorePassword" value="adminadmin" />
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12" />
<parameter name="keyStorePassword" value="adminadmin" />
@@ -192,7 +192,7 @@
<parameter name="format" value="json" />
<parameter name="httpMethod" value="delete" />
<parameter name="responsePrefix" value="vrf1-result" />
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks" />
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks" />
<parameter name="trustStorePassword" value="adminadmin" />
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12" />
<parameter name="keyStorePassword" value="adminadmin" />
@@ -215,7 +215,7 @@
<parameter name="format" value="json" />
<parameter name="httpMethod" value="delete" />
<parameter name="responsePrefix" value="vrf2-result" />
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks" />
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks" />
<parameter name="trustStorePassword" value="adminadmin" />
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12" />
<parameter name="keyStorePassword" value="adminadmin" />
@@ -238,7 +238,7 @@
<parameter name="format" value="json" />
<parameter name="httpMethod" value="delete" />
<parameter name="responsePrefix" value="vpn-result" />
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks" />
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks" />
<parameter name="trustStorePassword" value="adminadmin" />
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12" />
<parameter name="keyStorePassword" value="adminadmin" />
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.xml
index c54ff02a..df80e2dd 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-activate.xml
@@ -302,7 +302,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -355,7 +355,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="tenant-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -369,7 +369,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -393,7 +393,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.xml
index 2d10d4e3..180d3179 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-attachment-topology-operation-deactivate.xml
@@ -343,7 +343,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -396,7 +396,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="tenant-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -411,7 +411,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -435,7 +435,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.xml
index 64885828..98d8bc9e 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-get-tenant-auth.xml
@@ -39,7 +39,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="tenant-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.xml
index 553852d3..ffd5ee73 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-activate.xml
@@ -65,7 +65,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -111,7 +111,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="tenant-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -134,7 +134,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="tenant-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -154,7 +154,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="tenant-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -181,7 +181,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="orchestration-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -197,7 +197,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -215,7 +215,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.xml
index abbe0898..f2d0b1bf 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-network-topology-operation-deactivate.xml
@@ -79,7 +79,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -115,7 +115,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="put"/>
<parameter name="responsePrefix" value="tenant-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -140,7 +140,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="delete"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -154,7 +154,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.xml
index cb02af60..54bae832 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-activate.xml
@@ -74,7 +74,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -96,7 +96,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="deviceResp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.xml
index 9ded93e9..d2a8129a 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-device-deactivate.xml
@@ -67,7 +67,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -95,7 +95,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="delete"/>
<parameter name="responsePrefix" value="deviceResp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.xml
index 0116dac2..720c1da2 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-activate.xml
@@ -175,7 +175,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -201,7 +201,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="portResp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -227,7 +227,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="get"/>
<parameter name="responsePrefix" value="transportNetworksResp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -279,7 +279,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="wanPortResp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.xml
index bf5d4af1..fa3d885f 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-vnf-topology-operation-wanport-deactivate.xml
@@ -87,7 +87,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.xml
index 290426ba..d075c21d 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sdwan-wanport-vnf-topology-operation-underlay.xml
@@ -512,7 +512,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="underlayHubResp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -544,7 +544,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="underlayspokeResp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -613,7 +613,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="underlayHubResp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -646,7 +646,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="underlayspokeResp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -751,7 +751,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="provisionUrlRsp"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.xml
index 3fc0bc7f..4c0e09f1 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-activate.xml
@@ -154,7 +154,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -176,7 +176,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="site-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.xml
index de4d052d..4f90141d 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_site-vnf-topology-operation-deactivate.xml
@@ -124,7 +124,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="token-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -146,7 +146,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="site-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml
index 9e0e96c6..28f3b757 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-activate.xml
@@ -358,7 +358,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="post"/>
<parameter name="responsePrefix" value="oof"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
@@ -439,7 +439,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="patch"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml
index 5452fc8e..9fc30e6b 100644
--- a/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml
+++ b/platform-logic/generic-resource-api/src/main/xml/GENERIC-RESOURCE-API_sotn-attachment-topology-operation-deactivate.xml
@@ -282,7 +282,7 @@
<parameter name="format" value="json"/>
<parameter name="httpMethod" value="delete"/>
<parameter name="responsePrefix" value="vpn-result"/>
- <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.openecomp.client.jks"/>
+ <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
<parameter name="trustStorePassword" value="adminadmin"/>
<parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
<parameter name="keyStorePassword" value="adminadmin"/>
diff --git a/platform-logic/installer/pom.xml b/platform-logic/installer/pom.xml
index 2f3a70d7..32408926 100644
--- a/platform-logic/installer/pom.xml
+++ b/platform-logic/installer/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath/>
</parent>
diff --git a/platform-logic/installer/src/assembly/assemble_zip.xml b/platform-logic/installer/src/assembly/assemble_zip.xml
index a8e4546d..9fc5ff8b 100644
--- a/platform-logic/installer/src/assembly/assemble_zip.xml
+++ b/platform-logic/installer/src/assembly/assemble_zip.xml
@@ -22,35 +22,41 @@
<!-- Defines how we build the .zip file which is our distribution. -->
<assembly
- xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
- <id>bin</id>
- <formats>
- <format>zip</format>
- </formats>
-
- <includeBaseDirectory>false</includeBaseDirectory>
-
- <fileSets>
-
- <fileSet>
- <directory>../target/svclogic</directory>
- <outputDirectory>svclogic</outputDirectory>
- <includes>
- <include>**/*</include>
- </includes>
- </fileSet>
- <fileSet>
- <directory>../target/restapi</directory>
- <outputDirectory>restapi</outputDirectory>
- <includes>
- <include>**/*</include>
- </includes>
- </fileSet>
-
- </fileSets>
-
+ xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
+ <id>bin</id>
+ <formats>
+ <format>zip</format>
+ </formats>
+
+ <includeBaseDirectory>false</includeBaseDirectory>
+
+ <fileSets>
+
+ <fileSet>
+ <directory>../target/svclogic</directory>
+ <outputDirectory>svclogic</outputDirectory>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ </fileSet>
+ <fileSet>
+ <directory>../target/restapi</directory>
+ <outputDirectory>restapi</outputDirectory>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ </fileSet>
+ <fileSet>
+ <directory>../target/restconfapi</directory>
+ <outputDirectory>restconfapi</outputDirectory>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ </fileSet>
+
+ </fileSets>
</assembly>
diff --git a/platform-logic/lcm/pom.xml b/platform-logic/lcm/pom.xml
index d9343110..e8d62566 100644
--- a/platform-logic/lcm/pom.xml
+++ b/platform-logic/lcm/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath />
</parent>
diff --git a/platform-logic/pom.xml b/platform-logic/pom.xml
index 4fb18398..1c803100 100644
--- a/platform-logic/pom.xml
+++ b/platform-logic/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath />
</parent>
@@ -26,6 +26,7 @@
<module>vnfapi</module>
<module>lcm</module>
<module>restapi-templates</module>
+ <module>restconfapi-yang</module>
<module>datachange</module>
<module>installer</module>
</modules>
diff --git a/platform-logic/restapi-templates/pom.xml b/platform-logic/restapi-templates/pom.xml
index cd767fdd..48ed5179 100644
--- a/platform-logic/restapi-templates/pom.xml
+++ b/platform-logic/restapi-templates/pom.xml
@@ -6,7 +6,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath />
</parent>
diff --git a/platform-logic/restapi-templates/src/main/json/getzteodutoponodedetailstemplate.json b/platform-logic/restapi-templates/src/main/json/getzteodutoponodedetailstemplate.json
new file mode 100644
index 00000000..5d893833
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/getzteodutoponodedetailstemplate.json
@@ -0,0 +1,6 @@
+
+{
+ "input":{
+ "node-id":${prop.zte.odutopo.node.name}
+ }
+}
diff --git a/platform-logic/restapi-templates/src/main/json/getzteodutoponodenepdetailstemplate.json b/platform-logic/restapi-templates/src/main/json/getzteodutoponodenepdetailstemplate.json
new file mode 100644
index 00000000..7f84b6dd
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/getzteodutoponodenepdetailstemplate.json
@@ -0,0 +1,6 @@
+
+{
+ "input":{
+ "node-edge-point-id":${prop.zte.odutopo.node.nep.uuid}
+ }
+}
diff --git a/platform-logic/restapi-templates/src/main/json/getzteodutoponodetemplate.json b/platform-logic/restapi-templates/src/main/json/getzteodutoponodetemplate.json
new file mode 100644
index 00000000..d7e9cde6
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/getzteodutoponodetemplate.json
@@ -0,0 +1,6 @@
+
+{
+ "input":{
+ "topology-name":${prop.zte.odutopo.name}
+ }
+}
diff --git a/platform-logic/restapi-templates/src/main/json/getzteodutopotemplate.json b/platform-logic/restapi-templates/src/main/json/getzteodutopotemplate.json
new file mode 100644
index 00000000..29253999
--- /dev/null
+++ b/platform-logic/restapi-templates/src/main/json/getzteodutopotemplate.json
@@ -0,0 +1,5 @@
+
+{
+ "input":{
+ }
+}
diff --git a/platform-logic/restconfapi-yang/pom.xml b/platform-logic/restconfapi-yang/pom.xml
new file mode 100644
index 00000000..38874aa9
--- /dev/null
+++ b/platform-logic/restconfapi-yang/pom.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <groupId>org.onap.ccsdk.parent</groupId>
+ <artifactId>odlparent-lite</artifactId>
+ <version>1.1.1-SNAPSHOT</version>
+ <relativePath />
+ </parent>
+
+ <groupId>org.onap.sdnc.oam</groupId>
+ <artifactId>platform-logic-restconfapi-yang</artifactId>
+ <version>1.4.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+
+ <name>sdnc-oam :: platform-logic :: ${project.artifactId}</name>
+ <description>Contains Restconf API YANG</description>
+
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>2.6</version>
+ <executions>
+ <execution>
+ <id>copy-version</id>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals><!-- here the phase you need -->
+ <phase>validate</phase>
+ <configuration>
+ <outputDirectory>../target/restconfapi/yang</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/main/yang</directory>
+ <includes>
+ <include>*.yang</include>
+ </includes>
+ <filtering>true</filtering>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
diff --git a/platform-logic/restconfapi-yang/src/main/yang/ietf-eth-tran-service@2018-03-01.yang b/platform-logic/restconfapi-yang/src/main/yang/ietf-eth-tran-service@2018-03-01.yang
new file mode 100644
index 00000000..cb7c8f05
--- /dev/null
+++ b/platform-logic/restconfapi-yang/src/main/yang/ietf-eth-tran-service@2018-03-01.yang
@@ -0,0 +1,572 @@
+module ietf-eth-tran-service {
+
+ namespace "urn:ietf:params:xml:ns:yang:ietf-eth-tran-service";
+
+ prefix "ethtsvc";
+
+ import ietf-yang-types {
+ prefix "yang";
+ }
+
+ import ietf-te-types {
+ prefix "te-types";
+ }
+
+ import ietf-eth-tran-types {
+ prefix "etht-types";
+ }
+
+ organization
+ "Internet Engineering Task Force (IETF) CCAMP WG";
+ contact
+ "
+ WG List: <mailto:ccamp@ietf.org>
+ ID-draft editor:
+ Haomian Zheng (zhenghaomian@huawei.com);
+ Italo Busi (italo.busi@huawei.com);
+ Aihua Guo (aihuaguo@huawei.com);
+ Yunbin Xu (xuyunbin@ritt.cn);
+ Yang Zhao (zhaoyangyjy@chinamobile.com);
+ Xufeng Liu (Xufeng_Liu@jabil.com);
+ Giuseppe Fioccola (giuseppe.fioccola@telecomitalia.it);
+ ";
+
+ description
+ "This module defines a YANG data model for describing
+ the Ethernet transport services.";
+
+ revision 2018-03-01 {
+ description
+ "Initial revision";
+ reference
+ "draft-zheng-ccamp-client-signal-yang";
+ }
+
+ /*
+ Groupings
+ */
+
+ grouping vlan-classification {
+ description
+ "A grouping which represents classification on an 802.1Q VLAN tag.";
+
+ leaf tag-type {
+ type etht-types:eth-tag-classify;
+ description
+ "The tag type used for VLAN classification.";
+ }
+ choice individual-bundling-vlan {
+ description
+ "VLAN based classification can be individual
+ or bundling.";
+ case individual-vlan {
+ leaf vlan-value {
+ type etht-types:vlanid;
+ description
+ "VLAN ID value.";
+ }
+ }
+
+ case vlan-bundling {
+ leaf vlan-range {
+ type etht-types:vid-range-type;
+ description
+ "List of VLAN ID values.";
+ }
+ }
+ }
+ }
+
+ grouping vlan-write {
+ description
+ "A grouping which represents push/pop operations
+ of an 802.1Q VLAN tag.";
+
+ leaf tag-type {
+ type etht-types:eth-tag-type;
+ description
+ "The VLAN tag type to push/swap.";
+ }
+ leaf vlan-value {
+ type etht-types:vlanid;
+ description
+ "The VLAN ID value to push/swap.";
+ }
+ }
+
+ grouping vlan-operations {
+ description
+ "A grouping which represents VLAN operations.";
+
+ leaf pop-tags {
+ type uint8 {
+ range "1..2";
+ }
+ description
+ "The number of VLAN tags to pop (or swap if used in
+ conjunction with push-tags)";
+ }
+ container push-tags {
+ description
+ "The VLAN tags to push (or swap if used in
+ conjunction with pop-tags)";
+
+ container outer-tag {
+ presence
+ "Indicates existence of the outermost VLAN tag to
+ push/swap";
+
+ description
+ "The outermost VLAN tag to push/swap.";
+
+ uses vlan-write;
+ }
+ container second-tag {
+ must
+ '../outer-tag/tag-type = "s-vlan-tag-type" and ' +
+ 'tag-type = "c-vlan-tag-type"'
+ {
+
+ error-message
+ "
+ When pushing/swapping two tags, the outermost tag must
+ be specified and of S-VLAN type and the second
+ outermost tag must be of C-VLAN tag type.
+ ";
+ description
+ "
+ For IEEE 802.1Q interoperability, when pushing/swapping
+ two tags, it is required that the outermost tag exists
+ and is an S-VLAN, and the second outermost tag is a
+ C-VLAN.
+ ";
+ }
+
+ presence
+ "Indicates existence of a second outermost VLAN tag to
+ push/swap";
+
+ description
+ "The second outermost VLAN tag to push/swap.";
+
+ uses vlan-write;
+ }
+ }
+ }
+
+ grouping bandwidth-profiles {
+ description
+ "A grouping which represent bandwidth profile configuration.";
+
+ choice direction {
+ description
+ "Whether the bandwidth profiles are symmetrical or
+ asymmetrical";
+ case symmetrical {
+ description
+ "The same bandwidth profile is used to describe the ingress
+ and the egress bandwidth profile.";
+
+ leaf ingress-egress-bandwidth-profile-name {
+ type "string";
+ description
+ "Name of the bandwidth profile.";
+ }
+ }
+ case asymmetrical {
+ description
+ "Ingress and egress bandwidth profiles can be specified.";
+ leaf ingress-bandwidth-profile-name {
+ type "string";
+ description
+ "Name of the bandwidth profile used in
+ the ingress direction.";
+ }
+ leaf egress-bandwidth-profile-name {
+ type "string";
+ description
+ "Name of the bandwidth profile used in
+ the egress direction.";
+ }
+ }
+ }
+ }
+
+ grouping etht-svc-access-parameters {
+ description
+ "ETH transport services access parameters";
+
+ leaf access-node-id {
+ type te-types:te-node-id;
+ description
+ "The identifier of the access node in
+ the ETH transport topology.";
+ }
+ leaf access-ltp-id {
+ type te-types:te-tp-id;
+ description
+ "The TE link termination point identifier, used
+ together with access-node-id to identify the
+ access LTP.";
+ }
+ leaf service-classification-type {
+ type identityref {
+ base etht-types:service-classification-type;
+ }
+ description
+ "Service classification type.";
+ }
+
+ choice service-classification {
+ description
+ "Access classification can be port-based or
+ VLAN based.";
+
+ case port-classification {
+ /* no additional information */
+ }
+
+ case vlan-classification {
+ container outer-tag {
+ presence "The outermost VLAN tag exists";
+ description
+ "Classifies traffic using the outermost VLAN tag.";
+
+ uses vlan-classification;
+ }
+ container second-tag {
+ must
+ '../outer-tag/tag-type = "classify-s-vlan" and ' +
+ 'tag-type = "classify-c-vlan"'
+ {
+
+ error-message
+ "
+ When matching two tags, the outermost tag must be
+ specified and of S-VLAN type and the second
+ outermost tag must be of C-VLAN tag type.
+ ";
+ description
+ "
+ For IEEE 802.1Q interoperability, when matching two
+ tags, it is required that the outermost tag exists
+ and is an S-VLAN, and the second outermost tag is a
+ C-VLAN.
+ ";
+ }
+ presence "The second outermost VLAN tag exists";
+
+ description
+ "Classifies traffic using the second outermost VLAN tag.";
+
+ uses vlan-classification;
+ }
+ }
+ }
+
+/*
+ Open issue: can we constraints it to be used only with mp services?
+*/
+ leaf split-horizon-group {
+ type string;
+ description "Identify a split horizon group";
+ }
+
+ uses bandwidth-profiles;
+
+ container vlan-operations {
+ description
+ "include parameters for vlan-operation";
+ choice direction {
+ description
+ "Whether the VLAN operations are symmetrical or
+ asymmetrical";
+ case symmetrical {
+ container symmetrical-operation {
+ uses vlan-operations;
+ description
+ "Symmetrical operations.
+ Expressed in the ingress direction, but
+ the reverse operation is applied to egress traffic";
+ }
+ }
+ case asymmetrical {
+ container asymmetrical-operation {
+ description "Asymmetrical operations";
+ container ingress {
+ uses vlan-operations;
+ description "Ingress operations";
+ }
+ container egress {
+ uses vlan-operations;
+ description "Egress operations";
+ }
+ }
+ }
+ }
+ }
+ }
+
+ grouping etht-svc-tunnel-parameters {
+ description
+ "ETH transport services tunnel parameters";
+
+ leaf tunnel-name {
+ type string;
+ description
+ "TE service tunnel instance name.";
+ }
+ choice svc-multiplexing-tag {
+ description
+ "Service multiplexing is optional and flexible.";
+
+ case other {
+ /*
+ placeholder to support proprietary multiplexing
+ (for further discussion)
+ */
+ }
+
+ case none {
+ /* no additional information is needed */
+ }
+
+ case vlan-tag {
+ /*
+ No additional information is needed
+ The C-Tag or S-Tag used for service mulitplexing is defined
+ by the VLAN classification and operations configured in the
+ etht-svc-access-parameters grouping
+ */
+ }
+
+ case pw {
+ /* to be completed (for further discussion) */
+ }
+ }
+
+/*
+ Open issue: can we constraints it to be used only with mp services?
+*/
+ leaf src-split-horizon-group {
+ type string;
+ description "Identify a split horizon group at the Tunnel source TTP";
+ }
+ leaf dst-split-horizon-group {
+ type string;
+ description "Identify a split horizon group at the Tunnel destination TTP";
+ }
+ }
+
+ grouping te-topology-identifier {
+ description
+ "An identifier to uniquely identify the TE topology.";
+ leaf access-provider-id {
+ type te-types:te-global-id;
+ description
+ "An identifier to uniquely identify a provider.";
+ }
+ leaf access-client-id {
+ type te-types:te-global-id;
+ description
+ "An identifier to uniquely identify a client.";
+ }
+ leaf access-topology-id {
+ type te-types:te-topology-id;
+ description
+ "Identifies the topology the
+ service access ports belong to.";
+ }
+ }
+
+ grouping etht-svc-pm-threshold_config {
+ description
+ "Configuraiton parameters for Ethernet service PM thresholds.";
+
+ leaf sending-rate-high {
+ type uint64;
+ description
+ "High threshold of packet sending rate in kbps.";
+ }
+ leaf sending-rate-low {
+ type uint64;
+ description
+ "Low threshold of packet sending rate in kbps.";
+ }
+ leaf receiving-rate-high {
+ type uint64;
+ description
+ "High threshold of packet receiving rate in kbps.";
+ }
+ leaf receiving-rate-low {
+ type uint64;
+ description
+ "Low threshold of packet receiving rate in kbps.";
+ }
+ }
+
+ grouping etht-svc-pm-stats {
+ description
+ "Ethernet service PM statistics.";
+
+ leaf sending-rate-too-high {
+ type uint32;
+ description
+ "Counter that indicates the number of times the sending rate is above the high threshold";
+ }
+ leaf sending-rate-too-low {
+ type uint32;
+ description
+ "Counter that indicates the number of times the sending rate is below the low threshold";
+ }
+ leaf receiving-rate-too-high {
+ type uint32;
+ description
+ "Counter that indicates the number of times the receiving rate is above the high threshold";
+ }
+ leaf receiving-rate-too-low {
+ type uint32;
+ description
+ "Counter that indicates the number of times the receiving rate is below the low threshold";
+ }
+ }
+
+ grouping etht-svc-instance_config {
+ description
+ "Configuraiton parameters for Ethernet services.";
+
+ leaf etht-svc-name {
+ type string;
+ description
+ "Name of the p2p ETH transport service.";
+ }
+
+ leaf etht-svc-descr {
+ type string;
+ description
+ "Description of the ETH transport service.";
+ }
+
+ leaf etht-svc-type {
+ type etht-types:service-type;
+ description
+ "Type of Ethernet service (p2p, mp2mp or rmp).";
+ /* Add default as p2p */
+ }
+
+ uses te-topology-identifier;
+
+ list etht-svc-access-ports {
+ key access-port-id;
+ min-elements "1";
+/*
+ Open Issue:
+ Is it possible to limit the max-elements only for p2p services?
+ max-elements "2";
+*/
+ description
+ "List of the ETH trasport services access port instances.";
+
+ leaf access-port-id {
+ type uint16;
+ description
+ "ID of the service access port instance";
+ }
+ uses etht-svc-access-parameters;
+ }
+ list etht-svc-tunnels {
+ key tunnel-name;
+ description
+ "List of the TE Tunnels supporting the ETH
+ transport service.";
+
+ uses etht-svc-tunnel-parameters;
+ }
+ container pm-config {
+ description
+ "ETH service performance monitoring";
+
+ leaf pm-enable {
+ type boolean;
+ description
+ "Boolean value indicating whether PM is enabled.";
+ }
+ uses etht-svc-pm-threshold_config;
+ }
+ leaf admin-status {
+ type identityref {
+ base te-types:tunnel-state-type;
+ }
+ default te-types:tunnel-state-up;
+ description "ETH service administrative state.";
+ }
+ }
+
+ grouping etht-svc-instance_state {
+ description
+ "State parameters for Ethernet services.";
+
+ leaf operational-state {
+ type identityref {
+ base te-types:tunnel-state-type;
+ }
+ default te-types:tunnel-state-up;
+ description "ETH service operational state.";
+ }
+ leaf provisioning-state {
+ type identityref {
+ base te-types:lsp-state-type;
+ }
+ description "ETH service provisioning state.";
+ }
+ leaf creation-time {
+ type yang:date-and-time;
+ description
+ "Time of ETH service creation.";
+ }
+ leaf last-updated-time {
+ type yang:date-and-time;
+ description
+ "Time of ETH service last update.";
+ }
+ uses etht-svc-pm-stats;
+ }
+
+ /*
+ Data nodes
+ */
+
+ container etht-svc {
+ description
+ "ETH transport services.";
+
+ container globals {
+ description
+ "ETH profile information.";
+ list etht-svc-bandwidth-profiles {
+ key bandwidth-profile-name;
+ description
+ "List of bandwidth profile templates used by
+ Ethernet services.";
+
+ uses etht-types:etht-bandwidth-profiles;
+ }
+ }
+
+ list etht-svc-instances {
+ key etht-svc-name;
+ description
+ "The list of p2p ETH transport service instances";
+
+ uses etht-svc-instance_config;
+
+ container state {
+ config false;
+ description
+ "Ethernet Service states.";
+
+ uses etht-svc-instance_state;
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/platform-logic/restconfapi-yang/src/main/yang/ietf-eth-tran-types@2018-05-24.yang b/platform-logic/restconfapi-yang/src/main/yang/ietf-eth-tran-types@2018-05-24.yang
new file mode 100644
index 00000000..3775f36b
--- /dev/null
+++ b/platform-logic/restconfapi-yang/src/main/yang/ietf-eth-tran-types@2018-05-24.yang
@@ -0,0 +1,303 @@
+module ietf-eth-tran-types {
+ namespace "urn:ietf:params:xml:ns:yang:ietf-eth-tran-types";
+ prefix "etht-types";
+
+ organization
+ "Internet Engineering Task Force (IETF) CCAMP WG";
+ contact
+ "
+ WG List: <mailto:ccamp@ietf.org>
+ ID-draft editor:
+ Haomian Zheng (zhenghaomian@huawei.com);
+ Italo Busi (italo.busi@huawei.com);
+ Aihua Guo (aihuaguo@huawei.com);
+ Yunbin Xu (xuyunbin@ritt.cn);
+ Yang Zhao (zhaoyangyjy@chinamobile.com);
+ Xufeng Liu (Xufeng_Liu@jabil.com);
+ Giuseppe Fioccola (giuseppe.fioccola@telecomitalia.it);
+ ";
+
+ description
+ "This module defines the ETH transport types.";
+
+ revision 2018-05-24 {
+ description
+ "Initial revision";
+ reference
+ "draft-zheng-ccamp-client-signal-yang";
+ }
+
+ /*
+ * Identities
+ */
+
+ identity eth-vlan-tag-type {
+ description
+ "ETH VLAN tag type.";
+ }
+
+ identity c-vlan-tag-type {
+ base eth-vlan-tag-type;
+ description
+ "802.1Q Customer VLAN";
+ }
+
+ identity s-vlan-tag-type {
+ base eth-vlan-tag-type;
+ description
+ "802.1Q Service VLAN (QinQ)";
+ }
+
+ identity service-classification-type {
+ description
+ "Service classification.";
+ }
+
+ identity port-classification {
+ base service-classification-type;
+ description
+ "Port classification.";
+ }
+
+ identity vlan-classification {
+ base service-classification-type;
+ description
+ "VLAN classification.";
+ }
+
+ identity eth-vlan-tag-classify {
+ description
+ "VLAN tag classification.";
+ }
+
+ identity classify-c-vlan {
+ base eth-vlan-tag-classify;
+ description
+ "Classify 802.1Q Customer VLAN tag.
+ Only C-tag type is accepted";
+ }
+
+ identity classify-s-vlan {
+ base eth-vlan-tag-classify;
+ description
+ "Classify 802.1Q Service VLAN (QinQ) tag.
+ Only S-tag type is accepted";
+ }
+
+ identity classify-s-or-c-vlan {
+ base eth-vlan-tag-classify;
+ description
+ "Classify S-VLAN or C-VLAN tag-classify.
+ Either tag is accepted";
+ }
+
+ identity bandwidth-profile-type {
+ description
+ "Bandwidth Profile Types";
+ }
+
+ identity mef-10-bwp {
+ base bandwidth-profile-type;
+ description
+ "MEF 10 Bandwidth Profile";
+ }
+ identity rfc-2697-bwp {
+ base bandwidth-profile-type;
+ description
+ "RFC 2697 Bandwidth Profile";
+ }
+
+ identity rfc-2698-bwp {
+ base bandwidth-profile-type;
+ description
+ "RFC 2698 Bandwidth Profile";
+ }
+
+ identity rfc-4115-bwp {
+ base bandwidth-profile-type;
+ description
+ "RFC 4115 Bandwidth Profile";
+ }
+
+ identity service-type {
+ description
+ "Type of Ethernet service.";
+ }
+
+ identity p2p-svc {
+ base service-type;
+ description
+ "Ethernet point-to-point service (EPL, EVPL).";
+ }
+
+ identity rmp-svc {
+ base service-type;
+ description
+ "Ethernet rooted-multitpoint service (E-TREE, EP-TREE).";
+ }
+
+ identity mp2mp-svc {
+ base service-type;
+ description
+ "Ethernet multipoint-to-multitpoint service (E-LAN, EP-LAN).";
+ }
+
+ /*
+ * Type Definitions
+ */
+
+ typedef eth-tag-type {
+ type identityref {
+ base eth-vlan-tag-type;
+ }
+ description
+ "Identifies a specific ETH VLAN tag type.";
+ }
+
+ typedef eth-tag-classify {
+ type identityref {
+ base eth-vlan-tag-classify;
+ }
+ description
+ "Identifies a specific VLAN tag classification.";
+ }
+
+ typedef vlanid {
+ type uint16 {
+ range "1..4094";
+ }
+ description
+ "The 12-bit VLAN-ID used in the VLAN Tag header.";
+ }
+
+ typedef vid-range-type {
+ type string {
+ pattern "([1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?" +
+ "(,[1-9][0-9]{0,3}(-[1-9][0-9]{0,3})?)*)";
+ }
+ description
+ "A list of VLAN Ids, or non overlapping VLAN ranges, in
+ ascending order, between 1 and 4094.
+ This type is used to match an ordered list of VLAN Ids, or
+ contiguous ranges of VLAN Ids. Valid VLAN Ids must be in the
+ range 1 to 4094, and included in the list in non overlapping
+ ascending order.
+ For example: 1,10-100,50,500-1000";
+ }
+
+ typedef bandwidth-profile-type {
+ type identityref {
+ base bandwidth-profile-type;
+ }
+ description
+ "Identifies a specific Bandwidth Profile type.";
+ }
+
+ typedef service-type {
+ type identityref {
+ base service-type;
+ }
+ description
+ "Identifies the type of Ethernet service.";
+ }
+
+ /*
+ * Grouping Definitions
+ */
+
+ grouping etht-bandwidth-profiles {
+ description
+ "Bandwidth profile configuration paramters.";
+
+ leaf bandwidth-profile-name {
+ type string;
+ description
+ "Name of the bandwidth profile.";
+ }
+ leaf bandwidth-profile-type {
+ type etht-types:bandwidth-profile-type;
+ description
+ "The type of bandwidth profile.";
+ }
+ leaf CIR {
+ type uint64;
+ description
+ "Committed Information Rate in Kbps";
+ }
+ leaf CBS {
+ type uint64;
+ description
+ "Committed Burst Size in in KBytes";
+ }
+ leaf EIR {
+ type uint64;
+/*
+ * Open Issue: need to indicate that EIR is not supported by RFC 2697
+ * must
+ * '../bw-profile-type = "mef-10-bwp" or ' +
+ * '../bw-profile-type = "rfc-2698-bwp" or ' +
+ * '../bw-profile-type = "rfc-4115-bwp"'
+ *
+ * must
+ * '../bw-profile-type != "rfc-2697-bwp"'
+*/
+ description
+ "Excess Information Rate in Kbps
+ In case of RFC 2698, PIR = CIR + EIR";
+ }
+ leaf EBS {
+ type uint64;
+ description
+ "Excess Burst Size in KBytes.
+ In case of RFC 2698, PBS = CBS + EBS";
+ }
+ leaf color-aware {
+ type boolean;
+ description
+ "Indicates weather the color-mode is color-aware or color-blind.";
+ }
+ leaf coupling-flag {
+ type boolean;
+/*
+ * Open issue: need to indicate that Coupling Flag is defined only for MEF 10
+ *
+ * must
+ * '../bw-profile-type = "mef-10-bwp"'
+ */
+ description
+ "Coupling Flag.";
+ }
+ }
+
+ grouping eth-bandwidth {
+ leaf eth-bandwidth {
+ type uint64 {
+ range "0..10000000000";
+ }
+ units "Kbps";
+ description
+ "Available bandwith value expressed in kilobits per second";
+ }
+ }
+
+ grouping eth-label-restriction {
+ container eth-label-restriction {
+ leaf tag-type {
+ type etht-types:eth-tag-type;
+ description "VLAN tag type.";
+ }
+ leaf priority {
+ type uint8;
+ description "priority.";
+ }
+ }
+ }
+
+ grouping eth-label {
+ leaf vlanid {
+ type etht-types:vlanid;
+ description
+ "VLAN tag id.";
+ }
+ }
+} \ No newline at end of file
diff --git a/platform-logic/restconfapi-yang/src/main/yang/ietf-inet-types.yang b/platform-logic/restconfapi-yang/src/main/yang/ietf-inet-types.yang
new file mode 100644
index 00000000..c4033b80
--- /dev/null
+++ b/platform-logic/restconfapi-yang/src/main/yang/ietf-inet-types.yang
@@ -0,0 +1,430 @@
+module ietf-inet-types {
+
+ namespace "urn:ietf:params:xml:ns:yang:ietf-inet-types";
+ prefix "inet";
+
+ organization
+ "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
+
+ contact
+ "WG Web: <http://tools.ietf.org/wg/netmod/>
+ WG List: <mailto:netmod@ietf.org>
+ WG Chair: David Kessens
+ <mailto:david.kessens@nsn.com>
+ WG Chair: Juergen Schoenwaelder
+ <mailto:j.schoenwaelder@jacobs-university.de>
+ Editor: Juergen Schoenwaelder
+ <mailto:j.schoenwaelder@jacobs-university.de>";
+
+ description
+ "This module contains a collection of generally useful derived
+ YANG data types for Internet addresses and related things.
+ Copyright (c) 2013 IETF Trust and the persons identified as
+ authors of the code. All rights reserved.
+ Redistribution and use in source and binary forms, with or
+ without modification, is permitted pursuant to, and subject
+ to the license terms contained in, the Simplified BSD License
+ set forth in Section 4.c of the IETF Trust's Legal Provisions
+ Relating to IETF Documents
+ (http://trustee.ietf.org/license-info).
+ This version of this YANG module is part of RFC 6991; see
+ the RFC itself for full legal notices.";
+
+ revision 2013-07-15 {
+ description
+ "This revision adds the following new data types:
+ - ip-address-no-zone
+ - ipv4-address-no-zone
+ - ipv6-address-no-zone";
+ reference
+ "RFC 6991: Common YANG Data Types";
+ }
+
+ revision 2010-09-24 {
+ description
+ "Initial revision.";
+ reference
+ "RFC 6021: Common YANG Data Types";
+ }
+
+ /*** collection of types related to protocol fields ***/
+
+ typedef ip-version {
+ type enumeration {
+ enum unknown {
+ value "0";
+ description
+ "An unknown or unspecified version of the Internet
+ protocol.";
+ }
+ enum ipv4 {
+ value "1";
+ description
+ "The IPv4 protocol as defined in RFC 791.";
+ }
+ enum ipv6 {
+ value "2";
+ description
+ "The IPv6 protocol as defined in RFC 2460.";
+ }
+ }
+ description
+ "This value represents the version of the IP protocol.
+ In the value set and its semantics, this type is equivalent
+ to the InetVersion textual convention of the SMIv2.";
+ reference
+ "RFC 791: Internet Protocol
+ RFC 2460: Internet Protocol, Version 6 (IPv6) Specification
+ RFC 4001: Textual Conventions for Internet Network Addresses";
+ }
+
+ typedef dscp {
+ type uint8 {
+ range "0..63";
+ }
+ description
+ "The dscp type represents a Differentiated Services Code Point
+ that may be used for marking packets in a traffic stream.
+ In the value set and its semantics, this type is equivalent
+ to the Dscp textual convention of the SMIv2.";
+ reference
+ "RFC 3289: Management Information Base for the Differentiated
+ Services Architecture
+ RFC 2474: Definition of the Differentiated Services Field
+ (DS Field) in the IPv4 and IPv6 Headers
+ RFC 2780: IANA Allocation Guidelines For Values In
+ the Internet Protocol and Related Headers";
+ }
+
+ typedef ipv6-flow-label {
+ type uint32 {
+ range "0..1048575";
+ }
+ description
+ "The ipv6-flow-label type represents the flow identifier or Flow
+ Label in an IPv6 packet header that may be used to
+ discriminate traffic flows.
+ In the value set and its semantics, this type is equivalent
+ to the IPv6FlowLabel textual convention of the SMIv2.";
+ reference
+ "RFC 3595: Textual Conventions for IPv6 Flow Label
+ RFC 2460: Internet Protocol, Version 6 (IPv6) Specification";
+ }
+
+ typedef port-number {
+ type uint16 {
+ range "0..65535";
+ }
+ description
+ "The port-number type represents a 16-bit port number of an
+ Internet transport-layer protocol such as UDP, TCP, DCCP, or
+ SCTP. Port numbers are assigned by IANA. A current list of
+ all assignments is available from <http://www.iana.org/>.
+ Note that the port number value zero is reserved by IANA. In
+ situations where the value zero does not make sense, it can
+ be excluded by subtyping the port-number type.
+ In the value set and its semantics, this type is equivalent
+ to the InetPortNumber textual convention of the SMIv2.";
+ reference
+ "RFC 768: User Datagram Protocol
+ RFC 793: Transmission Control Protocol
+ RFC 4960: Stream Control Transmission Protocol
+ RFC 4340: Datagram Congestion Control Protocol (DCCP)
+ RFC 4001: Textual Conventions for Internet Network Addresses";
+ }
+
+ /*** collection of types related to autonomous systems ***/
+
+ typedef as-number {
+ type uint32;
+ description
+ "The as-number type represents autonomous system numbers
+ which identify an Autonomous System (AS). An AS is a set
+ of routers under a single technical administration, using
+ an interior gateway protocol and common metrics to route
+ packets within the AS, and using an exterior gateway
+ protocol to route packets to other ASes. IANA maintains
+ the AS number space and has delegated large parts to the
+ regional registries.
+ Autonomous system numbers were originally limited to 16
+ bits. BGP extensions have enlarged the autonomous system
+ number space to 32 bits. This type therefore uses an uint32
+ base type without a range restriction in order to support
+ a larger autonomous system number space.
+ In the value set and its semantics, this type is equivalent
+ to the InetAutonomousSystemNumber textual convention of
+ the SMIv2.";
+ reference
+ "RFC 1930: Guidelines for creation, selection, and registration
+ of an Autonomous System (AS)
+ RFC 4271: A Border Gateway Protocol 4 (BGP-4)
+ RFC 4001: Textual Conventions for Internet Network Addresses
+ RFC 6793: BGP Support for Four-Octet Autonomous System (AS)
+ Number Space";
+ }
+
+ /*** collection of types related to IP addresses and hostnames ***/
+
+ typedef ip-address {
+ type union {
+ type inet:ipv4-address;
+ type inet:ipv6-address;
+ }
+ description
+ "The ip-address type represents an IP address and is IP
+ version neutral. The format of the textual representation
+ implies the IP version. This type supports scoped addresses
+ by allowing zone identifiers in the address format.";
+ reference
+ "RFC 4007: IPv6 Scoped Address Architecture";
+ }
+
+ typedef ipv4-address {
+ type string {
+ pattern
+ '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
+ + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
+ + '(%[\p{N}\p{L}]+)?';
+ }
+ description
+ "The ipv4-address type represents an IPv4 address in
+ dotted-quad notation. The IPv4 address may include a zone
+ index, separated by a % sign.
+ The zone index is used to disambiguate identical address
+ values. For link-local addresses, the zone index will
+ typically be the interface index number or the name of an
+ interface. If the zone index is not present, the default
+ zone of the device will be used.
+ The canonical format for the zone index is the numerical
+ format";
+ }
+
+ typedef ipv6-address {
+ type string {
+ pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
+ + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
+ + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
+ + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
+ + '(%[\p{N}\p{L}]+)?';
+ pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
+ + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
+ + '(%.+)?';
+ }
+ description
+ "The ipv6-address type represents an IPv6 address in full,
+ mixed, shortened, and shortened-mixed notation. The IPv6
+ address may include a zone index, separated by a % sign.
+ The zone index is used to disambiguate identical address
+ values. For link-local addresses, the zone index will
+ typically be the interface index number or the name of an
+ interface. If the zone index is not present, the default
+ zone of the device will be used.
+ The canonical format of IPv6 addresses uses the textual
+ representation defined in Section 4 of RFC 5952. The
+ canonical format for the zone index is the numerical
+ format as described in Section 11.2 of RFC 4007.";
+ reference
+ "RFC 4291: IP Version 6 Addressing Architecture
+ RFC 4007: IPv6 Scoped Address Architecture
+ RFC 5952: A Recommendation for IPv6 Address Text
+ Representation";
+ }
+
+ typedef ip-address-no-zone {
+ type union {
+ type inet:ipv4-address-no-zone;
+ type inet:ipv6-address-no-zone;
+ }
+ description
+ "The ip-address-no-zone type represents an IP address and is
+ IP version neutral. The format of the textual representation
+ implies the IP version. This type does not support scoped
+ addresses since it does not allow zone identifiers in the
+ address format.";
+ reference
+ "RFC 4007: IPv6 Scoped Address Architecture";
+ }
+
+ typedef ipv4-address-no-zone {
+ type inet:ipv4-address {
+ pattern '[0-9\.]*';
+ }
+ description
+ "An IPv4 address without a zone index. This type, derived from
+ ipv4-address, may be used in situations where the zone is
+ known from the context and hence no zone index is needed.";
+ }
+
+ typedef ipv6-address-no-zone {
+ type inet:ipv6-address {
+ pattern '[0-9a-fA-F:\.]*';
+ }
+ description
+ "An IPv6 address without a zone index. This type, derived from
+ ipv6-address, may be used in situations where the zone is
+ known from the context and hence no zone index is needed.";
+ reference
+ "RFC 4291: IP Version 6 Addressing Architecture
+ RFC 4007: IPv6 Scoped Address Architecture
+ RFC 5952: A Recommendation for IPv6 Address Text
+ Representation";
+ }
+
+ typedef ip-prefix {
+ type union {
+ type inet:ipv4-prefix;
+ type inet:ipv6-prefix;
+ }
+ description
+ "The ip-prefix type represents an IP prefix and is IP
+ version neutral. The format of the textual representations
+ implies the IP version.";
+ }
+
+ typedef ipv4-prefix {
+ type string {
+ pattern
+ '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
+ + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])'
+ + '/(([0-9])|([1-2][0-9])|(3[0-2]))';
+ }
+ description
+ "The ipv4-prefix type represents an IPv4 address prefix.
+ The prefix length is given by the number following the
+ slash character and must be less than or equal to 32.
+ A prefix length value of n corresponds to an IP address
+ mask that has n contiguous 1-bits from the most
+ significant bit (MSB) and all other bits set to 0.
+ The canonical format of an IPv4 prefix has all bits of
+ the IPv4 address set to zero that are not part of the
+ IPv4 prefix.";
+ }
+
+ typedef ipv6-prefix {
+ type string {
+ pattern '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
+ + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
+ + '(((25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])\.){3}'
+ + '(25[0-5]|2[0-4][0-9]|[01]?[0-9]?[0-9])))'
+ + '(/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))';
+ pattern '(([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
+ + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?)'
+ + '(/.+)';
+ }
+
+
+ description
+ "The ipv6-prefix type represents an IPv6 address prefix.
+ The prefix length is given by the number following the
+ slash character and must be less than or equal to 128.
+ A prefix length value of n corresponds to an IP address
+ mask that has n contiguous 1-bits from the most
+ significant bit (MSB) and all other bits set to 0.
+ The IPv6 address should have all bits that do not belong
+ to the prefix set to zero.
+ The canonical format of an IPv6 prefix has all bits of
+ the IPv6 address set to zero that are not part of the
+ IPv6 prefix. Furthermore, the IPv6 address is represented
+ as defined in Section 4 of RFC 5952.";
+ reference
+ "RFC 5952: A Recommendation for IPv6 Address Text
+ Representation";
+ }
+
+ /*** collection of domain name and URI types ***/
+
+ typedef domain-name {
+ type string {
+ pattern
+ '((([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.)*'
+ + '([a-zA-Z0-9_]([a-zA-Z0-9\-_]){0,61})?[a-zA-Z0-9]\.?)'
+ + '|\.';
+ length "1..253";
+ }
+ description
+ "The domain-name type represents a DNS domain name. The
+ name SHOULD be fully qualified whenever possible.
+ Internet domain names are only loosely specified. Section
+ 3.5 of RFC 1034 recommends a syntax (modified in Section
+ 2.1 of RFC 1123). The pattern above is intended to allow
+ for current practice in domain name use, and some possible
+ future expansion. It is designed to hold various types of
+ domain names, including names used for A or AAAA records
+ (host names) and other records, such as SRV records. Note
+ that Internet host names have a stricter syntax (described
+ in RFC 952) than the DNS recommendations in RFCs 1034 and
+ 1123, and that systems that want to store host names in
+ schema nodes using the domain-name type are recommended to
+ adhere to this stricter standard to ensure interoperability.
+ The encoding of DNS names in the DNS protocol is limited
+ to 255 characters. Since the encoding consists of labels
+ prefixed by a length bytes and there is a trailing NULL
+ byte, only 253 characters can appear in the textual dotted
+ notation.
+ The description clause of schema nodes using the domain-name
+ type MUST describe when and how these names are resolved to
+ IP addresses. Note that the resolution of a domain-name value
+ may require to query multiple DNS records (e.g., A for IPv4
+ and AAAA for IPv6). The order of the resolution process and
+ which DNS record takes precedence can either be defined
+ explicitly or may depend on the configuration of the
+ resolver.
+ Domain-name values use the US-ASCII encoding. Their canonical
+ format uses lowercase US-ASCII characters. Internationalized
+ domain names MUST be A-labels as per RFC 5890.";
+ reference
+ "RFC 952: DoD Internet Host Table Specification
+ RFC 1034: Domain Names - Concepts and Facilities
+ RFC 1123: Requirements for Internet Hosts -- Application
+ and Support
+ RFC 2782: A DNS RR for specifying the location of services
+ (DNS SRV)
+ RFC 5890: Internationalized Domain Names in Applications
+ (IDNA): Definitions and Document Framework";
+ }
+
+ typedef host {
+ type union {
+ type inet:ip-address;
+ type inet:domain-name;
+ }
+ description
+ "The host type represents either an IP address or a DNS
+ domain name.";
+ }
+
+ typedef uri {
+ type string;
+ description
+ "The uri type represents a Uniform Resource Identifier
+ (URI) as defined by STD 66.
+ Objects using the uri type MUST be in US-ASCII encoding,
+ and MUST be normalized as described by RFC 3986 Sections
+ 6.2.1, 6.2.2.1, and 6.2.2.2. All unnecessary
+ percent-encoding is removed, and all case-insensitive
+ characters are set to lowercase except for hexadecimal
+ digits, which are normalized to uppercase as described in
+ Section 6.2.2.1.
+ The purpose of this normalization is to help provide
+ unique URIs. Note that this normalization is not
+ sufficient to provide uniqueness. Two URIs that are
+ textually distinct after this normalization may still be
+ equivalent.
+ Objects using the uri type may restrict the schemes that
+ they permit. For example, 'data:' and 'urn:' schemes
+ might not be appropriate.
+ A zero-length URI is not a valid URI. This can be used to
+ express 'URI absent' where required.
+ In the value set and its semantics, this type is equivalent
+ to the Uri SMIv2 textual convention defined in RFC 5017.";
+ reference
+ "RFC 3986: Uniform Resource Identifier (URI): Generic Syntax
+ RFC 3305: Report from the Joint W3C/IETF URI Planning Interest
+ Group: Uniform Resource Identifiers (URIs), URLs,
+ and Uniform Resource Names (URNs): Clarifications
+ and Recommendations
+ RFC 5017: MIB Textual Conventions for Uniform Resource
+ Identifiers (URIs)";
+ }
+
+} \ No newline at end of file
diff --git a/platform-logic/restconfapi-yang/src/main/yang/ietf-routing-types@2017-10-13.yang b/platform-logic/restconfapi-yang/src/main/yang/ietf-routing-types@2017-10-13.yang
new file mode 100644
index 00000000..e33c4bc7
--- /dev/null
+++ b/platform-logic/restconfapi-yang/src/main/yang/ietf-routing-types@2017-10-13.yang
@@ -0,0 +1,733 @@
+module ietf-routing-types {
+ namespace "urn:ietf:params:xml:ns:yang:ietf-routing-types";
+ prefix rt-types;
+
+ import ietf-yang-types {
+ prefix yang;
+ }
+ import ietf-inet-types {
+ prefix inet;
+ }
+
+ organization
+ "IETF RTGWG - Routing Area Working Group";
+ contact
+ "WG Web: <http://tools.ietf.org/wg/rtgwg/>
+ WG List: <mailto:rtgwg@ietf.org>
+ Editor: Xufeng Liu
+ <mailto:Xufeng_Liu@jabail.com>
+ Yingzhen Qu
+ <mailto:yingzhen.qu@huawei.com>
+ Acee Lindem
+ <mailto:acee@cisco.com>
+ Christian Hopps
+ <mailto:chopps@chopps.org>
+ Lou Berger
+ <mailto:lberger@labn.com>";
+ description
+ "This module contains a collection of YANG data types
+ considered generally useful for routing protocols.
+ Copyright (c) 2017 IETF Trust and the persons
+ identified as authors of the code. All rights reserved.
+ Redistribution and use in source and binary forms, with or
+ without modification, is permitted pursuant to, and subject
+ to the license terms contained in, the Simplified BSD License
+ set forth in Section 4.c of the IETF Trust's Legal Provisions
+ Relating to IETF Documents
+ (http://trustee.ietf.org/license-info).
+ This version of this YANG module is part of RFC XXXX; see
+ the RFC itself for full legal notices.";
+ reference "RFC XXXX";
+
+ revision 2017-10-13 {
+ description "Initial revision.";
+ reference "RFC TBD: Routing YANG Data Types";
+ }
+
+ /*** Identities related to MPLS/GMPLS ***/
+
+ identity mpls-label-special-purpose-value {
+ description
+ "Base identity for deriving identities describing
+ special-purpose Multiprotocol Label Switching (MPLS) label
+ values.";
+ reference
+ "RFC7274: Allocating and Retiring Special-Purpose MPLS
+ Labels.";
+ }
+
+ identity ipv4-explicit-null-label {
+ base mpls-label-special-purpose-value;
+ description
+ "This identity represents the IPv4 Explicit NULL Label.";
+ reference "RFC3032: MPLS Label Stack Encoding. Section 2.1.";
+ }
+
+ identity router-alert-label {
+ base mpls-label-special-purpose-value;
+ description
+ "This identity represents the Router Alert Label.";
+ reference "RFC3032: MPLS Label Stack Encoding. Section 2.1.";
+ }
+
+ identity ipv6-explicit-null-label {
+ base mpls-label-special-purpose-value;
+ description
+ "This identity represents the IPv6 Explicit NULL Label.";
+ reference "RFC3032: MPLS Label Stack Encoding. Section 2.1.";
+ }
+
+ identity implicit-null-label {
+ base mpls-label-special-purpose-value;
+ description
+ "This identity represents the Implicit NULL Label.";
+ reference "RFC3032: MPLS Label Stack Encoding. Section 2.1.";
+ }
+
+ identity entropy-label-indicator {
+ base mpls-label-special-purpose-value;
+ description
+ "This identity represents the Entropy Label Indicator.";
+ reference
+ "RFC6790: The Use of Entropy Labels in MPLS Forwarding.
+ Sections 3 and 10.1.";
+ }
+
+ identity gal-label {
+ base mpls-label-special-purpose-value;
+ description
+ "This identity represents the Generic Associated Channel
+ Label (GAL).";
+ reference
+ "RFC5586: MPLS Generic Associated Channel.
+ Sections 4 and 10.";
+ }
+
+ identity oam-alert-label {
+ base mpls-label-special-purpose-value;
+ description
+ "This identity represents the OAM Alert Label.";
+ reference
+ "RFC3429: Assignment of the 'OAM Alert Label' for
+ Multiprotocol Label Switching Architecture (MPLS)
+ Operation and Maintenance (OAM) Functions.
+ Sections 3 and 6.";
+ }
+
+ identity extension-label {
+ base mpls-label-special-purpose-value;
+ description
+ "This identity represents the Extension Label.";
+ reference
+ "RFC7274: Allocating and Retiring Special-Purpose MPLS
+ Labels. Sections 3.1 and 5.";
+ }
+
+ /*** Collection of types related to routing ***/
+
+ typedef router-id {
+ type yang:dotted-quad;
+ description
+ "A 32-bit number in the dotted quad format assigned to each
+ router. This number uniquely identifies the router within
+ an Autonomous System.";
+ }
+
+ /*** Collection of types related to VPN ***/
+
+ typedef route-target {
+ type string {
+ pattern
+ '(0:(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0):(429496729[0-5]|'
+ + '42949672[0-8][0-9]|'
+ + '4294967[01][0-9]{2}|429496[0-6][0-9]{3}|'
+ + '42949[0-5][0-9]{4}|'
+ + '4294[0-8][0-9]{5}|429[0-3][0-9]{6}|'
+ + '42[0-8][0-9]{7}|4[01][0-9]{8}|'
+ + '[1-3][0-9]{9}|[1-9][0-9]{0,8}|0))|'
+ + '(1:((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|'
+ + '25[0-5])\.){3}([0-9]|[1-9][0-9]|'
+ + '1[0-9]{2}|2[0-4][0-9]|25[0-5])):(6553[0-5]|'
+ + '655[0-2][0-9]|'
+ + '65[0-4][0-9]{2}|6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|'
+ + '(2:(429496729[0-5]|42949672[0-8][0-9]|'
+ + '4294967[01][0-9]{2}|'
+ + '429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|'
+ + '4294[0-8][0-9]{5}|'
+ + '429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|'
+ + '[1-3][0-9]{9}|[1-9][0-9]{0,8}|0):'
+ + '(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|'
+ + '(6(:[a-fA-F0-9]{2}){6})|'
+ + '(([3-57-9a-fA-F]|[1-9a-fA-F][0-9a-fA-F]{1,3}):'
+ + '[0-9a-fA-F]{1,12})';
+ }
+ description
+ "A route target is an 8-octet BGP extended community
+ initially identifying a set of sites in a BGP
+ VPN (RFC 4364). However, it has since taken on a more
+ general role in BGP route filtering.
+ A route target consists of two or three fields:
+ a 2-octet type field, an administrator field,
+ and, optionally, an assigned number field.
+ According to the data formats for type 0, 1, 2, and 6
+ defined in RFC4360, RFC5668, and RFC7432, the encoding
+ pattern is defined as:
+ 0:2-octet-asn:4-octet-number
+ 1:4-octet-ipv4addr:2-octet-number
+ 2:4-octet-asn:2-octet-number.
+ 6:6-octet-mac-address.
+ Additionally, a generic pattern is defined for future
+ route target types:
+ 2-octet-other-hex-number:6-octet-hex-number
+ Some valid examples are: 0:100:100, 1:1.1.1.1:100,
+ 2:1234567890:203 and 6:26:00:08:92:78:00";
+ reference
+ "RFC4360: BGP Extended Communities Attribute.
+ RFC4364: BGP/MPLS IP Virtual Private Networks (VPNs)
+ RFC5668: 4-Octet AS Specific BGP Extended Community.
+ RFC7432: BGP MPLS-Based Ethernet VPN";
+ }
+
+ typedef ipv6-route-target {
+ type string {
+ pattern
+ '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
+ + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
+ + '(((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}'
+ + '(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])))'
+ + ':'
+ + '(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0)';
+ pattern '((([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
+ + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))'
+ + ':'
+ + '(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0)';
+ }
+ description
+ "An IPv6 route target is a 20-octet BGP IPv6 address
+ specific extended community serving the same function
+ as a standard 8-octet route target only allowing for
+ an IPv6 address as the global administrator. The format
+ is <ipv6-address:2-octet-number>.
+ Some valid examples are: 2001:DB8::1:6544 and
+ 2001:DB8::5eb1:791:6b37:17958";
+ reference
+ "RFC5701: IPv6 Address Specific BGP Extended Community
+ Attribute";
+ }
+
+ typedef route-target-type {
+ type enumeration {
+ enum "import" {
+ value 0;
+ description
+ "The route target applies to route import.";
+ }
+ enum "export" {
+ value 1;
+ description
+ "The route target applies to route export.";
+ }
+ enum "both" {
+ value 2;
+ description
+ "The route target applies to both route import and
+ route export.";
+ }
+ }
+ description
+ "Indicates the role a route target takes
+ in route filtering.";
+ reference "RFC4364: BGP/MPLS IP Virtual Private Networks
+ (VPNs).";
+ }
+
+ typedef route-distinguisher {
+ type string {
+ pattern
+ '(0:(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0):(429496729[0-5]|'
+ + '42949672[0-8][0-9]|'
+ + '4294967[01][0-9]{2}|429496[0-6][0-9]{3}|'
+ + '42949[0-5][0-9]{4}|'
+ + '4294[0-8][0-9]{5}|429[0-3][0-9]{6}|'
+ + '42[0-8][0-9]{7}|4[01][0-9]{8}|'
+ + '[1-3][0-9]{9}|[1-9][0-9]{0,8}|0))|'
+ + '(1:((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|'
+ + '25[0-5])\.){3}([0-9]|[1-9][0-9]|'
+ + '1[0-9]{2}|2[0-4][0-9]|25[0-5])):(6553[0-5]|'
+ + '655[0-2][0-9]|'
+ + '65[0-4][0-9]{2}|6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|'
+ + '(2:(429496729[0-5]|42949672[0-8][0-9]|'
+ + '4294967[01][0-9]{2}|'
+ + '429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|'
+ + '4294[0-8][0-9]{5}|'
+ + '429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|'
+ + '[1-3][0-9]{9}|[1-9][0-9]{0,8}|0):'
+ + '(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|'
+ + '(6(:[a-fA-F0-9]{2}){6})|'
+ + '(([3-57-9a-fA-F]|[1-9a-fA-F][0-9a-fA-F]{1,3}):'
+ + '[0-9a-fA-F]{1,12})';
+ }
+ description
+ "A route distinguisher is an 8-octet value used to
+ distinguish routes from different BGP VPNs (RFC 4364).
+ As per RFC 4360, a route distinguisher will have the same
+ format as a route target and will consist of two or three
+ fields including a 2-octet type field, an administrator
+ field, and, optionally, an assigned number field.
+ According to the data formats for type 0, 1, 2, and 6
+ defined in RFC4360, RFC5668, and RFC7432, the encoding
+ pattern is defined as:
+ 0:2-octet-asn:4-octet-number
+ 1:4-octet-ipv4addr:2-octet-number
+ 2:4-octet-asn:2-octet-number.
+ 6:6-octet-mac-address.
+ Additionally, a generic pattern is defined for future
+ route discriminator types:
+ 2-octet-other-hex-number:6-octet-hex-number
+ Some valid examples are: 0:100:100, 1:1.1.1.1:100,
+ 2:1234567890:203 and 6:26:00:08:92:78:00";
+ reference
+ "RFC4360: BGP Extended Communities Attribute.
+ RFC4364: BGP/MPLS IP Virtual Private Networks (VPNs)
+ RFC5668: 4-Octet AS Specific BGP Extended Community.
+ RFC7432: BGP MPLS-Based Ethernet VPN";
+ }
+
+ typedef route-origin {
+ type string {
+ pattern
+ '(0:(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0):(429496729[0-5]|'
+ + '42949672[0-8][0-9]|'
+ + '4294967[01][0-9]{2}|429496[0-6][0-9]{3}|'
+ + '42949[0-5][0-9]{4}|'
+ + '4294[0-8][0-9]{5}|429[0-3][0-9]{6}|'
+ + '42[0-8][0-9]{7}|4[01][0-9]{8}|'
+ + '[1-3][0-9]{9}|[1-9][0-9]{0,8}|0))|'
+ + '(1:((([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|'
+ + '25[0-5])\.){3}([0-9]|[1-9][0-9]|'
+ + '1[0-9]{2}|2[0-4][0-9]|25[0-5])):(6553[0-5]|'
+ + '655[0-2][0-9]|'
+ + '65[0-4][0-9]{2}|6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|'
+ + '(2:(429496729[0-5]|42949672[0-8][0-9]|'
+ + '4294967[01][0-9]{2}|'
+ + '429496[0-6][0-9]{3}|42949[0-5][0-9]{4}|'
+ + '4294[0-8][0-9]{5}|'
+ + '429[0-3][0-9]{6}|42[0-8][0-9]{7}|4[01][0-9]{8}|'
+ + '[1-3][0-9]{9}|[1-9][0-9]{0,8}|0):'
+ + '(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0))|'
+ + '(6(:[a-fA-F0-9]{2}){6})|'
+ + '(([3-57-9a-fA-F]|[1-9a-fA-F][0-9a-fA-F]{1,3}):'
+ + '[0-9a-fA-F]{1,12})';
+ }
+ description
+ "A route origin is an 8-octet BGP extended community
+ identifying the set of sites where the BGP route
+ originated (RFC 4364). A route target consists of two
+ or three fields: a 2-octet type field, an administrator
+ field, and, optionally, an assigned number field.
+ According to the data formats for type 0, 1, 2, and 6
+ defined in RFC4360, RFC5668, and RFC7432, the encoding
+ pattern is defined as:
+ 0:2-octet-asn:4-octet-number
+ 1:4-octet-ipv4addr:2-octet-number
+ 2:4-octet-asn:2-octet-number.
+ 6:6-octet-mac-address.
+ Additionally, a generic pattern is defined for future
+ route origin types:
+ 2-octet-other-hex-number:6-octet-hex-number
+ Some valid examples are: 0:100:100, 1:1.1.1.1:100,
+ 2:1234567890:203 and 6:26:00:08:92:78:00";
+ reference
+ "RFC4360: BGP Extended Communities Attribute.
+ RFC4364: BGP/MPLS IP Virtual Private Networks (VPNs)
+ RFC5668: 4-Octet AS Specific BGP Extended Community.
+ RFC7432: BGP MPLS-Based Ethernet VPN";
+ }
+
+ typedef ipv6-route-origin {
+ type string {
+ pattern
+ '((:|[0-9a-fA-F]{0,4}):)([0-9a-fA-F]{0,4}:){0,5}'
+ + '((([0-9a-fA-F]{0,4}:)?(:|[0-9a-fA-F]{0,4}))|'
+ + '(((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])\.){3}'
+ + '(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])))'
+ + ':'
+ + '(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0)';
+ pattern '((([^:]+:){6}(([^:]+:[^:]+)|(.*\..*)))|'
+ + '((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))'
+ + ':'
+ + '(6553[0-5]|655[0-2][0-9]|65[0-4][0-9]{2}|'
+ + '6[0-4][0-9]{3}|'
+ + '[1-5][0-9]{4}|[1-9][0-9]{0,3}|0)';
+ }
+ description
+ "An IPv6 route origin is a 20-octet BGP IPv6 address
+ specific extended community serving the same function
+ as a standard 8-octet route only allowing for
+ an IPv6 address as the global administrator. The format
+ is <ipv6-address:2-octet-number>.
+ Some valid examples are: 2001:DB8::1:6544 and
+ 2001:DB8::5eb1:791:6b37:17958";
+ reference
+ "RFC5701: IPv6 Address Specific BGP Extended Community
+ Attribute";
+ }
+
+ /*** Collection of types common to multicast ***/
+
+ typedef ipv4-multicast-group-address {
+ type inet:ipv4-address {
+ pattern '(2((2[4-9])|(3[0-9]))\.).*';
+ }
+ description
+ "This type represents an IPv4 multicast group address,
+ which is in the range from 224.0.0.0 to 239.255.255.255.";
+ reference "RFC1112: Host Extensions for IP Multicasting.";
+ }
+
+ typedef ipv6-multicast-group-address {
+ type inet:ipv6-address {
+ pattern
+ '(([fF]{2}[0-9a-fA-F]{2}):).*';
+ }
+ description
+ "This type represents an IPv6 multicast group address,
+ which is in the range of FF00::/8.";
+ reference
+ "RFC4291: IP Version 6 Addressing Architecture. Sec 2.7.
+ RFC7346: IPv6 Multicast Address Scopes.";
+ }
+
+ typedef ip-multicast-group-address {
+ type union {
+ type ipv4-multicast-group-address;
+ type ipv6-multicast-group-address;
+ }
+ description
+ "This type represents a version-neutral IP multicast group
+ address. The format of the textual representation implies
+ the IP version.";
+ }
+
+ typedef ipv4-multicast-source-address {
+ type union {
+ type enumeration {
+ enum "*" {
+ description
+ "Any source address.";
+ }
+ }
+ type inet:ipv4-address;
+ }
+ description
+ "Multicast source IPv4 address type.";
+ }
+
+ typedef ipv6-multicast-source-address {
+ type union {
+ type enumeration {
+ enum "*" {
+ description
+ "Any source address.";
+ }
+ }
+ type inet:ipv6-address;
+ }
+ description
+ "Multicast source IPv6 address type.";
+ }
+
+ /*** Collection of types common to protocols ***/
+
+ typedef bandwidth-ieee-float32 {
+ type string {
+ pattern
+ '0[xX](0((\.0?)?[pP](\+)?0?|(\.0?))|'
+ + '1(\.([0-9a-fA-F]{0,5}[02468aAcCeE]?)?)?[pP](\+)?(12[0-7]|'
+ + '1[01][0-9]|0?[0-9]?[0-9])?)';
+ }
+ description
+ "Bandwidth in IEEE 754 floating point 32-bit binary format:
+ (-1)**(S) * 2**(Exponent-127) * (1 + Fraction),
+ where Exponent uses 8 bits, and Fraction uses 23 bits.
+ The units are octets per second.
+ The encoding format is the external hexadecimal-significant
+ character sequences specified in IEEE 754 and C99. The
+ format is restricted to be normalized, non-negative, and
+ non-fraction: 0x1.hhhhhhp{+}d, 0X1.HHHHHHP{+}D, or 0x0p0,
+ where 'h' and 'H' are hexadecimal digits and'd' and 'D' are
+ integers in the range of [0..127].
+ When six hexadecimal digits are used for 'hhhhhh' or
+ 'HHHHHH', the least significant digit must be an even
+ number. 'x' and 'X' indicate hexadecimal; 'p' and 'P'
+ indicate power of two. Some examples are: 0x0p0, 0x1p10, and
+ 0x1.abcde2p+20";
+ reference
+ "IEEE Std 754-2008: IEEE Standard for Floating-Point
+ Arithmetic.";
+ }
+
+ typedef link-access-type {
+ type enumeration {
+ enum "broadcast" {
+ description
+ "Specify broadcast multi-access network.";
+ }
+ enum "non-broadcast-multiaccess" {
+ description
+ "Specify Non-Broadcast Multi-Access (NBMA) network.";
+ }
+ enum "point-to-multipoint" {
+ description
+ "Specify point-to-multipoint network.";
+ }
+ enum "point-to-point" {
+ description
+ "Specify point-to-point network.";
+ }
+ }
+ description
+ "Link access type.";
+ }
+
+ typedef timer-multiplier {
+ type uint8;
+ description
+ "The number of timer value intervals that should be
+ interpreted as a failure.";
+ }
+
+ typedef timer-value-seconds16 {
+ type union {
+ type uint16 {
+ range "1..65535";
+ }
+ type enumeration {
+ enum "infinity" {
+ description
+ "The timer is set to infinity.";
+ }
+ enum "not-set" {
+ description
+ "The timer is not set.";
+ }
+ }
+ }
+ units "seconds";
+ description
+ "Timer value type, in seconds (16-bit range).";
+ }
+
+ typedef timer-value-seconds32 {
+ type union {
+ type uint32 {
+ range "1..4294967295";
+ }
+ type enumeration {
+ enum "infinity" {
+ description
+ "The timer is set to infinity.";
+ }
+ enum "not-set" {
+ description
+ "The timer is not set.";
+ }
+ }
+ }
+ units "seconds";
+ description
+ "Timer value type, in seconds (32-bit range).";
+ }
+ typedef timer-value-milliseconds {
+ type union {
+ type uint32 {
+ range "1..4294967295";
+ }
+ type enumeration {
+ enum "infinity" {
+ description
+ "The timer is set to infinity.";
+ }
+ enum "not-set" {
+ description
+ "The timer is not set.";
+ }
+ }
+ }
+ units "milliseconds";
+ description
+ "Timer value type, in milliseconds.";
+ }
+
+ typedef percentage {
+ type uint8 {
+ range "0..100";
+ }
+ description
+ "Integer indicating a percentage value";
+ }
+
+ typedef timeticks64 {
+ type uint64;
+ description
+ "This type is based on the timeticks type defined in
+ RFC 6991, but with 64-bit width. It represents the time,
+ modulo 2^64, in hundredths of a second between two epochs.";
+ reference "RFC 6991 - Common YANG Data Types";
+ }
+
+ typedef uint24 {
+ type uint32 {
+ range "0 .. 16777215";
+ }
+ description
+ "24-bit unsigned integer";
+ }
+
+ /*** Collection of types related to MPLS/GMPLS ***/
+
+ typedef generalized-label {
+ type binary;
+ description
+ "Generalized label. Nodes sending and receiving the
+ Generalized Label are aware of the link-specific
+ label context and type.";
+ reference "RFC3471: Section 3.2";
+ }
+
+ typedef mpls-label-special-purpose {
+ type identityref {
+ base mpls-label-special-purpose-value;
+ }
+ description
+ "This type represents the special-purpose Multiprotocol Label
+ Switching (MPLS) label values.";
+ reference
+ "RFC3032: MPLS Label Stack Encoding.
+ RFC7274: Allocating and Retiring Special-Purpose MPLS
+ Labels.";
+ }
+
+ typedef mpls-label-general-use {
+ type uint32 {
+ range "16..1048575";
+ }
+ description
+ "The 20-bit label values in an MPLS label stack entry,
+ specified in RFC3032. This label value does not include
+ the encodings of Traffic Class and TTL (time to live).
+ The label range specified by this type is for general use,
+ with special-purpose MPLS label values excluded.";
+ reference "RFC3032: MPLS Label Stack Encoding.";
+ }
+
+ typedef mpls-label {
+ type union {
+ type mpls-label-special-purpose;
+ type mpls-label-general-use;
+ }
+ description
+ "The 20-bit label values in an MPLS label stack entry,
+ specified in RFC3032. This label value does not include
+ the encodings of Traffic Class and TTL (time to live).";
+ reference "RFC3032: MPLS Label Stack Encoding.";
+ }
+
+ /*** Groupings **/
+ grouping mpls-label-stack {
+ description
+ "This grouping specifies an MPLS label stack. The label
+ stack is encoded as a list of label stack entries. The
+ list key is an identifier which indicates relative
+ ordering of each entry, with the lowest value identifier
+ corresponding to the top of the label stack.";
+ container mpls-label-stack {
+ description
+ "Container for a list of MPLS label stack entries.";
+ list entry {
+ key "id";
+ description
+ "List of MPLS label stack entries.";
+ leaf id {
+ type uint8;
+ description
+ "Identifies the entry in a sequence of MPLS label
+ stack entries. An entry with a smaller identifier
+ value precedes an entry with a larger identifier
+ value in the label stack. The value of this ID has
+ no semantic meaning other than relative ordering
+ and referencing the entry.";
+ }
+ leaf label {
+ type rt-types:mpls-label;
+ description
+ "Label value.";
+ }
+ leaf ttl {
+ type uint8;
+ description
+ "Time to Live (TTL).";
+ reference "RFC3032: MPLS Label Stack Encoding.";
+ }
+ leaf traffic-class {
+ type uint8 {
+ range "0..7";
+ }
+ description
+ "Traffic Class (TC).";
+ reference
+ "RFC5462: Multiprotocol Label Switching (MPLS) Label
+ Stack Entry: 'EXP' Field Renamed to 'Traffic Class'
+ Field.";
+ }
+ }
+ }
+ }
+
+ grouping vpn-route-targets {
+ description
+ "A grouping that specifies Route Target import-export rules
+ used in the BGP enabled Virtual Private Networks (VPNs).";
+ reference
+ "RFC4364: BGP/MPLS IP Virtual Private Networks (VPNs).
+ RFC4664: Framework for Layer 2 Virtual Private Networks
+ (L2VPNs)";
+ list vpn-target {
+ key "route-target";
+ description
+ "List of Route Targets.";
+ leaf route-target {
+ type rt-types:route-target;
+ description
+ "Route Target value";
+ }
+ leaf route-target-type {
+ type rt-types:route-target-type;
+ mandatory true;
+ description
+ "Import/export type of the Route Target.";
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/platform-logic/restconfapi-yang/src/main/yang/ietf-subscribed-notifications.yang b/platform-logic/restconfapi-yang/src/main/yang/ietf-subscribed-notifications.yang
new file mode 100644
index 00000000..f7e01be5
--- /dev/null
+++ b/platform-logic/restconfapi-yang/src/main/yang/ietf-subscribed-notifications.yang
@@ -0,0 +1,21 @@
+module ietf-subscribed-notifications {
+ yang-version 1;
+ namespace "ietf:subscribed:notifications:huawei";
+ prefix "notif";
+
+ revision 2018-09-08;
+
+ rpc establish-subscription {
+ input {
+ leaf encoding {
+ type string;
+ }
+ }
+
+ output {
+ leaf identifier {
+ type int16;
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/platform-logic/restconfapi-yang/src/main/yang/ietf-te-types@2018-07-01.yang b/platform-logic/restconfapi-yang/src/main/yang/ietf-te-types@2018-07-01.yang
new file mode 100644
index 00000000..7a50210e
--- /dev/null
+++ b/platform-logic/restconfapi-yang/src/main/yang/ietf-te-types@2018-07-01.yang
@@ -0,0 +1,2457 @@
+module ietf-te-types {
+
+ namespace "urn:ietf:params:xml:ns:yang:ietf-te-types";
+
+ /* Replace with IANA when assigned */
+ prefix "te-types";
+
+ import ietf-inet-types {
+ prefix inet;
+ }
+
+ import ietf-yang-types {
+ prefix "yang";
+ }
+
+ import ietf-routing-types {
+ prefix "rt-types";
+ }
+
+ organization
+ "IETF Traffic Engineering Architecture and Signaling (TEAS)
+ Working Group";
+
+ contact
+ "WG Web: <http://tools.ietf.org/wg/teas/>
+ WG List: <mailto:teas@ietf.org>
+ WG Chair: Lou Berger
+ <mailto:lberger@labn.net>
+ WG Chair: Vishnu Pavan Beeram
+ <mailto:vbeeram@juniper.net>
+ Editor: Tarek Saad
+ <mailto:tsaad@cisco.com>
+ Editor: Rakesh Gandhi
+ <mailto:rgandhi@cisco.com>
+ Editor: Vishnu Pavan Beeram
+ <mailto:vbeeram@juniper.net>
+ Editor: Himanshu Shah
+ <mailto:hshah@ciena.com>
+ Editor: Xufeng Liu
+ <mailto:xufeng.liu@ericsson.com>
+ Editor: Igor Bryskin
+ <mailto:Igor.Bryskin@huawei.com>";
+
+ description
+ "This module contains a collection of generally
+ useful TE specific YANG data type defintions.";
+
+ revision "2018-07-01" {
+ description "Latest revision of TE types";
+ reference "RFC3209";
+ }
+
+ /*
+ * Identities
+ */
+ identity association-type {
+ description "Base identity for tunnel association";
+ reference "RFC6780, RFC4872, RFC4873";
+ }
+ identity association-type-recovery {
+ base association-type;
+ description
+ "Association Type Recovery used to association LSPs of
+ same tunnel for recovery";
+ reference "RFC4872";
+ }
+ identity association-type-resource-sharing {
+ base association-type;
+ description
+ "Association Type Resource Sharing used to enable resource
+ sharing during make-before-break.";
+ reference "RFC4873";
+ }
+ identity association-type-double-sided-bidir {
+ base association-type;
+ description
+ "Association Type Double Sided bidirectional used to associate
+ two LSPs of two tunnels that are independently configured on
+ either endpoint";
+ reference "RFC7551";
+ }
+ identity association-type-single-sided-bidir {
+ base association-type;
+ description
+ "Association Type Single Sided bidirectional used to associate
+ two LSPs of two tunnels, where a tunnel is configured on one
+ side/endpoint, and the other tunnel is dynamically created on
+ the other endpoint";
+ reference "RFC7551";
+ }
+
+ identity objective-function-type {
+ description "Base objective function type";
+ reference "RFC4657";
+ }
+ identity of-minimize-cost-path {
+ base objective-function-type;
+ description
+ "Mimimuze cost of path objective function";
+ }
+ identity of-minimize-load-path {
+ base objective-function-type;
+ description
+ "Minimize the load on path(s) objective
+ function";
+ }
+ identity of-maximize-residual-bandwidth {
+ base objective-function-type;
+ description
+ "Maximize the residual bandwidth objective
+ function";
+ }
+ identity of-minimize-agg-bandwidth-consumption {
+ base objective-function-type;
+ description
+ "minimize the aggregate bandwidth consumption
+ objective function";
+ }
+ identity of-minimize-load-most-loaded-link {
+ base objective-function-type;
+ description
+ "Minimize the load on the most loaded link
+ objective function";
+ }
+ identity of-minimize-cost-path-set {
+ base objective-function-type;
+ description
+ "Minimize the cost on a path set objective
+ function";
+ }
+
+ identity path-computation-method {
+ description
+ "base identity for supported path computation
+ mechanisms";
+ }
+
+ identity path-locally-computed {
+ base path-computation-method;
+ description
+ "indicates a constrained-path LSP in which the
+ path is computed by the local LER";
+ }
+
+ identity path-externally-queried {
+ base path-computation-method;
+ description
+ "Constrained-path LSP in which the path is
+ obtained by querying an external source, such as a PCE server.
+ In the case that an LSP is defined to be externally queried, it
+ may also have associated explicit definitions (provided
+ to the external source to aid computation); and the path that is
+ returned by the external source is not required to provide a
+ wholly resolved path back to the originating system - that is to
+ say, some local computation may also be required";
+ }
+
+ identity path-explicitly-defined {
+ base path-computation-method;
+ description
+ "constrained-path LSP in which the path is
+ explicitly specified as a collection of strict or/and loose
+ hops";
+ }
+ /**
+ * Typedefs
+ */
+
+ typedef te-bandwidth {
+ type string {
+ pattern
+ '0[xX](0((\.0?)?[pP](\+)?0?|(\.0?))|'
+ + '1(\.([\da-fA-F]{0,5}[02468aAcCeE]?)?)?[pP](\+)?(12[0-7]|'
+ + '1[01]\d|0?\d?\d)?)|0[xX][\da-fA-F]{1,8}|\d+'
+ + '(,(0[xX](0((\.0?)?[pP](\+)?0?|(\.0?))|'
+ + '1(\.([\da-fA-F]{0,5}[02468aAcCeE]?)?)?[pP](\+)?(12[0-7]|'
+ + '1[01]\d|0?\d?\d)?)|0[xX][\da-fA-F]{1,8}|\d+))*';
+ }
+ description
+ "This is the generic bandwidth type that is a string containing
+ a list of numbers separated by commas, with each of these
+ number can be non-negative decimal, hex integer, or hex float:
+ (dec | hex | float)[*(','(dec | hex | float))]
+ For packet switching type, a float number is used, such as
+ 0x1p10.
+ For OTN switching type, a list of integers can be used, such
+ as '0,2,3,1', indicating 2 odu0's and 1 odu3.
+ For DWDM, a list of pairs of slot number and width can be
+ used, such as '0, 2, 3, 3', indicating a frequency slot 0 with
+ slot width 2 and a frequency slot 3 with slot width 3.";
+ } // te-bandwidth
+
+ typedef te-ds-class {
+ type uint8 {
+ range "0..7";
+ }
+ description
+ "The Differentiatied Class-Type of traffic.";
+ reference "RFC4124: section-4.3.1";
+ }
+
+ typedef te-link-direction {
+ type enumeration {
+ enum INCOMING {
+ description
+ "explicit route represents an incoming link on a node";
+ }
+ enum OUTGOING {
+ description
+ "explicit route represents an outgoing link on a node";
+ }
+ }
+ description
+ "enumerated type for specifying direction of link on a node";
+ }
+
+ typedef te-label-direction {
+ type enumeration {
+ enum FORWARD {
+ description
+ "Label allocated for the forward LSP direction";
+ }
+ enum REVERSE {
+ description
+ "Label allocated for the reverse LSP direction";
+ }
+ }
+ description
+ "enumerated type for specifying the forward or reverse
+ label";
+ }
+
+ typedef te-hop-type {
+ type enumeration {
+ enum LOOSE {
+ description
+ "loose hop in an explicit path";
+ }
+ enum STRICT {
+ description
+ "strict hop in an explicit path";
+ }
+ }
+ description
+ "enumerated type for specifying loose or strict
+ paths";
+ reference "RFC3209: section-4.3.2";
+ }
+
+ identity LSP_METRIC_TYPE {
+ description
+ "Base identity for types of LSP metric specification";
+ }
+
+ identity LSP_METRIC_RELATIVE {
+ base LSP_METRIC_TYPE;
+ description
+ "The metric specified for the LSPs to which this identity refers
+ is specified as a relative value to the IGP metric cost to the
+ LSP's tail-end.";
+ }
+
+ identity LSP_METRIC_ABSOLUTE {
+ base LSP_METRIC_TYPE;
+ description
+ "The metric specified for the LSPs to which this identity refers
+ is specified as an absolute value";
+ }
+
+ identity LSP_METRIC_INHERITED {
+ base LSP_METRIC_TYPE;
+ description
+ "The metric for for the LSPs to which this identity refers is
+ not specified explicitly - but rather inherited from the IGP
+ cost directly";
+ }
+
+ identity tunnel-type {
+ description
+ "Base identity from which specific tunnel types are
+ derived.";
+ }
+
+ identity tunnel-p2p {
+ base tunnel-type;
+ description
+ "TE point-to-point tunnel type.";
+ }
+
+ identity tunnel-p2mp {
+ base tunnel-type;
+ description
+ "TE point-to-multipoint tunnel type.";
+ reference "RFC4875";
+ }
+
+ identity tunnel-action-type {
+ description
+ "Base identity from which specific tunnel action types
+ are derived.";
+ }
+
+ identity tunnel-action-resetup {
+ base tunnel-action-type;
+ description
+ "TE tunnel action resetup. Tears the
+ tunnel's current LSP (if any) and
+ attempts to re-establish a new LSP";
+ }
+
+ identity tunnel-action-reoptimize {
+ base tunnel-action-type;
+ description
+ "TE tunnel action reoptimize.
+ Reoptimizes placement of the tunnel LSP(s)";
+ }
+
+ identity tunnel-action-switchpath {
+ base tunnel-action-type;
+ description
+ "TE tunnel action reoptimize
+ Switches the tunnel's LSP to use the specified path";
+ }
+
+ identity te-action-result {
+ description
+ "Base identity from which specific TE action results
+ are derived.";
+ }
+
+ identity te-action-success {
+ base te-action-result;
+ description "TE action successul.";
+ }
+
+ identity te-action-fail {
+ base te-action-result;
+ description "TE action failed.";
+ }
+
+ identity tunnel-action-inprogress {
+ base te-action-result;
+ description "TE action inprogress.";
+ }
+
+ identity tunnel-admin-state-type {
+ description
+ "Base identity for TE tunnel admin states";
+ }
+
+ identity tunnel-admin-state-up {
+ base tunnel-admin-state-type;
+ description "Tunnel administratively state up";
+ }
+
+ identity tunnel-admin-state-down {
+ base tunnel-admin-state-type;
+ description "Tunnel administratively state down";
+ }
+
+ identity tunnel-state-type {
+ description
+ "Base identity for TE tunnel states";
+ }
+
+ identity tunnel-state-up {
+ base tunnel-state-type;
+ description "Tunnel state up";
+ }
+
+ identity tunnel-state-down {
+ base tunnel-state-type;
+ description "Tunnel state down";
+ }
+
+ identity lsp-state-type {
+ description
+ "Base identity for TE LSP states";
+ }
+
+ identity lsp-path-computing {
+ base lsp-state-type;
+ description
+ "State path compute in progress";
+ }
+
+ identity lsp-path-computation-ok {
+ base lsp-state-type;
+ description
+ "State path compute successful";
+ }
+
+ identity lsp-path-computatione-failed {
+ base lsp-state-type;
+ description
+ "State path compute failed";
+ }
+
+ identity lsp-state-setting-up {
+ base lsp-state-type;
+ description
+ "State setting up";
+ }
+
+ identity lsp-state-setup-ok {
+ base lsp-state-type;
+ description
+ "State setup successful";
+ }
+
+ identity lsp-state-setup-failed {
+ base lsp-state-type;
+ description
+ "State setup failed";
+ }
+
+ identity lsp-state-up {
+ base lsp-state-type;
+ description "State up";
+ }
+
+ identity lsp-state-tearing-down {
+ base lsp-state-type;
+ description
+ "State tearing down";
+ }
+
+ identity lsp-state-down {
+ base lsp-state-type;
+ description "State down";
+ }
+
+ identity path-invalidation-action-type {
+ description
+ "Base identity for TE path invalidation action types";
+ }
+
+ identity path-invalidation-action-drop-type {
+ base path-invalidation-action-type;
+ description
+ "TE path invalidation action drop";
+ }
+
+ identity path-invalidation-action-drop-tear {
+ base path-invalidation-action-type;
+ description
+ "TE path invalidation action tear";
+ }
+
+ identity lsp-restoration-type {
+ description
+ "Base identity from which LSP restoration types are
+ derived.";
+ }
+
+ identity lsp-restoration-restore-any {
+ base lsp-restoration-type;
+ description
+ "Restores when any of the LSPs is affected by a failure";
+ }
+
+ identity lsp-restoration-restore-all {
+ base lsp-restoration-type;
+ description
+ "Restores when all the tunnel LSPs are affected by failure";
+ }
+
+ identity restoration-scheme-type {
+ description
+ "Base identity for LSP restoration schemes";
+ reference "RFC4872";
+ }
+
+ identity restoration-scheme-preconfigured {
+ base restoration-scheme-type;
+ description
+ "Restoration LSP is preconfigured prior to the failure";
+ }
+
+ identity restoration-scheme-precomputed {
+ base restoration-scheme-type;
+ description
+ "Restoration LSP is precomputed prior to the failure";
+ }
+
+ identity restoration-scheme-presignaled {
+ base restoration-scheme-type;
+ description
+ "Restoration LSP is presignaledd prior to the failure";
+ }
+
+ identity lsp-protection-type {
+ description
+ "Base identity from which LSP protection types are
+ derived.";
+ }
+
+ identity lsp-protection-unprotected {
+ base lsp-protection-type;
+ description
+ "LSP protection 'Unprotected'";
+ reference "RFC4872";
+ }
+
+ identity lsp-protection-reroute-extra {
+ base lsp-protection-type;
+ description
+ "LSP protection '(Full) Rerouting'";
+ reference "RFC4872";
+ }
+
+ identity lsp-protection-reroute {
+ base lsp-protection-type;
+ description
+ "LSP protection 'Rerouting without Extra-Traffic'";
+ reference "RFC4872";
+ }
+
+ identity lsp-protection-1-for-n {
+ base lsp-protection-type;
+ description
+ "LSP protection '1:N Protection with Extra-Traffic'";
+ reference "RFC4872";
+ }
+
+ identity lsp-protection-unidir-1-to-1 {
+ base lsp-protection-type;
+ description
+ "LSP protection '1+1 Unidirectional Protection'";
+ reference "RFC4872";
+ }
+
+ identity lsp-protection-bidir-1-to-1 {
+ base lsp-protection-type;
+ description
+ "LSP protection '1+1 Bidirectional Protection'";
+ reference "RFC4872";
+ }
+
+ identity lsp-protection-extra-traffic {
+ base lsp-protection-type;
+ description
+ "LSP protection 'Extra-Traffic'";
+ reference
+ "ITU-T G.808, RFC 4427.";
+ }
+
+ identity lsp-protection-state {
+ description
+ "Base identity of protection states for reporting
+ purposes.";
+ }
+
+ identity normal {
+ base lsp-protection-state;
+ description "Normal state.";
+ }
+
+ identity signal-fail-of-protection {
+ base lsp-protection-state;
+ description
+ "There is a SF condition on the protection transport
+ entity which has higher priority than the FS command.";
+ reference
+ "ITU-T G.873.1, G.8031, G.8131";
+ }
+
+ identity lockout-of-protection {
+ base lsp-protection-state;
+ description
+ "A Loss of Protection (LoP) command is active.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity forced-switch {
+ base lsp-protection-state;
+ description
+ "A forced switch (FS) command is active.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity signal-fail {
+ base lsp-protection-state;
+ description
+ "There is a SF condition on either the working
+ or the protection path.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity signal-degrade {
+ base lsp-protection-state;
+ description
+ "There is an SD condition on either the working or the
+ protection path.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity manual-switch {
+ base lsp-protection-state;
+ description
+ "A manual switch (MS) command is active.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity wait-to-restore {
+ base lsp-protection-state;
+ description
+ "A wait time to restore (WTR) is running.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity do-not-revert {
+ base lsp-protection-state;
+ description
+ "A DNR condition is active because of a non-revertive
+ behavior.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity failure-of-protocol {
+ base lsp-protection-state;
+ description
+ "The protection is not working because of a failure of
+ protocol condition.";
+ reference
+ "ITU-T G.873.1, G.8031, G.8131";
+ }
+
+ identity protection-external-commands {
+ description
+ "Protection external commands for trouble shooting
+ purposes.";
+ }
+
+ identity action-freeze {
+ base protection-external-commands;
+ description
+ "A temporary configuration action initiated by an operator
+ command to prevent any switch action to be taken and as such
+ freezes the current state.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity clear-freeze {
+ base protection-external-commands;
+ description
+ "An action that clears the active freeze state.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity action-lockout-of-normal {
+ base protection-external-commands;
+ description
+ "A temporary configuration action initiated by an operator
+ command to ensure that the normal traffic is not allowed
+ to use the protection transport entity.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity clear-lockout-of-normal {
+ base protection-external-commands;
+ description
+ "An action that clears the active lockout of normal state.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity action-lockout-of-protection {
+ base protection-external-commands;
+ description
+ "A temporary configuration action initiated by an operator
+ command to ensure that the protection transport entity is
+ temporarily not available to transport a traffic signal
+ (either normal or extra traffic).";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity action-forced-switch {
+ base protection-external-commands;
+ description
+ "A switch action initiated by an operator command to swith
+ the extra traffic signal, the normal traffic signal, or the
+ null signal to the protection transport entity, unless an
+ equal or higher priority switch command is in effect.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity action-manual-switch {
+ base protection-external-commands;
+ description
+ "A switch action initiated by an operator command to swith
+ the extra traffic signal, the normal traffic signal #i, or
+ the null signal to the protection transport entity, unless
+ a fault condition exists on other transport entities or an
+ equal or higher priority switch command is in effect.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity action-exercise {
+ base protection-external-commands;
+ description
+ "An action to start testing if the APS communication is
+ operating correctly. It is lower priority than any other
+ state or command.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity clear {
+ base protection-external-commands;
+ description
+ "An action that clears the active near-end lockout of
+ protection, forced switch, manual switch, WTR state,
+ or exercise command.";
+ reference
+ "ITU-T G.808, RFC 4427";
+ }
+
+ identity switching-capabilities {
+ description
+ "Base identity for interface switching capabilities";
+ reference "RFC3471";
+ }
+
+ identity switching-psc1 {
+ base switching-capabilities;
+ description
+ "Packet-Switch Capable-1 (PSC-1)";
+ reference "RFC3471";
+ }
+
+ identity switching-evpl {
+ base switching-capabilities;
+ description
+ "Ethernet Virtual Private Line (EVPL)";
+ }
+
+ identity switching-l2sc {
+ base switching-capabilities;
+ description
+ "Layer-2 Switch Capable (L2SC)";
+ reference "RFC3471";
+ }
+
+ identity switching-tdm {
+ base switching-capabilities;
+ description
+ "Time-Division-Multiplex Capable (TDM)";
+ reference "RFC3471";
+ }
+
+ identity switching-otn {
+ base switching-capabilities;
+ description
+ "OTN-TDM capable";
+ }
+
+ identity switching-dcsc {
+ base switching-capabilities;
+ description
+ "Data Channel Switching Capable (DCSC)";
+ }
+
+ identity switching-lsc {
+ base switching-capabilities;
+ description
+ "Lambda-Switch Capable (LSC)";
+ reference "RFC3471";
+ }
+
+ identity switching-fsc {
+ base switching-capabilities;
+ description
+ "Fiber-Switch Capable (FSC)";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-types {
+ description
+ "Base identity for encoding types";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-packet {
+ base lsp-encoding-types;
+ description
+ "Packet LSP encoding";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-ethernet {
+ base lsp-encoding-types;
+ description
+ "Ethernet LSP encoding";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-pdh {
+ base lsp-encoding-types;
+ description
+ "ANSI/ETSI LSP encoding";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-sdh {
+ base lsp-encoding-types;
+ description
+ "SDH ITU-T G.707 / SONET ANSI T1.105 LSP encoding";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-digital-wrapper {
+ base lsp-encoding-types;
+ description
+ "Digital Wrapper LSP encoding";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-lambda {
+ base lsp-encoding-types;
+ description
+ "Lambda (photonic) LSP encoding";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-fiber {
+ base lsp-encoding-types;
+ description
+ "Fiber LSP encoding";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-fiber-channel {
+ base lsp-encoding-types;
+ description
+ "FiberChannel LSP encoding";
+ reference "RFC3471";
+ }
+
+ identity lsp-encoding-oduk {
+ base lsp-encoding-types;
+ description
+ "G.709 ODUk (Digital Path)LSP encoding";
+ }
+
+ identity lsp-encoding-optical-channel {
+ base lsp-encoding-types;
+ description
+ "Line (e.g., 8B/10B) LSP encoding";
+ }
+
+ identity lsp-encoding-line {
+ base lsp-encoding-types;
+ description
+ "Line (e.g., 8B/10B) LSP encoding";
+ }
+
+ identity path-signaling-type {
+ description
+ "base identity from which specific LSPs path
+ setup types are derived";
+ }
+
+ identity path-setup-static {
+ base path-signaling-type;
+ description
+ "Static LSP provisioning path setup";
+ }
+
+ identity path-setup-rsvp {
+ base path-signaling-type;
+ description
+ "RSVP-TE signaling path setup";
+ reference "RFC3209";
+ }
+
+ identity path-setup-sr {
+ base path-signaling-type;
+ description
+ "Segment-routing path setup";
+ }
+
+ identity path-scope-type {
+ description
+ "base identity from which specific path
+ scope types are derived";
+ }
+
+ identity path-scope-segment {
+ base path-scope-type;
+ description
+ "Path scope segment";
+ }
+
+ identity path-scope-end-to-end {
+ base path-scope-type;
+ description
+ "Path scope end to end";
+ }
+
+ /* TE basic features */
+ feature p2mp-te {
+ description
+ "Indicates support for P2MP-TE";
+ reference "RFC4875";
+ }
+
+ feature frr-te {
+ description
+ "Indicates support for TE FastReroute (FRR)";
+ reference "RFC4090";
+ }
+
+ feature extended-admin-groups {
+ description
+ "Indicates support for TE link extended admin
+ groups.";
+ reference "RFC7308";
+ }
+
+ feature named-path-affinities {
+ description
+ "Indicates support for named path affinities";
+ }
+
+ feature named-extended-admin-groups {
+ description
+ "Indicates support for named extended admin groups";
+ }
+
+ feature named-srlg-groups {
+ description
+ "Indicates support for named SRLG groups";
+ }
+
+ feature named-path-constraints {
+ description
+ "Indicates support for named path constraints";
+ }
+
+ feature path-optimization-metric {
+ description
+ "Indicates support for path optimization metric";
+ }
+
+ feature path-optimization-objective-function {
+ description
+ "Indicates support for path optimization objective function";
+ }
+
+ identity route-usage-type {
+ description
+ "Base identity for route usage";
+ }
+
+ identity route-include-ero {
+ base route-usage-type;
+ description
+ "Include ERO from route";
+ }
+
+ identity route-exclude-ero {
+ base route-usage-type;
+ description
+ "Exclude ERO from route";
+ }
+
+ identity route-exclude-srlg {
+ base route-usage-type;
+ description
+ "Exclude SRLG from route";
+ }
+
+ identity path-metric-type {
+ description
+ "Base identity for path metric type";
+ }
+
+ identity path-metric-te {
+ base path-metric-type;
+ description
+ "TE path metric";
+ reference "RFC3785";
+ }
+
+ identity path-metric-igp {
+ base path-metric-type;
+ description
+ "IGP path metric";
+ reference "RFC3785";
+ }
+
+ identity path-metric-hop {
+ base path-metric-type;
+ description
+ "Hop path metric";
+ }
+
+ identity path-metric-delay-average {
+ base path-metric-type;
+ description
+ "Unidirectional average link delay";
+ reference "RFC7471";
+ }
+
+ identity path-metric-residual-bandwidth {
+ base path-metric-type;
+ description
+ "Unidirectional Residual Bandwidth, which is defined to be
+ Maximum Bandwidth [RFC3630] minus the bandwidth currently
+ allocated to LSPs.";
+ reference "RFC7471";
+ }
+ identity path-metric-optimize-includes {
+ base path-metric-type;
+ description
+ "A metric that optimizes the number of included resources
+ specified in a set";
+ }
+
+ identity path-metric-optimize-excludes {
+ base path-metric-type;
+ description
+ "A metric that optimizes the number of excluded resources
+ specified in a set";
+ }
+
+ identity path-tiebreaker-type {
+ description
+ "Base identity for path tie-breaker type";
+ }
+
+ identity path-tiebreaker-minfill {
+ base path-tiebreaker-type;
+ description
+ "Min-Fill LSP path placement";
+ }
+
+ identity path-tiebreaker-maxfill {
+ base path-tiebreaker-type;
+ description
+ "Max-Fill LSP path placement";
+ }
+
+ identity path-tiebreaker-randoom {
+ base path-tiebreaker-type;
+ description
+ "Random LSP path placement";
+ }
+
+ identity bidir-provisioning-mode {
+ description
+ "Base identity for bidirectional provisioning
+ mode.";
+ reference "RFC7551";
+ }
+
+ identity bidir-provisioning-single-sided {
+ base bidir-provisioning-mode;
+ description
+ "Single-sided bidirectional provioning mode";
+ reference "RFC7551";
+ }
+
+ identity bidir-provisioning-double-sided {
+ base bidir-provisioning-mode;
+ description
+ "Double-sided bidirectional provioning mode";
+ reference "RFC7551";
+ }
+
+ identity bidir-association-type {
+ description
+ "Base identity for bidirectional association type";
+ reference "RFC7551";
+ }
+
+ identity bidir-assoc-corouted {
+ base bidir-association-type;
+ description
+ "Co-routed bidirectional association type";
+ reference "RFC7551";
+ }
+
+ identity bidir-assoc-non-corouted {
+ base bidir-association-type;
+ description
+ "Non co-routed bidirectional association type";
+ reference "RFC7551";
+ }
+
+ identity resource-affinities-type {
+ description
+ "Base identity for resource affinities";
+ reference "RFC2702";
+ }
+
+ identity resource-aff-include-all {
+ base resource-affinities-type;
+ description
+ "The set of attribute filters associated with a
+ tunnel all of which must be present for a link
+ to be acceptable";
+ reference "RFC2702 and RFC3209";
+ }
+
+ identity resource-aff-include-any {
+ base resource-affinities-type;
+ description
+ "The set of attribute filters associated with a
+ tunnel any of which must be present for a link
+ to be acceptable";
+ reference "RFC2702 and RFC3209";
+ }
+
+ identity resource-aff-exclude-any {
+ base resource-affinities-type;
+ description
+ "The set of attribute filters associated with a
+ tunnel any of which renders a link unacceptable";
+ reference "RFC2702 and RFC3209";
+ }
+
+ typedef optimization-goal {
+ type enumeration {
+ enum minimize {
+ description "Pick lowest path metric goal";
+ }
+ enum maximize {
+ description "Pick highest path metric goal";
+ }
+ enum randomize {
+ description
+ "Pick a path at random from list of
+ equally favorable ones";
+ }
+ }
+ description "TE optimization goal";
+ }
+
+ identity te-optimization-criterion {
+ description
+ "Base identity for TE optimization criterion.";
+ reference
+ "RFC3272: Overview and Principles of Internet Traffic
+ Engineering.";
+ }
+
+ identity not-optimized {
+ base te-optimization-criterion;
+ description "Optimization is not applied.";
+ }
+
+ identity cost {
+ base te-optimization-criterion;
+ description "Optimized on cost.";
+ }
+ identity delay {
+ base te-optimization-criterion;
+ description "Optimized on delay.";
+ }
+
+ /*
+ * Typedefs
+ */
+
+ typedef percentage {
+ type uint8 {
+ range "0..100";
+ }
+ description
+ "Integer indicating a percentage value";
+ }
+
+ typedef performance-metric-normality {
+ type enumeration {
+ enum "unknown" {
+ value 0;
+ description
+ "Unknown.";
+ }
+ enum "normal" {
+ value 1;
+ description
+ "Normal.";
+ }
+ enum "abnormal" {
+ value 2;
+ description
+ "Abnormal. The anomalous bit is set.";
+ }
+ }
+ description
+ "Indicates whether a performance metric is normal, abnormal, or
+ unknown.";
+ reference
+ "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions.
+ RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions.
+ RFC7823: Performance-Based Path Selection for Explicitly
+ Routed Label Switched Paths (LSPs) Using TE Metric
+ Extensions";
+ }
+
+ typedef te-admin-status {
+ type enumeration {
+ enum up {
+ description
+ "Enabled.";
+ }
+ enum down {
+ description
+ "Disabled.";
+ }
+ enum testing {
+ description
+ "In some test mode.";
+ }
+ enum preparing-maintenance {
+ description
+ "Resource is disabled in the control plane to prepare for
+ graceful shutdown for maintenance purposes.";
+ reference
+ "RFC5817: Graceful Shutdown in MPLS and Generalized MPLS
+ Traffic Engineering Networks";
+ }
+ enum maintenance {
+ description
+ "Resource is disabled in the data plane for maintenance
+ purposes.";
+ }
+ }
+ description
+ "Defines a type representing the administrative status of
+ a TE resource.";
+ }
+
+ typedef te-global-id {
+ type uint32;
+ description
+ "An identifier to uniquely identify an operator, which can be
+ either a provider or a client.
+ The definition of this type is taken from RFC6370 and RFC5003.
+ This attribute type is used solely to provide a globally
+ unique context for TE topologies.";
+ }
+
+ typedef te-link-access-type {
+ type enumeration {
+ enum point-to-point {
+ description
+ "The link is point-to-point.";
+ }
+ enum multi-access {
+ description
+ "The link is multi-access, including broacast and NBMA.";
+ }
+ }
+ description
+ "Defines a type representing the access type of a TE link.";
+ reference
+ "RFC3630: Traffic Engineering (TE) Extensions to OSPF
+ Version 2.";
+ }
+
+ typedef te-node-id {
+ type yang:dotted-quad;
+ description
+ "An identifier for a node in a topology.
+ The identifier is represented as 32-bit unsigned integer in
+ the dotted-quad notation.
+ This attribute is mapped to Router ID in
+ RFC3630, RFC5329, RFC5305, and RFC6119.";
+ }
+
+ typedef te-oper-status {
+ type enumeration {
+ enum up {
+ description
+ "Operational up.";
+ }
+ enum down {
+ description
+ "Operational down.";
+ }
+ enum testing {
+ description
+ "In some test mode.";
+ }
+ enum unknown {
+ description
+ "Status cannot be determined for some reason.";
+ }
+ enum preparing-maintenance {
+ description
+ "Resource is disabled in the control plane to prepare for
+ graceful shutdown for maintenance purposes.";
+ reference
+ "RFC5817: Graceful Shutdown in MPLS and Generalized MPLS
+ Traffic Engineering Networks";
+ }
+ enum maintenance {
+ description
+ "Resource is disabled in the data plane for maintenance
+ purposes.";
+ }
+ }
+ description
+ "Defines a type representing the operational status of
+ a TE resource.";
+ }
+
+ typedef te-path-disjointness {
+ type bits {
+ bit node {
+ position 0;
+ description "Node disjoint.";
+ }
+ bit link {
+ position 1;
+ description "Link disjoint.";
+ }
+ bit srlg {
+ position 2;
+ description "SRLG (Shared Risk Link Group) disjoint.";
+ }
+ }
+ description
+ "Type of the resource disjointness for a TE tunnel path.";
+ reference
+ "RFC4872: RSVP-TE Extensions in Support of End-to-End
+ Generalized Multi-Protocol Label Switching (GMPLS)
+ Recovery";
+ } // te-path-disjointness
+
+ typedef te-recovery-status {
+ type enumeration {
+ enum normal {
+ description
+ "Both the recovery and working spans are fully
+ allocated and active, data traffic is being
+ transported over (or selected from) the working
+ span, and no trigger events are reported.";
+ }
+ enum recovery-started {
+ description
+ "The recovery action has been started, but not completed.";
+ }
+ enum recovery-succeeded {
+ description
+ "The recovery action has succeeded. The working span has
+ reported a failure/degrade condition and the user traffic
+ is being transported (or selected) on the recovery span.";
+ }
+ enum recovery-failed {
+ description
+ "The recovery action has failed.";
+ }
+ enum reversion-started {
+ description
+ "The reversion has started.";
+ }
+ enum reversion-failed {
+ description
+ "The reversion has failed.";
+ }
+ enum recovery-unavailable {
+ description
+ "The recovery is unavailable -- either as a result of an
+ operator Lockout command or a failure condition detected
+ on the recovery span.";
+ }
+ enum recovery-admin {
+ description
+ "The operator has issued a command switching the user
+ traffic to the recovery span.";
+ }
+ enum wait-to-restore {
+ description
+ "The recovery domain is recovering from a failuer/degrade
+ condition on the working span that is being controlled by
+ the Wait-to-Restore (WTR) timer.";
+ }
+ }
+ description
+ "Defines the status of a recovery action.";
+ reference
+ "RFC4427: Recovery (Protection and Restoration) Terminology
+ for Generalized Multi-Protocol Label Switching (GMPLS).
+ RFC6378: MPLS Transport Profile (MPLS-TP) Linear Protection";
+ }
+
+ typedef te-template-name {
+ type string {
+ pattern '/?([a-zA-Z0-9\-_.]+)(/[a-zA-Z0-9\-_.]+)*';
+ }
+ description
+ "A type for the name of a TE node template or TE link
+ template.";
+ }
+
+ typedef te-topology-event-type {
+ type enumeration {
+ enum "add" {
+ value 0;
+ description
+ "A TE node or te-link has been added.";
+ }
+ enum "remove" {
+ value 1;
+ description
+ "A TE node or te-link has been removed.";
+ }
+ enum "update" {
+ value 2;
+ description
+ "A TE node or te-link has been updated.";
+ }
+ }
+ description "TE Event type for notifications";
+ } // te-topology-event-type
+
+ typedef te-topology-id {
+ type string {
+ pattern
+ '([a-zA-Z0-9\-_.]+:)*'
+ + '/?([a-zA-Z0-9\-_.]+)(/[a-zA-Z0-9\-_.]+)*';
+ }
+ description
+ "An identifier for a topology.
+ It is optional to have one or more prefixes at the begining,
+ separated by colons. The prefixes can be the network-types,
+ defined in ietf-network.yang, to help user to understand the
+ topology better before further inquiry.";
+ }
+
+ typedef te-tp-id {
+ type union {
+ type uint32; // Unnumbered
+ type inet:ip-address; // IPv4 or IPv6 address
+ }
+ description
+ "An identifier for a TE link endpoint on a node.
+ This attribute is mapped to local or remote link identifier in
+ RFC3630 and RFC5305.";
+ }
+ typedef admin-group {
+ type binary {
+ length 4;
+ }
+ description
+ "Administrative group/Resource class/Color.";
+ reference "RFC3630 and RFC5305";
+ }
+
+ typedef extended-admin-group {
+ type binary;
+ description
+ "Extended administrative group/Resource class/Color.";
+ reference "RFC7308";
+ }
+
+ typedef admin-groups {
+ type union {
+ type admin-group;
+ type extended-admin-group;
+ }
+ description "TE administrative group derived type";
+ }
+
+ typedef srlg {
+ type uint32;
+ description "SRLG type";
+ reference "RFC4203 and RFC5307";
+ }
+
+ identity path-computation-srlg-type {
+ description
+ "Base identity for SRLG path computation";
+ }
+
+ identity srlg-ignore {
+ base path-computation-srlg-type;
+ description
+ "Ignores SRLGs in path computation";
+ }
+
+ identity srlg-strict {
+ base path-computation-srlg-type;
+ description
+ "Include strict SRLG check in path computation";
+ }
+
+ identity srlg-preferred {
+ base path-computation-srlg-type;
+ description
+ "Include preferred SRLG check in path computation";
+ }
+
+ identity srlg-weighted {
+ base path-computation-srlg-type;
+ description
+ "Include weighted SRLG check in path computation";
+ }
+
+ typedef te-metric {
+ type uint32;
+ description
+ "TE link metric";
+ reference "RFC3785";
+ }
+
+ /**
+ * TE bandwidth groupings
+ **/
+ identity otn-rate-type {
+ description
+ "Base type to identify OTN bit rates of various information
+ structures.";
+ reference "RFC7139";
+ }
+ identity odu0 {
+ base otn-rate-type;
+ description
+ "ODU0 bit rate.";
+ }
+ identity odu1 {
+ base otn-rate-type;
+ description
+ "ODU1 bit rate.";
+ }
+ identity odu2 {
+ base otn-rate-type;
+ description
+ "ODU2 bit rate.";
+ }
+ identity odu3 {
+ base otn-rate-type;
+ description
+ "ODU3 bit rate.";
+ }
+ identity odu4 {
+ base otn-rate-type;
+ description
+ "ODU4 bit rate.";
+ }
+ identity odu2e {
+ base otn-rate-type;
+ description
+ "ODU2e bit rate.";
+ }
+ identity oduc {
+ base otn-rate-type;
+ description
+ "ODUCn bit rate.";
+ }
+ identity oduflex {
+ base otn-rate-type;
+ description
+ "ODUflex bit rate.";
+ }
+
+ identity wdm-spectrum-type {
+ description
+ "Base type to identify WDM spectrum type.";
+ }
+ identity cwdm {
+ base wdm-spectrum-type;
+ description "CWDM.";
+ reference "RFC6205";
+ }
+ identity dwdm {
+ base wdm-spectrum-type;
+ description "DWDM.";
+ reference "RFC6205";
+ }
+ identity flexible-grid {
+ base wdm-spectrum-type;
+ description "Flexible grid.";
+ reference "RFC6205";
+ }
+
+ grouping te-bandwidth {
+ description
+ "This grouping defines the generic TE bandwidth.
+ For some known data plane technologies, specific modeling
+ structures are specified. The string encoded te-bandwidth
+ type is used for un-specified technologies.
+ The modeling structure can be augmented later for other
+ technologies.";
+ container te-bandwidth {
+ description
+ "Container that specifies TE bandwidth.";
+ choice technology {
+ default generic;
+ description
+ "Data plane technology type.";
+ case generic {
+ leaf generic {
+ type te-bandwidth;
+ description
+ "Bandwidth specified in a generic format.";
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * TE label groupings
+ **/
+ grouping te-label {
+ description
+ "This grouping defines the generic TE label.
+ The modeling structure can be augmented for each technology.
+ For un-specified technologies, rt-types:generalized-label
+ is used.";
+ container te-label {
+ description
+ "Container that specifies TE label.";
+ choice technology {
+ default generic;
+ description
+ "Data plane technology type.";
+ case generic {
+ leaf generic {
+ type rt-types:generalized-label;
+ description
+ "TE label specified in a generic format.";
+ }
+ }
+ }
+ leaf direction {
+ type te-label-direction;
+ description "Label direction";
+ }
+ }
+ }
+ /**
+ * TE performance metric groupings
+ **/
+ grouping performance-metric-container {
+ description
+ "A container containing performance metric attributes.";
+ container performance-metric {
+ description
+ "Link performance information in real time.";
+ reference
+ "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions.
+ RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions.
+ RFC7823: Performance-Based Path Selection for Explicitly
+ Routed Label Switched Paths (LSPs) Using TE Metric
+ Extensions";
+ container measurement {
+ description
+ "Measured performance metric values. Static configuration
+ and manual overrides of these measurements are also
+ allowed.";
+ uses performance-metric-attributes;
+ }
+ container normality
+ {
+ description
+ "Performance metric normality values.";
+ uses performance-metric-normality-attributes;
+ }
+ uses performance-metric-throttle-container;
+ }
+ } // performance-metric-container
+
+ grouping te-topology-identifier {
+ description
+ "Augmentation for TE topology.";
+ container te-topology-identifier {
+ description "TE topology identifier container";
+ leaf provider-id {
+ type te-types:te-global-id;
+ description
+ "An identifier to uniquely identify a provider.";
+ }
+ leaf client-id {
+ type te-types:te-global-id;
+ description
+ "An identifier to uniquely identify a client.";
+ }
+ leaf topology-id {
+ type te-types:te-topology-id;
+ description
+ "It is presumed that a datastore will contain many
+ topologies. To distinguish between topologies it is
+ vital to have UNIQUE topology identifiers.";
+ }
+ }
+ }
+
+ grouping performance-metric-attributes {
+ description
+ "Link performance information in real time.";
+ reference
+ "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions.
+ RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions.
+ RFC7823: Performance-Based Path Selection for Explicitly
+ Routed Label Switched Paths (LSPs) Using TE Metric
+ Extensions";
+ leaf unidirectional-delay {
+ type uint32 {
+ range 0..16777215;
+ }
+ description "Delay or latency in micro seconds.";
+ }
+ leaf unidirectional-min-delay {
+ type uint32 {
+ range 0..16777215;
+ }
+ description "Minimum delay or latency in micro seconds.";
+ }
+ leaf unidirectional-max-delay {
+ type uint32 {
+ range 0..16777215;
+ }
+ description "Maximum delay or latency in micro seconds.";
+ }
+ leaf unidirectional-delay-variation {
+ type uint32 {
+ range 0..16777215;
+ }
+ description "Delay variation in micro seconds.";
+ }
+ leaf unidirectional-packet-loss {
+ type decimal64 {
+ fraction-digits 6;
+ range "0 .. 50.331642";
+ }
+ description
+ "Packet loss as a percentage of the total traffic sent
+ over a configurable interval. The finest precision is
+ 0.000003%.";
+ }
+ leaf unidirectional-residual-bandwidth {
+ type rt-types:bandwidth-ieee-float32;
+ description
+ "Residual bandwidth that subtracts tunnel
+ reservations from Maximum Bandwidth (or link capacity)
+ [RFC3630] and provides an aggregated remainder across QoS
+ classes.";
+ }
+ leaf unidirectional-available-bandwidth {
+ type rt-types:bandwidth-ieee-float32;
+ description
+ "Available bandwidth that is defined to be residual
+ bandwidth minus the measured bandwidth used for the
+ actual forwarding of non-RSVP-TE LSP packets. For a
+ bundled link, available bandwidth is defined to be the
+ sum of the component link available bandwidths.";
+ }
+ leaf unidirectional-utilized-bandwidth {
+ type rt-types:bandwidth-ieee-float32;
+ description
+ "Bandwidth utilization that represents the actual
+ utilization of the link (i.e. as measured in the router).
+ For a bundled link, bandwidth utilization is defined to
+ be the sum of the component link bandwidth
+ utilizations.";
+ }
+ } // performance-metric-attributes
+
+ grouping performance-metric-normality-attributes {
+ description
+ "Link performance metric normality attributes.";
+ reference
+ "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions.
+ RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions.
+ RFC7823: Performance-Based Path Selection for Explicitly
+ Routed Label Switched Paths (LSPs) Using TE Metric
+ Extensions";
+ leaf unidirectional-delay {
+ type te-types:performance-metric-normality;
+ description "Delay normality.";
+ }
+ leaf unidirectional-min-delay {
+ type te-types:performance-metric-normality;
+ description "Minimum delay or latency normality.";
+ }
+ leaf unidirectional-max-delay {
+ type te-types:performance-metric-normality;
+ description "Maximum delay or latency normality.";
+ }
+ leaf unidirectional-delay-variation {
+ type te-types:performance-metric-normality;
+ description "Delay variation normality.";
+ }
+ leaf unidirectional-packet-loss {
+ type te-types:performance-metric-normality;
+ description "Packet loss normality.";
+ }
+ leaf unidirectional-residual-bandwidth {
+ type te-types:performance-metric-normality;
+ description "Residual bandwidth normality.";
+ }
+ leaf unidirectional-available-bandwidth {
+ type te-types:performance-metric-normality;
+ description "Available bandwidth normality.";
+ }
+ leaf unidirectional-utilized-bandwidth {
+ type te-types:performance-metric-normality;
+ description "Bandwidth utilization normality.";
+ }
+ } // performance-metric-normality-attributes
+
+ grouping performance-metric-throttle-container {
+ description
+ "A container controlling performance metric throttle.";
+ container throttle {
+ must "suppression-interval >= measure-interval" {
+ error-message
+ "suppression-interval cannot be less then
+ measure-interval.";
+ description
+ "Constraint on suppression-interval and
+ measure-interval.";
+ }
+ description
+ "Link performance information in real time.";
+ reference
+ "RFC7471: OSPF Traffic Engineering (TE) Metric Extensions.
+ RFC7810: IS-IS Traffic Engineering (TE) Metric Extensions.
+ RFC7823: Performance-Based Path Selection for Explicitly
+ Routed Label Switched Paths (LSPs) Using TE Metric
+ Extensions";
+ leaf unidirectional-delay-offset {
+ type uint32 {
+ range 0..16777215;
+ }
+ description
+ "Offset value to be added to the measured delay value.";
+ }
+ leaf measure-interval {
+ type uint32;
+ default 30;
+ description
+ "Interval in seconds to measure the extended metric
+ values.";
+ }
+ leaf advertisement-interval {
+ type uint32;
+ description
+ "Interval in seconds to advertise the extended metric
+ values.";
+ }
+ leaf suppression-interval {
+ type uint32 {
+ range "1 .. max";
+ }
+ default 120;
+ description
+ "Interval in seconds to suppress advertising the extended
+ metric values.";
+ }
+ container threshold-out {
+ uses performance-metric-attributes;
+ description
+ "If the measured parameter falls outside an upper bound
+ for all but the min delay metric (or lower bound for
+ min-delay metric only) and the advertised value is not
+ already outside that bound, anomalous announcement will be
+ triggered.";
+ }
+ container threshold-in {
+ uses performance-metric-attributes;
+ description
+ "If the measured parameter falls inside an upper bound
+ for all but the min delay metric (or lower bound for
+ min-delay metric only) and the advertised value is not
+ already inside that bound, normal (anomalous-flag cleared)
+ announcement will be triggered.";
+ }
+ container threshold-accelerated-advertisement {
+ description
+ "When the difference between the last advertised value and
+ current measured value exceed this threshold, anomalous
+ announcement will be triggered.";
+ uses performance-metric-attributes;
+ }
+ }
+ } // performance-metric-throttle-container
+
+ /**
+ * TE tunnel generic groupings
+ **/
+
+ /* Tunnel path selection parameters */
+ grouping explicit-route-hop {
+ description
+ "The explicit route subobject grouping";
+ leaf index {
+ type uint32;
+ description "ERO subobject index";
+ }
+ choice type {
+ description
+ "The explicit route subobject type";
+ case num-unnum-hop {
+ container num-unnum-hop {
+ leaf node-id {
+ type te-types:te-node-id;
+ description
+ "The identifier of a node in the TE topology.";
+ }
+ leaf link-tp-id {
+ type te-types:te-tp-id;
+ description
+ "TE link termination point identifier. The combination
+ of TE link ID and the TE node ID is used to identify an
+ unnumbered TE link.";
+ }
+ leaf hop-type {
+ type te-hop-type;
+ description "strict or loose hop";
+ }
+ leaf direction {
+ type te-link-direction;
+ description "Unnumbered Link ERO direction";
+ }
+ description
+ "Numbered and Unnumbered link/node explicit route
+ subobject";
+ reference
+ "RFC3209: section 4.3 for EXPLICIT_ROUTE in RSVP-TE
+ RFC3477: Signalling Unnumbered Links in RSVP-TE";
+ }
+ }
+ case as-number {
+ container as-number-hop {
+ leaf as-number {
+ type binary {
+ length 16;
+ }
+ description "AS number";
+ }
+ leaf hop-type {
+ type te-hop-type;
+ description
+ "strict or loose hop";
+ }
+ description
+ "Autonomous System explicit route subobject";
+ }
+ }
+ case label {
+ container label-hop {
+ description "Label hop type";
+ uses te-label;
+ }
+ description
+ "The Label ERO subobject";
+ }
+ }
+ }
+
+ grouping record-route-subobject_state {
+ description
+ "The record route subobject grouping";
+ leaf index {
+ type uint32;
+ description "RRO subobject index";
+ }
+ choice type {
+ description
+ "The record route subobject type";
+ case numbered {
+ leaf address {
+ type te-types:te-tp-id;
+ description
+ "Numbered link TE termination point address.";
+ }
+ leaf ip-flags {
+ type binary {
+ length 8;
+ }
+ description
+ "RRO IP address sub-object flags";
+ reference "RFC3209";
+ }
+ }
+ case unnumbered {
+ leaf node-id {
+ type te-types:te-node-id;
+ description
+ "The identifier of a node in the TE topology.";
+ }
+ leaf link-tp-id {
+ type te-types:te-tp-id;
+ description
+ "TE link termination point identifier, used
+ together with te-node-id to identify the
+ link termination point";
+ }
+ description
+ "Unnumbered link record route subobject";
+ reference
+ "RFC3477: Signalling Unnumbered Links in
+ RSVP-TE";
+ }
+ case label {
+ container label-hop {
+ description "Label hop type";
+ uses te-label;
+ leaf label-flags {
+ type binary {
+ length 8;
+ }
+ description
+ "Label sub-object flags";
+ reference "RFC3209";
+ }
+ }
+ description
+ "The Label RRO subobject";
+ }
+ }
+ }
+
+ grouping label-restriction-info {
+ description "Label set item info";
+ leaf restriction {
+ type enumeration {
+ enum inclusive {
+ description "The label or label range is inclusive.";
+ }
+ enum exclusive {
+ description "The label or label range is exclusive.";
+ }
+ }
+ description
+ "Whether the list item is inclusive or exclusive.";
+ }
+ leaf index {
+ type uint32;
+ description
+ "Then index of the label restriction list entry.";
+ }
+ container label-start {
+ description
+ "This is the starting label if a label range is specified.
+ This is the label value if a single label is specified,
+ in which case, attribute 'label-end' is not set.";
+ uses te-label;
+ }
+ container label-end {
+ description
+ "The ending label if a label range is specified;
+ This attribute is not set, If a single label is
+ specified.";
+ uses te-label;
+ }
+ leaf range-bitmap {
+ type binary;
+ description
+ "When there are gaps between label-start and label-end,
+ this attribute is used to specified the possitions
+ of the used labels.";
+ }
+ }
+
+ grouping label-set-info {
+ description
+ "Grouping for List of label restrictions specifying what labels
+ may or may not be used on a link connectivity.";
+ container label-restrictions {
+ description
+ "The label restrictions container";
+ list label-restriction {
+ key "index";
+ description
+ "The absence of label-set implies that all labels are
+ acceptable; otherwise only restricted labels are
+ available.";
+ reference
+ "RFC7579: General Network Element Constraint Encoding
+ for GMPLS-Controlled Networks";
+ uses label-restriction-info;
+ }
+ }
+ }
+
+ /*** End of TE tunnel groupings ***/
+ grouping optimizations_config {
+ description "Optimization metrics configuration grouping";
+ leaf metric-type {
+ type identityref {
+ base te-types:path-metric-type;
+ }
+ description "TE path metric type";
+ }
+ leaf weight {
+ type uint8;
+ description "TE path metric normalization weight";
+ }
+ container explicit-route-exclude-objects {
+ when "../metric-type = " +
+ "'te-types:path-metric-optimize-excludes'";
+ description
+ "Container for the exclude route object list";
+ uses path-route-exclude-objects;
+ }
+ container explicit-route-include-objects {
+ when "../metric-type = " +
+ "'te-types:path-metric-optimize-includes'";
+ description
+ "Container for the include route object list";
+ uses path-route-include-objects;
+ }
+ }
+
+ grouping common-constraints_config {
+ description
+ "Common constraints grouping that can be set on
+ a constraint set or directly on the tunnel";
+
+ uses te-types:te-bandwidth {
+ description
+ "A requested bandwidth to use for path computation";
+ }
+
+ leaf setup-priority {
+ type uint8 {
+ range "0..7";
+ }
+ description
+ "TE LSP requested setup priority";
+ reference "RFC3209";
+ }
+ leaf hold-priority {
+ type uint8 {
+ range "0..7";
+ }
+ description
+ "TE LSP requested hold priority";
+ reference "RFC3209";
+ }
+ leaf signaling-type {
+ type identityref {
+ base te-types:path-signaling-type;
+ }
+ description "TE tunnel path signaling type";
+ }
+ }
+
+ grouping tunnel-constraints_config {
+ description
+ "Tunnel constraints grouping that can be set on
+ a constraint set or directly on the tunnel";
+ uses te-types:te-topology-identifier;
+ uses te-types:common-constraints_config;
+ }
+
+ grouping path-metrics-bounds_config {
+ description "TE path metric bounds grouping";
+ leaf metric-type {
+ type identityref {
+ base te-types:path-metric-type;
+ }
+ description "TE path metric type";
+ }
+ leaf upper-bound {
+ type uint64;
+ description "Upper bound on end-to-end TE path metric";
+ }
+ }
+
+ grouping path-objective-function_config {
+ description "Optimization metrics configuration grouping";
+ leaf objective-function-type {
+ type identityref {
+ base te-types:objective-function-type;
+ }
+ description
+ "Objective function entry";
+ }
+ }
+
+ /**
+ * TE interface generic groupings
+ **/
+ grouping path-route-objects {
+ description
+ "List of EROs to be included or excluded when performing
+ the path computation.";
+ container explicit-route-objects {
+ description
+ "Container for the exclude route object list";
+ list route-object-exclude-always {
+ key index;
+ description
+ "List of explicit route objects to always exclude
+ from path computation";
+ uses te-types:explicit-route-hop;
+ }
+ list route-object-include-exclude {
+ key index;
+ description
+ "List of explicit route objects to include or
+ exclude in path computation";
+ leaf explicit-route-usage {
+ type identityref {
+ base te-types:route-usage-type;
+ }
+ description "Explicit-route usage.";
+ }
+ uses te-types:explicit-route-hop {
+ augment "type" {
+ case srlg {
+ container srlg {
+ description "SRLG container";
+ leaf srlg {
+ type uint32;
+ description "SRLG value";
+ }
+ }
+ description "An SRLG value to be included or excluded";
+ }
+ description
+ "Augmentation to generic explicit route for SRLG
+ exclusion";
+ }
+ }
+ }
+ }
+ }
+
+ grouping path-route-include-objects {
+ description
+ "List of EROs to be included when performing
+ the path computation.";
+ list route-object-include-object {
+ key index;
+ description
+ "List of explicit route objects to be included
+ in path computation";
+ uses te-types:explicit-route-hop;
+ }
+ }
+
+ grouping path-route-exclude-objects {
+ description
+ "List of EROs to be included when performing
+ the path computation.";
+ list route-object-exclude-object {
+ key index;
+ description
+ "List of explicit route objects to be excluded
+ in path computation";
+ uses te-types:explicit-route-hop {
+ augment "type" {
+ case srlg {
+ container srlg {
+ description "SRLG container";
+ leaf srlg {
+ type uint32;
+ description "SRLG value";
+ }
+ }
+ description "An SRLG value to be included or excluded";
+ }
+ description
+ "Augmentation to generic explicit route for SRLG exclusion";
+ }
+ }
+ }
+ }
+
+ grouping generic-path-metric-bounds {
+ description "TE path metric bounds grouping";
+ container path-metric-bounds {
+ description "TE path metric bounds container";
+ list path-metric-bound {
+ key metric-type;
+ description "List of TE path metric bounds";
+ uses path-metrics-bounds_config;
+ }
+ }
+ }
+
+ grouping generic-path-optimization {
+ description "TE generic path optimization grouping";
+
+ container optimizations {
+ description
+ "The objective function container that includes
+ attributes to impose when computing a TE path";
+
+ choice algorithm {
+ description "Optimizations algorithm.";
+ case metric {
+ if-feature path-optimization-metric;
+ /* Optimize by metric */
+ list optimization-metric {
+ key "metric-type";
+ description "TE path metric type";
+ uses optimizations_config;
+ }
+ /* Tiebreakers */
+ container tiebreakers {
+ description
+ "The list of tiebreaker criterion to apply
+ on an equally favored set of paths to pick best";
+ list tiebreaker {
+ key "tiebreaker-type";
+ description
+ "The list of tiebreaker criterion to apply
+ on an equally favored set of paths to pick best";
+ leaf tiebreaker-type {
+ type identityref {
+ base te-types:path-metric-type;
+ }
+ description "The objective function";
+ }
+ }
+ }
+ }
+ case objective-function {
+ if-feature path-optimization-objective-function;
+ /* Objective functions */
+ container objective-function {
+ description
+ "The objective function container that includes
+ attributes to impose when computing a TE path";
+ uses path-objective-function_config;
+ }
+ }
+ }
+ }
+ }
+
+ grouping generic-path-affinities {
+ description
+ "Path affinities grouping";
+ container path-affinities {
+ description
+ "Path affinities container";
+ list constraint {
+ key "usage";
+ description
+ "List of named affinity constraints";
+ leaf usage {
+ type identityref {
+ base resource-affinities-type;
+ }
+ description "Affinities usage";
+ }
+ leaf value {
+ type admin-groups;
+ description "Affinity value";
+ }
+ }
+ }
+ }
+
+ grouping generic-path-srlgs {
+ description
+ "Path SRLG grouping";
+ container path-srlgs {
+ description
+ "Path SRLG properties container";
+ leaf usage {
+ type identityref {
+ base te-types:route-exclude-srlg;
+ }
+ description "SRLG usage";
+ }
+ leaf-list values {
+ type srlg;
+ description "SRLG value";
+ }
+ }
+ }
+
+ grouping generic-path-disjointness {
+ description "Path disjointness grouping";
+ leaf disjointness {
+ type te-types:te-path-disjointness;
+ description
+ "The type of resource disjointness.
+ Under primary path, disjointness level applies to
+ all secondary LSPs. Under secondary, disjointness
+ level overrides the one under primary";
+ }
+ }
+
+ grouping common-path-constraints-attributes {
+ description
+ "Common path constraints configuration grouping";
+ uses common-constraints_config;
+ uses generic-path-metric-bounds;
+ uses generic-path-affinities;
+ uses generic-path-srlgs;
+ }
+
+ grouping generic-path-constraints {
+ description
+ "Global named path constraints configuration
+ grouping";
+ container path-constraints {
+ description "TE named path constraints container";
+ uses common-path-constraints-attributes;
+ uses generic-path-disjointness;
+ }
+ }
+
+ grouping generic-path-properties {
+ description "TE generic path properties grouping";
+ container path-properties {
+ config false;
+ description "The TE path properties";
+ list path-metric {
+ key metric-type;
+ description "TE path metric type";
+ leaf metric-type {
+ type identityref {
+ base te-types:path-metric-type;
+ }
+ description "TE path metric type";
+ }
+ leaf accumulative-value {
+ type uint64;
+ description "TE path metric accumulative value";
+ }
+ }
+ uses generic-path-affinities;
+ uses generic-path-srlgs;
+ container path-route-objects {
+ description
+ "Container for the list of route objects either returned by
+ the computation engine or actually used by an LSP";
+ list path-route-object {
+ key index;
+ description
+ "List of route objects either returned by the computation
+ engine or actually used by an LSP";
+ uses explicit-route-hop;
+ }
+ }
+ }
+ }
+} \ No newline at end of file
diff --git a/platform-logic/restconfapi-yang/src/main/yang/ietf-yang-types.yang b/platform-logic/restconfapi-yang/src/main/yang/ietf-yang-types.yang
new file mode 100644
index 00000000..5231f6a3
--- /dev/null
+++ b/platform-logic/restconfapi-yang/src/main/yang/ietf-yang-types.yang
@@ -0,0 +1,438 @@
+module ietf-yang-types {
+
+ namespace "urn:ietf:params:xml:ns:yang:ietf-yang-types";
+ prefix "yang";
+
+ organization
+ "IETF NETMOD (NETCONF Data Modeling Language) Working Group";
+
+ contact
+ "WG Web: <http://tools.ietf.org/wg/netmod/>
+ WG List: <mailto:netmod@ietf.org>
+ WG Chair: David Kessens
+ <mailto:david.kessens@nsn.com>
+ WG Chair: Juergen Schoenwaelder
+ <mailto:j.schoenwaelder@jacobs-university.de>
+ Editor: Juergen Schoenwaelder
+ <mailto:j.schoenwaelder@jacobs-university.de>";
+
+ description
+ "This module contains a collection of generally useful derived
+ YANG data types.
+ Copyright (c) 2013 IETF Trust and the persons identified as
+ authors of the code. All rights reserved.
+ Redistribution and use in source and binary forms, with or
+ without modification, is permitted pursuant to, and subject
+ to the license terms contained in, the Simplified BSD License
+ set forth in Section 4.c of the IETF Trust's Legal Provisions
+ Relating to IETF Documents
+ (http://trustee.ietf.org/license-info).
+ This version of this YANG module is part of RFC 6991; see
+ the RFC itself for full legal notices.";
+
+ revision 2013-07-15 {
+ description
+ "This revision adds the following new data types:
+ - yang-identifier
+ - hex-string
+ - uuid
+ - dotted-quad";
+ reference
+ "RFC 6991: Common YANG Data Types";
+ }
+
+ revision 2010-09-24 {
+ description
+ "Initial revision.";
+ reference
+ "RFC 6021: Common YANG Data Types";
+ }
+
+ /*** collection of counter and gauge types ***/
+
+ typedef counter32 {
+ type uint32;
+ description
+ "The counter32 type represents a non-negative integer
+ that monotonically increases until it reaches a
+ maximum value of 2^32-1 (4294967295 decimal), when it
+ wraps around and starts increasing again from zero.
+ Counters have no defined 'initial' value, and thus, a
+ single value of a counter has (in general) no information
+ content. Discontinuities in the monotonically increasing
+ value normally occur at re-initialization of the
+ management system, and at other times as specified in the
+ description of a schema node using this type. If such
+ other times can occur, for example, the creation of
+ a schema node of type counter32 at times other than
+ re-initialization, then a corresponding schema node
+ should be defined, with an appropriate type, to indicate
+ the last discontinuity.
+ The counter32 type should not be used for configuration
+ schema nodes. A default statement SHOULD NOT be used in
+ combination with the type counter32.
+ In the value set and its semantics, this type is equivalent
+ to the Counter32 type of the SMIv2.";
+ reference
+ "RFC 2578: Structure of Management Information Version 2
+ (SMIv2)";
+ }
+
+ typedef zero-based-counter32 {
+ type yang:counter32;
+ default "0";
+ description
+ "The zero-based-counter32 type represents a counter32
+ that has the defined 'initial' value zero.
+ A schema node of this type will be set to zero (0) on creation
+ and will thereafter increase monotonically until it reaches
+ a maximum value of 2^32-1 (4294967295 decimal), when it
+ wraps around and starts increasing again from zero.
+ Provided that an application discovers a new schema node
+ of this type within the minimum time to wrap, it can use the
+ 'initial' value as a delta. It is important for a management
+ station to be aware of this minimum time and the actual time
+ between polls, and to discard data if the actual time is too
+ long or there is no defined minimum time.
+ In the value set and its semantics, this type is equivalent
+ to the ZeroBasedCounter32 textual convention of the SMIv2.";
+ reference
+ "RFC 4502: Remote Network Monitoring Management Information
+ Base Version 2";
+ }
+
+ typedef counter64 {
+ type uint64;
+ description
+ "The counter64 type represents a non-negative integer
+ that monotonically increases until it reaches a
+ maximum value of 2^64-1 (18446744073709551615 decimal),
+ when it wraps around and starts increasing again from zero.
+ Counters have no defined 'initial' value, and thus, a
+ single value of a counter has (in general) no information
+ content. Discontinuities in the monotonically increasing
+ value normally occur at re-initialization of the
+ management system, and at other times as specified in the
+ description of a schema node using this type. If such
+ other times can occur, for example, the creation of
+ a schema node of type counter64 at times other than
+ re-initialization, then a corresponding schema node
+ should be defined, with an appropriate type, to indicate
+ the last discontinuity.
+ The counter64 type should not be used for configuration
+ schema nodes. A default statement SHOULD NOT be used in
+ combination with the type counter64.
+ In the value set and its semantics, this type is equivalent
+ to the Counter64 type of the SMIv2.";
+ reference
+ "RFC 2578: Structure of Management Information Version 2
+ (SMIv2)";
+ }
+
+ typedef zero-based-counter64 {
+ type yang:counter64;
+ default "0";
+ description
+ "The zero-based-counter64 type represents a counter64 that
+ has the defined 'initial' value zero.
+ A schema node of this type will be set to zero (0) on creation
+ and will thereafter increase monotonically until it reaches
+ a maximum value of 2^64-1 (18446744073709551615 decimal),
+ when it wraps around and starts increasing again from zero.
+ Provided that an application discovers a new schema node
+ of this type within the minimum time to wrap, it can use the
+ 'initial' value as a delta. It is important for a management
+ station to be aware of this minimum time and the actual time
+ between polls, and to discard data if the actual time is too
+ long or there is no defined minimum time.
+ In the value set and its semantics, this type is equivalent
+ to the ZeroBasedCounter64 textual convention of the SMIv2.";
+ reference
+ "RFC 2856: Textual Conventions for Additional High Capacity
+ Data Types";
+ }
+
+ typedef gauge32 {
+ type uint32;
+ description
+ "The gauge32 type represents a non-negative integer, which
+ may increase or decrease, but shall never exceed a maximum
+ value, nor fall below a minimum value. The maximum value
+ cannot be greater than 2^32-1 (4294967295 decimal), and
+ the minimum value cannot be smaller than 0. The value of
+ a gauge32 has its maximum value whenever the information
+ being modeled is greater than or equal to its maximum
+ value, and has its minimum value whenever the information
+ being modeled is smaller than or equal to its minimum value.
+ If the information being modeled subsequently decreases
+ below (increases above) the maximum (minimum) value, the
+ gauge32 also decreases (increases).
+ In the value set and its semantics, this type is equivalent
+ to the Gauge32 type of the SMIv2.";
+ reference
+ "RFC 2578: Structure of Management Information Version 2
+ (SMIv2)";
+ }
+
+ typedef gauge64 {
+ type uint64;
+ description
+ "The gauge64 type represents a non-negative integer, which
+ may increase or decrease, but shall never exceed a maximum
+ value, nor fall below a minimum value. The maximum value
+ cannot be greater than 2^64-1 (18446744073709551615), and
+ the minimum value cannot be smaller than 0. The value of
+ a gauge64 has its maximum value whenever the information
+ being modeled is greater than or equal to its maximum
+ value, and has its minimum value whenever the information
+ being modeled is smaller than or equal to its minimum value.
+ If the information being modeled subsequently decreases
+ below (increases above) the maximum (minimum) value, the
+ gauge64 also decreases (increases).
+ In the value set and its semantics, this type is equivalent
+ to the CounterBasedGauge64 SMIv2 textual convention defined
+ in RFC 2856";
+ reference
+ "RFC 2856: Textual Conventions for Additional High Capacity
+ Data Types";
+ }
+
+ /*** collection of identifier-related types ***/
+
+ typedef object-identifier {
+ type string {
+ pattern '(([0-1](\.[1-3]?[0-9]))|(2\.(0|([1-9]\d*))))'
+ + '(\.(0|([1-9]\d*)))*';
+ }
+ description
+ "The object-identifier type represents administratively
+ assigned names in a registration-hierarchical-name tree.
+ Values of this type are denoted as a sequence of numerical
+ non-negative sub-identifier values. Each sub-identifier
+ value MUST NOT exceed 2^32-1 (4294967295). Sub-identifiers
+ are separated by single dots and without any intermediate
+ whitespace.
+ The ASN.1 standard restricts the value space of the first
+ sub-identifier to 0, 1, or 2. Furthermore, the value space
+ of the second sub-identifier is restricted to the range
+ 0 to 39 if the first sub-identifier is 0 or 1. Finally,
+ the ASN.1 standard requires that an object identifier
+ has always at least two sub-identifiers. The pattern
+ captures these restrictions.
+ Although the number of sub-identifiers is not limited,
+ module designers should realize that there may be
+ implementations that stick with the SMIv2 limit of 128
+ sub-identifiers.
+ This type is a superset of the SMIv2 OBJECT IDENTIFIER type
+ since it is not restricted to 128 sub-identifiers. Hence,
+ this type SHOULD NOT be used to represent the SMIv2 OBJECT
+ IDENTIFIER type; the object-identifier-128 type SHOULD be
+ used instead.";
+ reference
+ "ISO9834-1: Information technology -- Open Systems
+ Interconnection -- Procedures for the operation of OSI
+ Registration Authorities: General procedures and top
+ arcs of the ASN.1 Object Identifier tree";
+ }
+
+ typedef object-identifier-128 {
+ type object-identifier {
+ pattern '\d*(\.\d*){1,127}';
+ }
+ description
+ "This type represents object-identifiers restricted to 128
+ sub-identifiers.
+ In the value set and its semantics, this type is equivalent
+ to the OBJECT IDENTIFIER type of the SMIv2.";
+ reference
+ "RFC 2578: Structure of Management Information Version 2
+ (SMIv2)";
+ }
+
+ typedef yang-identifier {
+ type string {
+ length "1..max";
+ pattern '[a-zA-Z_][a-zA-Z0-9\-_.]*';
+ pattern '.|..|[^xX].*|.[^mM].*|..[^lL].*';
+ }
+ description
+ "A YANG identifier string as defined by the 'identifier'
+ rule in Section 12 of RFC 6020. An identifier must
+ start with an alphabetic character or an underscore
+ followed by an arbitrary sequence of alphabetic or
+ numeric characters, underscores, hyphens, or dots.
+ A YANG identifier MUST NOT start with any possible
+ combination of the lowercase or uppercase character
+ sequence 'xml'.";
+ reference
+ "RFC 6020: YANG - A Data Modeling Language for the Network
+ Configuration Protocol (NETCONF)";
+ }
+
+ /*** collection of types related to date and time***/
+
+ typedef date-and-time {
+ type string {
+ pattern '\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?'
+ + '(Z|[\+\-]\d{2}:\d{2})';
+ }
+ description
+ "The date-and-time type is a profile of the ISO 8601
+ standard for representation of dates and times using the
+ Gregorian calendar. The profile is defined by the
+ date-time production in Section 5.6 of RFC 3339.
+ The date-and-time type is compatible with the dateTime XML
+ schema type with the following notable exceptions:
+ (a) The date-and-time type does not allow negative years.
+ (b) The date-and-time time-offset -00:00 indicates an unknown
+ time zone (see RFC 3339) while -00:00 and +00:00 and Z
+ all represent the same time zone in dateTime.
+ (c) The canonical format (see below) of data-and-time values
+ differs from the canonical format used by the dateTime XML
+ schema type, which requires all times to be in UTC using
+ the time-offset 'Z'.
+ This type is not equivalent to the DateAndTime textual
+ convention of the SMIv2 since RFC 3339 uses a different
+ separator between full-date and full-time and provides
+ higher resolution of time-secfrac.
+ The canonical format for date-and-time values with a known time
+ zone uses a numeric time zone offset that is calculated using
+ the device's configured known offset to UTC time. A change of
+ the device's offset to UTC time will cause date-and-time values
+ to change accordingly. Such changes might happen periodically
+ in case a server follows automatically daylight saving time
+ (DST) time zone offset changes. The canonical format for
+ date-and-time values with an unknown time zone (usually
+ referring to the notion of local time) uses the time-offset
+ -00:00.";
+ reference
+ "RFC 3339: Date and Time on the Internet: Timestamps
+ RFC 2579: Textual Conventions for SMIv2
+ XSD-TYPES: XML Schema Part 2: Datatypes Second Edition";
+ }
+
+ typedef timeticks {
+ type uint32;
+ description
+ "The timeticks type represents a non-negative integer that
+ represents the time, modulo 2^32 (4294967296 decimal), in
+ hundredths of a second between two epochs. When a schema
+ node is defined that uses this type, the description of
+ the schema node identifies both of the reference epochs.
+ In the value set and its semantics, this type is equivalent
+ to the TimeTicks type of the SMIv2.";
+ reference
+ "RFC 2578: Structure of Management Information Version 2
+ (SMIv2)";
+ }
+
+ typedef timestamp {
+ type yang:timeticks;
+ description
+ "The timestamp type represents the value of an associated
+ timeticks schema node at which a specific occurrence
+ happened. The specific occurrence must be defined in the
+ description of any schema node defined using this type. When
+ the specific occurrence occurred prior to the last time the
+ associated timeticks attribute was zero, then the timestamp
+ value is zero. Note that this requires all timestamp values
+ to be reset to zero when the value of the associated timeticks
+ attribute reaches 497+ days and wraps around to zero.
+ The associated timeticks schema node must be specified
+ in the description of any schema node using this type.
+ In the value set and its semantics, this type is equivalent
+ to the TimeStamp textual convention of the SMIv2.";
+ reference
+ "RFC 2579: Textual Conventions for SMIv2";
+ }
+
+ /*** collection of generic address types ***/
+
+ typedef phys-address {
+ type string {
+ pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
+ }
+
+
+
+
+ description
+ "Represents media- or physical-level addresses represented
+ as a sequence octets, each octet represented by two hexadecimal
+ numbers. Octets are separated by colons. The canonical
+ representation uses lowercase characters.
+ In the value set and its semantics, this type is equivalent
+ to the PhysAddress textual convention of the SMIv2.";
+ reference
+ "RFC 2579: Textual Conventions for SMIv2";
+ }
+
+ typedef mac-address {
+ type string {
+ pattern '[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}';
+ }
+ description
+ "The mac-address type represents an IEEE 802 MAC address.
+ The canonical representation uses lowercase characters.
+ In the value set and its semantics, this type is equivalent
+ to the MacAddress textual convention of the SMIv2.";
+ reference
+ "IEEE 802: IEEE Standard for Local and Metropolitan Area
+ Networks: Overview and Architecture
+ RFC 2579: Textual Conventions for SMIv2";
+ }
+
+ /*** collection of XML-specific types ***/
+
+ typedef xpath1.0 {
+ type string;
+ description
+ "This type represents an XPATH 1.0 expression.
+ When a schema node is defined that uses this type, the
+ description of the schema node MUST specify the XPath
+ context in which the XPath expression is evaluated.";
+ reference
+ "XPATH: XML Path Language (XPath) Version 1.0";
+ }
+
+ /*** collection of string types ***/
+
+ typedef hex-string {
+ type string {
+ pattern '([0-9a-fA-F]{2}(:[0-9a-fA-F]{2})*)?';
+ }
+ description
+ "A hexadecimal string with octets represented as hex digits
+ separated by colons. The canonical representation uses
+ lowercase characters.";
+ }
+
+ typedef uuid {
+ type string {
+ pattern '[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-'
+ + '[0-9a-fA-F]{4}-[0-9a-fA-F]{12}';
+ }
+ description
+ "A Universally Unique IDentifier in the string representation
+ defined in RFC 4122. The canonical representation uses
+ lowercase characters.
+ The following is an example of a UUID in string representation:
+ f81d4fae-7dec-11d0-a765-00a0c91e6bf6
+ ";
+ reference
+ "RFC 4122: A Universally Unique IDentifier (UUID) URN
+ Namespace";
+ }
+
+ typedef dotted-quad {
+ type string {
+ pattern
+ '(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}'
+ + '([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])';
+ }
+ description
+ "An unsigned 32-bit number expressed in the dotted-quad
+ notation, i.e., four octets written as decimal numbers
+ and separated with the '.' (full stop) character.";
+ }
+} \ No newline at end of file
diff --git a/platform-logic/setup/pom.xml b/platform-logic/setup/pom.xml
index 5728399a..1efbef1e 100644
--- a/platform-logic/setup/pom.xml
+++ b/platform-logic/setup/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath />
</parent>
diff --git a/platform-logic/vnfapi/pom.xml b/platform-logic/vnfapi/pom.xml
index 433b10f2..a94e0149 100644
--- a/platform-logic/vnfapi/pom.xml
+++ b/platform-logic/vnfapi/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
<relativePath />
</parent>
diff --git a/pom.xml b/pom.xml
index a67ca00d..4b59b4fc 100755
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
<parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>odlparent-lite</artifactId>
- <version>1.1.0-SNAPSHOT</version>
+ <version>1.1.1-SNAPSHOT</version>
</parent>
<groupId>org.onap.sdnc.oam</groupId>
@@ -25,7 +25,9 @@
<module>dgbuilder</module>
<module>platform-logic</module>
<module>configbackuprestore</module>
- <module>SdncReports</module>
+ <!-- Temporarily comment out to work around Jenkins build issue
+ <module>SdncReports</module>
+ -->
</modules>
<scm>
diff --git a/version.properties b/version.properties
index 34ccc6b1..335c3b92 100644
--- a/version.properties
+++ b/version.properties
@@ -5,7 +5,7 @@
release_name=1
sprint_number=4
-feature_revision=0
+feature_revision=1
base_version=${release_name}.${sprint_number}.${feature_revision}