DG changes for the closed loop and async
[sdnc/oam.git] / platform-logic / optical-service / src / main / xml / optical-service_create-service-async.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='create-service-async' mode='sync'>\r
5         <block atomic='true'>\r
6             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
7                 <parameter name="file" value="/opt/opendaylight/current/data/log/async-notif.log" />\r
8                 <parameter name="level" value="info" />\r
9                 <parameter name="field1" value="Inside Create Service Async"/>\r
10             </record>\r
11             <switch test='`$response-code`'>\r
12                 <outcome value='200'>\r
13                     <block atomic='true'>\r
14                         <set>\r
15                             <parameter name='response-message' value='SUCCESS' />\r
16                         </set>\r
17                         <update plugin='org.onap.ccsdk.sli.adaptors.aai.AAIService' \r
18 force='true'\r
19 resource='service-instance'\r
20      key='customer.global-customer-id = $output.global-customer-id AND\r
21      service-subscription.service-type = $output.service-type AND\r
22      service-instance.service-instance-id = $output.service-instance-id' \r
23       local-only='false'>\r
24                             <parameter name='orchestration-status' value='CREATED' />\r
25                         </update>\r
26                         <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' \r
27 resource='SQL' \r
28 key='UPDATE REQUEST_DETAILS SET status = "CREATED" WHERE request_id = $request-id'\r
29 force='true' pfx='save-result'></save>\r
30                         <get-resource plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' resource='SQL' \r
31 key="SELECT * from REQUEST_DETAILS WHERE domain_requests = $request-id "\r
32 pfx='access'></get-resource>\r
33                         <save plugin='org.onap.ccsdk.sli.adaptors.resource.sql.SqlResource' \r
34 resource='SQL' \r
35 key='UPDATE REQUEST_DETAILS SET status = "CREATED" WHERE request_id = $access.request-id'\r
36 force='true' pfx='save-result'></save>\r
37                         <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
38                             <parameter name="file" value="/opt/opendaylight/current/data/log/async-notif.log" />\r
39                             <parameter name="level" value="info" />\r
40                             <parameter name="field1" value="Finished updating service in AAI and DB to CREATED"/>\r
41                             <parameter name="field2" value="`$access.request-id`"/>\r
42                         </record>\r
43                     </block>\r
44                 </outcome>\r
45                 <outcome value='Other'>\r
46                     <block atomic='true'>\r
47                         <set>\r
48                             <parameter name='response-message' value='FAILURE' />\r
49                         </set>\r
50                         <call module='optical-service' rpc='aai-delete-service-handling' mode='sync' ></call>\r
51                     </block>\r
52                 </outcome>\r
53             </switch>\r
54             <set>\r
55                 <parameter name='so.service-instance-id' value='`$access.service-instance-id`' />\r
56                 <parameter name='so.service-type' value='`$access.service-type`' />\r
57                 <parameter name='so.svc-request-id' value='`$access.request-id`' />\r
58                 <parameter name='so.response-code' value='`$response-code`' />\r
59                 <parameter name='so.response-message' value='`$response-message`' />\r
60                 <parameter name='so.ack-final-indicator' value='Y' />\r
61             </set>\r
62             <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
63                 <parameter name="file" value="/opt/opendaylight/current/data/log/async-notif.log" />\r
64                 <parameter name="level" value="info" />\r
65                 <parameter name="field1" value="SO Parameters"/>\r
66                 <parameter name="field2" value="`$so.service-instance-id`"/>\r
67                 <parameter name="field3" value="`$so.svc-request-id`"/>\r
68                 <parameter name="field4" value="`$so.response-code`"/>\r
69             </record>\r
70             <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >\r
71                 <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/async-response-so.json'`" />\r
72                 <parameter name="restapiUrl" value="http://so-bpmn-infra.onap:8081/mso/async/services/updateStatus"/>\r
73                 <parameter name="restapiUser" value="sdncaBpmn" />\r
74                 <parameter name="restapiPassword" value="`$prop.so.password`"/>\r
75                 <parameter name="httpMethod" value="POST"/>\r
76                 <parameter name="responsePrefix" value="so-response"/>\r
77                 <parameter name='contentType' value='application/json' />\r
78                 <parameter name='format' value='json' />\r
79                 <outcome value='failure'>\r
80                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
81                         <parameter name="file" value="/opt/opendaylight/current/data/log/async-notif.log" />\r
82                         <parameter name="level" value="info" />\r
83                         <parameter name="field1" value="Send to SO fails for service create"/>\r
84                     </record>\r
85                 </outcome>\r
86                 <outcome value='success'>\r
87                     <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">\r
88                         <parameter name="file" value="/opt/opendaylight/current/data/log/async-notif.log" />\r
89                         <parameter name="level" value="info" />\r
90                         <parameter name="field1" value="Send to SO Success for service create"/>\r
91                     </record>\r
92                 </outcome>\r
93             </execute>\r
94         </block>\r
95     </method>\r
96 </service-logic>