Chore: Add gerrit maven verify GHA workflow
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_self-serve-generate-name-changeassign.xml
index ba153ff..a8ef58d 100644 (file)
-<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='self-serve-generate-name-changeassign' mode='sync'>
-        <block atomic="true">
-            <switch test='`$ss.input.param.index`'>
-                <outcome value=''>
-                    <return status='failure'>
-                        <parameter name='ack-final' value='Y'/>
-                        <parameter name="error-code" value="500" />
-                        <parameter name="error-message" value="ss.input.param.index is null" />
-                    </return>
-                </outcome>
-            </switch>
-            <switch test='`$ss.service-data.param.index`'>
-                <outcome value=''>
-                    <return status='failure'>
-                        <parameter name='ack-final' value='Y'/>
-                        <parameter name="error-code" value="500" />
-                        <parameter name="error-message" value="ss.service-data.param.index is null" />
-                    </return>
-                </outcome>
-            </switch>
-            <switch test='`$ss.capability-type`'>
-                <outcome value='vnf'>
-                    <block atomic='true'>
-                        <for index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.resource-key_length`' >
-                            <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.resource-key[$i].name`'>
-                                <outcome value='external-key'>
-                                    <set>
-                                        <parameter name='tmp.external-key.value' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.resource-key[$i].value`' />
-                                    </set>
-                                </outcome>
-                            </switch>
-                        </for>
-                        <switch test='`$tmp.external-key.value`'>
-                            <outcome value=''>
-                                <return status='failure'>
-                                    <parameter name='ack-final' value='Y'/>
-                                    <parameter name="error-code" value="500" />
-                                    <parameter name="error-message" value="self-service-generate-name-changeassign error : external-key is null for vnf" />
-                                </return>
-                            </outcome>
-                        </switch>
-                        <set>
-                            <parameter name="tmp.vnf.changeassign.naming-data-payload" value="`'{&quot;elements&quot;:[{' + '&quot;resource-name&quot;:&quot;' + $vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$ss.input.param.index].name + '&quot;,&quot;resource-value&quot;:&quot;' + $vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$ss.input.param.index].value + '&quot;,&quot;external-key&quot;:&quot;' + $tmp.external-key.value + '&quot;}]'`"/>
-                        </set>
-                        <execute plugin='org.openecomp.sdnc.prov.namegeneration.node.AssignNameNode' method='process'>
-                            <parameter name='payload' value='`$tmp.vnf.changeassign.naming-data-payload`' />
-                            <parameter name="prifix" value="vnf.changeassign.nameGenResponse" />
-                            <outcome value='failure'>
-                                <block atomic='true'>
-                                    <set>
-                                        <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.status`' value='FAILED' />
-                                    </set>
-                                    <return status='failure'>
-                                        <parameter name='ack-final' value='Y'/>
-                                        <parameter name="error-code" value="500" />
-                                        <parameter name="error-message" value="`'Error from NameGenerationNode ChangeAssign vnf ' + $error-message`" />
-                                    </return>
-                                </block>
-                            </outcome>
-                            <outcome value='not-found'>
-                                <block atomic='true'>
-                                    <set>
-                                        <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.status`' value='FAILED' />
-                                    </set>
-                                    <return status='failure'>
-                                        <parameter name='ack-final' value='Y'/>
-                                        <parameter name="error-code" value="500" />
-                                        <parameter name="error-message" value="`'Error from NameGenerationNode ChangeAssign vnf ' + $error-message`" />
-                                    </return>
-                                </block>
-                            </outcome>
-                        </execute>
-                        <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
-       resource="generic-vnf"
-               key="generic-vnf.vnf-id = $ss.param.vnf-id " >
-                            <parameter name="ipv4-loopback0-address" value='`$ss.param.ipv4-loopback0-address`' />
-                            <parameter name="ipv4-oam-address" value='`$ss.param.ipv4-oam-address`' />
-                            <parameter name="as-number" value='`$ss.param.as-number`' />
-                            <parameter name="vlan-id-outer" value='`$ss.param.vlan-id-outer`' />
-                            <outcome value='failure'>
-                                <block atomic='true'>
-                                    <set>
-                                        <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.status`' value='FAILED' />
-                                    </set>
-                                    <return status='failure'>
-                                        <parameter name='ack-final' value='Y'/>
-                                        <parameter name="error-code" value="500" />
-                                        <parameter name="error-message" value="`'Failed to update generic-vnf.vnf-name to ' + $ss.changeassign.vnf-name + ' in AnAI'`" />
-                                    </return>
-                                </block>
-                            </outcome>
-                            <outcome value='not-found'>
-                                <block atomic='true'>
-                                    <set>
-                                        <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.status`' value='FAILED' />
-                                    </set>
-                                    <return status='failure'>
-                                        <parameter name='ack-final' value='Y'/>
-                                        <parameter name="error-code" value="500" />
-                                        <parameter name="error-message" value="`'Failed to update generic-vnf.vnf-name to ' + $ss.changeassign.vnf-name + ' in AnAI'`" />
-                                    </return>
-                                </block>
-                            </outcome>
-                        </update>
-                        <set>
-                            <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].value`' value='`$vnf-topology-operation-input.vnf-request-input.vnf-input-parameters.param[$ss.input.param.index].value`'/>
-                            <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.status`' value='SUCCESS' />
-                        </set>
-                    </block>
-                </outcome>
-                <outcome value='vf-module'>
-                    <block atomic='true'>
-                        <for index='i' start='0' end='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.resource-key_length`' >
-                            <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.resource-key[$i].name`'>
-                                <outcome value='external-key'>
-                                    <set>
-                                        <parameter name='tmp.external-key.value' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$ss.service-data.param.index].resource-resolution-data.resource-key[$i].value`' />
-                                    </set>
-                                </outcome>
-                            </switch>
-                        </for>
-                        <switch test='`$tmp.external-key.value`'>
-                            <outcome value=''>
-                                <return status='failure'>
-                                    <parameter name='ack-final' value='Y'/>
-                                    <parameter name="error-code" value="500" />
-                                    <parameter name="error-message" value="self-service-generate-name-changeassign error : external-key is null for vf-module" />
-                                </return>
-                            </outcome>
-                        </switch>
-                        <set>
-                            <parameter name="tmp.vf-module.changeassign.naming-data-payload" value="`'{&quot;elements&quot;:[{' + '&quot;resource-name&quot;:&quot;' + $vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param[$ss.input.param.index].name + '&quot;,&quot;resource-value&quot;:&quot;' + $vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param[$ss.input.param.index].value + '&quot;,&quot;external-key&quot;:&quot;' + $tmp.external-key.value + '&quot;}]'`"/>
-                        </set>
-                        <execute plugin='org.openecomp.sdnc.prov.namegeneration.node.AssignNameNode' method='process'>
-                            <parameter name='payload' value='`$tmp.vf-module.changeassign.naming-data-payload`' />
-                            <parameter name="prifix" value="vf-module.changeassign.nameGenResponse" />
-                            <outcome value='failure'>
-                                <block atomic='true'>
-                                    <set>
-                                        <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.service-data.param.index].resource-resolution-data.status`' value='FAILED' />
-                                    </set>
-                                    <return status='failure'>
-                                        <parameter name='ack-final' value='Y'/>
-                                        <parameter name="error-code" value="500" />
-                                        <parameter name="error-message" value="`'Error from NameGenerationNode ChangeAssign vf-module ' + $error-message`" />
-                                    </return>
-                                </block>
-                            </outcome>
-                            <outcome value='not-found'>
-                                <block atomic='true'>
-                                    <set>
-                                        <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.service-data.param.index].resource-resolution-data.status`' value='FAILED' />
-                                    </set>
-                                    <return status='failure'>
-                                        <parameter name='ack-final' value='Y'/>
-                                        <parameter name="error-code" value="500" />
-                                        <parameter name="error-message" value="`'Error from NameGenerationNode ChangeAssign vf-module ' + $error-message`" />
-                                    </return>
-                                </block>
-                            </outcome>
-                        </execute>
-                        <update plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService"
-       resource="vf-module"
-               key="generic-vnf.vnf-id = $ss.param.vnf-id 
-                       AND vf-module.vf-module-id = $ss.param.vf-module-id " >
-                            <parameter name="vf-module-name" value='`$ss.param.vf-module-name`' />
-                            <outcome value='failure'>
-                                <block atomic='true'>
-                                    <set>
-                                        <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.service-data.param.index].resource-resolution-data.status`' value='FAILED' />
-                                    </set>
-                                    <return status='failure'>
-                                        <parameter name='ack-final' value='Y'/>
-                                        <parameter name="error-code" value="500" />
-                                        <parameter name="error-message" value="`'Failed to update vf-module.vf-module-name to ' + $ss.changeassign.vf-module-name + ' in AnAI'`" />
-                                    </return>
-                                </block>
-                            </outcome>
-                            <outcome value='not-found'>
-                                <block atomic='true'>
-                                    <set>
-                                        <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.service-data.param.index].resource-resolution-data.status`' value='FAILED' />
-                                    </set>
-                                    <return status='failure'>
-                                        <parameter name='ack-final' value='Y'/>
-                                        <parameter name="error-code" value="500" />
-                                        <parameter name="error-message" value="`'Failed to update vf-module.vf-module-name to ' + $ss.changeassign.vf-module-name + ' in AnAI'`" />
-                                    </return>
-                                </block>
-                            </outcome>
-                        </update>
-                        <set>
-                            <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.service-data.param.index].value`' value='`$vf-module-topology-operation-input.vf-module-request-input.vf-module-input-parameters.param[$ss.input.param.index].value`'/>
-                            <parameter name='`service-data.vnfs.vnf[$vnf-index].vnf-data.vf-modules.vf-module[$vf-module-index].vf-module-data.vf-module-topology.vf-module-parameters.param[$ss.service-data.param.index].resource-resolution-data.status`' value='SUCCESS' />
-                        </set>
-                    </block>
-                </outcome>
-                <outcome value='Other'>
-                    <return status='failure'>
-                        <parameter name='ack-final' value='Y'/>
-                        <parameter name="error-code" value="500" />
-                        <parameter name="error-message" value="capability-type is not vnf or vf-module" />
-                    </return>
-                </outcome>
-                <outcome value=''>
-                    <return status='failure'>
-                        <parameter name='ack-final' value='Y'/>
-                        <parameter name="error-code" value="500" />
-                        <parameter name="error-message" value="capability-type is not vnf or vf-module" />
-                    </return>
-                </outcome>
-            </switch>
-        </block>
-    </method>
+<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='self-serve-generate-name-changeassign' mode='sync'>\r
+        <block atomic="true">\r
+            <switch test='`$prop.controller.user`'>\r
+                <outcome value=''>\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
+                </outcome>\r
+            </switch>\r
+            <call module='GENERIC-RESOURCE-API' rpc='self-serve-capability-param-resolution' mode='sync' ></call>\r
+            <switch test='`$ss.input.param.index`'>\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="ss.input.param.index is null" />\r
+                    </return>\r
+                </outcome>\r
+            </switch>\r
+            <switch test='`$ss.service-data.param.index`'>\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="ss.service-data.param.index is null" />\r
+                    </return>\r
+                </outcome>\r
+            </switch>\r
+            <switch test='`$ss.capability-type`'>\r
+                <outcome value='vnf'>\r
+                    <call module='GENERIC-RESOURCE-API' rpc='self-serve-vnf-generate-name-changeassign' mode='sync' ></call>\r
+                </outcome>\r
+                <outcome value='vf-module'>\r
+                    <call module='GENERIC-RESOURCE-API' rpc='self-serve-vf-module-generate-name-changeassign' mode='sync' ></call>\r
+                </outcome>\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="`'Unknown capability-type [' + $ss.capability-type + '], valid value are: vnf, pnf, vf-module'`" />\r
+                    </return>\r
+                </outcome>\r
+            </switch>\r
+        </block>\r
+    </method>\r
 </service-logic>
\ No newline at end of file