Topology Discovery and optical-service DGs
[sdnc/oam.git] / platform-logic / optical-service / src / main / xml / optical-service_optical-service-create.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='optical-service' version='${project.version}'>\r
4     <method rpc='optical-service-create' mode='sync'>\r
5         <block atomic='true'>\r
6             <call module='optical-service' rpc='optical-validate-input-params' mode='sync' ></call>\r
7             <execute plugin='org.onap.ccsdk.sli.plugins.prop.PropertiesNode' method='readProperties' >\r
8                 <parameter name='fileName' value='/opt/onap/sdnc/data/properties/optical-service-dg.properties' />\r
9                 <parameter name='contextPrefix' value='prop' />\r
10             </execute>\r
11             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
12 key='SELECT controller_id\r
13 from TOPOLOGY_LOGICAL_RELATION_TO_PINTERFACE\r
14 WHERE interface_name = $optical-service-create-input.payload.service-aend.port-id\r
15 AND interface_id = $optical-service-create-input.payload.service-aend.port-name'\r
16 pfx='controllerid'>\r
17                 <outcome value='success'>\r
18                     <set>\r
19                         <parameter name='controller-id' value='`$controllerid.controller-id`' />\r
20                     </set>\r
21                 </outcome>\r
22             </get-resource>\r
23             <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='split' >\r
24                 <parameter name="original_string" value='`$controller-id`'/>\r
25                 <parameter name="regex" value="_"/>\r
26                 <parameter name="ctx_memory_result_key" value="param-prefix"/>\r
27             </execute>\r
28             <set>\r
29                 <parameter name='controller-ip' value='`$param-prefix[1]`' />\r
30             </set>\r
31             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
32 key='SELECT *\r
33 from TOPOLOGY_LOGICAL_RELATION_TO_PINTERFACE\r
34 WHERE interface_name = $optical-service-create-input.payload.service-aend.port-id\r
35 AND interface_id = $optical-service-create-input.payload.service-aend.port-name'\r
36 pfx='db-aend'>\r
37                 <outcome value='success'>\r
38                     <set>\r
39                         <parameter name='aend-nodeid' value='`$db-aend.pnf-id`' />\r
40                         <parameter name='a-end-pnf-name' value='`$db-aend.pnf-name`' />\r
41                         <parameter name='aend-clli' value='`$db-aend.clli`' />\r
42                     </set>\r
43                 </outcome>\r
44             </get-resource>\r
45             <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL'\r
46 key='SELECT *\r
47 from TOPOLOGY_LOGICAL_RELATION_TO_PINTERFACE\r
48 WHERE interface_name = $optical-service-create-input.payload.service-zend.port-id\r
49 AND interface_id = $optical-service-create-input.payload.service-zend.port-name'\r
50 pfx='db-zend'>\r
51                 <outcome value='success'>\r
52                     <set>\r
53                         <parameter name='zend-nodeid' value='`$db-zend.pnf-id`' />\r
54                         <parameter name='z-end-pnf-name' value='`$db-zend.pnf-name`' />\r
55                         <parameter name='zend-clli' value='`$db-zend.clli`' />\r
56                     </set>\r
57                 </outcome>\r
58             </get-resource>\r
59             <switch test='`$optical-service-create-input.payload.domain-type`'>\r
60                 <outcome value='MSA'>\r
61                     <block atomic='true'>\r
62                         <call module='optical-service' rpc='service-create-msa' mode='sync' ></call>\r
63                     </block>\r
64                 </outcome>\r
65                 <outcome value='TAPI'>\r
66                     <block atomic='true'>\r
67                         <call module='optical-service' rpc='service-create-tapi' mode='sync' ></call>\r
68                     </block>\r
69                 </outcome>\r
70             </switch>\r
71         </block>\r
72     </method>\r
73 </service-logic>