ae4e0f96dd1154582253273020a0871d59625647
[sdnc/oam.git] / platform-logic / generic-resource-api / src / main / xml / GENERIC-RESOURCE-API_bbs-access-connectivity-network-topology-operation-create-huawei.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='bbs-access-connectivity-network-topology-operation-create-huawei' mode='sync'>
5         <block atomic="true">
6             <call module='GENERIC-RESOURCE-API' rpc='validate-bbs-network-input-parameters' mode='sync' ></call>
7             <set>
8                 <parameter name='network-input-parameters.' value='`$network-topology-operation-input.network-request-input.network-input-parameters.`' />
9                 <parameter name='prop.sdncRestApi.thirdpartySdnc.url' value='https://172.30.0.55:26335' />
10                 <parameter name='prop.bbs.HsiPackage' value='50M' />
11                 <parameter name='prop.bbs.HsiType' value='IPoE' />
12             </set>
13             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >
14                 <parameter name='fileName' value='%SDNC_CONFIG_DIR%/generic-resource-api-dg.properties' />
15                 <parameter name='contextPrefix' value='prop' />
16             </execute>
17             <for index='idx' start='0' end='`$network-input-parameters.param_length`' >
18                 <block>
19                     <switch test="`$network-input-parameters.param[$idx].name == 'accessID'`">
20                         <outcome value='true'>
21                             <switch test='`$network-input-parameters.param[$idx].value`'>
22                                 <outcome value=''>
23                                     <return status='failure'>
24                                         <parameter name='ack-final' value='Y'/>
25                                         <parameter name="error-code" value="500" />
26                                         <parameter name="error-message" value="`$network-input-parameters.param[$idx].name  +' value is null, please check it.'`" />
27                                     </return>
28                                 </outcome>
29                                 <outcome value='Other'>
30                                     <set>
31                                         <parameter name='prop.bbs.accessID' value='`$network-input-parameters.param[$idx].value`' />
32                                     </set>
33                                 </outcome>
34                             </switch>
35                         </outcome>
36                     </switch>
37                     <switch test="`$network-input-parameters.param[$idx].name == 'ONTSN'`">
38                         <outcome value='true'>
39                             <switch test='`$network-input-parameters.param[$idx].value`'>
40                                 <outcome value=''>
41                                     <return status='failure'>
42                                         <parameter name='ack-final' value='Y'/>
43                                         <parameter name="error-code" value="500" />
44                                         <parameter name="error-message" value="`$network-input-parameters.param[$idx].name  +' value is null, please check it.'`" />
45                                     </return>
46                                 </outcome>
47                                 <outcome value='Other'>
48                                     <set>
49                                         <parameter name='prop.bbs.ONTSN' value='`$network-input-parameters.param[$idx].value`' />
50                                     </set>
51                                 </outcome>
52                             </switch>
53                         </outcome>
54                     </switch>
55                     <switch test="`$network-input-parameters.param[$idx].name == 'CVLAN'`">
56                         <outcome value='true'>
57                             <switch test='`$network-input-parameters.param[$idx].value`'>
58                                 <outcome value=''>
59                                     <return status='failure'>
60                                         <parameter name='ack-final' value='Y'/>
61                                         <parameter name="error-code" value="500" />
62                                         <parameter name="error-message" value="`$network-input-parameters.param[$idx].name  +' value is null, please check it.'`" />
63                                     </return>
64                                 </outcome>
65                                 <outcome value='Other'>
66                                     <set>
67                                         <parameter name='prop.bbs.CVLAN' value='`$network-input-parameters.param[$idx].value`' />
68                                     </set>
69                                 </outcome>
70                             </switch>
71                         </outcome>
72                     </switch>
73                     <switch test="`$network-input-parameters.param[$idx].name == 'SVLAN'`">
74                         <outcome value='true'>
75                             <switch test='`$network-input-parameters.param[$idx].value`'>
76                                 <outcome value=''>
77                                     <return status='failure'>
78                                         <parameter name='ack-final' value='Y'/>
79                                         <parameter name="error-code" value="500" />
80                                         <parameter name="error-message" value="`$network-input-parameters.param[$idx].name  +' value is null, please check it.'`" />
81                                     </return>
82                                 </outcome>
83                                 <outcome value='Other'>
84                                     <set>
85                                         <parameter name='prop.bbs.SVLAN' value='`$network-input-parameters.param[$idx].value`' />
86                                     </set>
87                                 </outcome>
88                             </switch>
89                         </outcome>
90                     </switch>
91                 </block>
92             </for>
93             <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">
94                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-token-template.json'`"/>
95                 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url+'/rest/plat/smapp/v1/oauth/token'`"/>
96                 <parameter name="format" value="json"/>
97                 <parameter name="httpMethod" value="put"/>
98                 <parameter name="responsePrefix" value="token-result"/>
99                 <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
100                 <parameter name="trustStorePassword" value="adminadmin"/>
101                 <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
102                 <parameter name="keyStorePassword" value="adminadmin"/>
103                 <outcome value='success'>
104                     <switch test='`$token-result.accessSession`'>
105                         <outcome value='Other'>
106                             <set>
107                                 <parameter name='prop.sdncRestApi.token_id' value='`$token-result.accessSession`' />
108                             </set>
109                         </outcome>
110                         <outcome value=''>
111                             <return status='failure'>
112                                 <parameter name='ack-final' value='Y'/>
113                                 <parameter name="error-code" value="500" />
114                                 <parameter name="error-message" value="Error executing Get token rest api" />
115                             </return>
116                         </outcome>
117                     </switch>
118                 </outcome>
119                 <outcome value='failure'>
120                     <return status='failure'>
121                         <parameter name='ack-final' value='Y'/>
122                         <parameter name="error-code" value="500" />
123                         <parameter name="error-message" value="Error executing Get token rest api" />
124                     </return>
125                 </outcome>
126             </execute>
127             <execute plugin="org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode" method="sendRequest">
128                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/bbs-access-connectivity-create.json'`" />
129                 <parameter name="restapiUrl" value="`$prop.sdncRestApi.thirdpartySdnc.url + '/ws/rest/1002/FanOpenAPI/ActiveOnt'`" />
130                 <parameter name="contentType" value="application/json"/>
131                 <parameter name="httpMethod" value="post"/>
132                 <parameter name="responsePrefix" value="service-result"/>
133                 <parameter name="customHttpHeaders" value="`'X-Auth-Token=' + $prop.sdncRestApi.token_id`"/>
134                 <parameter name="trustStoreFileName" value="/opt/onap/sdnc/data/stores/truststore.onap.client.jks"/>
135                 <parameter name="trustStorePassword" value="adminadmin"/>
136                 <parameter name="keyStoreFileName" value="/opt/onap/sdnc/data/stores/sdnc.p12"/>
137                 <parameter name="keyStorePassword" value="adminadmin"/>
138                 <outcome value='failure'>
139                     <return status='failure'>
140                         <parameter name='ack-final' value='Y'/>
141                         <parameter name="error-code" value="500" />
142                         <parameter name="error-message" value="Error executing Get token rest api" />
143                     </return>
144                 </outcome>
145                 <outcome value='success'>
146                     <switch test="`$service-result.errors.error[0].error-message`">
147                         <outcome value='Other'>
148                             <return status='failure'>
149                                 <parameter name='ack-final' value='Y'/>
150                                 <parameter name="error-code" value="500" />
151                                 <parameter name="error-message" value="`'Error createAccessConnectivityService failed: '+$service-result.errors.error[0].error-message`" />
152                             </return>
153                         </outcome>
154                         <outcome value=''>
155                             <block></block>
156                         </outcome>
157                     </switch>
158                 </outcome>
159             </execute>
160             <return status='success'>
161                 <parameter name="ack-final-indicator" value="Y" />
162                 <parameter name="error-code" value="200" />
163                 <parameter name="error-message" value="`$error-message`" />
164             </return>
165         </block>
166     </method>
167 </service-logic>