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='optical-service' version='${project.version}'>
\r
4 <method rpc='optical-service-create' mode='sync'>
\r
5 <block atomic='true'>
\r
7 <parameter name='pinterface-list' value=""/>
\r
9 <for index='idx' start='0' end='`$optical-service-create-input.payload.param_length`' >
\r
11 <parameter name='params' value='`$optical-service-create-input.payload.param[$idx]`' />
\r
13 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni1_id'`">
\r
14 <outcome value='true'>
\r
16 <parameter name='optical-service-create-input.payload.service-aend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
17 <parameter name='pinterface-aend' value="`'uni1_id--'+ $optical-service-create-input.payload.param[$idx].value`"/>
\r
21 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
\r
22 <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />
\r
23 <parameter name="level" value="info" />
\r
24 <parameter name="field1" value="`$optical-service-create-input.payload.service-aend.port-id`"/>
\r
26 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni2_id'`">
\r
27 <outcome value='true'>
\r
29 <parameter name='optical-service-create-input.payload.service-zend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
30 <parameter name='pinterface-zend' value="`',uni2_id--'+ $optical-service-create-input.payload.param[$idx].value`"/>
\r
34 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
\r
35 <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />
\r
36 <parameter name="level" value="info" />
\r
37 <parameter name="field1" value="`$optical-service-create-input.payload.service-zend.port-id`"/>
\r
39 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni1_coding_func'`">
\r
40 <outcome value='true'>
\r
42 <parameter name='optical-service-create-input.payload.service-rate' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
46 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni_id'`">
\r
47 <outcome value='true'>
\r
49 <parameter name='optical-service-create-input.payload.service-aend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
50 <parameter name='pinterface-aend' value="`'uni_id--'+ $optical-service-create-input.payload.param[$idx].value`"/>
\r
54 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'enni_id'`">
\r
55 <outcome value='true'>
\r
57 <parameter name='optical-service-create-input.payload.service-zend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
58 <parameter name='pinterface-zend' value="`',enni_id--'+ $optical-service-create-input.payload.param[$idx].value`"/>
\r
62 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni_coding_func'`">
\r
63 <outcome value='true'>
\r
65 <parameter name='optical-service-create-input.payload.service-rate' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
69 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'enni1_id'`">
\r
70 <outcome value='true'>
\r
72 <parameter name='optical-service-create-input.payload.service-aend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
73 <parameter name='pinterface-aend' value="`'enni1_id--'+ $optical-service-create-input.payload.param[$idx].value`"/>
\r
77 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'enni2_id'`">
\r
78 <outcome value='true'>
\r
80 <parameter name='optical-service-create-input.payload.service-zend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
81 <parameter name='pinterface-zend' value="`',enni2_id--'+ $optical-service-create-input.payload.param[$idx].value`"/>
\r
85 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'enni1_coding_func'`">
\r
86 <outcome value='true'>
\r
88 <parameter name='optical-service-create-input.payload.service-rate' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
92 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'service-name'`">
\r
93 <outcome value='true'>
\r
95 <parameter name='optical-service-create-input.payload.service-name' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
99 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni1_client_proto'`">
\r
100 <outcome value='true'>
\r
102 <parameter name='optical-service-create-input.payload.service-protocol' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
107 <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
\r
108 key='SELECT controller_id
\r
109 from TOPOLOGY_LOGICAL_RELATION_TO_PINTERFACE
\r
110 WHERE interface_name = $optical-service-create-input.payload.service-aend.port-id'
\r
112 <outcome value='success'>
\r
114 <parameter name='controller1' value="`$db.source1.controller-id`"/>
\r
118 <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
\r
119 key='SELECT controller_id
\r
120 from TOPOLOGY_LOGICAL_RELATION_TO_PINTERFACE
\r
121 WHERE interface_name = $optical-service-create-input.payload.service-zend.port-id'
\r
123 <outcome value='success'>
\r
125 <parameter name='controller2' value="`$db.source2.controller-id`"/>
\r
129 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
\r
130 <parameter name="ctx-destination" value="service1-svc-instance-id"/>
\r
132 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
\r
133 <parameter name="original_string" value='`$controller1`'/>
\r
134 <parameter name="regex" value="_"/>
\r
135 <parameter name="ctx_memory_result_key" value="param-prefix1"/>
\r
137 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
\r
138 <parameter name="original_string" value='`$controller2`'/>
\r
139 <parameter name="regex" value="_"/>
\r
140 <parameter name="ctx_memory_result_key" value="param-prefix2"/>
\r
142 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
\r
143 <parameter name="ctx-destination" value="service1-request-id"/>
\r
146 <parameter name='controller-ip1' value='`$param-prefix1[1]`' />
\r
147 <parameter name='domain-type1' value='`$param-prefix1[0]`' />
\r
148 <parameter name='controller-ip2' value='`$param-prefix2[1]`' />
\r
149 <parameter name='domain-type2' value='`$param-prefix2[0]`' />
\r
151 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
\r
152 <parameter name="ctx-destination" value="service2-svc-instance-id"/>
\r
154 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
\r
155 <parameter name="ctx-destination" value="service2-request-id"/>
\r
157 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
\r
158 <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />
\r
159 <parameter name="level" value="info" />
\r
160 <parameter name="field1" value="Controller Ids"/>
\r
161 <parameter name="field2" value="`$controller1`"/>
\r
162 <parameter name="field3" value="`$controller2`"/>
\r
165 <parameter name='pinterface-list' value="`$pinterface-aend + $pinterface-zend`"/>
\r
167 <switch test='`$controller1==$controller2`'>
\r
168 <outcome value='true'>
\r
171 <parameter name='access-request-id' value='`$optical-service-create-input.request-id`' />
\r
172 <parameter name='as-svc-instance-id' value='`$optical-service-create-input.service-id`' />
\r
175 <parameter name='domain-requests' value="`$service1-request-id`" />
\r
176 <parameter name='optical-service-create-input.request-id' value="`$service1-request-id`" />
\r
177 <parameter name='optical-service-create-input.service-id' value="`$service1-svc-instance-id`" />
\r
178 <parameter name='optical-service-create-input.payload.service-name' value="`$optical-service-create-input.payload.service-name + '_' + 'MDONS-OTN'`" />
\r
180 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
\r
181 <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />
\r
182 <parameter name="level" value="info" />
\r
183 <parameter name="field1" value="`'domain rquest_' + $domain-requests`"/>
\r
184 <parameter name="field2" value="`'Access rquest_' + $as-request-id`"/>
\r
186 <save plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="INSERT INTO REQUEST_DETAILS (request_id, controller_id, status, service_rate, service_instance_id, service_type, global_customer_id, notification_url, domain_requests, pinterface_list ) VALUES ( $access-request-id , null , 'CREATING' , $optical-service-create-input.payload.service-rate , $as-svc-instance-id , $optical-service-create-input.service-type , $optical-service-create-input.global-customer-id , $optical-service-create-input.notification-url , $domain-requests , $pinterface-list );"></save>
\r
187 <call module='optical-service' rpc='main-create' mode='sync' >
\r
188 <outcome value='success'>
\r
189 <switch test='`$final-response-code`'>
\r
190 <outcome value='200'>
\r
192 <call module='optical-service' rpc='create-service-relationship' mode='sync' ></call>
\r
193 <switch test="`$domain-type == 'MSA'`">
\r
194 <outcome value='true'>
\r
195 <return status='success'>
\r
196 <parameter name='error-code' value='200' />
\r
197 <parameter name='error-message' value='Service Created Successfully' />
\r
198 <parameter name='ack-final-indicator' value='N' />
\r
201 <outcome value='false'>
\r
202 <return status='success'>
\r
203 <parameter name='error-code' value='200' />
\r
204 <parameter name='error-message' value='Service Created Successfully' />
\r
205 <parameter name='ack-final-indicator' value='Y' />
\r
216 <outcome value='false'>
\r
219 <parameter name='access-request-id' value='`$optical-service-create-input.request-id`' />
\r
220 <parameter name='as-svc-instance-id' value='`$optical-service-create-input.service-id`' />
\r
221 <parameter name='service-rate' value='`$optical-service-create-input.payload.service-rate`' />
\r
223 <save plugin="org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource" resource="SQL" key="INSERT INTO REQUEST_DETAILS (request_id, controller_id, status, service_rate, service_instance_id, service_type, global_customer_id, notification_url, domain_requests, pinterface_list ) VALUES ( $access-request-id , null , 'CREATING' , $service-rate , $as-svc-instance-id , $optical-service-create-input.service-type , $optical-service-create-input.global-customer-id , $optical-service-create-input.notification-url , $domain-requests , $pinterface-list );"></save>
\r
225 <parameter name='src-port-id' value="`$optical-service-create-input.payload.service-aend.port-id`"/>
\r
226 <parameter name='dst-port-id' value="`$optical-service-create-input.payload.service-zend.port-id`"/>
\r
227 <parameter name='access-service-name' value="`$optical-service-create-input.payload.service-name`"/>
\r
229 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
\r
230 <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />
\r
231 <parameter name="level" value="info" />
\r
232 <parameter name="field1" value="Access service details"/>
\r
233 <parameter name="field2" value="`$access-request-id`"/>
\r
234 <parameter name="field3" value="`$src-port-id`"/>
\r
236 <call module='optical-service' rpc='inter-domain-handling' mode='sync' ></call>
\r