Moved bbs logic from network-topoly-operation to vnf
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_bbs-internet-profile-vnf-topology-operation-create-huawei.xml
1 <service-logic\r
2     xmlns='http://www.onap.org/sdnc/svclogic'\r
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}'>\r
4     <method rpc='bbs-internet-profile-vnf-topology-operation-create-huawei' mode='sync'>\r
5         <block atomic="true">\r
6             <call module='GENERIC-RESOURCE-API' rpc='bbs-internet-profile-vnf-topology-operation-common-huawei' mode='sync' ></call>\r
7             <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">\r
8                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-internet-profile-operation.json'`" />\r
9                 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/CreateInternetProfileInstance'`" />\r
10                 <parameter name="contentType" value="application/json"/>\r
11                 <parameter name="httpMethod" value="post"/>\r
12                 <parameter name="responsePrefix" value="service-result"/>\r
13                 <outcome value='failure'>\r
14                     <return status='failure'>\r
15                         <parameter name='ack-final' value='Y'/>\r
16                         <parameter name="error-code" value="500" />\r
17                         <parameter name="error-message" value="Error failed to call CreateInternetProfileInstance" />\r
18                     </return>\r
19                 </outcome>\r
20                 <outcome value='success'>\r
21                     <switch test="`$service-result.errors.error[0].error-message`">\r
22                         <outcome value='Other'>\r
23                             <return status='failure'>\r
24                                 <parameter name='ack-final' value='Y'/>\r
25                                 <parameter name="error-code" value="500" />\r
26                                 <parameter name="error-message" value="`'Error CreateInternetProfileInstance return: '+$service-result.errors.error[0].error-message`" />\r
27                             </return>\r
28                         </outcome>\r
29                         <outcome value=''>\r
30                             <block></block>\r
31                         </outcome>\r
32                     </switch>\r
33                 </outcome>\r
34             </execute>\r
35             <block>\r
36                 <execute plugin="org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils" method="generateUUID">\r
37                     <parameter name="ctx-destination" value="prop.random-data"/>\r
38                     <outcome value='success'>\r
39                         <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
40                             <parameter name="ctx_memory_result_key" value="prop.random-data-list"/>\r
41                             <parameter name="original_string" value="`$prop.random-data`"/>\r
42                             <parameter name="regex" value="-"/>\r
43                             <outcome value='success'></outcome>\r
44                         </execute>\r
45                     </outcome>\r
46                 </execute>\r
47                 <set>\r
48                     <parameter name='vnf-id' value="`$prop.random-data-list[3]`"/>\r
49                     <parameter name='vnf-name' value="`'vnf-'+$prop.random-data-list[4]`"/>\r
50                 </set>\r
51                 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="generic-vnf" key="generic-vnf.vnf-id = $vnf-id" >\r
52                     <parameter name= "vnf-id" value = "`$vnf-id`"/>\r
53                     <parameter name=  "vnf-name" value = "`$vnf-name`"/>\r
54                     <parameter name=  "vnf-type" value = "InternetProfile"/>\r
55                     <parameter name=  "service-id" value = "`$vnf-topology-operation-input.service-information.service-id`"/>\r
56                     <parameter name=  "prov-status" value = "ACTIVE"/>\r
57                     <parameter name=  "orchestration-status" value = "Active"/>\r
58                     <parameter name=  "is-closed-loop-disabled" value = "false" />\r
59                     <parameter name=  "model-invariant-id" value = "`$vnf-topology-operation-input.vnf-information.onap-model-information.model-invariant-uuid`"/>\r
60                     <parameter name=  "model-version-id" value = "`$vnf-topology-operation-input.vnf-information.onap-model-information.model-uuid`"/>\r
61                     <parameter name=  "model-customization-id" value = "`$vnf-topology-operation-input.vnf-information.onap-model-information.model-customization-uuid`"/>\r
62                     <outcome value='failure'>\r
63                         <return status='failure'>\r
64                             <parameter name='ack-final' value='Y'/>\r
65                             <parameter name="error-code" value="500" />\r
66                             <parameter name="error-message" value="Failure calling AAI to save generic-vnf" />\r
67                         </return>\r
68                     </outcome>\r
69                     <outcome value='not-found'>\r
70                         <return status='failure'>\r
71                             <parameter name='ack-final' value='Y'/>\r
72                             <parameter name="error-code" value="500" />\r
73                             <parameter name="error-message" value="generic-vnf instance does not exist in AAI" />\r
74                         </return>\r
75                     </outcome>\r
76                     <outcome value='success'></outcome>\r
77                 </save>\r
78                 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="service-instance:metadata"\r
79  key="service-instance.service-instance-id = $vnf-topology-operation-input.service-information.service-id  \r
80         AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id\r
81           AND service-subscription.service-type = $vnf-topology-operation-input.service-information.subscription-service-type\r
82           AND service-instance.service-instance-id =  $vnf-topology-operation-input.service-information.service-instance-id"  force="true" pfx="tmp.AnAI-data">\r
83                     <parameter name="metadata.metadatum[0].metaname" value="service-type" />\r
84                     <parameter name="metadata.metadatum[0].metaval" value="`$prop.bbs.service_type`" />\r
85                     <parameter name="metadata.metadatum[1].metaname" value="up-speed" />\r
86                     <parameter name="metadata.metadatum[1].metaval" value="`$prop.bbs.up_speed`" />\r
87                     <parameter name="metadata.metadatum[2].metaname" value="down-speed" />\r
88                     <parameter name="metadata.metadatum[2].metaval" value="`$prop.bbs.down_speed`" />\r
89                     <!--<parameter name="metadata.metadatum[3].metaname" value="cvlan" />-->\r
90                     <!--<parameter name="metadata.metadatum[3].metaval" value="`$prop.bbs.c_vlan`" />-->\r
91                     <!--<parameter name="metadata.metadatum[4].metaname" value="svlan" />-->\r
92                     <!--<parameter name="metadata.metadatum[4].metaval" value="`$prop.bbs.s_vlan`" />-->\r
93                     <!--<parameter name="metadata.metadatum[5].metaname" value="expected-ont-id" />-->\r
94                     <!--<parameter name="metadata.metadatum[5].metaval" value="`$prop.bbs.ont_sn`" />-->\r
95                     <!--<parameter name="metadata.metadatum[6].metaname" value="rgw-mac-address" />-->\r
96                     <!--<parameter name="metadata.metadatum[6].metaval" value="`$prop.bbs.mac`" />-->\r
97                     <outcome value='failure'>\r
98                         <return status='failure'>\r
99                             <parameter name='ack-final' value='Y'/>\r
100                             <parameter name="error-code" value="500" />\r
101                             <parameter name="error-message" value="Failure calling AAI to save metadatum" />\r
102                         </return>\r
103                     </outcome>\r
104                     <outcome value='not-found'>\r
105                         <return status='failure'>\r
106                             <parameter name='ack-final' value='Y'/>\r
107                             <parameter name="error-code" value="500" />\r
108                             <parameter name="error-message" value="metadatum instance does not exist in AAI" />\r
109                         </return>\r
110                     </outcome>\r
111                     <outcome value='success'></outcome>\r
112                 </save>\r
113                 <save plugin="org.onap.ccsdk.sli.adaptors.aai.AAIService" resource="service-instance:relationship-list" \r
114       key="service-instance.service-instance-id =  $vnf-topology-operation-input.service-information.service-id\r
115          AND customer.global-customer-id = $vnf-topology-operation-input.service-information.global-customer-id\r
116          AND service-subscription.service-type =  $vnf-topology-operation-input.service-information.subscription-service-type \r
117          AND service-instance.service-instance-id =  $vnf-topology-operation-input.service-information.service-instance-id" force="true" pfx="tmp.AnAI-data">\r
118                     <parameter name="relationship-list.relationship[0].related-to" value="generic-vnf" />\r
119                     <parameter name="relationship-list.relationship[0].related-link" value="`'/network/generic-vnfs/generic-vnf/' + $vnf-id`" />\r
120                     <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-key" value="generic-vnf.vnf-id" />\r
121                     <parameter name="relationship-list.relationship[0].relationship-data[0].relationship-value" value="`$vnf-id`" />\r
122                     <outcome value='failure'>\r
123                         <return status='failure'>\r
124                             <parameter name='ack-final' value='Y'/>\r
125                             <parameter name="error-code" value="500" />\r
126                             <parameter name="error-message" value="Failure calling AAI to save metadatum" />\r
127                         </return>\r
128                     </outcome>\r
129                     <outcome value='not-found'>\r
130                         <return status='failure'>\r
131                             <parameter name='ack-final' value='Y'/>\r
132                             <parameter name="error-code" value="500" />\r
133                             <parameter name="error-message" value="metadatum instance does not exist in AAI" />\r
134                         </return>\r
135                     </outcome>\r
136                     <outcome value='success'></outcome>\r
137                 </save>\r
138             </block>\r
139             <return status='success'>\r
140                 <parameter name="ack-final-indicator" value="Y" />\r
141                 <parameter name="error-code" value="200" />\r
142                 <parameter name="error-message" value="`$error-message`" />\r
143             </return>\r
144         </block>\r
145     </method>\r
146 </service-logic>