<?xml version="1.0" encoding="UTF-8"?> <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="validate-network-input-parameters" mode="sync"> <block atomic="true"> <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="sdnc-request-header.svc-request-id is a required input" /> </return> </outcome> </switch> <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`"> <outcome value="create"> <block atomic="true"> <switch test="`$network-topology-operation-input.request-information.request-action`"> <outcome value="CreateNetworkInstance"> <block atomic="true"> <for index="i" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`"> <block> <set> <parameter name="tmp.name" value="" /> <parameter name="tmp.value" value="" /> </set> <set> <parameter name="tmp.name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$i].name`" /> <parameter name="tmp.value" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$i].value`" /> </set> <switch test="`$tmp.name`"> <outcome value="name"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="service-type"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="site1-name"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="site2-name"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="sna1_name"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="sna2_name"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="pe1_id"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="pe2_id"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="ac1-id"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="ac2-id"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="ac1-ip"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="ac2-ip"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="ac1_peer_ip"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="ac2_peer_ip"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="ac1_svlan"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value="ac2_svlan"> <switch test="`$tmp.value`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" /> </return> </outcome> </switch> </outcome> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="`'network-topology-operation-input.network-request-input.network-input-parameters.param[' + $i + ']' + '.name is a required input'`" /> </return> </outcome> </switch> </block> </for> </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="request-information.request-action is required to be CreateNetworkInstance for svc-action=create" /> </return> </outcome> </switch> </block> </outcome> <outcome value="activate"> <switch test="`$network-topology-operation-input.request-information.request-action`"> <outcome value="ActivateDCINetworkInstance"> <block atomic="true"> <call module="GENERIC-RESOURCE-API" rpc="validate-overlay-network-input-parameters" mode="sync" /> </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="request-information.request-action is required to be ActivateNetworkInstance for svc-action=activate" /> </return> </outcome> </switch> </outcome> <outcome value="deactivate"> <switch test="`$network-topology-operation-input.request-information.request-action`"> <outcome value="DeActivateDCINetworkInstance"> <block atomic="true"> <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="requiredParameters"> <parameter name="network-topology-operation-input.network-information.network-id" value="$network-topology-operation-input.network-information.network-id" /> </execute> <switch test="`$network-topology-operation-input.network-information.network-id`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" /> </return> </outcome> </switch> </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="request-information.request-action is required to be DeactivateNetworkInstance for svc-action=deactivate" /> </return> </outcome> </switch> </outcome> <outcome value="delete"> <block atomic="true"> <switch test="`$network-topology-operation-input.request-information.request-action`"> <outcome value="DeleteNetworkInstance"> <block atomic="true"> <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="requiredParameters"> <parameter name="network-topology-operation-input.network-information.network-id" value="$network-topology-operation-input.network-information.network-id" /> </execute> <switch test="`$network-topology-operation-input.network-information.network-id`"> <outcome value=""> <return status="failure"> <parameter name="ack-final" value="Y" /> <parameter name="error-code" value="500" /> <parameter name="error-message" value="network-request-input.network-input-parameters.name is a required input" /> </return> </outcome> </switch> </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="request-information.request-action is required to be DeleteNetworkInstance for svc-action=delete" /> </return> </outcome> </switch> </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="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" /> </return> </outcome> </switch> </block> </method> </service-logic>