diff options
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> @@ -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} |