Add generic-resource-api DG seed code
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_service-topology-operation-delete.xml
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
9 <block>\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
24 <outcome value='0'>\r
25 <block>\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
33 <outcome value='0'>\r
34 <block>\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
42 <outcome value='0'>\r
43 <block>\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
51 <outcome value='0'>\r
52 <block>\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>