fix AAI storage problem
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_dci-connects-network-topology-operation-activate.xml
index 55ff864..411cbb3 100644 (file)
                                 </outcome>\r
                             </switch>\r
                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_networkName'`">\r
-                                <outcome value="true" />\r
+                                <outcome value="true">\r
+                                    <block atomic="true">\r
+                                        <set>\r
+                                            <parameter name="tmp.dci-connects.local_networks.original" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].value`" />\r
+                                        </set>\r
+                                        <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils" method="split">\r
+                                            <parameter name="original_string" value="`$tmp.dci-connects.local_networks.original`" />\r
+                                            <parameter name="regex" value="," />\r
+                                            <parameter name="ctx_memory_result_key" value="tmp.dci-connects.local_networks" />\r
+                                            <outcome value="success">\r
+                                                <for index="idx" start="0" end="`$tmp.dci-connects.local_networks_length`">\r
+                                                    <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="l3-network" key="l3-network.network-name = $tmp.dci-connects.local_networks[$idx] AND         depth = '0'" pfx="tmp.aai.l3-network" local-only="false">\r
+                                                        <outcome value="success">\r
+                                                            <set>\r
+                                                                <parameter name="prop.dci-connects.local_networks[$idx]" value="`$tmp.aai.l3-network.network-id`" />\r
+                                                            </set>\r
+                                                        </outcome>\r
+                                                        <outcome value="not-found">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="error-code" value="" />\r
+                                                                <parameter name="error-message" value="" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                        <outcome value="Other">\r
+                                                            <return status="failure">\r
+                                                                <parameter name="error-code" value="" />\r
+                                                                <parameter name="error-message" value="" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </get-resource>\r
+                                                </for>\r
+                                            </outcome>\r
+                                            <outcome value="failure">\r
+                                                <return status="failure">\r
+                                                    <parameter name="error-code" value="" />\r
+                                                    <parameter name="error-message" value="An error occured while splitting sna1_route" />\r
+                                                </return>\r
+                                            </outcome>\r
+                                        </execute>\r
+                                    </block>\r
+                                </outcome>\r
                             </switch>\r
                             <switch test="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$idx].name == 'site1_routerId'`">\r
                                 <outcome value="true">\r
                             <outcome value="success">\r
                                 <set>\r
                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />\r
-                                    <parameter name="prop.sdncRestApi.templateDir" value="/opt/onap/sdnc/data" />\r
                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />\r
                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />\r
+                                    <parameter name="prop.sdncRestApi.thirdpartySdnc.vendor" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].vendor`" />\r
                                 </set>\r
                             </outcome>\r
                             <outcome value="not-found">\r
                                 </return>\r
                             </outcome>\r
                         </get-resource>\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
                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
                             <parameter name="logger" value="message-log" />\r
                             <parameter name="field1" value="__TIMESTAMP__" />\r
                             <parameter name="field9" value="sdncRestApi.thirdpartySdnc.url" />\r
                             <parameter name="field10" value="`$prop.sdncRestApi.thirdpartySdnc.url`" />\r
                         </record>\r
-                        <switch test="`$prop.dci-connects.tunnelType`">\r
-                            <outcome value="L3-DCI">\r
-                                <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
-                                    <parameter name="templateFileName" value="`$prop.sdncRestApi.tempDir +'/l3-dci-connects-template.json'`" />\r
-                                    <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l3-dci-connects'`" />\r
-                                    <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
-                                    <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
-                                    <parameter name="format" value="json" />\r
-                                    <parameter name="httpMethod" value="post" />\r
-                                    <parameter name="responsePrefix" value="restapi-result" />\r
-                                </execute>\r
-                            </outcome>\r
-                            <outcome value="L2-DCI">\r
-                                <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
-                                    <parameter name="templateFileName" value="`$prop.sdncRestApi.tempDir +'/l2-dci-connects-template.json'`" />\r
-                                    <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l2-dci-connects'`" />\r
-                                    <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
-                                    <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
-                                    <parameter name="format" value="json" />\r
-                                    <parameter name="httpMethod" value="post" />\r
-                                    <parameter name="responsePrefix" value="restapi-result" />\r
-                                </execute>\r
+                        <switch test="`$prop.sdncRestApi.thirdpartySdnc.vendor`">\r
+                            <outcome value="SPTN">\r
+                                <switch test="`$prop.dci-connects.tunnelType`">\r
+                                    <outcome value="L3-DCI">\r
+                                        <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir +'/l3-dci-connects-template.json'`" />\r
+                                            <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l3-dci-connects'`" />\r
+                                            <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
+                                            <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
+                                            <parameter name="format" value="json" />\r
+                                            <parameter name="httpMethod" value="post" />\r
+                                            <parameter name="responsePrefix" value="restapi-result" />\r
+                                        </execute>\r
+                                    </outcome>\r
+                                    <outcome value="L2-DCI">\r
+                                        <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir +'/l2-dci-connects-template.json'`" />\r
+                                            <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l2-dci-connects'`" />\r
+                                            <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
+                                            <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
+                                            <parameter name="format" value="json" />\r
+                                            <parameter name="httpMethod" value="post" />\r
+                                            <parameter name="responsePrefix" value="restapi-result" />\r
+                                        </execute>\r
+                                    </outcome>\r
+                                </switch>\r
                             </outcome>\r
                         </switch>\r
                     </block>\r
                                             <parameter name="ctx_memory_result_key" value="tmp.dci-connects.local_networks" />\r
                                             <outcome value="success">\r
                                                 <for index="idx" start="0" end="`$tmp.dci-connects.local_networks_length`">\r
-                                                    <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="l3-network" key="esr-thirdparty-sdnc.thirdparty-sdnc-id = $tmp.dci-connects.local_networks[$idx] AND         depth = '0'" pfx="tmp.aai.l3-network" local-only="false">\r
+                                                    <get-resource plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="l3-network" key="l3-network.network-name = $tmp.dci-connects.local_networks[$idx] AND         depth = '0'" pfx="tmp.aai.l3-network" local-only="false">\r
                                                         <outcome value="success">\r
                                                             <set>\r
                                                                 <parameter name="prop.dci-connects.local_networks[$idx]" value="`$tmp.aai.l3-network.network-id`" />\r
                             <outcome value="success">\r
                                 <set>\r
                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.url" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].service-url`" />\r
-                                    <parameter name="prop.sdncRestApi.templateDir" value="/opt/onap/sdnc/data" />\r
                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.user" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].user-name`" />\r
                                     <parameter name="prop.sdncRestApi.thirdpartySdnc.password" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].password`" />\r
+                                    <parameter name="prop.sdncRestApi.thirdpartySdnc.vendor" value="`$tmp.aai.esr-thirdparty-sdnc.esr-system-info-list.esr-system-info[0].vendor`" />\r
                                 </set>\r
                             </outcome>\r
                             <outcome value="not-found">\r
                                 </return>\r
                             </outcome>\r
                         </get-resource>\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
                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">\r
                             <parameter name="logger" value="message-log" />\r
                             <parameter name="field1" value="__TIMESTAMP__" />\r
                             <parameter name="field9" value="sdncRestApi.thirdpartySdnc.url" />\r
                             <parameter name="field10" value="`$prop.sdncRestApi.thirdpartySdnc.url`" />\r
                         </record>\r
-                        <switch test="`$prop.dci-connects.tunnelType`">\r
-                            <outcome value="L3-DCI">\r
-                                <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
-                                    <parameter name="templateFileName" value="`$prop.sdncRestApi.tempDir +'/l3-dci-connects-template.json'`" />\r
-                                    <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l3-dci-connects'`" />\r
-                                    <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
-                                    <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
-                                    <parameter name="format" value="json" />\r
-                                    <parameter name="httpMethod" value="post" />\r
-                                    <parameter name="responsePrefix" value="restapi-result" />\r
-                                </execute>\r
-                            </outcome>\r
-                            <outcome value="L2-DCI">\r
-                                <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
-                                    <parameter name="templateFileName" value="`$prop.sdncRestApi.tempDir +'/l2-dci-connects-template.json'`" />\r
-                                    <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l2-dci-connects'`" />\r
-                                    <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
-                                    <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
-                                    <parameter name="format" value="json" />\r
-                                    <parameter name="httpMethod" value="post" />\r
-                                    <parameter name="responsePrefix" value="restapi-result" />\r
-                                </execute>\r
+                        <switch test="`$prop.sdncRestApi.thirdpartySdnc.vendor`">\r
+                            <outcome value="SPTN">\r
+                                <switch test="`$prop.dci-connects.tunnelType`">\r
+                                    <outcome value="L3-DCI">\r
+                                        <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir +'/l3-dci-connects-template.json'`" />\r
+                                            <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l3-dci-connects'`" />\r
+                                            <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
+                                            <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
+                                            <parameter name="format" value="json" />\r
+                                            <parameter name="httpMethod" value="post" />\r
+                                            <parameter name="responsePrefix" value="restapi-result" />\r
+                                        </execute>\r
+                                    </outcome>\r
+                                    <outcome value="L2-DCI">\r
+                                        <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
+                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir +'/l2-dci-connects-template.json'`" />\r
+                                            <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url +'/v2.0/l2-dci-connects'`" />\r
+                                            <parameter name="restapiUser" value="`$prop.sdncRestApi.thirdpartySdnc.user`" />\r
+                                            <parameter name="restapiPassword" value="`$prop.sdncRestApi.thirdpartySdnc.password`" />\r
+                                            <parameter name="format" value="json" />\r
+                                            <parameter name="httpMethod" value="post" />\r
+                                            <parameter name="responsePrefix" value="restapi-result" />\r
+                                        </execute>\r
+                                    </outcome>\r
+                                </switch>\r
                             </outcome>\r
                         </switch>\r
                     </block>\r
             <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="configuration" key="configuration.configuration-id = $prop.dci.network-id">\r
                 <parameter name="configuration-id" value="`$prop.dci.network-id`" />\r
                 <parameter name="configuration-type" value="overlay" />\r
+                <parameter name="configuration-sub-type" value="VPN-DCI" />\r
                 <parameter name="orchestration-status" value="Created" />\r
+                <parameter name="operational-status" value="Created" />\r
+                <parameter name="model-customization-id" value="`$prop.dci.network-id`" />\r
                 <parameter name="configuration-selflink" value="`'restconf/config/GENERIC-RESOURCE-API:services/service/'  + $network-topology-operation-input.service-information.service-instance-id  + '/service-data/networks/network/'  + $prop.dci.network-id  + '/network-data/'` " />\r
             </save>\r
-            <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="service-instance:relationship-list" key="service-instance.service-instance-id = $service-data.service-information.service-id">\r
+            <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="service-instance:relationship-list" key="service-instance.service-instance-id = $service-data.service-information.service-instance-id           AND customer.global-customer-id = $service-data.networks.network[$nidx].network-data.service-information.global-customer-id           AND service-subscription.service-type = $service-data.networks.network[$nidx].network-data.service-information.subscription-service-type" force="true" pfx="tmp.AnAI-data">\r
                 <parameter name="relationship-list.relationship[0].related-to" value="configuration" />\r
-                <parameter name="relationship-list.relationship[0].related-link" value="/network/configurations/configuration" />\r
+                <parameter name="relationship-list.relationship[0].related-link" value="`'/network/configurations/configuration/' + $prop.dci.network-id`" />\r
                 <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="configuration.configuration-id" />\r
                 <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$prop.dci.network-id`" />\r
-                <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-key" value="configuration.configuration-type" />\r
-                <parameter name="relationship-list.relationship[0].relationship-data[1].relationship-value" value="overlay" />\r
             </save>\r
             <return status="success">\r
                 <parameter name="ack-final-indicator" value="Y" />\r