Adding site Resource DG
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_vnf-topology-operation.xml
1 <service-logic
2     xmlns='http://www.onap.org/sdnc/svclogic'
3     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}'>
4     <method rpc='vnf-topology-operation' mode='sync'>
5         <block atomic="true">
6             <call module='GENERIC-RESOURCE-API' rpc='validate-vnf-input' mode='sync' ></call>
7             <switch test='`$vnf-topology-operation-input.sdnc-request-header.svc-action`'>
8                 <outcome value='assign'>
9                     <call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-assign' mode='sync' ></call>
10                 </outcome>
11                 <outcome value='activate'>
12                     <block atomic="true">
13                         <switch test='`$vnf-topology-operation-input.request-information.request-action`'>
14                             <outcome value='ActivateSiteInstance'>
15                                 <call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-activate' mode='sync' ></call>
16                             </outcome>
17                             <outcome value='Other'>
18                                 <call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-activate' mode='sync' ></call>
19                             </outcome>
20                         </switch>
21                     </block>
22                 </outcome>
23                 <outcome value='deactivate'>
24                     <block atomic="true">
25                         <switch test='`$vnf-topology-operation-input.request-information.request-action`'>
26                             <outcome value='DeActivateSiteInstance'>
27                                 <call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-deactivate' mode='sync' ></call>
28                             </outcome>
29                             <outcome value='Other'>
30                                 <call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-deactivate' mode='sync' ></call>
31                             </outcome>
32                         </switch>
33                     </block>
34                 </outcome>
35                 <outcome value='unassign'>
36                     <call module='GENERIC-RESOURCE-API' rpc='vnf-topology-operation-unassign' mode='sync' ></call>
37                 </outcome>
38                 <outcome value='create'>
39                     <block atomic="true">
40                         <switch test='`$vnf-topology-operation-input.request-information.request-action`'>
41                             <outcome value='CreateSiteInstance'>
42                                 <call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-create' mode='sync' ></call>
43                             </outcome>
44                             <outcome value='Other'>
45                                 <block></block>
46                             </outcome>
47                         </switch>
48                     </block>
49                 </outcome>
50                 <outcome value='delete'>
51                     <block atomic="true">
52                         <switch test='`$vnf-topology-operation-input.request-information.request-action`'>
53                             <outcome value='DeleteSiteInstance'>
54                                 <call module='GENERIC-RESOURCE-API' rpc='sotn-vnf-topology-operation-delete' mode='sync' ></call>
55                             </outcome>
56                             <outcome value='Other'>
57                                 <block></block>
58                             </outcome>
59                         </switch>
60                     </block>
61                 </outcome>
62                 <outcome value='Other'>
63                     <return status='failure'>
64                         <parameter name='ack-final' value='Y'/>
65                         <parameter name="error-code" value="500" />
66                         <parameter name="error-message" value="`$vnf-topology-operation-input.sdnc-request-header.svc-action + ' is not a valid svc-action'`" />
67                     </return>
68                 </outcome>
69             </switch>
70             <return status='success'>
71                 <parameter name="ack-final-indicator" value="Y" />
72                 <parameter name="error-code" value="200" />
73                 <parameter name="error-message" value="`$error-message`" />
74             </return>
75         </block>
76     </method>
77 </service-logic>