Connecting SOTN sub DGs to network DG
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_validate-sotn-network-input-parameters.xml
index 7d4e5fe..a858704 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="1.2.1-SNAPSHOT">\r
-   <method rpc="validate-sotn-network-input-parameters" mode="sync">\r
-      <block atomic="true">\r
-         <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">\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="sdnc-request-header.svc-request-id is a required input" />\r
-               </return>\r
-            </outcome>\r
-         </switch>\r
-         <switch test="`$network-topology-operation-input.sdnc-request-header.svc-action`">\r
-            <outcome value="create">\r
-               <block atomic="true">\r
-                  <switch test="`$network-topology-operation-input.request-information.request-action`">\r
-                     <outcome value="CreateSOTNConnectivityIntance">\r
-                        <block atomic="true">\r
-                           <for index="i" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
-                              <block>\r
-                                 <set>\r
-                                    <parameter name="tmp.name" value="" />\r
-                                    <parameter name="tmp.value" value="" />\r
-                                 </set>\r
-                                 <set>\r
-                                    <parameter name="tmp.name" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$i].name`" />\r
-                                    <parameter name="tmp.value" value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$i].value`" />\r
-                                 </set>\r
-                                 <switch test="`$tmp.name`">\r
-                                    <outcome value="name">\r
-                                       <switch test="`$tmp.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="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
-                                             </return>\r
-                                          </outcome>\r
-                                       </switch>\r
+<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='validate-sotn-network-input-parameters' mode='sync'>\r
+        <block atomic="true">\r
+            <switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\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="sdnc-request-header.svc-request-id is a required input" />\r
+                    </return>\r
+                </outcome>\r
+            </switch>\r
+            <switch test='`$network-topology-operation-input.sdnc-request-header.svc-action`'>\r
+                <outcome value='create'>\r
+                    <block atomic="true">\r
+                        <switch test='`$network-topology-operation-input.request-information.request-action`'>\r
+                            <outcome value='CreateSOTNConnectivityIntance'>\r
+                                <block atomic="true">\r
+                                    <for index="i" start="0" end="`$network-topology-operation-input.network-request-input.network-input-parameters.param_length`">\r
+                                        <block>\r
+                                            <set>\r
+                                                <parameter name='tmp.name' value='' />\r
+                                                <parameter name='tmp.value' value='' />\r
+                                            </set>\r
+                                            <set>\r
+                                                <parameter name='tmp.name' value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$i].name`"/>\r
+                                                <parameter name='tmp.value' value="`$network-topology-operation-input.network-request-input.network-input-parameters.param[$i].value`"/>\r
+                                            </set>\r
+                                            <switch test="`$tmp.name`">\r
+                                                <outcome value='name'>\r
+                                                    <switch test="`$tmp.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="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\r
+                                                </outcome>\r
+                                                <outcome value='description'>\r
+                                                    <switch test="`$tmp.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="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
+                                                            </return>\r
+                                                        </outcome>\r
+                                                    </switch>\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="`'network-topology-operation-input.network-request-input.network-input-parameters.param[' + $i + ']' + '.name is a required input'`" />\r
+                                                    </return>\r
+                                                </outcome>\r
+                                            </switch>\r
+                                        </block>\r
+                                    </for>\r
+                                </block>\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="request-information.request-action is required to be SOTN CreateVPNNetworkInstance for svc-action=create" />\r
+                                </return>\r
+                            </outcome>\r
+                        </switch>\r
+                    </block>\r
+                </outcome>\r
+                <outcome value='activate'>\r
+                    <switch test='`$network-topology-operation-input.request-information.request-action`'>\r
+                        <outcome value='ActivateSOTNConnectivityIntance'>\r
+                            <block atomic="true">\r
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='requiredParameters' >\r
+                                    <parameter name="network-topology-operation-input.network-information.network-id" value="$network-topology-operation-input.network-information.network-id"/>\r
+                                </execute>\r
+                                <switch test="`$network-topology-operation-input.network-information.network-id`">\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="network-request-input.network-input-parameters.name is a required input" />\r
+                                        </return>\r
                                     </outcome>\r
-                                    <outcome value="description">\r
-                                       <switch test="`$tmp.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="`'network-request-input.network-input-parameters.param '+ $tmp.name +' is a required input'`" />\r
-                                             </return>\r
-                                          </outcome>\r
-                                       </switch>\r
+                                </switch>\r
+                                <switch test='`$service-data.networks.network_length`'>\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
+                                        </return>\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="`'network-topology-operation-input.network-request-input.network-input-parameters.param[' + $i + ']' + '.name is a required input'`" />\r
-                                       </return>\r
+                                    <outcome value='Other'>\r
+                                        <block atomic="true">\r
+                                            <for index='nidx' start='0' end='`$service-data.networks.network_length`' >\r
+                                                <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">\r
+                                                    <outcome value='true'>\r
+                                                        <block atomic="true">\r
+                                                            <set>\r
+                                                                <parameter name='tmp.nidx' value='`$nidx`' />\r
+                                                                <parameter name='ctx.network-data.' value='`$service-data.networks.network[$nidx].network-data.`' />\r
+                                                            </set>\r
+                                                            <break></break>\r
+                                                        </block>\r
+                                                    </outcome>\r
+                                                </switch>\r
+                                            </for>\r
+                                            <switch test="`$tmp.nidx`">\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
+                                                    </return>\r
+                                                </outcome>\r
+                                            </switch>\r
+                                        </block>\r
                                     </outcome>\r
-                                 </switch>\r
-                              </block>\r
-                           </for>\r
-                        </block>\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="request-information.request-action is required to be SOTN CreateVPNNetworkInstance for svc-action=create" />\r
-                        </return>\r
-                     </outcome>\r
-                  </switch>\r
-               </block>\r
-            </outcome>\r
-            <outcome value="activate">\r
-               <switch test="`$network-topology-operation-input.request-information.request-action`">\r
-                  <outcome value="ActivateSOTNConnectivityIntance">\r
-                     <block atomic="true">\r
-                        <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="requiredParameters">\r
-                           <parameter name="network-topology-operation-input.network-information.network-id" value="$network-topology-operation-input.network-information.network-id" />\r
-                        </execute>\r
-                        <switch test="`$network-topology-operation-input.network-information.network-id`">\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="network-request-input.network-input-parameters.name is a required input" />\r
-                              </return>\r
-                           </outcome>\r
-                        </switch>\r
-                        <switch test="`$service-data.networks.network_length`">\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
-                              </return>\r
-                           </outcome>\r
-                           <outcome value="Other">\r
-                              <block atomic="true">\r
-                                 <for index="nidx" start="0" end="`$service-data.networks.network_length`">\r
-                                    <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">\r
-                                       <outcome value="true">\r
-                                          <set>\r
-                                             <parameter name="tmp.nidx" value="`$nidx`" />\r
-                                             <parameter name="ctx.network-data." value="`$service-data.networks.network[$nidx].network-data.`" />\r
-                                          </set>\r
-                                       </outcome>\r
-                                    </switch>\r
-                                 </for>\r
-                                 <switch test="`$tmp.nidx`">\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
-                                       </return>\r
+                                </switch>\r
+                                <switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>\r
+                                    <outcome value='Created'>\r
+                                        <block atomic="true"></block>\r
                                     </outcome>\r
-                                 </switch>\r
-                              </block>\r
-                           </outcome>\r
-                        </switch>\r
-                        <switch test="`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`">\r
-                           <outcome value="Created">\r
-                              <block atomic="true" />\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="`'Network is not in appropriate state for activate. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />\r
-                              </return>\r
-                           </outcome>\r
-                        </switch>\r
-                     </block>\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="request-information.request-action is required to be SOTN ActivateVPNNetworkInstance for svc-action=activate" />\r
-                     </return>\r
-                  </outcome>\r
-               </switch>\r
-            </outcome>\r
-            <outcome value="deactivate">\r
-               <switch test="`$network-topology-operation-input.request-information.request-action`">\r
-                  <outcome value="DeactivateSOTNConnectivityIntance">\r
-                     <block atomic="true">\r
-                        <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="requiredParameters">\r
-                           <parameter name="network-topology-operation-input.network-information.network-id" value="$network-topology-operation-input.network-information.network-id" />\r
-                        </execute>\r
-                        <switch test="`$network-topology-operation-input.network-information.network-id`">\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="network-request-input.network-input-parameters.name is a required input" />\r
-                              </return>\r
-                           </outcome>\r
-                        </switch>\r
-                        <switch test="`$service-data.networks.network_length`">\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
-                              </return>\r
-                           </outcome>\r
-                           <outcome value="Other">\r
-                              <block atomic="true">\r
-                                 <for index="nidx" start="0" end="`$service-data.networks.network_length`">\r
-                                    <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">\r
-                                       <outcome value="true">\r
-                                          <set>\r
-                                             <parameter name="tmp.nidx" value="`$nidx`" />\r
-                                             <parameter name="ctx.network-data." value="`$service-data.networks.network[$nidx].network-data.`" />\r
-                                          </set>\r
-                                       </outcome>\r
-                                    </switch>\r
-                                 </for>\r
-                                 <switch test="`$tmp.nidx`">\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
-                                       </return>\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="`'Network is not in appropriate state for activate. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />\r
+                                        </return>\r
                                     </outcome>\r
-                                 </switch>\r
-                              </block>\r
-                           </outcome>\r
-                        </switch>\r
-                        <switch test="`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`">\r
-                           <outcome value="Active">\r
-                              <block atomic="true" />\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="`'Network is not in appropriate state for deactivate. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />\r
-                              </return>\r
-                           </outcome>\r
-                        </switch>\r
-                     </block>\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="request-information.request-action is required to be SOTN DeactivateVPNNetworkInstance for svc-action=deactivate" />\r
-                     </return>\r
-                  </outcome>\r
-               </switch>\r
-            </outcome>\r
-            <outcome value="delete">\r
-               <switch test="`$network-topology-operation-input.request-information.request-action`">\r
-                  <outcome value="DeleteSOTNConnectivityIntance">\r
-                     <block atomic="true">\r
-                        <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="requiredParameters">\r
-                           <parameter name="network-topology-operation-input.network-information.network-id" value="$network-topology-operation-input.network-information.network-id" />\r
-                        </execute>\r
-                        <switch test="`$network-topology-operation-input.network-information.network-id`">\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="network-request-input.network-input-parameters.name is a required input" />\r
-                              </return>\r
-                           </outcome>\r
-                        </switch>\r
-                        <switch test="`$service-data.networks.network_length`">\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
-                              </return>\r
-                           </outcome>\r
-                           <outcome value="Other">\r
-                              <block atomic="true">\r
-                                 <for index="nidx" start="0" end="`$service-data.networks.network_length`">\r
-                                    <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">\r
-                                       <outcome value="true">\r
-                                          <set>\r
-                                             <parameter name="tmp.nidx" value="`$nidx`" />\r
-                                             <parameter name="ctx.network-data." value="`$service-data.networks.network[$nidx].network-data.`" />\r
-                                          </set>\r
-                                       </outcome>\r
-                                    </switch>\r
-                                 </for>\r
-                                 <switch test="`$tmp.nidx`">\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
-                                       </return>\r
+                                </switch>\r
+                            </block>\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="request-information.request-action is required to be SOTN ActivateVPNNetworkInstance for svc-action=activate" />\r
+                            </return>\r
+                        </outcome>\r
+                    </switch>\r
+                </outcome>\r
+                <outcome value='deactivate'>\r
+                    <switch test='`$network-topology-operation-input.request-information.request-action`'>\r
+                        <outcome value='DeactivateSOTNConnectivityIntance'>\r
+                            <block atomic="true">\r
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='requiredParameters' >\r
+                                    <parameter name="network-topology-operation-input.network-information.network-id" value="$network-topology-operation-input.network-information.network-id"/>\r
+                                </execute>\r
+                                <switch test="`$network-topology-operation-input.network-information.network-id`">\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="network-request-input.network-input-parameters.name is a required input" />\r
+                                        </return>\r
                                     </outcome>\r
-                                 </switch>\r
-                              </block>\r
-                           </outcome>\r
-                        </switch>\r
-                        <switch test="`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`">\r
-                           <outcome value="PendingDelete">\r
-                              <block atomic="true" />\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="`'Network is not in appropriate state for delete. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />\r
-                              </return>\r
-                           </outcome>\r
-                        </switch>\r
-                     </block>\r
-                  </outcome>\r
-                  <outcome value="Other">\r
-                     <return status="failure">\r
-                        <parameter name="ack-final" value="Y" />\r
+                                </switch>\r
+                                <switch test='`$service-data.networks.network_length`'>\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
+                                        </return>\r
+                                    </outcome>\r
+                                    <outcome value='Other'>\r
+                                        <block atomic="true">\r
+                                            <for index='nidx' start='0' end='`$service-data.networks.network_length`' >\r
+                                                <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">\r
+                                                    <outcome value='true'>\r
+                                                        <block atomic="true">\r
+                                                            <set>\r
+                                                                <parameter name='tmp.nidx' value='`$nidx`' />\r
+                                                                <parameter name='ctx.network-data.' value='`$service-data.networks.network[$nidx].network-data.`' />\r
+                                                            </set>\r
+                                                            <break></break>\r
+                                                        </block>\r
+                                                    </outcome>\r
+                                                </switch>\r
+                                            </for>\r
+                                            <switch test="`$tmp.nidx`">\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
+                                                    </return>\r
+                                                </outcome>\r
+                                            </switch>\r
+                                        </block>\r
+                                    </outcome>\r
+                                </switch>\r
+                                <switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>\r
+                                    <outcome value='Active'>\r
+                                        <block atomic="true"></block>\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="`'Network is not in appropriate state for deactivate. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />\r
+                                        </return>\r
+                                    </outcome>\r
+                                </switch>\r
+                            </block>\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="request-information.request-action is required to be SOTN DeactivateVPNNetworkInstance for svc-action=deactivate" />\r
+                            </return>\r
+                        </outcome>\r
+                    </switch>\r
+                </outcome>\r
+                <outcome value='delete'>\r
+                    <switch test='`$network-topology-operation-input.request-information.request-action`'>\r
+                        <outcome value='DeleteSOTNConnectivityIntance'>\r
+                            <block atomic="true">\r
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='requiredParameters' >\r
+                                    <parameter name="network-topology-operation-input.network-information.network-id" value="$network-topology-operation-input.network-information.network-id"/>\r
+                                </execute>\r
+                                <switch test="`$network-topology-operation-input.network-information.network-id`">\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="network-request-input.network-input-parameters.name is a required input" />\r
+                                        </return>\r
+                                    </outcome>\r
+                                </switch>\r
+                                <switch test='`$service-data.networks.network_length`'>\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
+                                        </return>\r
+                                    </outcome>\r
+                                    <outcome value='Other'>\r
+                                        <block atomic="true">\r
+                                            <for index='nidx' start='0' end='`$service-data.networks.network_length`' >\r
+                                                <switch test="`$service-data.networks.network[$nidx].network-id == $network-topology-operation-input.network-information.network-id`">\r
+                                                    <outcome value='true'>\r
+                                                        <block atomic="true">\r
+                                                            <set>\r
+                                                                <parameter name='tmp.nidx' value='`$nidx`' />\r
+                                                                <parameter name='ctx.network-data.' value='`$service-data.networks.network[$nidx].network-data.`' />\r
+                                                            </set>\r
+                                                            <break></break>\r
+                                                        </block>\r
+                                                    </outcome>\r
+                                                </switch>\r
+                                            </for>\r
+                                            <switch test="`$tmp.nidx`">\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="network-topology-operation-input.network-request-input.network-id not found in service-data" />\r
+                                                    </return>\r
+                                                </outcome>\r
+                                            </switch>\r
+                                        </block>\r
+                                    </outcome>\r
+                                </switch>\r
+                                <switch test='`$service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`'>\r
+                                    <outcome value='PendingDelete'>\r
+                                        <block atomic="true"></block>\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="`'Network is not in appropriate state for delete. Current state is ' + $service-data.networks.network[$tmp.nidx].network-data.network-level-oper-status.order-status`" />\r
+                                        </return>\r
+                                    </outcome>\r
+                                </switch>\r
+                            </block>\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="request-information.request-action is required to be SOTN DeleteVPNNetworkInstance for svc-action=delete" />\r
+                            </return>\r
+                        </outcome>\r
+                    </switch>\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="request-information.request-action is required to be SOTN DeleteVPNNetworkInstance for svc-action=delete" />\r
-                     </return>\r
-                  </outcome>\r
-               </switch>\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="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
-               </return>\r
-            </outcome>\r
-         </switch>\r
-      </block>\r
-   </method>\r
+                        <parameter name="error-message" value="`$network-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />\r
+                    </return>\r
+                </outcome>\r
+            </switch>\r
+        </block>\r
+    </method>\r
 </service-logic>\r