1 <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='service-topology-operation-delete' mode='sync'>
\r
2 <block atomic="true"><switch test='`$service-data.service-topology.service-topology-identifier.service-instance-id`'>
\r
3 <outcome value=''><return status='failure'>
\r
4 <parameter name='ack-final' value='Y'/>
\r
5 <parameter name="error-code" value="404" />
\r
6 <parameter name="error-message" value="`'Service ' + $service-topology-operation-input.service-information.service-instance-id + ' is not found'`" />
\r
7 </return></outcome></switch><switch test='`$service-topology-operation-input.request-information.request-action`'>
\r
8 <outcome value='DeleteServiceInstance'>
\r
10 </block></outcome><outcome value='Other'>
\r
11 <return status='failure'>
\r
12 <parameter name='ack-final' value='Y'/>
\r
13 <parameter name="error-code" value="500" />
\r
14 <parameter name="error-message" value="If svc-action is 'delete' then request-action must be 'DeleteServiceInstance'" />
\r
15 </return></outcome></switch><switch test='`$service-data.service-level-oper-status.order-status`'>
\r
16 <outcome value='PendingDelete'>
\r
17 <block atomic="true"></block></outcome><outcome value='Other'>
\r
18 <return status='failure'>
\r
19 <parameter name='ack-final' value='Y'/>
\r
20 <parameter name="error-code" value="500" />
\r
21 <parameter name="error-message" value="`'Order status is ' + $service-data.service-level-oper-status.order-status
\r
22 + ' but must be PendingDelete'`" />
\r
23 </return></outcome></switch><switch test='`$service-data.networks.network_length`'>
\r
26 </block></outcome><outcome value=''><block>
\r
27 </block></outcome><outcome value='Other'>
\r
28 <return status='failure'>
\r
29 <parameter name='ack-final' value='Y'/>
\r
30 <parameter name="error-code" value="500" />
\r
31 <parameter name="error-message" value="Cannot delete the service because there are networks defined" />
\r
32 </return></outcome></switch><switch test='`$service-data.vnfs.vnf_length`'>
\r
35 </block></outcome><outcome value=''><block>
\r
36 </block></outcome><outcome value='Other'>
\r
37 <return status='failure'>
\r
38 <parameter name='ack-final' value='Y'/>
\r
39 <parameter name="error-code" value="500" />
\r
40 <parameter name="error-message" value="Cannot delete the service because there are VNFs defined" />
\r
41 </return></outcome></switch><switch test='`$service-data.provided-allotted-resources.provided-allotted-resource_length`'>
\r
44 </block></outcome><outcome value=''><block>
\r
45 </block></outcome><outcome value='Other'>
\r
46 <return status='failure'>
\r
47 <parameter name='ack-final' value='Y'/>
\r
48 <parameter name="error-code" value="500" />
\r
49 <parameter name="error-message" value="Cannot deactivate this service because there are provided allotted resources" />
\r
50 </return></outcome></switch><switch test='`$service-data.consumed-allotted-resources.consumed-allotted-resource_length`'>
\r
53 </block></outcome><outcome value=''><block>
\r
54 </block></outcome><outcome value='Other'>
\r
55 <return status='failure'>
\r
56 <parameter name='ack-final' value='Y'/>
\r
57 <parameter name="error-code" value="500" />
\r
58 <parameter name="error-message" value="Cannot deactivate this service because there are consumed allotted resources" />
\r
59 </return></outcome></switch><set>
\r
60 <parameter name='service-data.' value='' />
\r
61 <parameter name='service-status.' value='' />
\r
62 </set></block></method></service-logic>