Self serve fix for Casablanca
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_self-serve-netbox-ip-assign.xml
index 3d9d0bb..85522cf 100644 (file)
                             </set>
                             <switch test='`$tmp.ss.param.capability-name == $ss.capability-name`'>
                                 <outcome value='true'>
-                                    <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status`'>
-                                        <outcome value='FAILED'>
-                                            <block>
-                                                <for index="kidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key_length`">
-                                                    <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].name`'>
-                                                        <outcome value='service-instance-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.service-instance-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='vnf-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.vnf-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='prefix-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.prefix-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='external_key'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.external-key' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                    </switch>
-                                                </for>
-                                                <switch test='`$ss.capability-action`'>
-                                                    <outcome value='assign'>
+                                    <block>
+                                        <for index="kidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key_length`">
+                                            <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].name`'>
+                                                <outcome value='service-instance-id'>
+                                                    <set>
+                                                        <parameter name='tmp.ss.service-instance-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
+                                                    </set>
+                                                </outcome>
+                                                <outcome value='vnf-id'>
+                                                    <set>
+                                                        <parameter name='tmp.ss.vnf-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
+                                                    </set>
+                                                </outcome>
+                                                <outcome value='prefix-id'>
+                                                    <set>
+                                                        <parameter name='tmp.ss.prefix-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
+                                                    </set>
+                                                </outcome>
+                                                <outcome value='external_key'>
+                                                    <set>
+                                                        <parameter name='tmp.ss.external-key' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
+                                                    </set>
+                                                </outcome>
+                                            </switch>
+                                        </for>
+                                        <switch test='`$ss.capability-action`'>
+                                            <outcome value='assign'>
+                                                <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status`'>
+                                                    <outcome value='FAILED'>
                                                         <block atomic='true'>
                                                             <execute plugin="org.onap.ccsdk.sli.adaptors.netbox.api.NetboxClient" method="assignIpAddress">
                                                                 <parameter name="service_instance_id" value="`$tmp.ss.service-instance-id`" />
                                                             </execute>
                                                         </block>
                                                     </outcome>
-                                                    <outcome value='unassign'>
-                                                        <block atomic="true">
-                                                            <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
-       key='SELECT * from IPAM_IP_ASSIGNEMENT 
-               WHERE external_key = $tmp.ss.external-key
-               AND service_instance_id = $tmp.ss.service-instance-id' >
-                                                                <outcome value='not-found'>
-                                                                    <block></block>
-                                                                </outcome>
-                                                                <outcome value='success'>
-                                                                    <block atomic="true">
-                                                                        <set>
-                                                                            <parameter name='tmp.status' value="PENDING_DELETE" />
-                                                                        </set>
-                                                                        <update plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL"
-       key="UPDATE IPAM_IP_ASSIGNEMENT set ip_status = $tmp.status 
-               WHERE external_key = $tmp.ss.external-key
-               AND service_instance_id = $tmp.ss.service-instance-id" >
-                                                                            <outcome value='failure'>
-                                                                                <return status='failure'>
-                                                                                    <parameter name='ack-final' value='Y'/>
-                                                                                    <parameter name="error-code" value="500" />
-                                                                                    <parameter name="error-message" value="`'Error updating NETBOX_IP_ASSIGNMENTS table to unassign ip with external_key=' + $tmp.ss.external-key + ' and service_instance_id=' + $tmp.ss.service-instance-id`" />
-                                                                                </return>
-                                                                            </outcome>
-                                                                        </update>
-                                                                        <execute plugin="org.onap.ccsdk.sli.adaptors.netbox.api.NetboxClient" method="unassignIpAddress">
-                                                                            <parameter name="service_instance_id" value="`$tmp.ss.service-instance-id`" />
-                                                                            <parameter name="external_key" value="`$tmp.ss.external-key`" />
-                                                                            <outcome value='failure'>
-                                                                                <return status='failure'>
-                                                                                    <parameter name='ack-final' value='Y'/>
-                                                                                    <parameter name="error-code" value="500" />
-                                                                                    <parameter name="error-message" value="`'Error in NetboxClient#unassignIPAddress with external-key='+ $tmp.ss.external-key`" />
-                                                                                </return>
-                                                                            </outcome>
-                                                                            <outcome value='success'>
-                                                                                <set>
-                                                                                    <parameter name='service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status' 
-       value='DELETED' />
-                                                                                </set>
-                                                                            </outcome>
-                                                                        </execute>
-                                                                    </block>
-                                                                </outcome>
-                                                            </get-resource>
-                                                        </block>
-                                                    </outcome>
-                                                </switch>
-                                            </block>
-                                        </outcome>
-                                        <outcome value='PENDING'>
-                                            <block>
-                                                <for index="kidx" start="0" end="`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key_length`">
-                                                    <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].name`'>
-                                                        <outcome value='service-instance-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.service-instance-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='vnf-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.vnf-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='prefix-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.prefix-id' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='external_key'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.external-key' value='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                    </switch>
-                                                </for>
-                                                <switch test='`$ss.capability-action`'>
-                                                    <outcome value='assign'>
+                                                    <outcome value='PENDING'>
                                                         <block atomic='true'>
                                                             <execute plugin="org.onap.ccsdk.sli.adaptors.netbox.api.NetboxClient" method="assignIpAddress">
                                                                 <parameter name="service_instance_id" value="`$tmp.ss.service-instance-id`" />
                                                             </execute>
                                                         </block>
                                                     </outcome>
-                                                    <outcome value='unassign'>
+                                                </switch>
+                                            </outcome>
+                                            <outcome value='unassign'>
+                                                <switch test='`$service-data.vnfs.vnf[$vnf-index].vnf-data.vnf-topology.vnf-parameters-data.param[$pidx].resource-resolution-data.status`'>
+                                                    <outcome value='SUCCESS'>
                                                         <block atomic="true">
                                                             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
        key='SELECT * from IPAM_IP_ASSIGNEMENT 
                                                         </block>
                                                     </outcome>
                                                 </switch>
-                                            </block>
-                                        </outcome>
-                                    </switch>
+                                            </outcome>
+                                        </switch>
+                                    </block>
                                 </outcome>
                             </switch>
                         </for>
                             </set>
                             <switch test='`$tmp.ss.param.capability-name == $ss.capability-name`'>
                                 <outcome value='true'>
-                                    <switch test='`$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[$pidx].resource-resolution-data.status`'>
-                                        <outcome value='FAILED'>
-                                            <block>
-                                                <for index="kidx" start="0" end="`$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[$pidx].resource-resolution-data.resource-key_length`">
-                                                    <switch test='`$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[$pidx].resource-resolution-data.resource-key[$kidx].name`'>
-                                                        <outcome value='service-instance-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.service-instance-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='vf-module-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.vf-module-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='prefix-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.prefix-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='ip-address-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.ip-address-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='external_key'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.external-key' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                    </switch>
-                                                </for>
-                                                <switch test='`$ss.capability-action`'>
-                                                    <outcome value='assign'>
+                                    <block>
+                                        <for index="kidx" start="0" end="`$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[$pidx].resource-resolution-data.resource-key_length`">
+                                            <switch test='`$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[$pidx].resource-resolution-data.resource-key[$kidx].name`'>
+                                                <outcome value='service-instance-id'>
+                                                    <set>
+                                                        <parameter name='tmp.ss.service-instance-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
+                                                    </set>
+                                                </outcome>
+                                                <outcome value='vf-module-id'>
+                                                    <set>
+                                                        <parameter name='tmp.ss.vf-module-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
+                                                    </set>
+                                                </outcome>
+                                                <outcome value='prefix-id'>
+                                                    <set>
+                                                        <parameter name='tmp.ss.prefix-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
+                                                    </set>
+                                                </outcome>
+                                                <outcome value='ip-address-id'>
+                                                    <set>
+                                                        <parameter name='tmp.ss.ip-address-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
+                                                    </set>
+                                                </outcome>
+                                                <outcome value='external_key'>
+                                                    <set>
+                                                        <parameter name='tmp.ss.external-key' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
+                                                    </set>
+                                                </outcome>
+                                            </switch>
+                                        </for>
+                                        <switch test='`$ss.capability-action`'>
+                                            <outcome value='assign'>
+                                                <switch test='`$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[$pidx].resource-resolution-data.status`'>
+                                                    <outcome value='FAILED'>
                                                         <block atomic='true'>
                                                             <execute plugin="org.onap.ccsdk.sli.adaptors.netbox.api.NetboxClient" method="assignIpAddress">
                                                                 <parameter name="service_instance_id" value="`$tmp.ss.service-instance-id`" />
                                                             </execute>
                                                         </block>
                                                     </outcome>
-                                                    <outcome value='unassign'>
-                                                        <block atomic="true">
-                                                            <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
-       key='SELECT * from IPAM_IP_ASSIGNEMENT 
-               WHERE external_key = $tmp.ss.external-key
-               AND service_instance_id = $tmp.ss.service-instance-id' >
-                                                                <outcome value='not-found'>
-                                                                    <block></block>
-                                                                </outcome>
-                                                                <outcome value='success'>
-                                                                    <block atomic="true">
-                                                                        <set>
-                                                                            <parameter name='tmp.status' value="PENDING_DELETE" />
-                                                                        </set>
-                                                                        <update plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL"
-       key="UPDATE IPAM_IP_ASSIGNEMENT set ip_status = $tmp.status 
-               WHERE external_key = $tmp.ss.external-key
-               AND service_instance_id = $tmp.ss.service-instance-id" >
-                                                                            <outcome value='failure'>
-                                                                                <return status='failure'>
-                                                                                    <parameter name='ack-final' value='Y'/>
-                                                                                    <parameter name="error-code" value="500" />
-                                                                                    <parameter name="error-message" value="`'Error updating NETBOX_IP_ASSIGNMENTS table to unassign ip with external_key=' + $tmp.ss.external-key + ' and service_instance_id=' + $tmp.ss.service-instance-id`" />
-                                                                                </return>
-                                                                            </outcome>
-                                                                        </update>
-                                                                        <execute plugin="org.onap.ccsdk.sli.adaptors.netbox.api.NetboxClient" method="unassignIpAddress">
-                                                                            <parameter name="service_instance_id" value="`$tmp.ss.service-instance-id`" />
-                                                                            <parameter name="external_key" value="`$tmp.ss.external-key`" />
-                                                                            <outcome value='failure'>
-                                                                                <return status='failure'>
-                                                                                    <parameter name='ack-final' value='Y'/>
-                                                                                    <parameter name="error-code" value="500" />
-                                                                                    <parameter name="error-message" value="`'Error in NetboxClient#unassignIPAddress with external-key='+ $tmp.ss.external-key`" />
-                                                                                </return>
-                                                                            </outcome>
-                                                                            <outcome value='success'>
-                                                                                <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[$pidx].resource-resolution-data.status' 
-       value='DELETED' />
-                                                                                </set>
-                                                                            </outcome>
-                                                                        </execute>
-                                                                    </block>
-                                                                </outcome>
-                                                            </get-resource>
-                                                        </block>
-                                                    </outcome>
-                                                </switch>
-                                            </block>
-                                        </outcome>
-                                        <outcome value='PENDING'>
-                                            <block>
-                                                <for index="kidx" start="0" end="`$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[$pidx].resource-resolution-data.resource-key_length`">
-                                                    <switch test='`$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[$pidx].resource-resolution-data.resource-key[$kidx].name`'>
-                                                        <outcome value='service-instance-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.service-instance-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='vf-module-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.vf-module-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='prefix-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.prefix-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='ip-address-id'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.ip-address-id' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                        <outcome value='external_key'>
-                                                            <set>
-                                                                <parameter name='tmp.ss.external-key' value='`$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[$pidx].resource-resolution-data.resource-key[$kidx].value`' />
-                                                            </set>
-                                                        </outcome>
-                                                    </switch>
-                                                </for>
-                                                <switch test='`$ss.capability-action`'>
-                                                    <outcome value='assign'>
+                                                    <outcome value='PENDING'>
                                                         <block atomic='true'>
                                                             <execute plugin="org.onap.ccsdk.sli.adaptors.netbox.api.NetboxClient" method="assignIpAddress">
                                                                 <parameter name="service_instance_id" value="`$tmp.ss.service-instance-id`" />
                                                             </execute>
                                                         </block>
                                                     </outcome>
-                                                    <outcome value='unassign'>
+                                                </switch>
+                                            </outcome>
+                                            <outcome value='unassign'>
+                                                <switch test='`$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[$pidx].resource-resolution-data.status`'>
+                                                    <outcome value='SUCCESS'>
                                                         <block atomic="true">
                                                             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
        key='SELECT * from IPAM_IP_ASSIGNEMENT 
                                                         </block>
                                                     </outcome>
                                                 </switch>
-                                            </block>
-                                        </outcome>
-                                    </switch>
+                                            </outcome>
+                                        </switch>
+                                    </block>
                                 </outcome>
                             </switch>
                         </for>