Bug fixed related to service-instance metadat
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_bbs-access-connectivity-vnf-topology-operation-create-huawei.xml
index 3f30d50..2ba5835 100644 (file)
-<service-logic\r
-    xmlns='http://www.onap.org/sdnc/svclogic'\r
-    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}'>\r
-    <method rpc='bbs-access-connectivity-vnf-topology-operation-create-huawei' mode='sync'>\r
-        <block atomic="true">\r
-            <call module='GENERIC-RESOURCE-API' rpc='validate-bbs-vnf-input-parameters' mode='sync' ></call>\r
-            <set>\r
-                <parameter name='vnf-input-parameters.' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.`' />\r
-                <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value='https://172.30.0.55:26335' />\r
-                <parameter name='prop.bbs.HsiPackage' value='50M' />\r
-                <parameter name='prop.bbs.HsiType' value='IPoE' />\r
-            </set>\r
-            <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\r
-                <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />\r
-                <parameter name='contextPrefix' value='prop' />\r
-            </execute>\r
-            <for index='idx' start='0' end='`$vnf-input-parameters.param_length`' >\r
-                <block>\r
-                    <switch test="`$vnf-input-parameters.param[$idx].name == 'remote_id'`">\r
-                        <outcome value='true'>\r
-                            <switch test='`$vnf-input-parameters.param[$idx].value`'>\r
-                                <outcome value=''>\r
-                                    <return status='failure'>\r
-                                        <parameter name='ack-final' value='Y'/>\r
-                                        <parameter name="error-code" value="500" />\r
-                                        <parameter name="error-message" value="`$vnf-input-parameters.param[$idx].name  +' value is null, please check it.'`" />\r
-                                    </return>\r
-                                </outcome>\r
-                                <outcome value='Other'>\r
-                                    <set>\r
-                                        <parameter name='prop.bbs.remote_id' value='`$vnf-input-parameters.param[$idx].value`' />\r
-                                    </set>\r
-                                </outcome>\r
-                            </switch>\r
-                        </outcome>\r
-                    </switch>\r
-                    <switch test="`$vnf-input-parameters.param[$idx].name == 'ONTSN'`">\r
-                        <outcome value='true'>\r
-                            <switch test='`$vnf-input-parameters.param[$idx].value`'>\r
-                                <outcome value=''>\r
-                                    <return status='failure'>\r
-                                        <parameter name='ack-final' value='Y'/>\r
-                                        <parameter name="error-code" value="500" />\r
-                                        <parameter name="error-message" value="`$vnf-input-parameters.param[$idx].name  +' value is null, please check it.'`" />\r
-                                    </return>\r
-                                </outcome>\r
-                                <outcome value='Other'>\r
-                                    <set>\r
-                                        <parameter name='prop.bbs.ONTSN' value='`$vnf-input-parameters.param[$idx].value`' />\r
-                                    </set>\r
-                                </outcome>\r
-                            </switch>\r
-                        </outcome>\r
-                    </switch>\r
-                    <switch test="`$vnf-input-parameters.param[$idx].name == 'CVLAN'`">\r
-                        <outcome value='true'>\r
-                            <switch test='`$vnf-input-parameters.param[$idx].value`'>\r
-                                <outcome value=''>\r
-                                    <return status='failure'>\r
-                                        <parameter name='ack-final' value='Y'/>\r
-                                        <parameter name="error-code" value="500" />\r
-                                        <parameter name="error-message" value="`$vnf-input-parameters.param[$idx].name  +' value is null, please check it.'`" />\r
-                                    </return>\r
-                                </outcome>\r
-                                <outcome value='Other'>\r
-                                    <set>\r
-                                        <parameter name='prop.bbs.CVLAN' value='`$vnf-input-parameters.param[$idx].value`' />\r
-                                    </set>\r
-                                </outcome>\r
-                            </switch>\r
-                        </outcome>\r
-                    </switch>\r
-                    <switch test="`$vnf-input-parameters.param[$idx].name == 'SVLAN'`">\r
-                        <outcome value='true'>\r
-                            <switch test='`$vnf-input-parameters.param[$idx].value`'>\r
-                                <outcome value=''>\r
-                                    <return status='failure'>\r
-                                        <parameter name='ack-final' value='Y'/>\r
-                                        <parameter name="error-code" value="500" />\r
-                                        <parameter name="error-message" value="`$vnf-input-parameters.param[$idx].name  +' value is null, please check it.'`" />\r
-                                    </return>\r
-                                </outcome>\r
-                                <outcome value='Other'>\r
-                                    <set>\r
-                                        <parameter name='prop.bbs.SVLAN' value='`$vnf-input-parameters.param[$idx].value`' />\r
-                                    </set>\r
-                                </outcome>\r
-                            </switch>\r
-                        </outcome>\r
-                    </switch>\r
-                </block>\r
-            </for>\r
-            <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
-                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-token-template.json'`"/>\r
-                <parameter name="restapiUrl" value="`'http://159.138.58.209:30335/rest/plat/smapp/v1/oauth/token'`"/>\r
-                <parameter name="format" value="json"/>\r
-                <parameter name="httpMethod" value="put"/>\r
-                <parameter name="responsePrefix" value="token-result"/>\r
-                <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>\r
-                <parameter name="trustStorePassword" value="adminadmin"/>\r
-                <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>\r
-                <parameter name="keyStorePassword" value="adminadmin"/>\r
-                <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url+'/rest/plat/smapp/v1/oauth/token'`"/>-->\r
-                <outcome value='success'>\r
-                    <switch test='`$token-result.accessSession`'>\r
-                        <outcome value='Other'>\r
-                            <set>\r
-                                <parameter name='prop.sdncRestApi.token_id' value='`$token-result.accessSession`' />\r
-                            </set>\r
-                        </outcome>\r
-                        <outcome value=''>\r
-                            <return status='failure'>\r
-                                <parameter name='ack-final' value='Y'/>\r
-                                <parameter name="error-code" value="500" />\r
-                                <parameter name="error-message" value="Error executing queryTokenID,vaule is null" />\r
-                            </return>\r
-                        </outcome>\r
-                    </switch>\r
-                </outcome>\r
-                <outcome value='failure'>\r
-                    <return status='failure'>\r
-                        <parameter name='ack-final' value='Y'/>\r
-                        <parameter name="error-code" value="500" />\r
-                        <parameter name="error-message" value="Error failed to call queryTokenID" />\r
-                    </return>\r
-                </outcome>\r
-            </execute>\r
-            <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
-                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-access-connectivity-create.json'`" />\r
-                <parameter name="restapiUrl" value="`'http://159.138.58.209:30335/ws/rest/1002/FanOpenAPI/ActiveOnt'`" />\r
-                <parameter name="contentType" value="application/json"/>\r
-                <parameter name="httpMethod" value="post"/>\r
-                <parameter name="responsePrefix" value="service-result"/>\r
-                <parameter name="customHttpHeaders" value="`'X-Auth-Token=' + $prop.sdncRestApi.token_id`"/>\r
-                <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>\r
-                <parameter name="trustStorePassword" value="adminadmin"/>\r
-                <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>\r
-                <parameter name="keyStorePassword" value="adminadmin"/>\r
-                <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/ws/rest/1002/FanOpenAPI/ActiveOnt'`" />-->\r
-                <outcome value='failure'>\r
-                    <return status='failure'>\r
-                        <parameter name='ack-final' value='Y'/>\r
-                        <parameter name="error-code" value="500" />\r
-                        <parameter name="error-message" value="Error failed to call  createAccessConnectivityService" />\r
-                    </return>\r
-                </outcome>\r
-                <outcome value='success'>\r
-                    <switch test="`$service-result.errors.error[0].error-message`">\r
-                        <outcome value='Other'>\r
-                            <return status='failure'>\r
-                                <parameter name='ack-final' value='Y'/>\r
-                                <parameter name="error-code" value="500" />\r
-                                <parameter name="error-message" value="`'Error createAccessConnectivityService return: '+$service-result.errors.error[0].error-message`" />\r
-                            </return>\r
-                        </outcome>\r
-                        <outcome value=''>\r
-                            <block>\r
-                                <set>\r
-                                    <parameter name='prop.bbs.serviceID' value="`$service-result.accessE2Eservice.serviceID`"/>\r
-                                </set>\r
-                            </block>\r
-                        </outcome>\r
-                    </switch>\r
-                </outcome>\r
-            </execute>\r
-            <block>\r
-                <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="generateUUID">\r
-                    <parameter name="ctx-destination" value="prop.random-data"/>\r
-                    <outcome value='success'>\r
-                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
-                            <parameter name="ctx_memory_result_key" value="prop.random-data-list"/>\r
-                            <parameter name="original_string" value="`$prop.random-data`"/>\r
-                            <parameter name="regex" value="-"/>\r
-                            <outcome value='success'></outcome>\r
-                        </execute>\r
-                    </outcome>\r
-                </execute>\r
-                <set>\r
-                    <parameter name='vnf-id' value="`$prop.random-data-list[3]`"/>\r
-                    <parameter name='vnf-name' value="`'vnf-'+$prop.random-data-list[4]`"/>\r
-                </set>\r
-                <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="generic-vnf" key="generic-vnf.vnf-id = $vnf-id" >\r
-                    <parameter name= "vnf-id" value = "`$vnf-id`"/>\r
-                    <parameter name=  "vnf-name" value = "`$vnf-name`"/>\r
-                    <parameter name=  "vnf-type" value = "AccessConnectivity"/>\r
-                    <parameter name=  "service-id" value = "`$vnf-topology-operation-input.service-information.service-id`"/>\r
-                    <parameter name=  "prov-status" value = "ACTIVE"/>\r
-                    <parameter name=  "orchestration-status" value = "Active"/>\r
-                    <parameter name=  "is-closed-loop-disabled" value = "false" />\r
-                    <parameter name=  "model-invariant-id" value = "`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`"/>\r
-                    <parameter name=  "model-version-id" value = "`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`"/>\r
-                    <parameter name=  "model-customization-id" value = "`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`"/>\r
-                    <outcome value='failure'>\r
-                        <return status='failure'>\r
-                            <parameter name='ack-final' value='Y'/>\r
-                            <parameter name="error-code" value="500" />\r
-                            <parameter name="error-message" value="Failure calling AAI to save generic-vnf" />\r
-                        </return>\r
-                    </outcome>\r
-                    <outcome value='not-found'>\r
-                        <return status='failure'>\r
-                            <parameter name='ack-final' value='Y'/>\r
-                            <parameter name="error-code" value="500" />\r
-                            <parameter name="error-message" value="generic-vnf instance does not exist in AAI" />\r
-                        </return>\r
-                    </outcome>\r
-                    <outcome value='success'></outcome>\r
-                </save>\r
-                <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="service-instance:metadata"\r
- key="service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-id  \r
-       AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id\r
-         AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type\r
-         AND service-instance.service-instance-id =  $vnf-topology-operation-input.service-information.service-instance-id"  force="true" pfx="tmp.AnAI-data"\r
-    >\r
-                    <parameter name="metadata.metadatum[0].metaname" value="remote-id" />\r
-                    <parameter name="metadata.metadatum[0].metaval" value="`$prop.bbs.remote_id`" />\r
-                    <parameter name="metadata.metadatum[1].metaname" value="controller-service-id" />\r
-                    <parameter name="metadata.metadatum[1].metaval" value="`$prop.bbs.serviceID`" />\r
-                    <parameter name="metadata.metadatum[2].metaname" value="cvlan" />\r
-                    <parameter name="metadata.metadatum[2].metaval" value="`$prop.bbs.CVLAN`" />\r
-                    <parameter name="metadata.metadatum[3].metaname" value="svlan" />\r
-                    <parameter name="metadata.metadatum[3].metaval" value="`$prop.bbs.SVLAN`" />\r
-                    <parameter name="metadata.metadatum[4].metaname" value="expected-ont-id" />\r
-                    <parameter name="metadata.metadatum[4].metaval" value="`$prop.bbs.ONTSN`" />\r
-                    <!--<parameter name="metadata.metadatum[5].metaname" value="rgw-mac-address" />-->\r
-                    <!--<parameter name="metadata.metadatum[5].metaval" value="`$prop.bbs.mac`" />-->\r
-                    <outcome value='failure'>\r
-                        <return status='failure'>\r
-                            <parameter name='ack-final' value='Y'/>\r
-                            <parameter name="error-code" value="500" />\r
-                            <parameter name="error-message" value="Failure calling AAI to save metadatum" />\r
-                        </return>\r
-                    </outcome>\r
-                    <outcome value='not-found'>\r
-                        <return status='failure'>\r
-                            <parameter name='ack-final' value='Y'/>\r
-                            <parameter name="error-code" value="500" />\r
-                            <parameter name="error-message" value="metadatum instance does not exist in AAI" />\r
-                        </return>\r
-                    </outcome>\r
-                    <outcome value='success'></outcome>\r
-                </save>\r
-                <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="service-instance:relationship-list" \r
-      key="service-instance.service-instance-id =  $vnf-topology-operation-input.service-information.service-id\r
-         AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id\r
-         AND service-subscription.service-type =  $vnf-topology-operation-input.service-information.subscription-service-type \r
-         AND service-instance.service-instance-id =  $vnf-topology-operation-input.service-information.service-instance-id" force="true" pfx="tmp.AnAI-data">\r
-                    <parameter name="relationship-list.relationship[0].related-to" value="generic-vnf" />\r
-                    <parameter name="relationship-list.relationship[0].related-link" value="`'/network/generic-vnfs/generic-vnf/' + $vnf-id`" />\r
-                    <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="generic-vnf.vnf-id" />\r
-                    <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$vnf-id`" />\r
-                    <outcome value='failure'>\r
-                        <return status='failure'>\r
-                            <parameter name='ack-final' value='Y'/>\r
-                            <parameter name="error-code" value="500" />\r
-                            <parameter name="error-message" value="Failure calling AAI to save metadatum" />\r
-                        </return>\r
-                    </outcome>\r
-                    <outcome value='not-found'>\r
-                        <return status='failure'>\r
-                            <parameter name='ack-final' value='Y'/>\r
-                            <parameter name="error-code" value="500" />\r
-                            <parameter name="error-message" value="metadatum instance does not exist in AAI" />\r
-                        </return>\r
-                    </outcome>\r
-                    <outcome value='success'></outcome>\r
-                </save>\r
-            </block>\r
-            <return status='success'>\r
-                <parameter name="ack-final-indicator" value="Y" />\r
-                <parameter name="error-code" value="200" />\r
-                <parameter name="error-message" value="`$error-message`" />\r
-            </return>\r
-        </block>\r
-    </method>\r
+<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}'>
+    <method rpc='bbs-access-connectivity-vnf-topology-operation-create-huawei' mode='sync'>
+        <block atomic="true">
+            <call module='GENERIC-RESOURCE-API' rpc='validate-bbs-vnf-input-parameters' mode='sync' ></call>
+            <set>
+                <parameter name='vnf-input-parameters.' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.`' />
+                <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value='https://172.30.0.55:26335' />
+                <parameter name='prop.bbs.HsiPackage' value='50M' />
+                <parameter name='prop.bbs.HsiType' value='IPoE' />
+            </set>
+            <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
+                <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
+                <parameter name='contextPrefix' value='prop' />
+            </execute>
+            <for index='idx' start='0' end='`$vnf-input-parameters.param_length`' >
+                <block>
+                    <switch test="`$vnf-input-parameters.param[$idx].name == 'remote_id'`">
+                        <outcome value='true'>
+                            <switch test='`$vnf-input-parameters.param[$idx].value`'>
+                                <outcome value=''>
+                                    <return status='failure'>
+                                        <parameter name='ack-final' value='Y'/>
+                                        <parameter name="error-code" value="500" />
+                                        <parameter name="error-message" value="`$vnf-input-parameters.param[$idx].name  +' value is null, please check it.'`" />
+                                    </return>
+                                </outcome>
+                                <outcome value='Other'>
+                                    <set>
+                                        <parameter name='prop.bbs.remote_id' value='`$vnf-input-parameters.param[$idx].value`' />
+                                    </set>
+                                </outcome>
+                            </switch>
+                        </outcome>
+                    </switch>
+                    <switch test="`$vnf-input-parameters.param[$idx].name == 'ONTSN'`">
+                        <outcome value='true'>
+                            <switch test='`$vnf-input-parameters.param[$idx].value`'>
+                                <outcome value=''>
+                                    <return status='failure'>
+                                        <parameter name='ack-final' value='Y'/>
+                                        <parameter name="error-code" value="500" />
+                                        <parameter name="error-message" value="`$vnf-input-parameters.param[$idx].name  +' value is null, please check it.'`" />
+                                    </return>
+                                </outcome>
+                                <outcome value='Other'>
+                                    <set>
+                                        <parameter name='prop.bbs.ONTSN' value='`$vnf-input-parameters.param[$idx].value`' />
+                                    </set>
+                                </outcome>
+                            </switch>
+                        </outcome>
+                    </switch>
+                    <switch test="`$vnf-input-parameters.param[$idx].name == 'CVLAN'`">
+                        <outcome value='true'>
+                            <switch test='`$vnf-input-parameters.param[$idx].value`'>
+                                <outcome value=''>
+                                    <return status='failure'>
+                                        <parameter name='ack-final' value='Y'/>
+                                        <parameter name="error-code" value="500" />
+                                        <parameter name="error-message" value="`$vnf-input-parameters.param[$idx].name  +' value is null, please check it.'`" />
+                                    </return>
+                                </outcome>
+                                <outcome value='Other'>
+                                    <set>
+                                        <parameter name='prop.bbs.CVLAN' value='`$vnf-input-parameters.param[$idx].value`' />
+                                    </set>
+                                </outcome>
+                            </switch>
+                        </outcome>
+                    </switch>
+                    <switch test="`$vnf-input-parameters.param[$idx].name == 'SVLAN'`">
+                        <outcome value='true'>
+                            <switch test='`$vnf-input-parameters.param[$idx].value`'>
+                                <outcome value=''>
+                                    <return status='failure'>
+                                        <parameter name='ack-final' value='Y'/>
+                                        <parameter name="error-code" value="500" />
+                                        <parameter name="error-message" value="`$vnf-input-parameters.param[$idx].name  +' value is null, please check it.'`" />
+                                    </return>
+                                </outcome>
+                                <outcome value='Other'>
+                                    <set>
+                                        <parameter name='prop.bbs.SVLAN' value='`$vnf-input-parameters.param[$idx].value`' />
+                                    </set>
+                                </outcome>
+                            </switch>
+                        </outcome>
+                    </switch>
+                </block>
+            </for>
+            <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">
+                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-token-template.json'`"/>
+                <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url+'/rest/plat/smapp/v1/oauth/token'`"/>
+                <parameter name="format" value="json"/>
+                <parameter name="httpMethod" value="put"/>
+                <parameter name="responsePrefix" value="token-result"/>
+                <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"/>
+                <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url+'/rest/plat/smapp/v1/oauth/token'`"/>-->
+                <outcome value='success'>
+                    <switch test='`$token-result.accessSession`'>
+                        <outcome value='Other'>
+                            <set>
+                                <parameter name='prop.sdncRestApi.token_id' value='`$token-result.accessSession`' />
+                            </set>
+                        </outcome>
+                        <outcome value=''>
+                            <return status='failure'>
+                                <parameter name='ack-final' value='Y'/>
+                                <parameter name="error-code" value="500" />
+                                <parameter name="error-message" value="Error executing queryTokenID,vaule is null" />
+                            </return>
+                        </outcome>
+                    </switch>
+                </outcome>
+                <outcome value='failure'>
+                    <return status='failure'>
+                        <parameter name='ack-final' value='Y'/>
+                        <parameter name="error-code" value="500" />
+                        <parameter name="error-message" value="Error failed to call queryTokenID" />
+                    </return>
+                </outcome>
+            </execute>
+            <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">
+                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-access-connectivity-create.json'`" />
+                <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/ws/rest/1002/FanOpenAPI/ActiveOnt'`" />
+                <parameter name="contentType" value="application/json"/>
+                <parameter name="httpMethod" value="post"/>
+                <parameter name="responsePrefix" value="service-result"/>
+                <parameter name="customHttpHeaders" value="`'X-Auth-Token=' + $prop.sdncRestApi.token_id`"/>
+                <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"/>
+                <!--<parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/ws/rest/1002/FanOpenAPI/ActiveOnt'`" />-->
+                <outcome value='failure'>
+                    <return status='failure'>
+                        <parameter name='ack-final' value='Y'/>
+                        <parameter name="error-code" value="500" />
+                        <parameter name="error-message" value="Error failed to call  createAccessConnectivityService" />
+                    </return>
+                </outcome>
+                <outcome value='success'>
+                    <switch test="`$service-result.errors.error[0].error-message`">
+                        <outcome value='Other'>
+                            <return status='failure'>
+                                <parameter name='ack-final' value='Y'/>
+                                <parameter name="error-code" value="500" />
+                                <parameter name="error-message" value="`'Error createAccessConnectivityService return: '+$service-result.errors.error[0].error-message`" />
+                            </return>
+                        </outcome>
+                        <outcome value=''>
+                            <block>
+                                <set>
+                                    <parameter name='prop.bbs.serviceID' value="`$service-result.accessE2Eservice.serviceID`"/>
+                                </set>
+                            </block>
+                        </outcome>
+                    </switch>
+                </outcome>
+            </execute>
+            <block>
+                <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="generateUUID">
+                    <parameter name="ctx-destination" value="prop.random-data"/>
+                    <outcome value='success'>
+                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
+                            <parameter name="ctx_memory_result_key" value="prop.random-data-list"/>
+                            <parameter name="original_string" value="`$prop.random-data`"/>
+                            <parameter name="regex" value="-"/>
+                            <outcome value='success'></outcome>
+                        </execute>
+                    </outcome>
+                </execute>
+                <set>
+                    <parameter name='vnf-id' value="`$prop.random-data-list[3]`"/>
+                    <parameter name='vnf-name' value="`'vnf-'+$prop.random-data-list[4]`"/>
+                    <!--<set>-->
+                    <!--<parameter name='vnf-id' value="123456789"/>-->
+                    <!--<parameter name='vnf-name' value="vnf_name"/>-->
+                </set>
+                <record plugin='org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder'>
+                    <parameter name='logger' value='message-log'/>
+                    <parameter name='field1' value='`$vnf-id`'/>
+                    <parameter name='field2' value='`$vnf-name`'/>
+                    <!--<record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">-->
+                    <!--   <parameter name="file" value="/root/logx.txt" />-->
+                    <!--   <parameter name="field1" value="deleteAccessConnectivityService success!" />-->
+                    <!--       <parameter name="field2" value='`$topology.networks.network[0].network-types`' />-->
+                </record>
+                <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="generic-vnf" key="generic-vnf.vnf-id = $vnf-id" >
+                    <parameter name= "vnf-id" value = "`$vnf-id`"/>
+                    <parameter name=  "vnf-name" value = "`$vnf-name`"/>
+                    <parameter name=  "vnf-type" value = "AccessConnectivity"/>
+                    <parameter name=  "service-id" value = "`$vnf-topology-operation-input.service-information.service-id`"/>
+                    <parameter name=  "prov-status" value = "ACTIVE"/>
+                    <parameter name=  "orchestration-status" value = "Active"/>
+                    <parameter name=  "is-closed-loop-disabled" value = "false" />
+                    <parameter name=  "model-invariant-id" value = "`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`"/>
+                    <parameter name=  "model-version-id" value = "`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`"/>
+                    <parameter name=  "model-customization-id" value = "`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`"/>
+                    <outcome value='failure'>
+                        <return status='failure'>
+                            <parameter name='ack-final' value='Y'/>
+                            <parameter name="error-code" value="500" />
+                            <parameter name="error-message" value="Failure calling AAI to save generic-vnf" />
+                        </return>
+                    </outcome>
+                    <outcome value='not-found'>
+                        <return status='failure'>
+                            <parameter name='ack-final' value='Y'/>
+                            <parameter name="error-code" value="500" />
+                            <parameter name="error-message" value="generic-vnf instance does not exist in AAI" />
+                        </return>
+                    </outcome>
+                    <outcome value='success'></outcome>
+                </save>
+                <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="service-instance:metadata"
+ key="service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-id  
+       AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+         AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type
+         AND service-instance.service-instance-id =  $vnf-topology-operation-input.service-information.service-instance-id"  force="true" pfx="tmp.AnAI-data"
+    >
+                    <parameter name="metadata.metadatum[0].metaname" value="remote-id" />
+                    <parameter name="metadata.metadatum[0].metaval" value="`$prop.bbs.remote_id`" />
+                    <parameter name="metadata.metadatum[1].metaname" value="controller-service-id" />
+                    <parameter name="metadata.metadatum[1].metaval" value="`$prop.bbs.serviceID`" />
+                    <parameter name="metadata.metadatum[2].metaname" value="cvlan" />
+                    <parameter name="metadata.metadatum[2].metaval" value="`$prop.bbs.CVLAN`" />
+                    <parameter name="metadata.metadatum[3].metaname" value="svlan" />
+                    <parameter name="metadata.metadatum[3].metaval" value="`$prop.bbs.SVLAN`" />
+                    <parameter name="metadata.metadatum[4].metaname" value="expected-ont-id" />
+                    <parameter name="metadata.metadatum[4].metaval" value="`$prop.bbs.ONTSN`" />
+                    <!--<parameter name="metadata.metadatum[5].metaname" value="rgw-mac-address" />-->
+                    <!--<parameter name="metadata.metadatum[5].metaval" value="`$prop.bbs.mac`" />-->
+                    <outcome value='failure'>
+                        <return status='failure'>
+                            <parameter name='ack-final' value='Y'/>
+                            <parameter name="error-code" value="500" />
+                            <parameter name="error-message" value="Failure calling AAI to save metadatum" />
+                        </return>
+                    </outcome>
+                    <outcome value='not-found'>
+                        <return status='failure'>
+                            <parameter name='ack-final' value='Y'/>
+                            <parameter name="error-code" value="500" />
+                            <parameter name="error-message" value="metadatum instance does not exist in AAI" />
+                        </return>
+                    </outcome>
+                    <outcome value='success'></outcome>
+                </save>
+                <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="service-instance:relationship-list" 
+      key="service-instance.service-instance-id =  $vnf-topology-operation-input.service-information.service-id
+         AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id
+         AND service-subscription.service-type =  $vnf-topology-operation-input.service-information.subscription-service-type 
+         AND service-instance.service-instance-id =  $vnf-topology-operation-input.service-information.service-instance-id" force="true" pfx="tmp.AnAI-data">
+                    <parameter name="relationship-list.relationship[0].related-to" value="generic-vnf" />
+                    <parameter name="relationship-list.relationship[0].related-link" value="`'/network/generic-vnfs/generic-vnf/' + $vnf-id`" />
+                    <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="generic-vnf.vnf-id" />
+                    <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$vnf-id`" />
+                    <outcome value='failure'>
+                        <return status='failure'>
+                            <parameter name='ack-final' value='Y'/>
+                            <parameter name="error-code" value="500" />
+                            <parameter name="error-message" value="Failure calling AAI to save metadatum" />
+                        </return>
+                    </outcome>
+                    <outcome value='not-found'>
+                        <return status='failure'>
+                            <parameter name='ack-final' value='Y'/>
+                            <parameter name="error-code" value="500" />
+                            <parameter name="error-message" value="metadatum instance does not exist in AAI" />
+                        </return>
+                    </outcome>
+                    <outcome value='success'></outcome>
+                </save>
+            </block>
+            <return status='success'>
+                <parameter name="ack-final-indicator" value="Y" />
+                <parameter name="error-code" value="200" />
+                <parameter name="error-message" value="`$error-message`" />
+            </return>
+        </block>
+    </method>
 </service-logic>
\ No newline at end of file