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
6 <for index='idx' start='0' end='`$optical-service-create-input.payload.param_length`' >
\r
8 <parameter name='params' value='`$optical-service-create-input.payload.param[$idx]`' />
\r
10 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni1_id'`">
\r
11 <outcome value='true'>
\r
13 <parameter name='optical-service-create-input.payload.service-aend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
17 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
\r
18 <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />
\r
19 <parameter name="level" value="info" />
\r
20 <parameter name="field1" value="`$optical-service-create-input.payload.service-aend.port-id`"/>
\r
22 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni2_id'`">
\r
23 <outcome value='true'>
\r
25 <parameter name='optical-service-create-input.payload.service-zend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
29 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
\r
30 <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />
\r
31 <parameter name="level" value="info" />
\r
32 <parameter name="field1" value="`$optical-service-create-input.payload.service-zend.port-id`"/>
\r
34 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni1_coding_func'`">
\r
35 <outcome value='true'>
\r
37 <parameter name='optical-service-create-input.payload.service-rate' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
41 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni_id'`">
\r
42 <outcome value='true'>
\r
44 <parameter name='optical-service-create-input.payload.service-aend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
48 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'enni_id'`">
\r
49 <outcome value='true'>
\r
51 <parameter name='optical-service-create-input.payload.service-zend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
55 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'uni_coding_func'`">
\r
56 <outcome value='true'>
\r
58 <parameter name='optical-service-create-input.payload.service-rate' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
62 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'enni1_id'`">
\r
63 <outcome value='true'>
\r
65 <parameter name='optical-service-create-input.payload.service-aend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
69 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'enni2_id'`">
\r
70 <outcome value='true'>
\r
72 <parameter name='optical-service-create-input.payload.service-zend.port-id' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
76 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'enni1_coding_func'`">
\r
77 <outcome value='true'>
\r
79 <parameter name='optical-service-create-input.payload.service-rate' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
83 <switch test="`$optical-service-create-input.payload.param[$idx].name == 'service-name'`">
\r
84 <outcome value='true'>
\r
86 <parameter name='optical-service-create-input.payload.service-name' value="`$optical-service-create-input.payload.param[$idx].value`"/>
\r
91 <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
\r
92 key='SELECT controller_id
\r
93 from TOPOLOGY_LOGICAL_RELATION_TO_PINTERFACE
\r
94 WHERE interface_name = $optical-service-create-input.payload.service-aend.port-id'
\r
96 <outcome value='success'>
\r
98 <parameter name='controller1' value="`$db.source1.controller-id`"/>
\r
102 <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'
\r
103 key='SELECT controller_id
\r
104 from TOPOLOGY_LOGICAL_RELATION_TO_PINTERFACE
\r
105 WHERE interface_name = $optical-service-create-input.payload.service-zend.port-id'
\r
107 <outcome value='success'>
\r
109 <parameter name='controller2' value="`$db.source2.controller-id`"/>
\r
113 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
\r
114 <parameter name="ctx-destination" value="service1-svc-instance-id"/>
\r
116 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
\r
117 <parameter name="original_string" value='`$controller1`'/>
\r
118 <parameter name="regex" value="_"/>
\r
119 <parameter name="ctx_memory_result_key" value="param-prefix1"/>
\r
121 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >
\r
122 <parameter name="original_string" value='`$controller2`'/>
\r
123 <parameter name="regex" value="_"/>
\r
124 <parameter name="ctx_memory_result_key" value="param-prefix2"/>
\r
126 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
\r
127 <parameter name="ctx-destination" value="service1-request-id"/>
\r
130 <parameter name='controller-ip1' value='`$param-prefix1[1]`' />
\r
131 <parameter name='domain-type1' value='`$param-prefix1[0]`' />
\r
132 <parameter name='controller-ip2' value='`$param-prefix2[1]`' />
\r
133 <parameter name='domain-type2' value='`$param-prefix2[0]`' />
\r
135 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
\r
136 <parameter name="ctx-destination" value="service2-svc-instance-id"/>
\r
138 <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='generateUUID' >
\r
139 <parameter name="ctx-destination" value="service2-request-id"/>
\r
141 <switch test='`$controller1==$controller2`'>
\r
142 <outcome value='true'>
\r
145 <parameter name='as-request-id' value='`$optical-service-create-input.request-id`' />
\r
146 <parameter name='as-svc-instance-id' value='`$optical-service-create-input.service-id`' />
\r
149 <parameter name='domain-requests' value="`$service1-request-id`" />
\r
150 <parameter name='optical-service-create-input.request-id' value="`$service1-request-id`" />
\r
151 <parameter name='optical-service-create-input.service-id' value="`$service1-svc-instance-id`" />
\r
152 <parameter name='optical-service-create-input.payload.service-name' value="`$optical-service-create-input.payload.service-name + '_' + 'MDONS-OTN'`" />
\r
154 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
\r
155 <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />
\r
156 <parameter name="level" value="info" />
\r
157 <parameter name="field1" value="`'domain rquest_' + $domain-requests`"/>
\r
158 <parameter name="field2" value="`'Access rquest_' + $as-request-id`"/>
\r
160 <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 ) VALUES ( $as-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 );"></save>
\r
161 <call module='optical-service' rpc='main-create' mode='sync' >
\r
162 <outcome value='success'>
\r
163 <switch test='`$final-response-code`'>
\r
164 <outcome value='200'>
\r
166 <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource'
\r
168 key='UPDATE REQUEST_DETAILS SET status = "CREATED" WHERE request_id = $as-request-id'
\r
169 force='true' pfx='save-result'></save>
\r
170 <call module='optical-service' rpc='create-service-relationship' mode='sync' ></call>
\r
171 <return status='success'>
\r
172 <parameter name='error-code' value='200' />
\r
173 <parameter name='error-message' value='Service Created Successfully' />
\r
174 <parameter name='ack-final-indicator' value='Y' />
\r
183 <outcome value='false'>
\r
186 <parameter name='as-request-id' value='`$optical-service-create-input.request-id`' />
\r
187 <parameter name='as-svc-instance-id' value='`$optical-service-create-input.service-id`' />
\r
188 <parameter name='domain-requests' value="`$service1-request-id + ',' + $service2-request-id`" />
\r
190 <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
\r
191 <parameter name="file" value="/opt/opendaylight/current/data/log/optical-service-create.log" />
\r
192 <parameter name="level" value="info" />
\r
193 <parameter name="field1" value="`'domain rquest_' + $domain-requests`"/>
\r
194 <parameter name="field2" value="`'Service 1 req id---' + $service1-request-id`"/>
\r
195 <parameter name="field3" value="`'Service 2 req id---' + $service2-request-id`"/>
\r
197 <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 ) VALUES ( $as-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 );"></save>
\r
199 <parameter name='access-aend' value="`$optical-service-create-input.payload.service-aend.port-id`"/>
\r
200 <parameter name='access-zend' value="`$optical-service-create-input.payload.service-zend.port-id`"/>
\r
202 <call module='optical-service' rpc='inter-domain-handling' mode='sync' ></call>
\r